Author: bugman Date: Mon Sep 19 22:06:04 2011 New Revision: 14705 URL: http://svn.gna.org/viewcvs/relax?rev=14705&view=rev Log: Fix for a bug introduced at r14703. The page changing and page changed events are now handled separately. This allows the page changing to be blocked while fixing the MS Windows bug of page changing happening after the wx.EVT_NOTEBOOK_PAGE_CHANGED event. Modified: 1.3/gui/analyses/__init__.py Modified: 1.3/gui/analyses/__init__.py URL: http://svn.gna.org/viewcvs/relax/1.3/gui/analyses/__init__.py?rev=14705&r1=14704&r2=14705&view=diff ============================================================================== --- 1.3/gui/analyses/__init__.py (original) +++ 1.3/gui/analyses/__init__.py Mon Sep 19 22:06:04 2011 @@ -380,7 +380,8 @@ sizer.Add(self.notebook, 1, wx.ALL|wx.EXPAND, 0) # Bind changing events. - self.gui.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED, self.on_page_change) + self.gui.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGING, self.on_page_changing) + self.gui.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED, self.on_page_changed) # Delete the previous sizer. old_sizer = self.gui.GetSizer() @@ -439,8 +440,8 @@ status.observers.gui_analysis.notify() - def on_page_change(self, event): - """Handle page changes. + def on_page_changing(self, event): + """Block page changing if needed. @param event: The wx event. @type event: wx event @@ -451,9 +452,16 @@ # Show an error message. error_message("Cannot change analyses, relax is currently executing.", "relax execution lock") - # Veto the event, and return. + # Veto the event. event.Veto() - return + + + def on_page_changed(self, event): + """Handle page changes. + + @param event: The wx event. + @type event: wx event + """ # The index. self._current = event.GetSelection()