class WXDLLEXPORT wxTopLevelWindowBase;
+// ----------------------------------------------------------------------------
+// constants
+// ----------------------------------------------------------------------------
+
// Dialogs are created in a special way
#define wxTOPLEVEL_EX_DIALOG 0x00000008
// 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
public:
// construction
wxTopLevelWindowBase();
+ virtual ~wxTopLevelWindowBase();
// top level wnd state
// --------------------
// 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!
// override some base class virtuals
virtual bool Destroy();
virtual bool IsTopLevel() const { return TRUE; }
+ virtual wxSize GetMaxSize() const;
// event handlers
void OnCloseWindow(wxCloseEvent& event);
// so should be there for all platforms
void OnActivate(wxActivateEvent &WXUNUSED(event)) { }
-#ifdef __DARWIN__
- virtual ~wxTopLevelWindowBase() {}
-#endif
-
protected:
// the frame client to screen translation should take account of the
// toolbar which may shift the origin of the client area
#elif defined(__WXGTK__)
#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(__WXMAC__)
+ #include "wx/mac/toplevel.h"
+ #define wxTopLevelWindowNative wxTopLevelWindowMac
+#elif defined(__WXPM__)
+ #include "wx/os2/toplevel.h"
+ #define wxTopLevelWindowNative wxTopLevelWindowOS2
#endif
#ifdef __WXUNIVERSAL__
#endif // _WX_TOPLEVEL_BASE_H_
+
+// vi:sts=4:sw=4:et