From fcf34d08830ed6002f2803f8b94c34f6929a0dd9 Mon Sep 17 00:00:00 2001 From: topic2k Date: Fri, 1 May 2020 10:43:07 +0200 Subject: [PATCH 1/3] new event EVT_AUI_PANE_CLOSED Fire an event when a pane has been closed. --- wx/lib/agw/aui/framemanager.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/wx/lib/agw/aui/framemanager.py b/wx/lib/agw/aui/framemanager.py index b227c130..b5052b16 100644 --- a/wx/lib/agw/aui/framemanager.py +++ b/wx/lib/agw/aui/framemanager.py @@ -132,6 +132,7 @@ if wx.Platform == "__WXMSW__": # AUI Events wxEVT_AUI_PANE_BUTTON = wx.NewEventType() wxEVT_AUI_PANE_CLOSE = wx.NewEventType() +wxEVT_AUI_PANE_CLOSED = wx.NewEventType() wxEVT_AUI_PANE_MAXIMIZE = wx.NewEventType() wxEVT_AUI_PANE_RESTORE = wx.NewEventType() wxEVT_AUI_RENDER = wx.NewEventType() @@ -148,6 +149,8 @@ wxEVT_AUI_PERSPECTIVE_CHANGED = wx.NewEventType() EVT_AUI_PANE_BUTTON = wx.PyEventBinder(wxEVT_AUI_PANE_BUTTON, 0) """ Fires an event when the user left-clicks on a pane button. """ EVT_AUI_PANE_CLOSE = wx.PyEventBinder(wxEVT_AUI_PANE_CLOSE, 0) +""" A pane in `AuiManager` is about to be closed. """ +EVT_AUI_PANE_CLOSED = wx.PyEventBinder(wxEVT_AUI_PANE_CLOSED, 0) """ A pane in `AuiManager` has been closed. """ EVT_AUI_PANE_MAXIMIZE = wx.PyEventBinder(wxEVT_AUI_PANE_MAXIMIZE, 0) """ A pane in `AuiManager` has been maximized. """ @@ -5080,6 +5083,13 @@ class AuiManager(wx.EvtHandler): if to_destroy: to_destroy.Destroy() + # Now inform the app that we closed a pane. + e = AuiManagerEvent(wxEVT_AUI_PANE_CLOSED) + e.SetPane(pane_info) + e.SetCanVeto(False) + e.SetId(wxEVT_AUI_PANE_CLOSED) + wx.CallAfter(self.ProcessMgrEvent, e) + def MaximizePane(self, pane_info, savesizes=True): """ From 18fcd49486fb3872729a3b9a0f42de9c14b5d963 Mon Sep 17 00:00:00 2001 From: topic2k Date: Thu, 21 May 2020 08:31:12 +0200 Subject: [PATCH 2/3] reduce code and use already existing method to fire event. --- wx/lib/agw/aui/framemanager.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/wx/lib/agw/aui/framemanager.py b/wx/lib/agw/aui/framemanager.py index b5052b16..f9839465 100644 --- a/wx/lib/agw/aui/framemanager.py +++ b/wx/lib/agw/aui/framemanager.py @@ -5084,11 +5084,7 @@ class AuiManager(wx.EvtHandler): to_destroy.Destroy() # Now inform the app that we closed a pane. - e = AuiManagerEvent(wxEVT_AUI_PANE_CLOSED) - e.SetPane(pane_info) - e.SetCanVeto(False) - e.SetId(wxEVT_AUI_PANE_CLOSED) - wx.CallAfter(self.ProcessMgrEvent, e) + self.FireEvent(wxEVT_AUI_PANE_CLOSED, pane_info) def MaximizePane(self, pane_info, savesizes=True): From e00182f0f444153ffd5032b29175d32d0517539d Mon Sep 17 00:00:00 2001 From: topic2k Date: Thu, 21 May 2020 08:32:56 +0200 Subject: [PATCH 3/3] remove empty line --- wx/lib/agw/aui/framemanager.py | 1 - 1 file changed, 1 deletion(-) diff --git a/wx/lib/agw/aui/framemanager.py b/wx/lib/agw/aui/framemanager.py index f9839465..83ae05b6 100644 --- a/wx/lib/agw/aui/framemanager.py +++ b/wx/lib/agw/aui/framemanager.py @@ -5086,7 +5086,6 @@ class AuiManager(wx.EvtHandler): # Now inform the app that we closed a pane. self.FireEvent(wxEVT_AUI_PANE_CLOSED, pane_info) - def MaximizePane(self, pane_info, savesizes=True): """ Maximizes the input pane.