From d2bc5545d101d20c8dcc23dd6ee6056c606a657e Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Tue, 22 Nov 2016 12:51:29 -0800 Subject: [PATCH] Pop event handlers before destroying floating panes in agw/aui --- wx/lib/agw/aui/__init__.py | 3 --- wx/lib/agw/aui/framemanager.py | 8 +++----- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/wx/lib/agw/aui/__init__.py b/wx/lib/agw/aui/__init__.py index 4eba5910..abf1e574 100644 --- a/wx/lib/agw/aui/__init__.py +++ b/wx/lib/agw/aui/__init__.py @@ -80,11 +80,8 @@ three text controls in a frame window:: def OnClose(self, event): - # deinitialize the frame manager self._mgr.UnInit() - - self.Destroy() event.Skip() diff --git a/wx/lib/agw/aui/framemanager.py b/wx/lib/agw/aui/framemanager.py index 3e69c00c..cfafaa7f 100644 --- a/wx/lib/agw/aui/framemanager.py +++ b/wx/lib/agw/aui/framemanager.py @@ -3100,7 +3100,6 @@ class AuiFloatingFrame(wx.MiniFrame): :param `event`: a :class:`CloseEvent` to be processed. """ - if self._owner_mgr: self._owner_mgr.OnFloatingPaneClosed(self._pane_window, event) @@ -4553,11 +4552,9 @@ class AuiManager(wx.EvtHandler): def DestroyGuideWindows(self): """ Destroys the VS2005 HUD guide windows. """ - for guide in self._guides: if guide.host: guide.host.Destroy() - self._guides = [] @@ -4574,7 +4571,6 @@ class AuiManager(wx.EvtHandler): """ Destroys the standard wxAUI hint window. """ if self._hint_window: - self._hint_window.Destroy() self._hint_window = None @@ -4603,7 +4599,7 @@ class AuiManager(wx.EvtHandler): def OnDestroy(self, event) : if self._frame == event.GetEventObject(): - self.UnInit(); + self.UnInit() def GetArtProvider(self): @@ -6403,6 +6399,8 @@ class AuiManager(wx.EvtHandler): if p.frame: p.frame.SetSizer(None) + while p.frame.GetEventHandler() is not p.frame: + p.frame.PopEventHandler() p.frame.Destroy() p.frame = None