]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/frame.h
test for wxLog interaction with wxYield better
[wxWidgets.git] / include / wx / gtk / frame.h
index 34cb29433b0036d9f9ae3c03f40a6ea20e3ca7d7..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,7 +67,8 @@ 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();
@@ -96,13 +95,16 @@ public:
     // --------------------------
 
     // move the window to the specified location and resize it: this is called
-    // from both DoSetSize() and DoSetClientSize() 
+    // 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;
@@ -111,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();
@@ -123,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__