]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/toplevel.h
wxStyledTextCtrl can now be built and used when wxUSE_UNICODE==1.
[wxWidgets.git] / include / wx / toplevel.h
index bf5fe88226a4fc64beec88a614403d477605595a..ae36a9fa4224e9e3d94832ede7ffb5cd8db18222 100644 (file)
@@ -30,18 +30,28 @@ WXDLLEXPORT_DATA(extern const wxChar*) wxFrameNameStr;
 
 class WXDLLEXPORT wxTopLevelWindowBase;
 
 
 class WXDLLEXPORT wxTopLevelWindowBase;
 
+// ----------------------------------------------------------------------------
+// constants
+// ----------------------------------------------------------------------------
+
 // Dialogs are created in a special way
 // Dialogs are created in a special way
-#define wxTLW_EX_DIALOG             0x00000008
+#define wxTOPLEVEL_EX_DIALOG        0x00000008
 
 // Styles for ShowFullScreen
 // (note that wxTopLevelWindow only handles wxFULLSCREEN_NOBORDER and
 //  wxFULLSCREEN_NOCAPTION; the rest is handled by wxTopLevelWindow)
 
 // Styles for ShowFullScreen
 // (note that wxTopLevelWindow only handles wxFULLSCREEN_NOBORDER and
 //  wxFULLSCREEN_NOCAPTION; the rest is handled by wxTopLevelWindow)
-#define wxFULLSCREEN_NOMENUBAR      0x01
-#define wxFULLSCREEN_NOTOOLBAR      0x02
-#define wxFULLSCREEN_NOSTATUSBAR    0x04
-#define wxFULLSCREEN_NOBORDER       0x08
-#define wxFULLSCREEN_NOCAPTION      0x10
-#define wxFULLSCREEN_ALL            (wxFULLSCREEN_NOMENUBAR | wxFULLSCREEN_NOTOOLBAR | wxFULLSCREEN_NOSTATUSBAR | wxFULLSCREEN_NOBORDER | wxFULLSCREEN_NOCAPTION)
+enum
+{
+    wxFULLSCREEN_NOMENUBAR   = 0x0001,
+    wxFULLSCREEN_NOTOOLBAR   = 0x0002,
+    wxFULLSCREEN_NOSTATUSBAR = 0x0004,
+    wxFULLSCREEN_NOBORDER    = 0x0008,
+    wxFULLSCREEN_NOCAPTION   = 0x0010,
+
+    wxFULLSCREEN_ALL         = wxFULLSCREEN_NOMENUBAR | wxFULLSCREEN_NOTOOLBAR |
+                               wxFULLSCREEN_NOSTATUSBAR | wxFULLSCREEN_NOBORDER |
+                               wxFULLSCREEN_NOCAPTION
+};
 
 // ----------------------------------------------------------------------------
 // wxTopLevelWindow: a top level (as opposed to child) window
 
 // ----------------------------------------------------------------------------
 // wxTopLevelWindow: a top level (as opposed to child) window
@@ -52,10 +62,8 @@ class WXDLLEXPORT wxTopLevelWindowBase : public wxWindow
 public:
     // construction
     wxTopLevelWindowBase();
 public:
     // construction
     wxTopLevelWindowBase();
-#ifdef __DARWIN__
-    virtual ~wxTopLevelWindowBase() {}
-#endif
-    
+    virtual ~wxTopLevelWindowBase();
+
     // top level wnd state
     // --------------------
 
     // top level wnd state
     // --------------------
 
@@ -80,6 +88,12 @@ public:
     // set the frame icon
     virtual void SetIcon(const wxIcon& icon) { m_icon = icon; }
 
     // set the frame icon
     virtual void SetIcon(const wxIcon& icon) { m_icon = icon; }
 
+    // maximize the window to cover entire screen
+    virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL) = 0;
+
+    // return TRUE if the frame is in fullscreen mode
+    virtual bool IsFullScreen() const = 0;
+
     /*
        for now we already have them in wxWindow, but this is wrong: these
        methods really only make sense for wxTopLevelWindow!
     /*
        for now we already have them in wxWindow, but this is wrong: these
        methods really only make sense for wxTopLevelWindow!
@@ -99,6 +113,7 @@ public:
     // override some base class virtuals
     virtual bool Destroy();
     virtual bool IsTopLevel() const { return TRUE; }
     // override some base class virtuals
     virtual bool Destroy();
     virtual bool IsTopLevel() const { return TRUE; }
+    virtual wxSize GetMaxSize() const;
 
     // event handlers
     void OnCloseWindow(wxCloseEvent& event);
 
     // event handlers
     void OnCloseWindow(wxCloseEvent& event);
@@ -129,12 +144,24 @@ protected:
 
 
 // include the real class declaration
 
 
 // include the real class declaration
-#if defined(__WXGTK__)
+#if defined(__WXMSW__)
+    #include "wx/msw/toplevel.h"
+    #define wxTopLevelWindowNative wxTopLevelWindowMSW
+#elif defined(__WXGTK__)
     #include "wx/gtk/toplevel.h"
     #define wxTopLevelWindowNative wxTopLevelWindowGTK
     #include "wx/gtk/toplevel.h"
     #define wxTopLevelWindowNative wxTopLevelWindowGTK
+#elif defined(__WXX11__)
+    #include "wx/x11/toplevel.h"
+    #define wxTopLevelWindowNative wxTopLevelWindowX11
 #elif defined(__WXMGL__)
     #include "wx/mgl/toplevel.h"
     #define wxTopLevelWindowNative wxTopLevelWindowMGL
 #elif defined(__WXMGL__)
     #include "wx/mgl/toplevel.h"
     #define wxTopLevelWindowNative wxTopLevelWindowMGL
+#elif defined(__WXMAC__)
+    #include "wx/mac/toplevel.h"
+    #define wxTopLevelWindowNative wxTopLevelWindowMac
+#elif defined(__WXPM__)
+    #include "wx/os2/toplevel.h"
+    #define wxTopLevelWindowNative wxTopLevelWindowOS2
 #endif
 
 #ifdef __WXUNIVERSAL__
 #endif
 
 #ifdef __WXUNIVERSAL__
@@ -165,3 +192,5 @@ protected:
 
 
 #endif // _WX_TOPLEVEL_BASE_H_
 
 
 #endif // _WX_TOPLEVEL_BASE_H_
+
+// vi:sts=4:sw=4:et