From afed4daf679c9f2a17864269d9be1fbf5f2aa493 Mon Sep 17 00:00:00 2001 From: HomeWorld Date: Sat, 20 Nov 2010 21:05:01 +0200 Subject: [PATCH] Fit add when no tabs available bug fix (create an empty tab first or we will end up with orphan fittingviews) / little cleanup in mainframe.py / added GetPageCount method to PFNotebook --- gui/chromeTabs.py | 3 +++ gui/fittingView.py | 2 ++ gui/mainFrame.py | 10 ++-------- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/gui/chromeTabs.py b/gui/chromeTabs.py index a7f97e092..aedf57f2b 100644 --- a/gui/chromeTabs.py +++ b/gui/chromeTabs.py @@ -147,6 +147,9 @@ class PFNotebook(wx.Panel): def GetCurrentPage(self): return self.activePage + def GetPageCount(self): + return len(self.pages) + def AddPage(self, tabWnd, tabTitle ="Empty Tab", tabImage = None, showClose = True): if self.activePage: self.activePage.Hide() diff --git a/gui/fittingView.py b/gui/fittingView.py index ae8333094..acc3d8105 100644 --- a/gui/fittingView.py +++ b/gui/fittingView.py @@ -42,6 +42,8 @@ class FitSpawner(gui.multiSwitch.TabSpawner): def fitSelected(self, event): count = -1 + if self.multiSwitch.GetPageCount() == 0: + self.multiSwitch.AddPage(wx.Panel(self.multiSwitch, size = (0,0)), "Empty Tab") for index, page in enumerate(self.multiSwitch.pages): try: if page.activeFitID == event.fitID: diff --git a/gui/mainFrame.py b/gui/mainFrame.py index 568082a6b..d1e1212a1 100644 --- a/gui/mainFrame.py +++ b/gui/mainFrame.py @@ -82,7 +82,7 @@ class MainFrame(wx.Frame): faSizer = wx.BoxSizer(wx.VERTICAL) self.fitMultiSwitch = MultiSwitch(self.FitviewAdditionsPanel) - #self.fitMultiSwitch.AddPage() + faSizer.Add(self.fitMultiSwitch,1,wx.EXPAND) self.additionsPane = AdditionsPane(self.FitviewAdditionsPanel) @@ -90,9 +90,8 @@ class MainFrame(wx.Frame): self.FitviewAdditionsPanel.SetSizer(faSizer) -# self.notebookBrowsers = wx.Notebook(self.splitter, wx.ID_ANY) + self.notebookBrowsers = gui.chromeTabs.PFNotebook(self.splitter, False) -# self.notebookBrowsers.Bind(wx.EVT_LEFT_DOWN, self.mouseHit) self.marketBrowser = MarketBrowser(self.notebookBrowsers) self.notebookBrowsers.AddPage(self.marketBrowser, "Market", showClose = False) @@ -143,11 +142,6 @@ class MainFrame(wx.Frame): def getActiveView(self): sel = self.fitMultiSwitch.GetSelectedPage() -# def mouseHit(self, event): -# tab, _ = self.notebookBrowsers.HitTest(event.Position) -# if tab != -1: -# self.notebookBrowsers.SetSelection(tab) - def CloseCurrentFit(self, evt): ms = self.fitMultiSwitch