Ticket #1205 (new defect)

Opened 3 years ago

Last modified 3 years ago

Demo games doesn't work with locales

Reported by: fabix Assigned to: somebody
Priority: major Milestone: 0.9.2
Component: ui Version: 0.9.1
Keywords: Cc:

Description

$ echo $LANG
fr_FR
$ python BubbletForm.py
Traceback (most recent call last):
  File "BubbletForm.py", line 186, in <module>
    dabo.dApp(MainFormClass=BubbletForm).start()
  File "/home/fabien/dev/dabo/src/dabo/dApp.py", line 364, in start
    self.setup()
  File "/home/fabien/dev/dabo/src/dabo/dApp.py", line 320, in setup
    self.initUIApp()
  File "/home/fabien/dev/dabo/src/dabo/dApp.py", line 356, in initUIApp
    self.uiApp.setup()
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/uiApp.py", line 306, in setup
    frm = self.dApp.MainForm = mfc()
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dForm.py", line 914, in __init__
    BaseForm.__init__(self, preClass, parent, properties, attProperties, *args, **kwargs)
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dForm.py", line 44, in __init__
    fm.dFormMixin.__init__(self, preClass, parent, properties, attProperties, *args, **kwargs)
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dFormMixin.py", line 89, in __init__
    attProperties, *args, **kwargs)
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dPemMixin.py", line 184, in __init__
    self._afterInit()
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dForm.py", line 70, in _afterInit
    super(BaseForm, self)._afterInit()
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dFormMixin.py", line 140, in _afterInit
    super(dFormMixin, self)._afterInit()
  File "/home/fabien/dev/dabo/src/dabo/ui/uiwx/dPemMixin.py", line 318, in _afterInit
    self.afterInit()
  File "BubbletForm.py", line 67, in afterInit
    quitPos = fm.getItemIndex(_("Quit"))
AttributeError: 'NoneType' object has no attribute 'getItemIndex'

If I unset LANG, that works.

Change History

02/24/2009 11:12:06 AM changed by fabix

It seems it's because there is no locale for "File". But there is one for "&File". A simple patch is replacing "File" by "&File" (I tested, that works).

Index: BubbletForm.py
===================================================================
--- BubbletForm.py      (révision 5075)
+++ BubbletForm.py      (copie de travail)
@@ -63,7 +63,7 @@

                # Add the menu items
                mb = self.MenuBar
-               fm = mb.getMenu(_("File"))
+               fm = mb.getMenu(_("&File"))
                quitPos = fm.getItemIndex(_("Quit"))
                if quitPos is None:

Curiously, there is no problem with fm.getItemIndex(_("Quit")) whereas there is no locale for it too...