X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/52af3158e974b042008474268570f3bdb7ce95ee..9d5507f7a2701395e1d5c121bd877bb9066ee6ea:/src/msw/menu.cpp diff --git a/src/msw/menu.cpp b/src/msw/menu.cpp index 915992cf08..4c4383e467 100644 --- a/src/msw/menu.cpp +++ b/src/msw/menu.cpp @@ -97,7 +97,7 @@ typedef struct tagMENUINFO // ---------------------------------------------------------------------------- // the (popup) menu title has this special id -static const int idMenuTitle = -3; +static const UINT idMenuTitle = (UINT)-3; // ---------------------------------------------------------------------------- // private functions @@ -399,7 +399,7 @@ bool wxMenu::DoInsertOrAppend(wxMenuItem *pItem, size_t pos) flags |= MF_POPUP; } else { - id = pItem->GetId(); + id = pItem->GetMSWId(); } @@ -564,7 +564,7 @@ bool wxMenu::DoInsertOrAppend(wxMenuItem *pItem, size_t pos) // if we just appended the title, highlight it - if ( (int)id == idMenuTitle ) + if ( id == idMenuTitle ) { // visually select the menu title SetDefaultMenuItem(GetHmenu(), id); @@ -731,7 +731,7 @@ void wxMenu::SetTitle(const wxString& label) if ( !label.empty() ) { if ( !::InsertMenu(hMenu, 0u, MF_BYPOSITION | MF_STRING, - (unsigned)idMenuTitle, m_title.wx_str()) || + idMenuTitle, m_title.wx_str()) || !::InsertMenu(hMenu, 1u, MF_BYPOSITION, (unsigned)-1, NULL) ) { wxLogLastError(wxT("InsertMenu")); @@ -767,7 +767,7 @@ void wxMenu::SetTitle(const wxString& label) #else if ( !ModifyMenu(hMenu, 0u, MF_BYPOSITION | MF_STRING, - (unsigned)idMenuTitle, m_title.wx_str()) ) + idMenuTitle, m_title.wx_str()) ) { wxLogLastError(wxT("ModifyMenu")); } @@ -779,7 +779,7 @@ void wxMenu::SetTitle(const wxString& label) // put the title string in bold face if ( !m_title.empty() ) { - SetDefaultMenuItem(GetHmenu(), (UINT)idMenuTitle); + SetDefaultMenuItem(GetHmenu(), idMenuTitle); } #endif // Win32 } @@ -788,10 +788,12 @@ void wxMenu::SetTitle(const wxString& label) // event processing // --------------------------------------------------------------------------- -bool wxMenu::MSWCommand(WXUINT WXUNUSED(param), WXWORD id) +bool wxMenu::MSWCommand(WXUINT WXUNUSED(param), WXWORD id_) { + const int id = (signed short)id_; + // ignore commands from the menu title - if ( id != (WXWORD)idMenuTitle ) + if ( id != idMenuTitle ) { // update the check item when it's clicked wxMenuItem * const item = FindItem(id);