X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ad81651f00edc6f489d9b6a0839d316a964fd521..d4aa3a4b860a70c27421411fbc778fc5914f1815:/src/msw/control.cpp diff --git a/src/msw/control.cpp b/src/msw/control.cpp index f6f67bac35..89ddd5c546 100644 --- a/src/msw/control.cpp +++ b/src/msw/control.cpp @@ -56,6 +56,22 @@ wxControl::~wxControl() m_isBeingDeleted = TRUE; } + +bool wxControl::Create(wxWindow *parent, wxWindowID id, + const wxPoint& pos, + const wxSize& size, long style, + const wxValidator& validator, + const wxString& name) +{ + bool rval = wxWindow::Create(parent, id, pos, size, style, name); + if (rval) { +#if wxUSE_VALIDATORS + SetValidator(validator); +#endif + } + return rval; +} + bool wxControl::MSWCreateControl(const wxChar *classname, WXDWORD style, const wxPoint& pos, @@ -188,10 +204,9 @@ bool wxControl::MSWOnNotify(int idCtrl, void wxControl::OnEraseBackground(wxEraseEvent& event) { - // In general, you don't want to erase the background of a control, - // or you'll get a flicker. - // TODO: move this 'null' function into each control that - // might flicker. + // notice that this 'dumb' implementation may cause flicker for some of the + // controls in which case they should intercept wxEraseEvent and process it + // themselves somehow RECT rect; ::GetClientRect(GetHwnd(), &rect);