Re: [pygtk] Attempting modal window in win32
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I have a consistent problem with a threaded pyGTK program that freezes when dialog boxes are displayed on various Linux platforms. Likewise I also often get a case where a dialog box displays, but the borders around it do not display. I've been trying to track this down for several months, but have had no luck so far...I'm fairly sure it's due to a threading issue that occurs when the dialog box tries to start its own gtk_mainloop. - -dave Volker Helm wrote: > It does work! > > you can select or edit something in the parent window! But it isn't > nice that you can activate the parent window! > > # Start test.py import gtk > > w1 = gtk.Window(gtk.WINDOW_TOPLEVEL) w1.connect('delete_event', > lambda w, e: gtk.main_quit()) > > w2 = gtk.Window(gtk.WINDOW_TOPLEVEL) w2.set_transient_for(w1) > w2.set_modal(True) w2.set_property('skip-taskbar-hint', True) > > > vb = gtk.VBox() w1.add(vb) b = gtk.Button('Open Modal') > b.connect('clicked', lambda w: w2.show_all()) vb.pack_start(b) l = > gtk.Entry() l.set_text('Test') vb.pack_start(l) > > w1.show_all() > > gtk.main() # End test.py > > In this test you can't edit the Entry if the child is present. > > Bye, > > Volker > > ---- Original-Nachricht Datum: Tue, 01 May 2007 > 20:28:07 -0400 Von: El Croata <[EMAIL PROTECTED]> An: > pygtk@daa.com.au Betreff: [pygtk] Attempting modal window in win32 > >> Hi, >> >> I've trying to perform a modal window in win32, but it doesn't >> work. I wrote an app for better explanation of the case: >> >> # Start test.py > snip >> # End test.py >> >> >> The steps for performing the case were: >> >> 1) Run "python test.py" 2) Click on button "Open Modal" 3) Switch >> to any other app, clicking in the win taskbar 4) Switch back to >> the python app, clicking in the taskbar >> >> Diagnosis: When siwtching back to the python app, it only shows >> the parent window, insted of showing both windows with the child >> over its parent >> >> Versions: Python 2.4.4, PyGTK 2.8.6, PyCairo 1.0.2 >> >> It seems like I'm missing a little detail... thanks! Of couse, in >> Linux it runs as expected, but I can't change the OS :( >> >> -- Regards, Cro >> >> ___ pygtk mailing >> list pygtk@daa.com.au >> http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: >> http://www.async.com.br/faq/pygtk/ > -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFGOJGnB8JNm+PA+iURAvuzAJ44lRiyVdMfbcyk0LFl8TKasg7+SwCgmgvF U3qQ1mfKeZoukITdTUkqfTs= =atoI -END PGP SIGNATURE- ___ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
Re: [pygtk] Attempting modal window in win32
Hi again, There's no problem about avoiding to activate the parent widgets; I should have said that the problem is about the loss of z-order of the windows... my fault For better understanding I've setup the code at http://www.dinko.cl/~dinko/test-py.html, and a graphical explanation in http://www.dinko.cl/~dinko/test-py2.html -- Thanx, Cro 2007/5/2, Volker Helm <[EMAIL PROTECTED]>: It does work! you can select or edit something in the parent window! But it isn't nice that you can activate the parent window! # Start test.py import gtk w1 = gtk.Window(gtk.WINDOW_TOPLEVEL) w1.connect('delete_event', lambda w, e: gtk.main_quit()) w2 = gtk.Window(gtk.WINDOW_TOPLEVEL) w2.set_transient_for(w1) w2.set_modal(True) w2.set_property('skip-taskbar-hint', True) vb = gtk.VBox() w1.add(vb) b = gtk.Button('Open Modal') b.connect('clicked', lambda w: w2.show_all()) vb.pack_start(b) l = gtk.Entry() l.set_text('Test') vb.pack_start(l) w1.show_all() gtk.main() # End test.py In this test you can't edit the Entry if the child is present. Bye, Volker Original-Nachricht Datum: Tue, 01 May 2007 20:28:07 -0400 Von: El Croata <[EMAIL PROTECTED]> An: pygtk@daa.com.au Betreff: [pygtk] Attempting modal window in win32 > Hi, > > I've trying to perform a modal window in win32, but it doesn't work. I > wrote an app for better explanation of the case: > > # Start test.py snip > # End test.py > > > The steps for performing the case were: > > 1) Run "python test.py" > 2) Click on button "Open Modal" > 3) Switch to any other app, clicking in the win taskbar > 4) Switch back to the python app, clicking in the taskbar > > Diagnosis: When siwtching back to the python app, it only shows the > parent window, insted of showing both windows with the child over its > parent > > Versions: Python 2.4.4, PyGTK 2.8.6, PyCairo 1.0.2 > > It seems like I'm missing a little detail... thanks! > Of couse, in Linux it runs as expected, but I can't change the OS :( > > -- > Regards, > Cro > > ___ > pygtk mailing list pygtk@daa.com.au > http://www.daa.com.au/mailman/listinfo/pygtk > Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ -- "Feel free" - 10 GB Mailbox, 100 FreeSMS/Monat ... Jetzt GMX TopMail testen: http://www.gmx.net/de/go/topmail ___ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ ___ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
Re: [pygtk] Attempting modal window in win32
It does work! you can select or edit something in the parent window! But it isn't nice that you can activate the parent window! # Start test.py import gtk w1 = gtk.Window(gtk.WINDOW_TOPLEVEL) w1.connect('delete_event', lambda w, e: gtk.main_quit()) w2 = gtk.Window(gtk.WINDOW_TOPLEVEL) w2.set_transient_for(w1) w2.set_modal(True) w2.set_property('skip-taskbar-hint', True) vb = gtk.VBox() w1.add(vb) b = gtk.Button('Open Modal') b.connect('clicked', lambda w: w2.show_all()) vb.pack_start(b) l = gtk.Entry() l.set_text('Test') vb.pack_start(l) w1.show_all() gtk.main() # End test.py In this test you can't edit the Entry if the child is present. Bye, Volker Original-Nachricht Datum: Tue, 01 May 2007 20:28:07 -0400 Von: El Croata <[EMAIL PROTECTED]> An: pygtk@daa.com.au Betreff: [pygtk] Attempting modal window in win32 > Hi, > > I've trying to perform a modal window in win32, but it doesn't work. I > wrote an app for better explanation of the case: > > # Start test.py snip > # End test.py > > > The steps for performing the case were: > > 1) Run "python test.py" > 2) Click on button "Open Modal" > 3) Switch to any other app, clicking in the win taskbar > 4) Switch back to the python app, clicking in the taskbar > > Diagnosis: When siwtching back to the python app, it only shows the > parent window, insted of showing both windows with the child over its > parent > > Versions: Python 2.4.4, PyGTK 2.8.6, PyCairo 1.0.2 > > It seems like I'm missing a little detail... thanks! > Of couse, in Linux it runs as expected, but I can't change the OS :( > > -- > Regards, > Cro > > ___ > pygtk mailing list pygtk@daa.com.au > http://www.daa.com.au/mailman/listinfo/pygtk > Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ -- "Feel free" - 10 GB Mailbox, 100 FreeSMS/Monat ... Jetzt GMX TopMail testen: http://www.gmx.net/de/go/topmail ___ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
[pygtk] Attempting modal window in win32
Hi, I've trying to perform a modal window in win32, but it doesn't work. I wrote an app for better explanation of the case: # Start test.py import gtk w1 = gtk.Window(gtk.WINDOW_TOPLEVEL) w1.connect('delete_event', lambda w, e: gtk.main_quit()) w2 = gtk.Window(gtk.WINDOW_TOPLEVEL) w2.set_transient_for(w1) w2.set_modal(True) w2.set_property('skip-taskbar-hint', True) b = gtk.Button('Open Modal') b.connect('clicked', lambda w: w2.show_all()) w1.add(b) w1.show_all() gtk.main() # End test.py The steps for performing the case were: 1) Run "python test.py" 2) Click on button "Open Modal" 3) Switch to any other app, clicking in the win taskbar 4) Switch back to the python app, clicking in the taskbar Diagnosis: When siwtching back to the python app, it only shows the parent window, insted of showing both windows with the child over its parent Versions: Python 2.4.4, PyGTK 2.8.6, PyCairo 1.0.2 It seems like I'm missing a little detail... thanks! Of couse, in Linux it runs as expected, but I can't change the OS :( -- Regards, Cro ___ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/