case wxID_SEPARATOR:
m_id = wxID_SEPARATOR;
- m_kind = wxITEM_SEPARATOR;
+
+ // there is a lot of existing code just doing Append(wxID_SEPARATOR)
+ // and it makes sense to omit the following optional parameters,
+ // including the kind one which doesn't default to wxITEM_SEPARATOR,
+ // of course, so override it here
+ kind = wxITEM_SEPARATOR;
+ break;
+
+ case wxID_NONE:
+ // (popup) menu titles in wxMSW use this ID to indicate that
+ // it's not a real menu item, so we don't want the check below to
+ // apply to it
+ m_id = id;
break;
default:
m_subMenu = subMenu;
m_isEnabled = true;
m_isChecked = false;
- m_id = id;
m_kind = kind;
SetItemLabel(text);
wxAcceleratorEntry *wxMenuItemBase::GetAccel() const
{
- return wxAcceleratorEntry::Create(GetItemLabel());
+ const wxString accel = GetItemLabel().AfterFirst(wxT('\t'));
+
+ return accel.empty() ? NULL : wxAcceleratorEntry::Create(accel);
}
void wxMenuItemBase::SetAccel(wxAcceleratorEntry *accel)