diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index c751cf2f3..e283a7564 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -1552,6 +1552,10 @@ class FitItem(SFItem.SFBrowserItem): self.selTimer.Start(100) self.Bind(wx.EVT_RIGHT_UP, self.OnContextMenu) + self.Bind(wx.EVT_MIDDLE_UP, self.OpenNewTab) + + def OpenNewTab(self, evt): + self.selectFit(newTab=True); def OnToggleBooster(self, event): sFit = Fit.getInstance() @@ -1616,6 +1620,9 @@ class FitItem(SFItem.SFBrowserItem): # menu.AppendSubMenu(boosterMenu, 'Set Booster') if fit: + newTabItem = menu.Append(wx.ID_ANY, "Open in new tab") + self.Bind(wx.EVT_MENU, self.OpenNewTab, newTabItem) + projectedItem = menu.Append(wx.ID_ANY, "Project onto Active Fit") self.Bind(wx.EVT_MENU, self.OnProjectToFit, projectedItem) @@ -1809,8 +1816,11 @@ class FitItem(SFItem.SFBrowserItem): self.dragWindow.SetPosition(pos) return - def selectFit(self, event=None): - wx.PostEvent(self.mainFrame, FitSelected(fitID=self.fitID)) + def selectFit(self, event=None, newTab=False): + if newTab: + wx.PostEvent(self.mainFrame, FitSelected(fitID=self.fitID, startup=2)) + else: + wx.PostEvent(self.mainFrame, FitSelected(fitID=self.fitID)) def RestoreEditButton(self): self.tcFitName.Show(False)