On Tue, Jul 5, 2011 at 1:46 AM, rantingrick <rantingr...@gmail.com> wrote: > On Jul 4, 10:40 am, Chris Angelico <ros...@gmail.com> wrote: > >> Uhh, sorry. No. There are plenty of good reasons for one application >> to make multiple top-level windows, and if I ever find myself using a >> toolkit that makes this difficult, I'll either be hacking the toolkit >> or using a different one. I've been building GUI applications for far >> too long to not want features like that. > > And those reasons are...?
As varied as the applications that call on them. One example that springs to mind: Our database front end has "table view" and "record view", where you get one table view and from that you can view as many records as you like. Users may choose to effectively switch from one view to the other, or they may open up two or more record views and have them and the table view all on screen simultaneously. This is not a modal dialog; it's not even a modeless dialog - it's a completely stand-alone window that can be moved around the Z order independently of the parent. There's a definite ownership based on process, though; terminate the process (by closing the table view) and it must close all record views first. I've done other applications where this has not been the case - where all top-level windows are truly equal - but not in this instance. As an aside, that particular program is one that we are currently using (I glance over and can see it running on one of our terminals here), and the interface has not changed since about 2002 (actually earlier - 2002 had a major code rewrite without much UI change). Multiple top-level windows fulfills the Law of Least Astonishment admirably, and has done so for a decade. Chris Angelico -- http://mail.python.org/mailman/listinfo/python-list