X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e778ad8607ac24c10a854709114bd2c90765618c..919312f76764a6fee2422664d2251c4e6b6be993:/src/mac/control.cpp?ds=sidebyside diff --git a/src/mac/control.cpp b/src/mac/control.cpp index 8f7542389a..31e38de31a 100644 --- a/src/mac/control.cpp +++ b/src/mac/control.cpp @@ -290,7 +290,8 @@ void wxAssociateControlWithMacControl(ControlHandle inControl, wxControl *contro void wxRemoveMacControlAssociation(wxControl *control) { - wxWinMacControlList->DeleteObject(control); + if ( wxWinMacControlList ) + wxWinMacControlList->DeleteObject(control); } void wxControl::MacPreControlCreate( wxWindow *parent, wxWindowID id, wxString label , @@ -346,7 +347,7 @@ void wxControl::MacPostControlCreate() ControlHandle container = (ControlHandle) GetParent()->MacGetContainerForEmbedding() ; wxASSERT_MSG( container != NULL , wxT("No valid mac container control") ) ; ::EmbedControl( (ControlHandle) m_macControl , container ) ; - m_macControlIsShown = true ; + m_macControlIsShown = MacIsReallyShown() ; wxAssociateControlWithMacControl( (ControlHandle) m_macControl , this ) ; if ( wxMacSetupControlBackgroundUPP == NULL ) @@ -402,7 +403,8 @@ void wxControl::MacPostControlCreate() UMASetControlTitle( (ControlHandle) m_macControl , wxStripMenuCodes(m_label) ) ; #endif - UMAShowControl( (ControlHandle) m_macControl ) ; + if ( m_macControlIsShown ) + UMAShowControl( (ControlHandle) m_macControl ) ; SetCursor( *wxSTANDARD_CURSOR ) ;