]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/menuitem.cpp
Various compile fixes.
[wxWidgets.git] / src / mac / carbon / menuitem.cpp
index 153c750c4476b660df8e9d4026eb57b286702cde..062a2f6edd9b773477c2f657cb232c9414de4f41 100644 (file)
 // headers & declarations
 // ============================================================================
 
+#include "wx/app.h"
 #include "wx/menu.h"
 #include "wx/menuitem.h"
 
-#include <wx/mac/uma.h>
+#include "wx/mac/uma.h"
 // ============================================================================
 // implementation
 // ============================================================================
@@ -41,7 +42,7 @@ void wxMacCtoPString(const char* theCString, Str255 thePString);
 
 // remove inappropriate characters, if useShortcuts is false, the ampersand will not auto-generate a mac menu-shortcut
 
-wxMenuItem::MacBuildMenuString(StringPtr outMacItemText, SInt16 *outMacShortcutChar , UInt8 *outMacModifiers , const char *inItemText , bool useShortcuts )
+int wxMenuItem::MacBuildMenuString(StringPtr outMacItemText, SInt16 *outMacShortcutChar , UInt8 *outMacModifiers , const char *inItemText , bool useShortcuts )
 {
        char *p = (char *) &outMacItemText[1] ;
        short macModifiers = 0 ;
@@ -191,7 +192,7 @@ wxMenuItem::wxMenuItem(wxMenu *pParentMenu, int id,
     m_help        = strHelp;
 
 
-    if ( m_text ==  "E&xit"  ||m_text == "Exit" )
+    if ( m_text ==  "E&xit"  ||m_text == "Exit"  ||m_text.Left(5) == "Exit\t" || m_text.Left(6) == "E&xit\t" )
     {
         m_text = "Quit\tCtrl+Q" ;
     }
@@ -248,30 +249,30 @@ void wxMenuItem::Enable(bool bDoEnable)
     if ( m_subMenu == NULL ) 
     {     
        // normal menu item
-           if ( m_parentMenu->GetHMenu() )
+           if ( MAC_WXHMENU(m_parentMenu->GetHMenu()) )
            {
                        int index = m_parentMenu->MacGetIndexFromItem( this ) ;
                        if ( index >= 1 )
                        {
                                if ( bDoEnable )
-                                       UMAEnableMenuItem( m_parentMenu->GetHMenu() , index ) ;
+                                       UMAEnableMenuItem( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index ) ;
                                else
-                                       UMADisableMenuItem( m_parentMenu->GetHMenu() , index ) ;
+                                       UMADisableMenuItem( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index ) ;
                        }
            }
     }
     else                            
     {
                // submenu
-           if ( m_parentMenu->GetHMenu() )
+           if ( MAC_WXHMENU(m_parentMenu->GetHMenu()) )
            {
                        int index = m_parentMenu->MacGetIndexFromItem( this ) ;
                        if ( index >= 1 )
                        {
                                if ( bDoEnable )
-                                       UMAEnableMenuItem( m_parentMenu->GetHMenu() , index ) ;
+                                       UMAEnableMenuItem( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index ) ;
                                else
-                                       UMADisableMenuItem( m_parentMenu->GetHMenu() , index ) ;
+                                       UMADisableMenuItem( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index ) ;
                        }
            }
     }
@@ -287,15 +288,15 @@ void wxMenuItem::Check(bool bDoCheck)
   if ( m_isChecked != bDoCheck ) 
   {
     m_isChecked = bDoCheck;
-       if ( m_parentMenu->GetHMenu() )
+       if ( MAC_WXHMENU(m_parentMenu->GetHMenu()) )
     {
                int index = m_parentMenu->MacGetIndexFromItem( this ) ;
                if ( index >= 1 )
                {
                        if ( bDoCheck )
-                                       ::SetItemMark( m_parentMenu->GetHMenu() , index , 0x12 ) ; // checkmark
+                                       ::SetItemMark( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index , 0x12 ) ; // checkmark
                                else
-                                       ::SetItemMark( m_parentMenu->GetHMenu() , index , 0 ) ; // no mark
+                                       ::SetItemMark( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index , 0 ) ; // no mark
                }
        }
   }
@@ -311,14 +312,14 @@ void wxMenuItem::SetText(const wxString& text)
 //    OWNER_DRAWN_ONLY( wxOwnerDrawn::SetName(text) );
 
     wxCHECK_RET( m_parentMenu && m_parentMenu->GetHMenu(), wxT("menuitem without menu") );
-       if ( m_parentMenu->GetHMenu() )
+       if ( MAC_WXHMENU(m_parentMenu->GetHMenu()) )
     {
                int index = m_parentMenu->MacGetIndexFromItem( this ) ;
                if ( index >= 1 )
                {
                        Str255 label;
                        MacBuildMenuString( label , NULL , NULL , text ,false);
-                       UMASetMenuItemText( m_parentMenu->GetHMenu() , index , label ) ; // checkmark
+                       ::SetMenuItemText( MAC_WXHMENU(m_parentMenu->GetHMenu()) , index , label ) ; // checkmark
                }
        }