]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/frame.h
pragma fix for gcc
[wxWidgets.git] / include / wx / gtk1 / frame.h
index bb8dd7b0d51e488709620a1dba54897a09d58913..8d3764474078b79680132c77cf3fe9b033d83434 100644 (file)
@@ -26,24 +26,22 @@ class wxMenuBar;
 class wxToolBar;
 class wxStatusBar;
 
-class wxFrame;
-
 //-----------------------------------------------------------------------------
-// wxFrame
+// wxFrameGTK
 //-----------------------------------------------------------------------------
 
-class wxFrame : public wxFrameBase
+class wxFrameGTK : public wxFrameBase
 {
 public:
     // construction
-    wxFrame() { Init(); }
-    wxFrame(wxWindow *parent,
-            wxWindowID id,
-            const wxString& title,
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_FRAME_STYLE,
-            const wxString& name = wxFrameNameStr)
+    wxFrameGTK() { Init(); }
+    wxFrameGTK(wxWindow *parent,
+               wxWindowID id,
+               const wxString& title,
+               const wxPoint& pos = wxDefaultPosition,
+               const wxSize& size = wxDefaultSize,
+               long style = wxDEFAULT_FRAME_STYLE,
+               const wxString& name = wxFrameNameStr)
     {
         Init();
 
@@ -58,7 +56,7 @@ public:
                 long style = wxDEFAULT_FRAME_STYLE,
                 const wxString& name = wxFrameNameStr);
 
-    virtual ~wxFrame();
+    virtual ~wxFrameGTK();
 
     // implement base class pure virtuals
     virtual void Maximize(bool maximize = TRUE);
@@ -69,9 +67,12 @@ public:
     virtual void MakeModal(bool modal = TRUE);
     virtual void Restore();
 
-    virtual void SetMenuBar( wxMenuBar *menuBar );
+    virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL);
+    virtual bool IsFullScreen() const { return m_fsIsShowing; };
 
 #if wxUSE_STATUSBAR
+    virtual void PositionStatusBar();
+
     virtual wxStatusBar* CreateStatusBar(int number = 1,
                                          long style = wxST_SIZEGRIP,
                                          wxWindowID id = 0,
@@ -85,7 +86,7 @@ public:
     void SetToolBar(wxToolBar *toolbar);
 #endif // wxUSE_TOOLBAR
 
-    virtual bool Show(bool show);
+    virtual bool Show(bool show = TRUE);
 
     virtual void SetTitle( const wxString &title );
     virtual wxString GetTitle() const { return m_title; }
@@ -93,10 +94,17 @@ public:
     // implementation from now on
     // --------------------------
 
+    // move the window to the specified location and resize it: this is called
+    // from both DoSetSize() and DoSetClientSize()
+    virtual void DoMoveWindow(int x, int y, int width, int height);
+
     // GTK callbacks
     virtual void GtkOnSize( int x, int y, int width, int height );
     virtual void OnInternalIdle();
 
+    // do *not* call this to iconize the frame, this is a private function!
+    void SetIconizeState(bool iconic);
+
     wxString      m_title;
     int           m_miniEdge,
                   m_miniTitle;
@@ -105,6 +113,11 @@ public:
     bool          m_toolBarDetached;
     bool          m_insertInClientArea;  /* not from within OnCreateXXX */
 
+    bool          m_fsIsShowing;         /* full screen */
+    long          m_fsSaveStyle;
+    long          m_fsSaveFlag;
+    wxRect        m_fsSaveFrame;
+
 protected:
     // common part of all ctors
     void Init();
@@ -117,8 +130,13 @@ protected:
     virtual void DoSetClientSize(int width, int height);
     virtual void DoGetClientSize( int *width, int *height ) const;
 
-private:
-    DECLARE_DYNAMIC_CLASS(wxFrame)
+#if wxUSE_MENUS_NATIVE
+    virtual void DetachMenuBar();
+    virtual void AttachMenuBar(wxMenuBar *menubar);
+#endif // wxUSE_MENUS_NATIVE
+
+    // is the frame currently iconized?
+    bool m_isIconized;
 };
 
 #endif // __GTKFRAMEH__