]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/classic/control.cpp
The Great wxRegion Refactoring:
[wxWidgets.git] / src / mac / classic / control.cpp
index 449a49b2851795ebfe4853d23f237f87f84044fd..d5c0ca1880fdea89878f4a4552cf71d6d4a06b6e 100644 (file)
@@ -190,11 +190,11 @@ wxControl::~wxControl()
     wxRemoveMacControlAssociation( this ) ;
     // If we delete an item, we should initialize the parent panel,
     // because it could now be invalid.
-    wxWindow *parent = GetParent() ;
-    if ( parent )
+    wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow);
+    if ( tlw )
     {
-        if (parent->GetDefaultItem() == (wxButton*) this)
-            parent->SetDefaultItem(NULL);
+        if ( tlw->GetDefaultItem() == (wxButton*) this)
+            tlw->SetDefaultItem(NULL);
     }
     if ( (ControlHandle) m_macControl )
     {
@@ -207,7 +207,7 @@ wxControl::~wxControl()
 
 void wxControl::SetLabel(const wxString& title)
 {
-    m_label = wxStripMenuCodes(title) ;
+    m_label = GetLabelText(title) ;
 
     if ( m_macControl )
     {
@@ -309,7 +309,7 @@ void wxControl::MacPreControlCreate( wxWindow *parent, wxWindowID id, wxString l
     ((Rect*)outBounds)->bottom = 0;
     ((Rect*)outBounds)->right = 0;
 
-    wxMacStringToPascal( wxStripMenuCodes(label) , maclabel ) ;
+    wxMacStringToPascal( GetLabelText(label) , maclabel ) ;
 }
 
 void wxControl::MacPostControlCreate()
@@ -398,7 +398,7 @@ void wxControl::MacPostControlCreate()
     SetSize(pos.x, pos.y, new_size.x, new_size.y);
 
 #if wxUSE_UNICODE
-    UMASetControlTitle( (ControlHandle) m_macControl , wxStripMenuCodes(m_label) , m_font.GetEncoding() ) ;
+    UMASetControlTitle( (ControlHandle) m_macControl , GetLabelText(m_label) , m_font.GetEncoding() ) ;
 #endif
 
     if ( m_macControlIsShown )