]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/control.h
Fix for assert after left click on tree in generic dir dialog in native MSW build...
[wxWidgets.git] / include / wx / msw / control.h
index 5862700b8be0bf604aa23e79b11ac07a709fff7c..574d84a74b1dfa94307ad9f58faa6319ee24d88e 100644 (file)
@@ -70,9 +70,6 @@ public:
 
     const wxArrayLong& GetSubcontrols() const { return m_subControls; }
 
-    virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
-            WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
-
 protected:
     // choose the default border for this window
     virtual wxBorder GetDefaultBorder() const;
@@ -119,6 +116,23 @@ protected:
     // default style for the control include WS_TABSTOP if it AcceptsFocus()
     virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const;
 
+    // default handling of WM_CTLCOLORxxx
+    virtual WXHBRUSH MSWControlColor(WXHDC pDC);
+
+    // call this from the derived class MSWControlColor() if you want to show
+    // the control greyed out
+    WXHBRUSH MSWControlColorDisabled(WXHDC pDC);
+
+    // call this from the derived class MSWControlColor() if you want to always
+    // paint the background (as all opaque controls do)
+    WXHBRUSH MSWControlColorSolid(WXHDC pDC)
+    {
+        return MSWControlColorSolid(pDC, GetBackgroundColour());
+    }
+
+    // common part of the 3 methods above
+    WXHBRUSH MSWControlColorSolid(WXHDC pDC, wxColour colBg);
+
     // this is a helper for the derived class GetClassDefaultAttributes()
     // implementation: it returns the right colours for the classes which
     // contain something else (e.g. wxListBox, wxTextCtrl, ...) instead of