From 5f2d1a4f5ccb10ba9de5a34027fa05a0ef06b3b2 Mon Sep 17 00:00:00 2001 From: cncfanatics Date: Wed, 17 Nov 2010 14:50:03 +0100 Subject: [PATCH] Fix selection when there's no tabs around --- gui/chromeTabs.py | 4 ++-- gui/fittingView.py | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/gui/chromeTabs.py b/gui/chromeTabs.py index 09bbcfb0a..0c7819f18 100644 --- a/gui/chromeTabs.py +++ b/gui/chromeTabs.py @@ -102,7 +102,7 @@ class PFNotebook(wx.Panel): return self.pages[i] def SetPage(self, i, page): - if i >= len(self.pages): + if i >= len(self.pages) or i is None or page is None: return oldPage = self.pages[i] @@ -123,7 +123,7 @@ class PFNotebook(wx.Panel): return self.activePage def GetPageIndex(self, page): - return self.pages.index(page) + return self.pages.index(page) if page in self.pages else None def GetSelection(self): return self.GetPageIndex(self.activePage) diff --git a/gui/fittingView.py b/gui/fittingView.py index c3c1a0e63..f00d74560 100644 --- a/gui/fittingView.py +++ b/gui/fittingView.py @@ -100,6 +100,9 @@ class FittingView(d.Display): self.Bind(wx.EVT_RIGHT_DOWN, self.click) self.parent.Bind(gui.chromeTabs.EVT_NOTEBOOK_PAGE_CHANGED, self.pageChanged) + def Destroy(self): + self.parent.Unbind(gui.chromeTabs.EVT_NOTEBOOK_PAGE_CHANGED, handler=self.pageChanged) + def pageChanged(self, event): if self.parent.IsActive(self): fitID = self.getActiveFit()