X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..b9efe021b554fa3967d1442cf758435c5cd5ae8f:/include/wx/gtk/mdi.h diff --git a/include/wx/gtk/mdi.h b/include/wx/gtk/mdi.h index 08a518e3c2..991610644e 100644 --- a/include/wx/gtk/mdi.h +++ b/include/wx/gtk/mdi.h @@ -11,7 +11,7 @@ #ifndef __MDIH__ #define __MDIH__ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface #endif @@ -59,21 +59,22 @@ public: (void)Create(parent, id, title, pos, size, style, name); } - ~wxMDIParentFrame(void); + ~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 ); + wxWindowID id, + const wxString& title, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL, + const wxString& name = wxFrameNameStr ); - void GetClientSize(int *width, int *height) const; wxMDIChildFrame *GetActiveChild() const; wxMDIClientWindow *GetClientWindow() const; virtual wxMDIClientWindow *OnCreateClient(); virtual void Cascade() {} - virtual void Tile() {} + virtual void Tile(wxOrientation WXUNUSED(orient) = wxHORIZONTAL) {} virtual void ArrangeIcons() {} virtual void ActivateNext(); virtual void ActivatePrevious(); @@ -89,6 +90,8 @@ public: protected: void Init(); + virtual void DoGetClientSize(int *width, int *height) const; + private: friend class wxMDIChildFrame; @@ -104,19 +107,25 @@ class wxMDIChildFrame: public wxFrame public: wxMDIChildFrame(); wxMDIChildFrame( wxMDIParentFrame *parent, - wxWindowID id, const wxString& title, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxFrameNameStr ); - ~wxMDIChildFrame(); + wxWindowID id, + const wxString& title, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDEFAULT_FRAME_STYLE, + const wxString& name = wxFrameNameStr ); + + virtual ~wxMDIChildFrame(); bool Create( wxMDIParentFrame *parent, - wxWindowID id, const wxString& title, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxFrameNameStr ); + wxWindowID id, + const wxString& title, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDEFAULT_FRAME_STYLE, + const wxString& name = wxFrameNameStr ); virtual void SetMenuBar( wxMenuBar *menu_bar ); virtual wxMenuBar *GetMenuBar() const; - virtual void GetClientSize( int *width, int *height ) const; virtual void AddChild( wxWindowBase *child ); virtual void Activate(); @@ -135,29 +144,40 @@ public: #endif // no size hints - virtual void SetSizeHints( int WXUNUSED(minW), int WXUNUSED(minH), - int WXUNUSED(maxW), int WXUNUSED(maxH), - int WXUNUSED(incW), int WXUNUSED(incH) ) {} + virtual void DoSetSizeHints( int WXUNUSED(minW), + int WXUNUSED(minH), + int WXUNUSED(maxW) = -1, + int WXUNUSED(maxH) = -1, + int WXUNUSED(incW) = -1, + int WXUNUSED(incH) = -1) {} #if wxUSE_TOOLBAR - // no toolbar bars - virtual wxToolBar* CreateToolBar( long WXUNUSED(style), wxWindowID WXUNUSED(id), - const wxString& WXUNUSED(name) ) { return (wxToolBar*)NULL; } + // no toolbar + virtual wxToolBar* CreateToolBar( long WXUNUSED(style), + wxWindowID WXUNUSED(id), + const wxString& WXUNUSED(name) ) + { return (wxToolBar*)NULL; } virtual wxToolBar *GetToolBar() const { return (wxToolBar*)NULL; } -#endif +#endif // wxUSE_TOOLBAR // no icon - void SetIcon( const wxIcon &icon ) { m_icon = icon; } + virtual void SetIcon(const wxIcon& icon) + { wxTopLevelWindowBase::SetIcon(icon); } + virtual void SetIcons(const wxIconBundle& icons ) + { wxTopLevelWindowBase::SetIcons(icons); } // no title void SetTitle( const wxString &title ); wxString GetTitle() const { return m_title; } // no maximize etc - virtual void Maximize( bool WXUNUSED(maximize) ) {} + virtual void Maximize( bool WXUNUSED(maximize) = true ) { } + virtual bool IsMaximized() const { return true; } + virtual void Iconize(bool WXUNUSED(iconize) = true) { } + virtual bool IsIconized() const { return false; } virtual void Restore() {} - virtual bool IsTopLevel() const { return FALSE; } + virtual bool IsTopLevel() const { return false; } void OnActivate( wxActivateEvent& event ); void OnMenuHighlight( wxMenuEvent& event ); @@ -168,6 +188,14 @@ public: GtkNotebookPage *m_page; bool m_justInserted; +protected: + // override wxFrame methods to not do anything + virtual void DoSetSize(int x, int y, + int width, int height, + int sizeFlags = wxSIZE_AUTO); + virtual void DoSetClientSize(int width, int height); + virtual void DoGetClientSize( int *width, int *height ) const; + private: DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(wxMDIChildFrame)