[wxPython-users] successor to MDI?
Christopher Barker
Chris.Barker at noaa.gov
Wed Jan 3 16:47:54 PST 2007
Andrea Gavana wrote:
> Yes, this is an alternative. Notebooks (BookCtrls, wx.Notebook,
> FlatNotebook and all their friends) are very useful and intuitive when
> you want to show multiple windows that hold different kind of
> information.
Exactly, notebooks are good if you have multiple windows that have
DIFFERENT information -- like multiple pages in a complex config dialog.
However, the trend now seems to be to put notebooks in a big frame, and
each page of the notebook holds a different document -- this is
different information, but of the same kind, and very often I want to
look at two of them at once, and I can't -- aaarrgg!
> However, the MDI deprecation is mainly a Microsoft point of view.
Well, when most people talk about MDI (and when wx does), they are
talking about an MS invention in the first place, and I like it only a
tiny bit better than notebooks (or maybe less).
The key thing is the the Windows MDI puts each document in a Window that
can be moved, re-sized, etc, but only within the Main Frame -- all that
takes up so much space you need to Maximize the main frame, and then you
can't see any other apps!
I find that I very, very, often want to be able to see two (or more)
Windows at once -- maybe in the same app, maybe in different apps -- I
want a UI that supports that. MAC and many *nix apps do a pretty good
job -- put each document in a top-level Window (wxFrame) -- then you can
move and re-size them as you like, mixing and matching what you see from
multiple documents and multiple apps -- Now if only Apple would stop
putting the menu on the top of the screen, I'd really be happy.
The best "MDI" I've seen is, ironically, from that paragon of
non-usability: (X) emacs. With Xemacs, you can have as many top-level
frames as you want, and each one can have tabs for the files you're
working on. This lets you have easy access to the ten or so files in a
project, while being able to have two or three visible at once on the
screen, interleaved with the app you're working on, or whatever.
Thunderbird is pretty nice too -- you can have a message window as a
pane in your main frame, but if you want to see more than one message at
once, you can double click on a message, and it will come up in it's own
frame -- very nice.
> You may also want to consider the approach with user interface
> managers, like wxAUI.
I haven't looked closely at wxAUI yet -- does it allow multiple
top-level frames?
-Chris
--
Christopher Barker, Ph.D.
Oceanographer
Emergency Response Division
NOAA/NOS/OR&R (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception
Chris.Barker at noaa.gov
More information about the wxpython-users
mailing list