X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b2680ced12cbbed16990007c5fa3ea7730700122..ec2df34e27ba41f202ecbf096cdfed082a9ddb8f:/src/osx/carbon/uma.cpp diff --git a/src/osx/carbon/uma.cpp b/src/osx/carbon/uma.cpp index 7601f161a4..a89ca35d15 100644 --- a/src/osx/carbon/uma.cpp +++ b/src/osx/carbon/uma.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: src/mac/carbon/uma.cpp +// Name: src/osx/carbon/uma.cpp // Purpose: UMA support // Author: Stefan Csomor // Modified by: @@ -20,17 +20,6 @@ #include "wx/osx/uma.h" -static SInt32 sUMASystemVersion = 0 ; - -long UMAGetSystemVersion() -{ - if ( sUMASystemVersion == 0 ) - { - verify_noerr(Gestalt(gestaltSystemVersion, &sUMASystemVersion)); - } - return sUMASystemVersion ; -} - // menu manager #if wxOSX_USE_CARBON @@ -69,12 +58,13 @@ void UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex inItem , bool enable) DisableMenuItem( inMenu , inItem ) ; } -void UMAAppendSubMenuItem( MenuRef menu , const wxString& title, wxFontEncoding encoding , SInt16 id ) +void UMAAppendSubMenuItem( MenuRef menu , const wxString& title, wxFontEncoding encoding , MenuRef submenu ) { AppendMenuItemTextWithCFString( menu, CFSTR("A"), 0, 0,NULL); UMASetMenuItemText( menu, (SInt16) ::CountMenuItems(menu), title , encoding ); - SetMenuItemHierarchicalID( menu , CountMenuItems( menu ) , id ) ; + SetMenuItemHierarchicalMenu( menu , CountMenuItems( menu ) , submenu ) ; + SetMenuTitleWithCFString(submenu , wxCFStringRef(title , encoding) ); } void UMAInsertSubMenuItem( MenuRef menu , const wxString& title, wxFontEncoding encoding , MenuItemIndex item , SInt16 id ) @@ -89,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() ; @@ -103,6 +96,9 @@ void UMASetMenuItemShortcut( MenuRef menu , MenuItemIndex item , wxAcceleratorEn if (entry->GetFlags() & wxACCEL_SHIFT) modifiers |= kMenuShiftModifier ; + if (entry->GetFlags() & wxACCEL_RAW_CTRL) + modifiers |= kMenuControlModifier ; + SInt16 glyph = 0 ; SInt16 macKey = key ; if ( key >= WXK_F1 && key <= WXK_F15 ) @@ -256,12 +252,12 @@ static OSStatus UMAGetHelpMenu( bool allowHelpMenuCreation) { static bool s_createdHelpMenu = false ; - + if ( !s_createdHelpMenu && !allowHelpMenuCreation ) { return paramErr ; } - + OSStatus status = HMGetHelpMenu( outHelpMenu , outFirstCustomItemIndex ) ; s_createdHelpMenu = ( status == noErr ) ; return status ;