X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f618020a15f1647a83aaeab1fe315f90497a9876..4f2511d706e5274a34e1521e11c1b95fed735b42:/include/wx/gtk/mdi.h diff --git a/include/wx/gtk/mdi.h b/include/wx/gtk/mdi.h index 5dd2ae1762..53a3cdeceb 100644 --- a/include/wx/gtk/mdi.h +++ b/include/wx/gtk/mdi.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: gtk/mdi.h +// Name: wx/gtk/mdi.h // Purpose: // Author: Robert Roebling // Id: $Id$ @@ -7,42 +7,19 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef _WX_GTK_MDI_H_ +#define _WX_GTK_MDI_H_ -#ifndef __MDIH__ -#define __MDIH__ - -#ifdef __GNUG__ -#pragma interface -#endif - -#include "wx/defs.h" -#include "wx/object.h" -#include "wx/list.h" -#include "wx/control.h" -#include "wx/panel.h" #include "wx/frame.h" -#include "wx/toolbar.h" - -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxMDIParentFrame; -class wxMDIClientWindow; -class wxMDIChildFrame; - -//----------------------------------------------------------------------------- -// global data -//----------------------------------------------------------------------------- -extern const wxChar* wxFrameNameStr; -extern const wxChar* wxStatusLineNameStr; +class WXDLLIMPEXP_FWD_CORE wxMDIChildFrame; +class WXDLLIMPEXP_FWD_CORE wxMDIClientWindow; //----------------------------------------------------------------------------- // wxMDIParentFrame //----------------------------------------------------------------------------- -class wxMDIParentFrame: public wxFrame +class WXDLLIMPEXP_CORE wxMDIParentFrame: public wxFrame { public: wxMDIParentFrame() { Init(); } @@ -59,7 +36,7 @@ public: (void)Create(parent, id, title, pos, size, style, name); } - ~wxMDIParentFrame(); + virtual ~wxMDIParentFrame(); bool Create( wxWindow *parent, wxWindowID id, const wxString& title, @@ -74,7 +51,7 @@ public: 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(); @@ -84,13 +61,11 @@ public: wxMDIClientWindow *m_clientWindow; bool m_justInserted; - virtual void GtkOnSize( int x, int y, int width, int height ); virtual void OnInternalIdle(); protected: void Init(); - - virtual void DoGetClientSize(int *width, int *height) const; + virtual void DoGetClientSize(int* width, int* height) const; private: friend class wxMDIChildFrame; @@ -102,7 +77,7 @@ private: // wxMDIChildFrame //----------------------------------------------------------------------------- -class wxMDIChildFrame: public wxFrame +class WXDLLIMPEXP_CORE wxMDIChildFrame: public wxFrame { public: wxMDIChildFrame(); @@ -143,36 +118,32 @@ public: virtual void SetStatusWidths( int WXUNUSED(n), const int WXUNUSED(widths_field)[] ) {} #endif - // no size hints - virtual void SetSizeHints( 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 + // 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_icons = wxIconBundle( icon ); } - void SetIcons( const wxIconBundle &icons ) { m_icons = icons; } + virtual void SetIcons(const wxIconBundle& icons ) + { wxTopLevelWindowBase::SetIcons(icons); } // no title - void SetTitle( const wxString &title ); - wxString GetTitle() const { return m_title; } + virtual void SetTitle( const wxString &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; } + + virtual bool Destroy(); void OnActivate( wxActivateEvent& event ); void OnMenuHighlight( wxMenuEvent& event ); @@ -184,7 +155,15 @@ public: bool m_justInserted; protected: - virtual void DoGetClientSize( int *width, int *height ) const; + // override wxFrame methods to not do anything + virtual void DoSetSize(int x, int y, + int width, int height, + int sizeFlags = wxSIZE_AUTO); + + // no size hints + virtual void DoSetSizeHints(int WXUNUSED(minW), int WXUNUSED(minH), + int WXUNUSED(maxW), int WXUNUSED(maxH), + int WXUNUSED(incW), int WXUNUSED(incH)) {} private: DECLARE_EVENT_TABLE() @@ -195,17 +174,16 @@ private: // wxMDIClientWindow //----------------------------------------------------------------------------- -class wxMDIClientWindow: public wxWindow +class WXDLLIMPEXP_CORE wxMDIClientWindow: public wxWindow { public: wxMDIClientWindow(); wxMDIClientWindow( wxMDIParentFrame *parent, long style = 0 ); - ~wxMDIClientWindow(); + virtual ~wxMDIClientWindow(); virtual bool CreateClient( wxMDIParentFrame *parent, long style = wxVSCROLL | wxHSCROLL ); private: DECLARE_DYNAMIC_CLASS(wxMDIClientWindow) }; -#endif // __MDIH__ - +#endif // _WX_GTK_MDI_H_