Hi All, I would like to write a Wizard that spawns a separate window. Right now I'm just calling Tkinter.Toplevel() with no arguments but it dies with non-deterministic tkinter errors. I think the issue is I need to pass the Tkinter.Tk() instance into the Toplevel command.
1) Is there a way I can get access to the main Tkinter.Tk() instance from within my Wizard? I've made a simple version of what I would like that shows the behavior I'm seeing. To run, copy this into a file called testWizard.py and place into the wizard directory. Since I installed from Distutils on linux, my wizard directory is /usr/local/lib/python2.5/site-packages/pymol/wizard/. Then fire up pymol and type into the command line 'wizard testWizard'. If you version is <1.0 try deleting '_self=cmd' and '_self'. For me it crashes about every third or so time, usually with different errors. from pymol.wizard import Wizard from pymol import cmd import pymol import Tkinter class TestWizard(Wizard): def __init__(self,_self=cmd): Wizard.__init__(self, _self) self.res_table = Tkinter.Tk() # <- pass app.root in here???? for i in range( 1000 ): Tkinter.Button(self.res_table, text=str(i)).pack() Thanks in advance! Matt