diff --git a/gui/builtinContextMenus/__init__.py b/gui/builtinContextMenus/__init__.py index bb8631623..76e814bd5 100644 --- a/gui/builtinContextMenus/__init__.py +++ b/gui/builtinContextMenus/__init__.py @@ -1,6 +1,6 @@ __all__ = [ "openFit", - # "moduleGlobalAmmoPicker", + "moduleGlobalAmmoPicker", "moduleAmmoPicker", "itemStats", "damagePattern", @@ -23,5 +23,5 @@ __all__ = [ "implantSets", "fighterAbilities", "cargoAmmo", - "droneStack" + "droneStack", ] diff --git a/gui/builtinContextMenus/cargoAmmo.py b/gui/builtinContextMenus/cargoAmmo.py index 573e4c24f..57ae42517 100644 --- a/gui/builtinContextMenus/cargoAmmo.py +++ b/gui/builtinContextMenus/cargoAmmo.py @@ -3,13 +3,19 @@ import gui.mainFrame import service import gui.globalEvents as GE import wx +from service.settings import ContextMenuSettings +from service.fit import Fit class CargoAmmo(ContextMenu): def __init__(self): self.mainFrame = gui.mainFrame.MainFrame.getInstance() + self.settings = ContextMenuSettings.getInstance() def display(self, srcContext, selection): + if not self.settings.get('cargoAmmo'): + return False + if srcContext not in ("marketItemGroup", "marketItemMisc") or self.mainFrame.getActiveFit() is None: return False @@ -23,7 +29,7 @@ class CargoAmmo(ContextMenu): return "Add {0} to Cargo (x1000)".format(itmContext) def activate(self, fullContext, selection, i): - sFit = service.Fit.getInstance() + sFit = Fit.getInstance() fitID = self.mainFrame.getActiveFit() typeID = int(selection[0].ID) diff --git a/gui/builtinContextMenus/droneStack.py b/gui/builtinContextMenus/droneStack.py index b7fde1040..150b76676 100644 --- a/gui/builtinContextMenus/droneStack.py +++ b/gui/builtinContextMenus/droneStack.py @@ -3,13 +3,19 @@ import gui.mainFrame import service import gui.globalEvents as GE import wx +from service.settings import ContextMenuSettings +from service.fit import Fit -class CargoAmmo(ContextMenu): +class DroneStack(ContextMenu): def __init__(self): self.mainFrame = gui.mainFrame.MainFrame.getInstance() + self.settings = ContextMenuSettings.getInstance() def display(self, srcContext, selection): + if not self.settings.get('droneStack'): + return False + if srcContext not in ("marketItemGroup", "marketItemMisc") or self.mainFrame.getActiveFit() is None: return False @@ -25,7 +31,7 @@ class CargoAmmo(ContextMenu): return "Add {0} to Drone Bay (x5)".format(itmContext) def activate(self, fullContext, selection, i): - sFit = service.Fit.getInstance() + sFit = Fit.getInstance() fitID = self.mainFrame.getActiveFit() typeID = int(selection[0].ID) @@ -34,4 +40,4 @@ class CargoAmmo(ContextMenu): wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) -CargoAmmo.register() +DroneStack.register() diff --git a/gui/contextMenu.py b/gui/contextMenu.py index 243a4a743..a35c73282 100644 --- a/gui/contextMenu.py +++ b/gui/contextMenu.py @@ -181,7 +181,7 @@ class ContextMenu(object): # noinspection PyUnresolvedReferences from gui.builtinContextMenus import ( # noqa: E402,F401 openFit, - # moduleGlobalAmmoPicker, + moduleGlobalAmmoPicker, moduleAmmoPicker, itemStats, damagePattern, @@ -200,6 +200,8 @@ from gui.builtinContextMenus import ( # noqa: E402,F401 targetResists, priceClear, amount, + cargoAmmo, + droneStack, metaSwap, implantSets, fighterAbilities, diff --git a/service/settings.py b/service/settings.py index 5d44d4e88..214a39e48 100644 --- a/service/settings.py +++ b/service/settings.py @@ -408,10 +408,12 @@ class ContextMenuSettings(object): "ammoPattern" : 1, "amount" : 1, "cargo" : 1, + "cargoAmmo" : 1, "changeAffectingSkills" : 1, "damagePattern" : 1, "droneRemoveStack" : 1, "droneSplit" : 1, + "droneStack" : 1, "factorReload" : 1, "fighterAbilities" : 1, "implantSet" : 1,