X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/223d09f6b523aac674ef9b72a883dfa8d37c5d4e..228de783a9c2ae9dbb7cb9d5219510e2a4d46e18:/src/msw/menu.cpp?ds=sidebyside diff --git a/src/msw/menu.cpp b/src/msw/menu.cpp index 8e19e7acb3..4cca3f9e59 100644 --- a/src/msw/menu.cpp +++ b/src/msw/menu.cpp @@ -178,7 +178,7 @@ void wxMenu::Append(wxMenuItem *pItem) keyCode = wxToupper(current[0U]); } else { - // it should be a function key + // is it a function key? if ( current[0U] == 'f' && isdigit(current[1U]) && (current.Len() == 2 || (current.Len() == 3 && isdigit(current[2U]))) ) { @@ -188,8 +188,21 @@ void wxMenu::Append(wxMenuItem *pItem) keyCode = VK_F1 + n - 1; } else { - wxLogDebug(wxT("Unrecognized accel key '%s', accel " - "string ignored."), current.c_str()); + // several special cases + current.MakeUpper(); + if ( current == wxT("DEL") ) { + keyCode = VK_DELETE; + } + else if ( current == wxT("PGUP") ) { + keyCode = VK_PRIOR; + } + else if ( current == wxT("PGDN") ) { + keyCode = VK_NEXT; + } + else { + wxLogDebug(wxT("Unrecognized accel key '%s', accel " + "string ignored."), current.c_str()); + } } } } @@ -258,7 +271,7 @@ void wxMenu::Append(wxMenuItem *pItem) else { #ifdef __WIN32__ - if ( id == idMenuTitle ) + if ( (int)id == idMenuTitle ) { // visually select the menu title MENUITEMINFO mii; @@ -855,7 +868,7 @@ void wxMenuBar::SetLabelTop(int pos, const wxString& label) } if ( ::ModifyMenu(GetHmenu(), pos, MF_BYPOSITION | MF_STRING | flagsOld, - id, label) == 0xFFFFFFFF ) + id, label) == (int)0xFFFFFFFF ) { wxLogLastError("ModifyMenu"); } @@ -1094,7 +1107,7 @@ void wxMenuBar::Attach(wxFrame *frame) void wxMenuBar::Detach() { // ::DestroyMenu((HMENU)m_hMenu); - m_hMenu = NULL; + m_hMenu = (WXHMENU)NULL; m_menuBarFrame = NULL; }