X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c9d59ee7e0cbe4acae6153adafb5ddce9a4e65dd..acc476c530e1730d9202b404ec0b0b87ae44ced6:/src/common/ctrlcmn.cpp diff --git a/src/common/ctrlcmn.cpp b/src/common/ctrlcmn.cpp index 36a45a6c15..7265096e4a 100644 --- a/src/common/ctrlcmn.cpp +++ b/src/common/ctrlcmn.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: ctrlcmn.cpp +// Name: src/common/ctrlcmn.cpp // Purpose: wxControl common interface // Author: Vadim Zeitlin // Modified by: @@ -17,11 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma implementation "controlbase.h" - #pragma implementation "statbmpbase.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -34,6 +29,7 @@ #ifndef WX_PRECOMP #include "wx/control.h" #include "wx/log.h" + #include "wx/radiobut.h" #endif #if wxUSE_STATBMP @@ -129,6 +125,32 @@ bool wxControlBase::SetFont(const wxFont& font) return wxWindow::SetFont(font); } +// wxControl-specific processing after processing the update event +void wxControlBase::DoUpdateWindowUI(wxUpdateUIEvent& event) +{ + // call inherited + wxWindowBase::DoUpdateWindowUI(event); + + // update label + if ( event.GetSetText() ) + { + if ( event.GetText() != GetLabel() ) + SetLabel(event.GetText()); + } + + // Unfortunately we don't yet have common base class for + // wxRadioButton, so we handle updates of radiobuttons here. + // TODO: If once wxRadioButtonBase will exist, move this code there. +#if wxUSE_RADIOBTN + if ( event.GetSetChecked() ) + { + wxRadioButton *radiobtn = wxDynamicCastThis(wxRadioButton); + if ( radiobtn ) + radiobtn->SetValue(event.GetChecked()); + } +#endif // wxUSE_RADIOBTN +} + // ---------------------------------------------------------------------------- // wxStaticBitmap // ---------------------------------------------------------------------------- @@ -156,4 +178,3 @@ wxSize wxStaticBitmapBase::DoGetBestSize() const #endif // wxUSE_STATBMP #endif // wxUSE_CONTROLS -