def deleteFit(self, event=None): pyfalog.debug("Deleting ship fit.") if self.deleted: return else: self.deleted = True sFit = Fit.getInstance() fit = sFit.getFit(self.fitID) # need to delete from import cache before actually deleting fit if self.shipBrowser.GetActiveStage() == 5: if fit in self.shipBrowser.lastdata: # remove fit from import cache self.shipBrowser.lastdata.remove(fit) sFit.deleteFit(self.fitID) # Notify other areas that a fit has been deleted wx.PostEvent(self.mainFrame, events.FitRemoved(fitID=self.fitID)) # todo: would a simple RefreshList() work here instead of posting that a stage has been selected? if self.shipBrowser.GetActiveStage() == 5: wx.PostEvent(self.shipBrowser, events.ImportSelected(fits=self.shipBrowser.lastdata)) elif self.shipBrowser.GetActiveStage() == 4: wx.PostEvent( self.shipBrowser, events.SearchSelected( text=self.shipBrowser.navpanel.lastSearch, back=True)) else: wx.PostEvent(self.shipBrowser, events.Stage3Selected(shipID=self.shipID))
def copyFit(self, event=None): sFit = Fit.getInstance() fitID = sFit.copyFit(self.fitID) self.shipBrowser.fitIDMustEditName = fitID wx.PostEvent(self.shipBrowser, events.Stage3Selected(shipID=self.shipID)) wx.PostEvent(self.mainFrame, events.FitSelected(fitID=fitID))
def createNewFit(self, event=None): self.tcFitName.Show(False) sFit = Fit.getInstance() fitID = sFit.newFit(self.shipID, self.tcFitName.GetValue()) wx.PostEvent(self.shipBrowser, events.Stage3Selected(shipID=self.shipID, back=False)) wx.PostEvent(self.mainFrame, events.FitSelected(fitID=fitID))
def selectShip(self, event): if self.tcFitName.IsShown(): self.tcFitName.Show(False) self.newBtn.SetBitmap(self.newBmp) self.Refresh() else: shipName, shipTrait, fittings = self.shipFittingInfo if fittings > 0: wx.PostEvent( self.shipBrowser, events.Stage3Selected(shipID=self.shipID, back=True)) else: self.newBtnCB()