X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8caf72d33efedf5252ffeb5177441b10f3a72141..92980e9076469956e1e2cb94df97d0f8d873114a:/src/mac/menu.cpp diff --git a/src/mac/menu.cpp b/src/mac/menu.cpp index e53992df98..e31651102c 100644 --- a/src/mac/menu.cpp +++ b/src/mac/menu.cpp @@ -577,7 +577,7 @@ wxMenuBar::~wxMenuBar() } -void wxMenuBar::Refresh() +void wxMenuBar::Refresh(bool WXUNUSED(eraseBackground), const wxRect *WXUNUSED(rect)) { wxCHECK_RET( IsAttached(), wxT("can't refresh unatteched menubar") ); @@ -614,33 +614,37 @@ void wxMenuBar::RebuildAccelTable() #endif // wxUSE_ACCEL - void wxMenuBar::MacInstallMenuBar() { - if ( s_macInstalledMenuBar == this ) - return ; + if ( s_macInstalledMenuBar == this ) + return ; + + wxStAppResource resload ; - Handle menubar = ::GetNewMBar( kwxMacMenuBarResource ) ; - wxString message ; - wxCHECK_RET( menubar != NULL, "can't read MBAR resource" ); - ::SetMenuBar( menubar ) ; + Handle menubar = ::GetNewMBar( kwxMacMenuBarResource ) ; + wxString message ; + wxCHECK_RET( menubar != NULL, "can't read MBAR resource" ); + ::SetMenuBar( menubar ) ; #if TARGET_API_MAC_CARBON ::DisposeMenuBar( menubar ) ; #else - ::DisposeHandle( menubar ) ; + ::DisposeHandle( menubar ) ; #endif - MenuHandle menu = ::GetMenuHandle( kwxMacAppleMenuId ) ; #if TARGET_API_MAC_OS8 - ::AppendResMenu(menu, 'DRVR'); + MenuHandle menu = ::GetMenuHandle( kwxMacAppleMenuId ) ; + if ( CountMenuItems( menu ) == 2 ) + { + ::AppendResMenu(menu, 'DRVR'); + } #endif - for (int i = 0; i < m_menus.GetCount(); i++) + for (size_t i = 0; i < m_menus.GetCount(); i++) { - Str255 label; - wxNode *node; - wxMenuItem *item; - int pos ; + Str255 label; + wxNode *node; + wxMenuItem *item; + int pos ; wxMenu* menu = m_menus[i] , *subMenu = NULL ; if( m_titles[i] == "?" || m_titles[i] == "&?" || m_titles[i] == wxApp::s_macHelpMenuTitleName ) @@ -713,7 +717,7 @@ void wxMenuBar::MacInstallMenuBar() } } ::InsertMenu(MAC_WXHMENU(m_menus[i]->GetHMenu()), 0); - for ( int i = 0 ; i < submenus.GetCount() ; ++i ) + for ( size_t i = 0 ; i < submenus.GetCount() ; ++i ) { wxMenu* submenu = (wxMenu*) submenus[i] ; wxNode *subnode; @@ -733,7 +737,6 @@ void wxMenuBar::MacInstallMenuBar() } } ::DrawMenuBar() ; - s_macInstalledMenuBar = this; } @@ -888,7 +891,7 @@ void wxMenuBar::MacMenuSelect(wxEvtHandler* handler, long when , int macMenuId, } else { - for (int i = 0; i < m_menus.GetCount() ; i++) + for (size_t i = 0; i < m_menus.GetCount() ; i++) { if ( m_menus[i]->MacGetMenuId() == macMenuId || ( macMenuId == kHMHelpMenuID && ( m_titles[i] == "?" || m_titles[i] == "&?" || m_titles[i] == wxApp::s_macHelpMenuTitleName ) ) ) { @@ -902,7 +905,7 @@ void wxMenuBar::MacMenuSelect(wxEvtHandler* handler, long when , int macMenuId, } } - for (int i = 0; i < m_menus.GetCount(); i++) + for (size_t i = 0; i < m_menus.GetCount(); i++) { if ( m_menus[i]->MacMenuSelect( handler , when , macMenuId , macMenuItemNum ) ) {