]> git.saurik.com Git - wxWidgets.git/commitdiff
Remove SendDestroyEvent() call from SetNSView() and call it from ~wxWindow
authorDavid Elliott <dfe@tgwbd.org>
Wed, 23 Jun 2004 00:46:51 +0000 (00:46 +0000)
committerDavid Elliott <dfe@tgwbd.org>
Wed, 23 Jun 2004 00:46:51 +0000 (00:46 +0000)
and ~wxTopLevelWindow instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/cocoa/toplevel.mm
src/cocoa/window.mm

index 43fb63faf2334fad681f33d0a68609153a5f81c6..70d3089d7d7a5f33b8a9918114b7553867dc170f 100644 (file)
@@ -140,6 +140,8 @@ wxTopLevelWindowCocoa::~wxTopLevelWindowCocoa()
     wxASSERT(sm_cocoaDeactivateWindow!=this);
     wxAutoNSAutoreleasePool pool;
     DestroyChildren();
+    if(m_cocoaNSView)
+        SendDestroyEvent();
     SetNSWindow(NULL);
 }
 
index 684159bc05cabcf50c4a7139a19a14cc119d70bf..b5838d97525ffdd27e4e83f4fcb95be34e1b44ff 100644 (file)
@@ -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);