fix for toolbar radio buttons event generation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -630,6 +630,8 @@ bool wxToolBar::Realize()
|
|||||||
// default to be consistent with wxGTK and the menu
|
// default to be consistent with wxGTK and the menu
|
||||||
// radio items
|
// radio items
|
||||||
button.fsState |= TBSTATE_CHECKED;
|
button.fsState |= TBSTATE_CHECKED;
|
||||||
|
|
||||||
|
tool->Toggle(TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
isRadio = TRUE;
|
isRadio = TRUE;
|
||||||
@@ -829,6 +831,13 @@ bool wxToolBar::MSWCommand(WXUINT WXUNUSED(cmd), WXWORD id)
|
|||||||
|
|
||||||
bool toggled = tool->IsToggled();
|
bool toggled = tool->IsToggled();
|
||||||
|
|
||||||
|
// avoid sending the event when a radio button is released, this is not
|
||||||
|
// interesting
|
||||||
|
if ( tool->CanBeToggled() && tool->GetKind() == wxITEM_RADIO && !toggled )
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// OnLeftClick() can veto the button state change - for buttons which may
|
// OnLeftClick() can veto the button state change - for buttons which may
|
||||||
// be toggled only, of couse
|
// be toggled only, of couse
|
||||||
if ( !OnLeftClick((int)id, toggled) && tool->CanBeToggled() )
|
if ( !OnLeftClick((int)id, toggled) && tool->CanBeToggled() )
|
||||||
|
Reference in New Issue
Block a user