Connecting Tech Pros Worldwide Forums | Help | Site Map

wxPython "Frames within Frames"

Simon Erikson
Guest
 
Posts: n/a
#1: Jul 18 '05
Hello:

I would like to build an app consisting of a "root" frame that can
contain an arbitrary number of child frames (the user will click to
create them). Each of these child frames needs the full functionality
of a frame (title,menu,status bars, min,max,close icons, scroll bars,
sizing, moving). In addition, the user must be able to create
grandchild frames within these child frames, to an arbitrary depth (in
practice limited to 10 or so).

As I understand it, MDI provides the means of creating the root and
first generation frames, but not the further generations.

I found this at 'http://www.orbtech.com/www/wx/epydoc/public/wx.Frame-class.htm'
A frame is a window whose size and position can (usually) be changed
by the user. It usually has thick borders and a title bar, and can
optionally contain a menu bar, toolbar and status bar.
A frame can contain any window that is not a frame or dialog.

Does this last sentence mean my quest is hopeless? Can someone please
help me?

Thanks - Simon.

Peter Hansen
Guest
 
Posts: n/a
#2: Jul 18 '05

re: wxPython "Frames within Frames"


Simon Erikson wrote:
[color=blue]
> I would like to build an app consisting of a "root" frame that can
> contain an arbitrary number of child frames (the user will click to
> create them). Each of these child frames needs the full functionality
> of a frame (title,menu,status bars, min,max,close icons, scroll bars,
> sizing, moving). In addition, the user must be able to create
> grandchild frames within these child frames, to an arbitrary depth (in
> practice limited to 10 or so).
>
> As I understand it, MDI provides the means of creating the root and
> first generation frames, but not the further generations.[/color]

I'm afraid I can't help with the task as described, but I wanted to draw
your attention to the fact that many people consider MDI to be 'evil',
and it occurs to me that a massively nested MDI could only magnify the
problems many times over.

In case you're interested, I found a couple of links to start you off:

http://discuss.fogcreek.com/joelonso...ow&ixPost=2748
http://mail.gnome.org/archives/usabi.../msg00228.html

(This is probably a somewhat religious matter, and in any case perhaps
you have very good reasons for wanting MDI, but just in case you aren't
set on doing it, other options might also be much simpler to code.)

-Peter
francois lepoutre
Guest
 
Posts: n/a
#3: Jul 18 '05

re: wxPython "Frames within Frames"


> > I would like to build an app consisting of a "root" frame that can[color=blue][color=green]
> > contain an arbitrary number of child frames (the user will click to
> > create them). Each of these child frames needs the full functionality
> > of a frame (title,menu,status bars, min,max,close icons, scroll bars,
> > sizing, moving). In addition, the user must be able to create
> > grandchild frames within these child frames, to an arbitrary depth (in
> > practice limited to 10 or so).[/color][/color]
[color=blue]
> I'm afraid I can't help with the task as described, but I wanted to draw
> your attention to the fact that many people consider MDI to be 'evil',
> and it occurs to me that a massively nested MDI could only magnify the
> problems many times over.[/color]

Sure,

We are just on our way to review the UI of an application that relies
heavily on MDI (very good feedback from programmers and
"power users", dummies are still uneasy after years).

Wxpython offers support for "sash windowing". We are currently
investigating the wxMultiSash and wxDynamicSashWindow
concepts. Multiple views without the usability cost of MDI.
Maybe not the panacea but possibly something to check
before diving into MDI.

- MS is dropping it from its own product line,
- the MDI concept is native on win* platforms only.

Except possibly for sophisticated WIN32-only
document-edition tools, is it the time to start up
new MDI applications ?

Francois









Simon Erikson
Guest
 
Posts: n/a
#4: Jul 18 '05

re: wxPython "Frames within Frames"


Peter Hansen <peter@engcorp.com> wrote in message news:<YsqdnZQFKckH9crdRVn-hQ@powergate.ca>...[color=blue]
>
> (This is probably a somewhat religious matter, and in any case perhaps
> you have very good reasons for wanting MDI, but just in case you aren't
> set on doing it, other options might also be much simpler to code.)
>
> -Peter[/color]

Thanks for your effort.
I am actually looking for something *other* than MDI; sorry for the confusion.
Simon.
Robin Dunn
Guest
 
Posts: n/a
#5: Jul 18 '05

re: wxPython "Frames within Frames"


Simon Erikson wrote:[color=blue]
> Hello:
>
> I would like to build an app consisting of a "root" frame that can
> contain an arbitrary number of child frames (the user will click to
> create them). Each of these child frames needs the full functionality
> of a frame (title,menu,status bars, min,max,close icons, scroll bars,
> sizing, moving). In addition, the user must be able to create
> grandchild frames within these child frames, to an arbitrary depth (in
> practice limited to 10 or so).
>
> As I understand it, MDI provides the means of creating the root and
> first generation frames, but not the further generations.
>
> I found this at 'http://www.orbtech.com/www/wx/epydoc/public/wx.Frame-class.htm'
> A frame is a window whose size and position can (usually) be changed
> by the user. It usually has thick borders and a title bar, and can
> optionally contain a menu bar, toolbar and status bar.
> A frame can contain any window that is not a frame or dialog.
>
> Does this last sentence mean my quest is hopeless? Can someone please
> help me?[/color]

If you are on windows then you can use the wxMDI* classes and get what
you want. Since GTK has nothing like that then MDI is emulated using a
wxNotebook. On OSX wxMDI is implemented using multiple top level
document windows, since that is the standard on that platform.


--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Closed Thread