More work on restrictions

This commit is contained in:
blitzmann
2016-07-04 10:49:57 -04:00
parent fe8c3a4957
commit 10c79ac812
8 changed files with 37 additions and 5 deletions

View File

@@ -117,6 +117,12 @@ class BoosterView(d.Display):
def addItem(self, event):
sFit = service.Fit.getInstance()
fitID = self.mainFrame.getActiveFit()
fit = sFit.getFit(fitID)
if fit.isStructure:
return
trigger = sFit.addBooster(fitID, event.itemID)
if trigger:
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))

View File

@@ -11,8 +11,12 @@ class Cargo(ContextMenu):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
def display(self, srcContext, selection):
sFit = service.Fit.getInstance()
fitID = self.mainFrame.getActiveFit()
fit = sFit.getFit(fitID)
# Make sure context menu registers in the correct view
if srcContext not in ("marketItemGroup", "marketItemMisc") or self.mainFrame.getActiveFit() is None:
if srcContext not in ("marketItemGroup", "marketItemMisc") or not fit or fit.isStructure:
return False
return True

View File

@@ -195,6 +195,12 @@ class DroneView(d.Display):
def addItem(self, event):
sFit = service.Fit.getInstance()
fitID = self.mainFrame.getActiveFit()
fit = sFit.getFit(fitID)
if fit.isStructure:
return
trigger = sFit.addDrone(fitID, event.itemID)
if trigger:
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))

View File

@@ -365,8 +365,10 @@ class GangView ( ScrolledPanel ):
#Those are drags coming from pyfa sources, NOT builtin wx drags
self.draggedFitID = None
if type == "fit":
activeFit = self.mainFrame.getActiveFit()
if activeFit:
sFit = service.Fit.getInstance()
fit = sFit.getFit(self.mainFrame.getActiveFit())
if fit and not fit.isStructuree:
self.draggedFitID = fitID
pos = wx.GetMousePosition()

View File

@@ -139,6 +139,12 @@ class ImplantDisplay(d.Display):
def addItem(self, event):
sFit = service.Fit.getInstance()
fitID = self.mainFrame.getActiveFit()
fit = sFit.getFit(fitID)
if fit.isStructure:
return
trigger = sFit.addImplant(fitID, event.itemID)
if trigger:
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))

View File

@@ -1538,7 +1538,10 @@ class FitItem(SFItem.SFBrowserItem):
menu.Check(toggleItem.GetId(), self.fitBooster)
self.Bind(wx.EVT_MENU, self.OnToggleBooster, toggleItem)
if self.mainFrame.getActiveFit():
sFit = service.Fit.getInstance()
fit = sFit.getFit(self.mainFrame.getActiveFit())
if fit and not fit.isStructure:
# If there is an active fit, get menu for setting individual boosters
menu.AppendSeparator()
boosterMenu = self.mainFrame.additionsPane.gangPage.buildBoostermenu()