]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/window.h
Added wxWrapSizer (modified patch: [1826950] Wrapping Sizer) from Arne Steinarson
[wxWidgets.git] / include / wx / msw / window.h
index cd55625acd56b42b2d4fb2cff8550b605f6e5824..86bd78cda3c10e20eb0076604f2f3f54e6b403be 100644 (file)
@@ -59,8 +59,19 @@ public:
     virtual void Raise();
     virtual void Lower();
 
-    virtual bool Show( bool show = true );
-    virtual void DoEnable( bool enable );
+    virtual bool Show(bool show = true);
+    virtual bool ShowWithEffect(wxShowEffect effect,
+                                unsigned timeout = 0,
+                                wxDirection dir = wxBOTTOM)
+    {
+        return MSWShowWithEffect(true, effect, timeout, dir);
+    }
+    virtual bool HideWithEffect(wxShowEffect effect,
+                                unsigned timeout = 0,
+                                wxDirection dir = wxBOTTOM)
+    {
+        return MSWShowWithEffect(false, effect, timeout, dir);
+    }
 
     virtual void SetFocus();
     virtual void SetFocusFromKbd();
@@ -420,6 +431,11 @@ public:
         return true;
     }
 
+    // common part of Show/HideWithEffect()
+    bool MSWShowWithEffect(bool show,
+                           wxShowEffect effect,
+                           unsigned timeout,
+                           wxDirection dir);
 
     // Responds to colour changes: passes event on to children.
     void OnSysColourChanged(wxSysColourChangedEvent& event);
@@ -433,14 +449,6 @@ public:
     // check if a native double-buffering applies for this window
     virtual bool IsDoubleBuffered() const;
 
-    // this allows you to implement standard control borders without
-    // repeating the code in different classes that are not derived from
-    // wxControl
-    virtual wxBorder GetDefaultBorderForControl() const;
-
-    // choose the default border for this window
-    virtual wxBorder GetDefaultBorder() const;
-
     // synthesize a wxEVT_LEAVE_WINDOW event and set m_mouseInWindow to false
     void GenerateMouseLeave();
 
@@ -449,6 +457,17 @@ public:
     virtual void OnInternalIdle();
 
 protected:
+    // this allows you to implement standard control borders without
+    // repeating the code in different classes that are not derived from
+    // wxControl
+    virtual wxBorder GetDefaultBorderForControl() const;
+
+    // choose the default border for this window
+    virtual wxBorder GetDefaultBorder() const;
+
+    // Translate wxBORDER_THEME (and other border styles if necessary to the value
+    // that makes most sense for this Windows environment
+    virtual wxBorder TranslateBorder(wxBorder border) const;
 
 #if wxUSE_MENUS_NATIVE
     virtual bool DoPopupMenu( wxMenu *menu, int x, int y );
@@ -482,6 +501,8 @@ protected:
     virtual void DoCaptureMouse();
     virtual void DoReleaseMouse();
 
+    virtual void DoEnable(bool enable);
+
     // this simply moves/resizes the given HWND which is supposed to be our
     // sibling (this is useful for controls which are composite at MSW level
     // and for which DoMoveWindow() is not enough)