]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/menuitem_osx.cpp
Move code removing "-psn_xxx" command line arguments to common code.
[wxWidgets.git] / src / osx / menuitem_osx.cpp
index ce44dbccbfed11c7460fcb1e1089b9a94dc84c2c..34a9996173940c10472d2d9f3a07b6dd2649caf6 100644 (file)
@@ -4,7 +4,6 @@
 // Author:      Stefan Csomor
 // Modified by:
 // Created:     1998-01-01
-// RCS-ID:      $Id$
 // Copyright:   (c) Stefan Csomor
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
@@ -41,13 +40,14 @@ wxMenuItem::wxMenuItem(wxMenu *pParentMenu,
 
     // In other languages there is no difference in naming the Exit/Quit menu item between MacOS and Windows guidelines
     // therefore these item must not be translated
-    if ( wxStripMenuCodes(m_text).Upper() == wxT("EXIT") )
-        m_text = wxT("Quit\tCtrl+Q") ;
+    if (pParentMenu != NULL && !pParentMenu->GetNoEventsMode())
+        if ( wxStripMenuCodes(m_text).Upper() == wxT("EXIT") )
+            m_text = wxT("Quit\tCtrl+Q") ;
 
     m_radioGroup.start = -1;
     m_isRadioGroupStart = false;
 
-    wxString text = wxStripMenuCodes(m_text);
+    wxString text = wxStripMenuCodes(m_text, (pParentMenu != NULL && pParentMenu->GetNoEventsMode()) ? wxStrip_Accel : wxStrip_All);
     if (text.IsEmpty() && !IsSeparator())
     {
         wxASSERT_MSG(wxIsStockID(GetId()), wxT("A non-stock menu item with an empty label?"));
@@ -175,7 +175,7 @@ void wxMenuItem::UpdateItemBitmap()
     if ( !m_parentMenu )
         return;
 
-    if ( m_bitmap.Ok() )
+    if ( m_bitmap.IsOk() )
     {
         GetPeer()->SetBitmap( m_bitmap );
     }
@@ -202,7 +202,7 @@ void wxMenuItem::UpdateItemText()
     if ( !m_parentMenu )
         return ;
 
-    wxString text = wxStripMenuCodes(m_text);
+    wxString text = wxStripMenuCodes(m_text, m_parentMenu != NULL && m_parentMenu->GetNoEventsMode() ? wxStrip_Accel : wxStrip_All);
     if (text.IsEmpty() && !IsSeparator())
     {
         wxASSERT_MSG(wxIsStockID(GetId()), wxT("A non-stock menu item with an empty label?"));
@@ -217,9 +217,9 @@ void wxMenuItem::UpdateItemText()
 // radio group stuff
 // -----------------
 
-void wxMenuItem::SetAsRadioGroupStart()
+void wxMenuItem::SetAsRadioGroupStart(bool start)
 {
-    m_isRadioGroupStart = true;
+    m_isRadioGroupStart = start;
 }
 
 void wxMenuItem::SetRadioGroupStart(int start)
@@ -238,6 +238,27 @@ void wxMenuItem::SetRadioGroupEnd(int end)
     m_radioGroup.end = end;
 }
 
+bool wxMenuItem::IsRadioGroupStart() const
+{
+    return m_isRadioGroupStart;
+}
+
+int wxMenuItem::GetRadioGroupStart() const
+{
+    wxASSERT_MSG( !m_isRadioGroupStart,
+                  wxS("shouldn't be called for the first radio item") );
+
+    return m_radioGroup.start;
+}
+
+int wxMenuItem::GetRadioGroupEnd() const
+{
+    wxASSERT_MSG( m_isRadioGroupStart,
+                  wxS("shouldn't be called for the first radio item") );
+
+    return m_radioGroup.end;
+}
+
 // ----------------------------------------------------------------------------
 // wxMenuItemBase
 // ----------------------------------------------------------------------------