making sure

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2011-05-31 08:09:18 +00:00
parent 1ee1662007
commit 40a35c1f87
3 changed files with 19 additions and 9 deletions

View File

@@ -79,7 +79,10 @@ void UMAInsertSubMenuItem( MenuRef menu , const wxString& title, wxFontEncoding
void UMASetMenuItemShortcut( MenuRef menu , MenuItemIndex item , wxAcceleratorEntry *entry ) void UMASetMenuItemShortcut( MenuRef menu , MenuItemIndex item , wxAcceleratorEntry *entry )
{ {
if ( !entry ) if ( !entry )
{
SetMenuItemCommandKey(menu, item, false, 0);
return ; return ;
}
UInt8 modifiers = 0 ; UInt8 modifiers = 0 ;
SInt16 key = entry->GetKeyCode() ; SInt16 key = entry->GetKeyCode() ;

View File

@@ -100,8 +100,12 @@ SEL wxOSXGetSelectorFromID(int menuId )
wxUnusedVar(menuItem); wxUnusedVar(menuItem);
if( impl ) if( impl )
{ {
if ( impl->GetWXPeer()->GetMenu()->HandleCommandUpdateStatus(impl->GetWXPeer()) ) wxMenuItem* wxmenuitem = impl->GetWXPeer();
return impl->GetWXPeer()->IsEnabled(); if ( wxmenuitem )
{
wxmenuitem->GetMenu()->HandleCommandUpdateStatus(wxmenuitem);
return wxmenuitem->IsEnabled();
}
} }
return YES ; return YES ;
} }
@@ -120,6 +124,12 @@ SEL wxOSXGetSelectorFromID(int menuId )
void wxMacCocoaMenuItemSetAccelerator( NSMenuItem* menuItem, wxAcceleratorEntry* entry ) void wxMacCocoaMenuItemSetAccelerator( NSMenuItem* menuItem, wxAcceleratorEntry* entry )
{ {
if ( entry == NULL )
{
[menuItem setKeyEquivalent:@""];
return;
}
unsigned int modifiers = 0 ; unsigned int modifiers = 0 ;
int key = entry->GetKeyCode() ; int key = entry->GetKeyCode() ;
if ( key ) if ( key )
@@ -256,9 +266,7 @@ public :
wxCFStringRef cfText(text); wxCFStringRef cfText(text);
[m_osxMenuItem setTitle:cfText.AsNSString()]; [m_osxMenuItem setTitle:cfText.AsNSString()];
if ( entry )
wxMacCocoaMenuItemSetAccelerator( m_osxMenuItem, entry ); wxMacCocoaMenuItemSetAccelerator( m_osxMenuItem, entry );
} }
bool DoDefault(); bool DoDefault();
@@ -342,7 +350,6 @@ wxMenuItemImpl* wxMenuItemImpl::Create( wxMenuItem* peer, wxMenu *pParentMenu,
} }
else else
{ {
if ( entry )
wxMacCocoaMenuItemSetAccelerator( menuitem, entry ); wxMacCocoaMenuItemSetAccelerator( menuitem, entry );
} }
item = menuitem; item = menuitem;

View File

@@ -299,7 +299,7 @@ extern int wxOSXGetIdFromSelector(SEL action );
wxMenuItem* menuitem = mbar->FindItem(wxOSXGetIdFromSelector(action), &menu); wxMenuItem* menuitem = mbar->FindItem(wxOSXGetIdFromSelector(action), &menu);
if ( menu != NULL && menuitem != NULL) if ( menu != NULL && menuitem != NULL)
{ {
if ( menu->HandleCommandUpdateStatus(menuitem) ) menu->HandleCommandUpdateStatus(menuitem);
return menuitem->IsEnabled(); return menuitem->IsEnabled();
} }
} }