]> git.saurik.com Git - wxWidgets.git/commitdiff
making sure
authorStefan Csomor <csomor@advancedconcepts.ch>
Tue, 31 May 2011 08:09:18 +0000 (08:09 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Tue, 31 May 2011 08:09:18 +0000 (08:09 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/osx/carbon/uma.cpp
src/osx/cocoa/menuitem.mm
src/osx/cocoa/nonownedwnd.mm

index 8606c1196f6afe4d79bc83d8ef8e81b76236e821..fd077da11327988badae674aea1ef585b81a4db9 100644 (file)
@@ -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() ;
index c0e1b058f6c9e55ef27b7798151b8316e5b9cd1b..969a11b44c2b67eab48a96574eceec3c9ab45d59 100644 (file)
@@ -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;
     }
index b618ff5938a474dc805aaa8c2d53d71b4a6aba1d..02664d20f71b5c5da901ec4ac8af5aefc88a9d3b 100644 (file)
@@ -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;