]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/univ/window.h
Window management and sizer layout corrections
[wxWidgets.git] / include / wx / univ / window.h
index 4af5b3fb228c8426298fab74cc1e94101b7037f9..8a53c0b34e886ad0fab127ed2878647d065833e2 100644 (file)
@@ -7,7 +7,7 @@
 // Modified by:
 // Created:     06.08.00
 // RCS-ID:      $Id$
-// Copyright:   (c) 2000 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
+// Copyright:   (c) 2000 SciTech Software, Inc. (www.scitechsoft.com)
 // Licence:     wxWindows license
 ///////////////////////////////////////////////////////////////////////////////
 
@@ -55,10 +55,22 @@ enum
 // wxWindow
 // ----------------------------------------------------------------------------
 
+#if defined(__WXMSW__)
+#define wxWindowNative wxWindowMSW
+#elif defined(__WXGTK__)
+#define wxWindowNative wxWindowGTK
+#elif defined(__WXMGL__)
+#define wxWindowNative wxWindowMGL
+#elif defined(__WXX11__)
+#define wxWindowNative wxWindowX11
+#elif defined(__WXMAC__)
+#define wxWindowNative wxWindowMac
+#endif
+
 class WXDLLEXPORT wxWindow : public wxWindowNative
 {
 public:
-    // ctors and creatie functions
+    // ctors and create functions
     // ---------------------------
 
     wxWindow() { Init(); }
@@ -163,6 +175,10 @@ public:
     bool UseFgCol() const { return m_hasFgCol; }
     bool UseFont() const { return m_hasFont; }
 
+    // return TRUE if this window serves as a container for the other windows
+    // only and doesn't get any input itself
+    virtual bool IsStaticBox() const { return FALSE; }
+
     // returns the (low level) renderer to use for drawing the control by
     // querying the current theme
     wxRenderer *GetRenderer() const { return m_renderer; }
@@ -190,18 +206,6 @@ public:
     // we refresh the window when it is dis/enabled
     virtual bool Enable(bool enable = TRUE);
 
-    // remember that the font/colour was changed
-    virtual bool SetBackgroundColour(const wxColour& colour);
-    virtual bool SetForegroundColour(const wxColour& colour);
-    virtual bool SetFont(const wxFont& font);
-
-    // our Capture/ReleaseMouse() maintains the stack of windows which had
-    // captured the mouse and when ReleaseMouse() is called, the mouse freed
-    // only if the stack is empty, otherwise it is captured back by the window
-    // on top of the stack
-    virtual void CaptureMouse();
-    virtual void ReleaseMouse();
-
 protected:
     // common part of all ctors
     void Init();
@@ -262,20 +266,19 @@ protected:
     int       m_alignBgBitmap;
     wxStretch m_stretchBgBitmap;
 
-    // more flags
-    bool m_isCurrent:1; // is the mouse currently inside the window?
-    bool m_hasBgCol:1;  // was the bg colour explicitly changed by user?
-    bool m_hasFgCol:1;  //         fg
-    bool m_hasFont:1;   //         font
+    // is the mouse currently inside the window?
+    bool m_isCurrent:1;
+
+#ifdef __WXMSW__
+    // override MSWWindowProc() to process WM_NCHITTEST
+    long MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
+#endif // __WXMSW__
 
 private:
     // the window scrollbars
     wxScrollBar *m_scrollbarHorz,
                 *m_scrollbarVert;
 
-    // the stack of windows which have captured the mouse
-    static struct WXDLLEXPORT wxWindowNext *ms_winCaptureNext;
-
 #if wxUSE_MENUS
     // the current modal event loop for the popup menu we show or NULL
     static wxEventLoop *ms_evtLoopPopup;