i got a strange behaviour when working with the directGUI OkDialog.
i have 2 pieces of code… one which generates a ok-dialog and one which removes it again:
self.regError = OkDialog( dialogName="Sorry", text ="Registering the account failed", command = self.removeRegError)
and
def removeRegError(self,attribute):
self.regError.destroy()
when i open the OkDialog everything is fine… and i can close it just like it should. but if i try to open it again it crashes panda . that’s what i get as debug output:
Traceback (most recent call last):
File "ff8online.py", line 842, in ?
run()
File "/usr/share/panda3d/direct/src/showbase/ShowBase.py", line 2028, in run
self.taskMgr.run()
File "/usr/share/panda3d/direct/src/task/Task.py", line 839, in run
self.step()
File "/usr/share/panda3d/direct/src/task/Task.py", line 787, in step
self.__stepThroughList(taskPriList)
File "/usr/share/panda3d/direct/src/task/Task.py", line 721, in __stepThroughList
ret = self.__executeTask(task)
File "/usr/share/panda3d/direct/src/task/Task.py", line 644, in __executeTask
ret = task(task)
File "ff8online.py", line 370, in readTask
command = self.removeRegError)
File "/usr/share/panda3d/direct/src/gui/DirectDialog.py", line 349, in __init__
DirectDialog.__init__(self, parent)
File "/usr/share/panda3d/direct/src/gui/DirectDialog.py", line 131, in __init__
cleanupDialog(self['dialogName'])
File "/usr/share/panda3d/direct/src/gui/DirectDialog.py", line 35, in cleanupDialog
DirectDialog.AllDialogs[uniqueName].cleanup()
File "/usr/share/panda3d/direct/src/gui/DirectDialog.py", line 329, in cleanup
uniqueName = self['dialogName']
File "/usr/share/panda3d/direct/src/gui/DirectGuiBase.py", line 437, in cget
if self._optionInfo.has_key(option):
AttributeError: 'OkDialog' object has no attribute '_optionInfo'
maybe i should mention that i run the create thing inside a task…
is this a bug or some other strange behaviour or something or did i make a huge mistake somewhere?
thx in advance
thomasegi