added MSWAlwaysDrawBg() to account for controls such as sliders which must not draw background with transparent brush no matter what
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -133,6 +133,14 @@ protected:
|
|||||||
// common part of the 3 methods above
|
// common part of the 3 methods above
|
||||||
WXHBRUSH MSWControlColorSolid(WXHDC pDC, wxColour colBg);
|
WXHBRUSH MSWControlColorSolid(WXHDC pDC, wxColour colBg);
|
||||||
|
|
||||||
|
// another WM_CTLCOLOR-related function: if it returns false, we return
|
||||||
|
// NULL_BRUSH from MSWControlColor() to prevent the system from erasing the
|
||||||
|
// background at all
|
||||||
|
//
|
||||||
|
// override this function to return true for controls which do want to
|
||||||
|
// draw their background themselves
|
||||||
|
virtual bool MSWAlwaysDrawBg() const { return false; }
|
||||||
|
|
||||||
// this is a helper for the derived class GetClassDefaultAttributes()
|
// this is a helper for the derived class GetClassDefaultAttributes()
|
||||||
// implementation: it returns the right colours for the classes which
|
// implementation: it returns the right colours for the classes which
|
||||||
// contain something else (e.g. wxListBox, wxTextCtrl, ...) instead of
|
// contain something else (e.g. wxListBox, wxTextCtrl, ...) instead of
|
||||||
|
@@ -371,7 +371,7 @@ WXHBRUSH wxControl::MSWControlColor(WXHDC pDC)
|
|||||||
}
|
}
|
||||||
#endif // wxUSE_UXTHEME
|
#endif // wxUSE_UXTHEME
|
||||||
|
|
||||||
return ::GetStockObject(NULL_BRUSH);
|
return MSWAlwaysDrawBg() ? 0 : ::GetStockObject(NULL_BRUSH);
|
||||||
}
|
}
|
||||||
|
|
||||||
WXHBRUSH wxControl::MSWControlColorDisabled(WXHDC pDC)
|
WXHBRUSH wxControl::MSWControlColorDisabled(WXHDC pDC)
|
||||||
|
Reference in New Issue
Block a user