}
mii.cch = itemText.length();
- mii.dwTypeData = wx_const_cast(wxChar *, itemText.c_str());
+ mii.dwTypeData = wx_const_cast(wxChar *, itemText.wx_str());
if (flags & MF_POPUP)
{
itemText = wxMenuItem::GetLabelFromText(itemText);
#endif
- pData = (wxChar*)itemText.c_str();
+ pData = (wxChar*)itemText.wx_str();
}
// item might have already been inserted by InsertMenuItem() above
if ( item && item->IsCheckable() )
item->Toggle();
- // get the checked status of the menu item: note that menuState is the
- // old state of the menu, so the test for MF_CHECKED must be inverted
+ // get the status of the menu item: note that it has been just changed
+ // by Toggle() above so here we already get the new state of the item
UINT menuState = ::GetMenuState(GetHmenu(), id, MF_BYCOMMAND);
- SendEvent(id, !(menuState & MF_CHECKED));
+ SendEvent(id, menuState & MF_CHECKED);
}
return true;