- DECLARE_DYNAMIC_CLASS(wxMDIParentFrame)
-
- friend class WXDLLEXPORT wxMDIChildFrame;
- public:
-
- wxMDIParentFrame(void);
- inline wxMDIParentFrame(wxWindow *parent,
- const wxWindowID id,
- const wxString& title,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize,
- const long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
- const wxString& name = wxFrameNameStr)
- {
- Create(parent, id, title, pos, size, style, name);
- }
-
- ~wxMDIParentFrame(void);
-
- bool Create(wxWindow *parent,
- const wxWindowID id,
- const wxString& title,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize,
- const long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
- const wxString& name = wxFrameNameStr);
-
-#if WXWIN_COMPATIBILITY
- virtual void OldOnActivate(bool flag);
- virtual void OldOnSize(int x, int y);
-#endif
+public:
+ wxMDIParentFrame();
+ wxMDIParentFrame(wxWindow *parent,
+ wxWindowID id,
+ const wxString& title,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
+ const wxString& name = wxFrameNameStr)
+ {
+ Create(parent, id, title, pos, size, style, name);
+ }
+
+ virtual ~wxMDIParentFrame();
+
+ bool Create(wxWindow *parent,
+ wxWindowID id,
+ const wxString& title,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
+ const wxString& name = wxFrameNameStr);
+
+ // accessors
+ // ---------
+
+ // Get the active MDI child window
+ wxMDIChildFrame *GetActiveChild() const;
+
+ // Get the client window
+ wxMDIClientWindow *GetClientWindow() const { return m_clientWindow; }
+
+ // Create the client window class (don't Create the window,
+ // just return a new class)
+ virtual wxMDIClientWindow *OnCreateClient();
+
+ // MDI windows menu functions
+ // --------------------------
+
+ // return the pointer to the current window menu or NULL if we don't have
+ // because of wxFRAME_NO_WINDOW_MENU style
+ wxMenu *GetWindowMenu() const { return m_windowMenu; }
+
+ // use the given menu instead of the default window menu
+ //
+ // menu can be NULL to disable the window menu completely
+ void SetWindowMenu(wxMenu* menu) ;
+
+ virtual void DoMenuUpdates(wxMenu* menu = NULL);
+
+ // MDI operations
+ // --------------
+ virtual void Cascade();
+ virtual void Tile(wxOrientation orient = wxHORIZONTAL);
+ virtual void ArrangeIcons();
+ virtual void ActivateNext();
+ virtual void ActivatePrevious();
+
+
+ // implementation only from now on
+
+ // MDI helpers
+ // -----------
+
+ // called by wxMDIChildFrame after it was successfully created
+ virtual void AddMDIChild(wxMDIChildFrame *child);
+
+ // called by wxMDIChildFrame just before it is destroyed
+ virtual void RemoveMDIChild(wxMDIChildFrame *child);