#include "wx/accel.h"
#endif // wxUSE_ACCEL
+// when building wxUniv/Foo we don't want the code for native menu use to be
+// compiled in - it should only be used when building real wxFoo
+#ifdef __WXUNIVERSAL__
+ #define wxUSE_MENUS_NATIVE 0
+#else // __WXMSW__
+ #define wxUSE_MENUS_NATIVE wxUSE_MENUS
+#endif // __WXUNIVERSAL__/__WXMSW__
+
// ----------------------------------------------------------------------------
// forward declarations
// ----------------------------------------------------------------------------
// clear the window entirely
virtual void Clear() = 0;
+ // freeze the window: don't redraw it until it is thawed
+ virtual void Freeze() { }
+
+ // thaw the window: redraw it after it had been frozen
+ virtual void Thaw() { }
+
// adjust DC for drawing on this window
virtual void PrepareDC( wxDC & WXUNUSED(dc) ) { }
// include the declaration of the platform-specific class
#if defined(__WXMSW__)
- #if !defined(__WXUNIVERSAL__)
+ #ifdef __WXUNIVERSAL__
+ #define wxWindowNative wxWindowMSW
+ #else // !wxUniv
#define wxWindowMSW wxWindow
#define sm_classwxWindowMSW sm_classwxWindow
- #endif // wxUniv
+ #endif // wxUniv/!wxUniv
#include "wx/msw/window.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/window.h"
#elif defined(__WXGTK__)
- #if !defined(__WXUNIVERSAL__)
+ #ifdef __WXUNIVERSAL__
+ #define wxWindowNative wxWindowGTK
+ #else // !wxUniv
#define wxWindowGTK wxWindow
#define sm_classwxWindowGTK sm_classwxWindow
#endif // wxUniv
#elif defined(__WXQT__)
#include "wx/qt/window.h"
#elif defined(__WXMAC__)
+ #ifdef __WXUNIVERSAL__
+ #define wxWindowNative wxWindowMac
+ #else // !wxUniv
+ #define wxWindowMac wxWindow
+ #define sm_classwxWindowMac sm_classwxWindow
+ #endif // wxUniv
#include "wx/mac/window.h"
#elif defined(__WXPM__)
+ #ifdef __WXUNIVERSAL__
+ #define wxWindowNative wxWindowOS2
+ #else // !wxUniv
+ #define wxWindowOS2 wxWindow
+ #define sm_classwxWindowOS2 sm_classwxWindow
+ #endif // wxUniv/!wxUniv
#include "wx/os2/window.h"
#endif
// for wxUniversal, we now derive the real wxWindow from wxWindow<platform>,
// for the native ports we already have defined it above
#if defined(__WXUNIVERSAL__)
+ #ifndef wxWindowNative
+ #error "wxWindowNative must be defined above!"
+ #endif
+
#include "wx/univ/window.h"
#endif // wxUniv
// global functions
// ----------------------------------------------------------------------------
-WXDLLEXPORT extern wxWindow* wxGetActiveWindow();
-
// Find the wxWindow at the current mouse position, also returning the mouse
// position.
WXDLLEXPORT extern wxWindow* wxFindWindowAtPointer(wxPoint& pt);