From 24affeb7e1cbc2e8c0e148a58c5c4b78c2a17be8 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Tue, 19 Nov 2002 21:35:09 +0000 Subject: [PATCH] guarded frame setting when window is deleted git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@17916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/mac/carbon/textctrl.cpp | 7 ++++++- src/mac/textctrl.cpp | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/mac/carbon/textctrl.cpp b/src/mac/carbon/textctrl.cpp index 40621bef89..d85dfe678d 100644 --- a/src/mac/carbon/textctrl.cpp +++ b/src/mac/carbon/textctrl.cpp @@ -1542,7 +1542,9 @@ void wxTextCtrl::OnChar(wxKeyEvent& event) key == WXK_DELETE || key == WXK_BACK) { + long t1 = 0xDEADBEEF ; wxCommandEvent event1(wxEVT_COMMAND_TEXT_UPDATED, m_windowId); + long t2 = 0xDEADBEEF ; event1.SetString( GetValue() ) ; event1.SetEventObject( this ); wxPostEvent(GetEventHandler(),event1); @@ -1570,7 +1572,10 @@ bool wxTextCtrl::Show(bool show) bool retval = wxControl::Show( show ) ; - if ( former != m_macControlIsShown ) + WindowRef window = (WindowRef) MacGetRootWindow() ; + wxWindowMac* win = wxFindWinFromMacWindow( window ) ; + + if ( former != m_macControlIsShown && win!=NULL && !win->IsBeingDeleted() ) { if ( m_macControlIsShown ) TXNSetFrameBounds( (TXNObject) m_macTXN, (**(STPTextPaneVars **)m_macTXNvars).fRTextArea.top, (**(STPTextPaneVars **)m_macTXNvars).fRTextArea.left, diff --git a/src/mac/textctrl.cpp b/src/mac/textctrl.cpp index 40621bef89..d85dfe678d 100644 --- a/src/mac/textctrl.cpp +++ b/src/mac/textctrl.cpp @@ -1542,7 +1542,9 @@ void wxTextCtrl::OnChar(wxKeyEvent& event) key == WXK_DELETE || key == WXK_BACK) { + long t1 = 0xDEADBEEF ; wxCommandEvent event1(wxEVT_COMMAND_TEXT_UPDATED, m_windowId); + long t2 = 0xDEADBEEF ; event1.SetString( GetValue() ) ; event1.SetEventObject( this ); wxPostEvent(GetEventHandler(),event1); @@ -1570,7 +1572,10 @@ bool wxTextCtrl::Show(bool show) bool retval = wxControl::Show( show ) ; - if ( former != m_macControlIsShown ) + WindowRef window = (WindowRef) MacGetRootWindow() ; + wxWindowMac* win = wxFindWinFromMacWindow( window ) ; + + if ( former != m_macControlIsShown && win!=NULL && !win->IsBeingDeleted() ) { if ( m_macControlIsShown ) TXNSetFrameBounds( (TXNObject) m_macTXN, (**(STPTextPaneVars **)m_macTXNvars).fRTextArea.top, (**(STPTextPaneVars **)m_macTXNvars).fRTextArea.left,