X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5c836c463a8ece980b66ebc9920f1b045d9a8f33..b6e8e2417d16a66fcf19375e74109f3a62d0fde4:/include/wx/msw/notebook.h diff --git a/include/wx/msw/notebook.h b/include/wx/msw/notebook.h index f732ce9da5..01e861258a 100644 --- a/include/wx/msw/notebook.h +++ b/include/wx/msw/notebook.h @@ -162,14 +162,18 @@ public: // ------------------- #if wxUSE_UXTHEME - // handler for child pages erase background event - void DoEraseBackground(wxEraseEvent& event); + virtual bool SetBackgroundColour(const wxColour& colour) + { + if ( !wxNotebookBase::SetBackgroundColour(colour) ) + return false; - // get the brush to be used for painting the background for the controls - // which need it in their MSWControlColor() - // - // the brush will be adjusted for use with the given window on this DC - WXHBRUSH GetThemeBackgroundBrush(WXHDC hDC, wxWindow *win) const; + UpdateBgBrush(); + + return true; + } + + virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindow *win); + virtual wxColour MSWGetBgColourForChild(wxWindow *win); #endif // wxUSE_UXTHEME protected: @@ -186,6 +190,14 @@ protected: void AdjustPageSize(wxNotebookPage *page); #if wxUSE_UXTHEME + // this is a slightly ugly function which gets the bitmap of notebook + // background and either returns the colour under the specified window in it + // or creates a brush from it + // + // so if win == NULL, a brush is created and returned + // win != NULL, returns COLORREF of the pixel under its top left corner + WXHANDLE QueryBgBitmap(wxWindow *win = NULL); + // creates the brush to be used for drawing the tab control background void UpdateBgBrush(); #endif // wxUSE_UXTHEME