Author: bugman
Date: Tue Feb 3 10:07:09 2015
New Revision: 27449
URL: http://svn.gna.org/viewcvs/relax?rev=27449&view=rev
Log:
Created a special Destroy() method for the spin viewer window.
This is for greater control of the spin viewer window destruction. First the
methods registered
with the observer objects are unregistered, then the children of the spin
viewer window are
destroyed, and finally the main spin viewer window is destroyed. This change
saves a lot of GUI
resources in the GUI tests (there is a large reduction in 'User Objects' and
'GDI Objects' used on
MS Windows systems, hence an equivalent resource reduction on other operating
systems).
Modified:
trunk/gui/spin_viewer/frame.py
Modified: trunk/gui/spin_viewer/frame.py
URL:
http://svn.gna.org/viewcvs/relax/trunk/gui/spin_viewer/frame.py?rev=27449&r1=27448&r2=27449&view=diff
==============================================================================
--- trunk/gui/spin_viewer/frame.py (original)
+++ trunk/gui/spin_viewer/frame.py Tue Feb 3 10:07:09 2015
@@ -1,6 +1,6 @@
###############################################################################
# #
-# Copyright (C) 2010-2014 Edward d'Auvergne #
+# Copyright (C) 2010-2015 Edward d'Auvergne #
# Copyright (C) 2013-2014 Troels E. Linnet #
# #
# This file is part of the program relax (http://www.nmr-relax.com). #
@@ -121,6 +121,25 @@
self.menu_uf_ids = build_uf_menus(parent=self, menubar=self.menubar)
+ def Destroy(self, event=None):
+ """Cleanly destroy the spin viewer window.
+
+ @keyword event: The wx event.
+ @type event: wx event
+ """
+
+ # First unregister the methods from the observers.
+ status.observers.gui_uf.unregister(self.name)
+ status.observers.pipe_alteration.unregister(self.name)
+ status.observers.exec_lock.unregister(self.name)
+
+ # Destroy all children of the window.
+ super(Spin_view_window, self).DestroyChildren()
+
+ # Destroy the spin viewer window.
+ super(Spin_view_window, self).Destroy()
+
+
def Show(self, show=True):
"""Change the behaviour of showing the window to update the content.
_______________________________________________
relax (http://www.nmr-relax.com)
This is the relax-commits mailing list
[email protected]
To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-commits