From: Stefan Csomor Date: Tue, 31 May 2011 08:09:18 +0000 (+0000) Subject: making sure X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/40a35c1f8732ad993e4c496976f7cfe1ed8060f8 making sure git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/osx/carbon/uma.cpp b/src/osx/carbon/uma.cpp index 8606c1196f..fd077da113 100644 --- a/src/osx/carbon/uma.cpp +++ b/src/osx/carbon/uma.cpp @@ -79,7 +79,10 @@ void UMAInsertSubMenuItem( MenuRef menu , const wxString& title, wxFontEncoding void UMASetMenuItemShortcut( MenuRef menu , MenuItemIndex item , wxAcceleratorEntry *entry ) { if ( !entry ) + { + SetMenuItemCommandKey(menu, item, false, 0); return ; + } UInt8 modifiers = 0 ; SInt16 key = entry->GetKeyCode() ; diff --git a/src/osx/cocoa/menuitem.mm b/src/osx/cocoa/menuitem.mm index c0e1b058f6..969a11b44c 100644 --- a/src/osx/cocoa/menuitem.mm +++ b/src/osx/cocoa/menuitem.mm @@ -100,8 +100,12 @@ SEL wxOSXGetSelectorFromID(int menuId ) wxUnusedVar(menuItem); if( impl ) { - if ( impl->GetWXPeer()->GetMenu()->HandleCommandUpdateStatus(impl->GetWXPeer()) ) - return impl->GetWXPeer()->IsEnabled(); + wxMenuItem* wxmenuitem = impl->GetWXPeer(); + if ( wxmenuitem ) + { + wxmenuitem->GetMenu()->HandleCommandUpdateStatus(wxmenuitem); + return wxmenuitem->IsEnabled(); + } } return YES ; } @@ -120,6 +124,12 @@ SEL wxOSXGetSelectorFromID(int menuId ) void wxMacCocoaMenuItemSetAccelerator( NSMenuItem* menuItem, wxAcceleratorEntry* entry ) { + if ( entry == NULL ) + { + [menuItem setKeyEquivalent:@""]; + return; + } + unsigned int modifiers = 0 ; int key = entry->GetKeyCode() ; if ( key ) @@ -256,9 +266,7 @@ public : wxCFStringRef cfText(text); [m_osxMenuItem setTitle:cfText.AsNSString()]; - if ( entry ) - wxMacCocoaMenuItemSetAccelerator( m_osxMenuItem, entry ); - + wxMacCocoaMenuItemSetAccelerator( m_osxMenuItem, entry ); } bool DoDefault(); @@ -342,8 +350,7 @@ wxMenuItemImpl* wxMenuItemImpl::Create( wxMenuItem* peer, wxMenu *pParentMenu, } else { - if ( entry ) - wxMacCocoaMenuItemSetAccelerator( menuitem, entry ); + wxMacCocoaMenuItemSetAccelerator( menuitem, entry ); } item = menuitem; } diff --git a/src/osx/cocoa/nonownedwnd.mm b/src/osx/cocoa/nonownedwnd.mm index b618ff5938..02664d20f7 100644 --- a/src/osx/cocoa/nonownedwnd.mm +++ b/src/osx/cocoa/nonownedwnd.mm @@ -299,8 +299,8 @@ extern int wxOSXGetIdFromSelector(SEL action ); wxMenuItem* menuitem = mbar->FindItem(wxOSXGetIdFromSelector(action), &menu); if ( menu != NULL && menuitem != NULL) { - if ( menu->HandleCommandUpdateStatus(menuitem) ) - return menuitem->IsEnabled(); + menu->HandleCommandUpdateStatus(menuitem); + return menuitem->IsEnabled(); } } return YES;