From: Vadim Zeitlin <vadim@wxwidgets.org> Date: Sun, 20 Feb 2005 00:12:01 +0000 (+0000) Subject: added OnSysColourChanged() (modified patch 1103439) X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/afad4a880e65b7a496c03e09b71c40772c816004 added OnSysColourChanged() (modified patch 1103439) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/univ/frame.h b/include/wx/univ/frame.h index 8a5617f53e..03f550957e 100644 --- a/include/wx/univ/frame.h +++ b/include/wx/univ/frame.h @@ -69,6 +69,7 @@ public: protected: void OnSize(wxSizeEvent& event); + void OnSysColourChanged(wxSysColourChangedEvent& event); virtual void DoGetClientSize(int *width, int *height) const; virtual void DoSetClientSize(int width, int height); diff --git a/src/univ/framuniv.cpp b/src/univ/framuniv.cpp index f2fe6fdc37..7f179b0eee 100644 --- a/src/univ/framuniv.cpp +++ b/src/univ/framuniv.cpp @@ -32,6 +32,7 @@ #ifndef WX_PRECOMP #include "wx/frame.h" #include "wx/statusbr.h" + #include "wx/settings.h" #include "wx/toolbar.h" #endif // WX_PRECOMP @@ -41,6 +42,7 @@ BEGIN_EVENT_TABLE(wxFrame, wxFrameBase) EVT_SIZE(wxFrame::OnSize) + EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged) END_EVENT_TABLE() IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow) @@ -57,9 +59,22 @@ bool wxFrame::Create(wxWindow *parent, long style, const wxString& name) { - return wxTopLevelWindow::Create(parent, id, title, pos, size, style, name); + if ( !wxTopLevelWindow::Create(parent, id, title, pos, size, style, name) ) + return false; + + SetOwnBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE)); + + return true; } +// Responds to colour changes, and passes event on to children. +void wxFrame::OnSysColourChanged(wxSysColourChangedEvent& event) +{ + SetOwnBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE)); + Refresh(); + + event.Skip(); +} // ---------------------------------------------------------------------------- // menu support