From 42683dfb10210006f5763c433066cf158dea737f Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Sun, 2 Mar 2003 22:46:44 +0000 Subject: [PATCH] destroy event support git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/mac/carbon/window.cpp | 18 +++++++++++++++++- src/mac/window.cpp | 18 +++++++++++++++++- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/src/mac/carbon/window.cpp b/src/mac/carbon/window.cpp index 4592280816..54df63cb6e 100644 --- a/src/mac/carbon/window.cpp +++ b/src/mac/carbon/window.cpp @@ -184,10 +184,26 @@ wxWindowMac::~wxWindowMac() gFocusWindow = NULL ; } + // CS: copied from MSW : + // VS: destroy children first and _then_ detach *this from its parent. + // If we'd do it the other way around, children wouldn't be able + // find their parent frame (see above). + DestroyChildren(); + if ( m_parent ) m_parent->RemoveChild(this); - DestroyChildren(); + wxWindowDestroyEvent event((wxWindow *)this); + (void)GetEventHandler()->ProcessEvent(event); + + // delete our drop target if we've got one +#if wxUSE_DRAG_AND_DROP + if ( m_dropTarget != NULL ) + { + delete m_dropTarget; + m_dropTarget = NULL; + } +#endif // wxUSE_DRAG_AND_DROP } // Constructor diff --git a/src/mac/window.cpp b/src/mac/window.cpp index 4592280816..54df63cb6e 100644 --- a/src/mac/window.cpp +++ b/src/mac/window.cpp @@ -184,10 +184,26 @@ wxWindowMac::~wxWindowMac() gFocusWindow = NULL ; } + // CS: copied from MSW : + // VS: destroy children first and _then_ detach *this from its parent. + // If we'd do it the other way around, children wouldn't be able + // find their parent frame (see above). + DestroyChildren(); + if ( m_parent ) m_parent->RemoveChild(this); - DestroyChildren(); + wxWindowDestroyEvent event((wxWindow *)this); + (void)GetEventHandler()->ProcessEvent(event); + + // delete our drop target if we've got one +#if wxUSE_DRAG_AND_DROP + if ( m_dropTarget != NULL ) + { + delete m_dropTarget; + m_dropTarget = NULL; + } +#endif // wxUSE_DRAG_AND_DROP } // Constructor -- 2.47.2