]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/mdig.h
added wxTLS_TYPE() macro
[wxWidgets.git] / include / wx / generic / mdig.h
index 4da54e412025fe5318aab557c7b19f447ceea291..bee3506d099170da2b68be92a99f5a8fa73380a0 100644 (file)
 #ifndef _WX_MDIG_H_
 #define _WX_MDIG_H_
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-    #pragma interface "mdig.h"
-#endif
-
 // ----------------------------------------------------------------------------
 // headers
 // ----------------------------------------------------------------------------
 #include "wx/panel.h"
 #include "wx/notebook.h"
 
-WXDLLEXPORT_DATA(extern const wxChar*) wxFrameNameStr;
-WXDLLEXPORT_DATA(extern const wxChar*) wxStatusLineNameStr;
+class WXDLLIMPEXP_FWD_CORE wxIcon;
+class WXDLLIMPEXP_FWD_CORE wxIconBundle;
+
+extern WXDLLIMPEXP_DATA_CORE(const char) wxStatusLineNameStr[];
 
 
 //-----------------------------------------------------------------------------
 // classes
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxGenericMDIParentFrame;
-class WXDLLEXPORT wxGenericMDIClientWindow;
-class WXDLLEXPORT wxGenericMDIChildFrame;
+class WXDLLIMPEXP_FWD_CORE wxGenericMDIParentFrame;
+class WXDLLIMPEXP_FWD_CORE wxGenericMDIClientWindow;
+class WXDLLIMPEXP_FWD_CORE wxGenericMDIChildFrame;
 
 //-----------------------------------------------------------------------------
 // wxGenericMDIParentFrame
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxGenericMDIParentFrame: public wxFrame
+class WXDLLIMPEXP_CORE wxGenericMDIParentFrame: public wxFrame
 {
 public:
     wxGenericMDIParentFrame();
     wxGenericMDIParentFrame(wxWindow *parent,
-                     wxWindowID id,
+                     wxWindowID winid,
                      const wxString& title,
                      const wxPoint& pos = wxDefaultPosition,
                      const wxSize& size = wxDefaultSize,
                      long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
                      const wxString& name = wxFrameNameStr);
 
-    ~wxGenericMDIParentFrame();
+    virtual ~wxGenericMDIParentFrame();
     bool Create( wxWindow *parent,
-                 wxWindowID id,
+                 wxWindowID winid,
                  const wxString& title,
                  const wxPoint& pos = wxDefaultPosition,
                  const wxSize& size = wxDefaultSize,
@@ -79,7 +77,7 @@ public:
     virtual wxGenericMDIClientWindow *OnCreateClient();
 
     virtual void Cascade() { /* Has no effect */ }
-    virtual void Tile() { /* Has no effect */ }
+    virtual void Tile(wxOrientation WXUNUSED(orient) = wxHORIZONTAL) { }
     virtual void ArrangeIcons() { /* Has no effect */ }
     virtual void ActivateNext();
     virtual void ActivatePrevious();
@@ -113,12 +111,12 @@ private:
 // wxGenericMDIChildFrame
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxGenericMDIChildFrame: public wxPanel
+class WXDLLIMPEXP_CORE wxGenericMDIChildFrame: public wxPanel
 {
 public:
     wxGenericMDIChildFrame();
     wxGenericMDIChildFrame( wxGenericMDIParentFrame *parent,
-                     wxWindowID id,
+                     wxWindowID winid,
                      const wxString& title,
                      const wxPoint& pos = wxDefaultPosition,
                      const wxSize& size = wxDefaultSize,
@@ -127,7 +125,7 @@ public:
 
     virtual ~wxGenericMDIChildFrame();
     bool Create( wxGenericMDIParentFrame *parent,
-                 wxWindowID id,
+                 wxWindowID winid,
                  const wxString& title,
                  const wxPoint& pos = wxDefaultPosition,
                  const wxSize& size = wxDefaultSize,
@@ -148,7 +146,7 @@ public:
     // no status bars
     virtual wxStatusBar* CreateStatusBar( int WXUNUSED(number) = 1,
                                         long WXUNUSED(style) = 1,
-                                        wxWindowID WXUNUSED(id) = 1,
+                                        wxWindowID WXUNUSED(winid) = 1,
                                         const wxString& WXUNUSED(name) = wxEmptyString)
       { return (wxStatusBar*)NULL; }
 
@@ -157,37 +155,29 @@ 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
     virtual wxToolBar* CreateToolBar( long WXUNUSED(style),
-                                       wxWindowID WXUNUSED(id),
+                                       wxWindowID WXUNUSED(winid),
                                        const wxString& WXUNUSED(name) )
         { return (wxToolBar*)NULL; }
     virtual wxToolBar *GetToolBar() const { return (wxToolBar*)NULL; }
 #endif
 
     // no icon
-    void SetIcon( const wxIcon& WXUNUSED(icon) ) { }
-    void SetIcons( const wxIconBundle& WXUNUSED(icons) ) { }
+    void SetIcon(const wxIcon& WXUNUSED(icon)) { }
+    virtual void SetIcons( const wxIconBundle& WXUNUSED(icons) ) { }
 
     // no maximize etc
-    virtual void Maximize( bool WXUNUSED(maximize) = TRUE) { /* Has no effect */ }
+    virtual void Maximize( bool WXUNUSED(maximize) = true) { /* Has no effect */ }
     virtual void Restore() { /* Has no effect */ }
-    virtual void Iconize(bool WXUNUSED(iconize)  = TRUE) { /* Has no effect */ }
-    virtual bool IsMaximized() const { return TRUE; }
-    virtual bool IsIconized() const { return FALSE; }
-    virtual bool ShowFullScreen(bool WXUNUSED(show), long WXUNUSED(style)) { return FALSE; }
-    virtual bool IsFullScreen() const { return FALSE; }
+    virtual void Iconize(bool WXUNUSED(iconize)  = true) { /* Has no effect */ }
+    virtual bool IsMaximized() const { return true; }
+    virtual bool IsIconized() const { return false; }
+    virtual bool ShowFullScreen(bool WXUNUSED(show), long WXUNUSED(style)) { return false; }
+    virtual bool IsFullScreen() const { return false; }
 
-    virtual bool IsTopLevel() const { return FALSE; }
+    virtual bool IsTopLevel() const { return false; }
 
     void OnMenuHighlight(wxMenuEvent& event);
     void OnActivate(wxActivateEvent& event);
@@ -213,6 +203,11 @@ protected:
 
     virtual void DoMoveWindow(int x, int y, int width, int height);
 
+    // no size hints
+    virtual void DoSetSizeHints(int WXUNUSED(minW), int WXUNUSED(minH),
+                                int WXUNUSED(maxW), int WXUNUSED(maxH),
+                                int WXUNUSED(incW), int WXUNUSED(incH)) {}
+
     // This function needs to be called when a size change is confirmed,
     // we needed this function to prevent any body from the outside
     // changing the panel... it messes the UI layout when we would allow it.
@@ -229,20 +224,20 @@ private:
 // wxGenericMDIClientWindow
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxGenericMDIClientWindow: public wxNotebook
+class WXDLLIMPEXP_CORE wxGenericMDIClientWindow: public wxNotebook
 {
 public:
     wxGenericMDIClientWindow();
     wxGenericMDIClientWindow( wxGenericMDIParentFrame *parent, long style = 0 );
-    ~wxGenericMDIClientWindow();
+    virtual ~wxGenericMDIClientWindow();
     virtual bool CreateClient( wxGenericMDIParentFrame *parent, long style = wxVSCROLL | wxHSCROLL );
 
-    virtual int SetSelection(int nPage);
+    virtual int SetSelection(size_t nPage);
 
 protected:
     void PageChanged(int OldSelection, int newSelection);
 
-    void OnPageChanged(wxNotebookEvent& event);
+    void OnPageChanged(wxBookCtrlEvent& event);
     void OnSize(wxSizeEvent& event);
 
 private:
@@ -271,24 +266,24 @@ class wxMDIChildFrame ;
 // wxMDIParentFrame
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxMDIParentFrame: public wxGenericMDIParentFrame
+class WXDLLIMPEXP_CORE wxMDIParentFrame: public wxGenericMDIParentFrame
 {
 public:
     wxMDIParentFrame() {}
     wxMDIParentFrame(wxWindow *parent,
-                     wxWindowID id,
+                     wxWindowID winid,
                      const wxString& title,
                      const wxPoint& pos = wxDefaultPosition,
                      const wxSize& size = wxDefaultSize,
                      long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
                      const wxString& name = wxFrameNameStr)
-        :wxGenericMDIParentFrame(parent, id, title, pos, size, style, name)
-    {
-    }
+         :wxGenericMDIParentFrame(parent, winid, title, pos, size, style, name)
+     {
+     }
 
     wxMDIChildFrame * GetActiveChild() const ;
-    
-    
+
+
 private:
     DECLARE_DYNAMIC_CLASS(wxMDIParentFrame)
 };
@@ -297,22 +292,21 @@ private:
 // wxMDIChildFrame
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxMDIChildFrame: public wxGenericMDIChildFrame
+class WXDLLIMPEXP_CORE wxMDIChildFrame: public wxGenericMDIChildFrame
 {
 public:
     wxMDIChildFrame() {}
 
     wxMDIChildFrame( wxGenericMDIParentFrame *parent,
-                     wxWindowID id,
+                     wxWindowID winid,
                      const wxString& title,
                      const wxPoint& pos = wxDefaultPosition,
                      const wxSize& size = wxDefaultSize,
                      long style = wxDEFAULT_FRAME_STYLE,
                      const wxString& name = wxFrameNameStr )
-        :wxGenericMDIChildFrame(parent, id, title, pos, size, style, name)
-    {
-    }
-
+         :wxGenericMDIChildFrame(parent, winid, title, pos, size, style, name)
+     {
+     }
 private:
     DECLARE_DYNAMIC_CLASS(wxMDIChildFrame)
 };
@@ -321,7 +315,7 @@ private:
 // wxMDIClientWindow
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxMDIClientWindow: public wxGenericMDIClientWindow
+class WXDLLIMPEXP_CORE wxMDIClientWindow: public wxGenericMDIClientWindow
 {
 public:
     wxMDIClientWindow() {}