From 9c85202a7af32ca0f497e489a74fe623c3f6461f Mon Sep 17 00:00:00 2001 From: David Elliott Date: Wed, 23 Jun 2004 00:46:51 +0000 Subject: [PATCH] Remove SendDestroyEvent() call from SetNSView() and call it from ~wxWindow and ~wxTopLevelWindow instead. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/cocoa/toplevel.mm | 2 ++ src/cocoa/window.mm | 6 ++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/cocoa/toplevel.mm b/src/cocoa/toplevel.mm index 43fb63faf2..70d3089d7d 100644 --- a/src/cocoa/toplevel.mm +++ b/src/cocoa/toplevel.mm @@ -140,6 +140,8 @@ wxTopLevelWindowCocoa::~wxTopLevelWindowCocoa() wxASSERT(sm_cocoaDeactivateWindow!=this); wxAutoNSAutoreleasePool pool; DestroyChildren(); + if(m_cocoaNSView) + SendDestroyEvent(); SetNSWindow(NULL); } diff --git a/src/cocoa/window.mm b/src/cocoa/window.mm index 684159bc05..b5838d9752 100644 --- a/src/cocoa/window.mm +++ b/src/cocoa/window.mm @@ -289,6 +289,8 @@ wxWindow::~wxWindow() CocoaRemoveFromParent(); delete m_cocoaHider; delete m_cocoaScroller; + if(m_cocoaNSView) + SendDestroyEvent(); SetNSView(NULL); } @@ -308,10 +310,6 @@ void wxWindowCocoa::CocoaRemoveFromParent(void) void wxWindowCocoa::SetNSView(WX_NSView cocoaNSView) { - // Assume setting the NSView to NULL means this wxWindow is being destroyed - if(m_cocoaNSView && !cocoaNSView) - SendDestroyEvent(); - bool need_debug = cocoaNSView || m_cocoaNSView; if(need_debug) wxLogTrace(wxTRACE_COCOA_RetainRelease,wxT("wxWindowCocoa=%p::SetNSView [m_cocoaNSView=%p retainCount]=%d"),this,m_cocoaNSView,[m_cocoaNSView retainCount]); DisassociateNSView(m_cocoaNSView); -- 2.45.2