extended wxWindow::MSWGetBgBrush() and wxControl::MSWControlColor() to work for arbitrary HWNDs and not just wxWindows: this allows us to draw proper background for slider labels and other subcontrols
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -84,7 +84,7 @@ public:
|
||||
// MSW only
|
||||
virtual bool MSWCommand(WXUINT param, WXWORD id);
|
||||
WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
|
||||
virtual WXHBRUSH MSWControlColor(WXHDC hDC);
|
||||
virtual WXHBRUSH MSWControlColor(WXHDC hDC, WXHWND hWnd);
|
||||
|
||||
protected:
|
||||
virtual void DoMoveWindow(int x, int y, int width, int height);
|
||||
|
@@ -72,7 +72,7 @@ public:
|
||||
|
||||
// default handling of WM_CTLCOLORxxx: this is public so that wxWindow
|
||||
// could call it
|
||||
virtual WXHBRUSH MSWControlColor(WXHDC pDC);
|
||||
virtual WXHBRUSH MSWControlColor(WXHDC pDC, WXHWND hWnd);
|
||||
|
||||
protected:
|
||||
// choose the default border for this window
|
||||
@@ -127,7 +127,7 @@ protected:
|
||||
// common part of the 3 functions above: pass wxNullColour to use the
|
||||
// appropriate background colour (meaning ours or our parents) or a fixed
|
||||
// one
|
||||
virtual WXHBRUSH DoMSWControlColor(WXHDC pDC, wxColour colBg);
|
||||
virtual WXHBRUSH DoMSWControlColor(WXHDC pDC, wxColour colBg, WXHWND hWnd);
|
||||
|
||||
// this is a helper for the derived class GetClassDefaultAttributes()
|
||||
// implementation: it returns the right colours for the classes which
|
||||
|
@@ -211,7 +211,7 @@ protected:
|
||||
void UpdateBgBrush();
|
||||
|
||||
// return the themed brush for painting our children
|
||||
virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindow *win);
|
||||
virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, WXHWND hWnd);
|
||||
|
||||
// draw child background
|
||||
virtual bool MSWPrintChild(WXHDC hDC, wxWindow *win);
|
||||
|
@@ -148,7 +148,7 @@ public:
|
||||
|
||||
virtual void Command(wxCommandEvent& event);
|
||||
virtual bool MSWCommand(WXUINT param, WXWORD id);
|
||||
virtual WXHBRUSH MSWControlColor(WXHDC hDC);
|
||||
virtual WXHBRUSH MSWControlColor(WXHDC hDC, WXHWND hWnd);
|
||||
|
||||
#if wxUSE_RICHEDIT
|
||||
virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
|
||||
|
@@ -365,15 +365,15 @@ public:
|
||||
//
|
||||
// the base class version returns a solid brush if we have a non default
|
||||
// background colour or 0 otherwise
|
||||
virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindow *child);
|
||||
virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, WXHWND hWnd);
|
||||
|
||||
// return the background brush to use for painting the given window by
|
||||
// quering the parent windows via their MSWGetBgBrushForChild() recursively
|
||||
//
|
||||
// winToPaint is normally NULL meaning this window itself, but it can also
|
||||
// hWndToPaint is normally NULL meaning this window itself, but it can also
|
||||
// be a child of this window which is used by the static box and could be
|
||||
// potentially useful for other transparent controls
|
||||
WXHBRUSH MSWGetBgBrush(WXHDC hDC, wxWindow *winToPaint = NULL);
|
||||
WXHBRUSH MSWGetBgBrush(WXHDC hDC, WXHWND hWndToPaint = NULL);
|
||||
|
||||
// gives the parent the possibility to draw its children background, e.g.
|
||||
// this is used by wxNotebook to do it using DrawThemeBackground()
|
||||
|
Reference in New Issue
Block a user