void BitmapToggleButton::DoUpdateWindowUI(wxUpdateUIEvent& event) { if (event.GetSetEnabled() && IsEnabled() != event.GetEnabled()) { Enable(event.GetEnabled()); Refresh(); } if (event.GetSetChecked()) { if (m_state != event.GetChecked()) { m_state = event.GetChecked(); Refresh(); } } }
// 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 }
int bmx_wxupdateeventui_getchecked(wxUpdateUIEvent & event) { return static_cast<int>(event.GetChecked()); }