X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/519cb848a8f4c91c73421bb75314754284e593a4..82ac3b0a423b755c6329c2ae2faaab9576a3f647:/include/wx/mac/mdi.h?ds=sidebyside diff --git a/include/wx/mac/mdi.h b/include/wx/mac/mdi.h index fc3cf94603..a9be83cc8a 100644 --- a/include/wx/mac/mdi.h +++ b/include/wx/mac/mdi.h @@ -3,18 +3,18 @@ // Purpose: MDI (Multiple Document Interface) classes. // This doesn't have to be implemented just like Windows, // it could be a tabbed design as in wxGTK. -// Author: AUTHOR +// Author: Stefan Csomor // Modified by: -// Created: ??/??/98 +// Created: 1998-01-01 // RCS-ID: $Id$ -// Copyright: (c) AUTHOR -// Licence: wxWindows licence +// Copyright: (c) Stefan Csomor +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_MDI_H_ #define _WX_MDI_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "mdi.h" #endif @@ -28,9 +28,8 @@ class WXDLLEXPORT wxMDIChildFrame; class WXDLLEXPORT wxMDIParentFrame: public wxFrame { -DECLARE_DYNAMIC_CLASS(wxMDIParentFrame) + DECLARE_DYNAMIC_CLASS(wxMDIParentFrame) - friend class WXDLLEXPORT wxMDIChildFrame; public: wxMDIParentFrame(); @@ -64,7 +63,7 @@ public: // Gets the size available for subwindows after menu size, toolbar size // and status bar size have been subtracted. If you want to manage your own // toolbar(s), don't call SetToolBar. - void GetClientSize(int *width, int *height) const; + void DoGetClientSize(int *width, int *height) const; // Get the active MDI child window (Windows only) wxMDIChildFrame *GetActiveChild() const ; @@ -87,7 +86,14 @@ protected: // TODO maybe have this member wxMDIClientWindow *m_clientWindow; + wxMDIChildFrame * m_currentChild; + wxMenu* m_windowMenu; + // TRUE if MDI Frame is intercepting commands, not child + bool m_parentFrameActive; + +private: + friend class WXDLLEXPORT wxMDIChildFrame; DECLARE_EVENT_TABLE() }; @@ -105,6 +111,7 @@ public: long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxFrameNameStr) { + Init() ; Create(parent, id, title, pos, size, style, name); } @@ -120,14 +127,16 @@ public: // Set menu bar void SetMenuBar(wxMenuBar *menu_bar); - void SetClientSize(int width, int height); - void GetPosition(int *x, int *y) const ; // MDI operations virtual void Maximize(); virtual void Maximize( bool ){ Maximize() ; } // this one is inherited from wxFrame virtual void Restore(); virtual void Activate(); +protected: + + // common part of all ctors + void Init(); }; /* The client window is a child of the parent MDI frame, and itself