diff --git a/gui/builtinContextMenus/__init__.py b/gui/builtinContextMenus/__init__.py index b573f42be..b6143ffc6 100644 --- a/gui/builtinContextMenus/__init__.py +++ b/gui/builtinContextMenus/__init__.py @@ -9,7 +9,6 @@ from gui.builtinContextMenus import ( # noqa: E402,F401 # Often-used item manipulations shipModeChange, moduleAmmoChange, - moduleAmmoChangeAll, moduleSpool, boosterSideEffects, fighterAbilities, diff --git a/gui/builtinContextMenus/moduleAmmoChange.py b/gui/builtinContextMenus/moduleAmmoChange.py index 99e74dffc..e7efc21cc 100644 --- a/gui/builtinContextMenus/moduleAmmoChange.py +++ b/gui/builtinContextMenus/moduleAmmoChange.py @@ -6,6 +6,7 @@ import gui.mainFrame from eos.const import FittingHardpoint from gui.bitmap_loader import BitmapLoader from gui.contextMenu import ContextMenu +from service.fit import Fit from service.market import Market from service.settings import ContextMenuSettings @@ -227,12 +228,32 @@ class ChangeModuleAmmo(ContextMenu): return fitID = self.mainFrame.getActiveFit() - if self.context == 'fittingModule': - self.mainFrame.command.Submit(cmd.GuiChangeLocalModuleChargesCommand( - fitID=fitID, modules=self.modules, chargeItemID=charge.ID if charge is not None else None)) - elif self.context == 'projectedModule': - self.mainFrame.command.Submit(cmd.GuiChangeProjectedModuleChargesCommand( - fitID=fitID, modules=self.modules, chargeItemID=charge.ID if charge is not None else None)) + # Set to all modules if ctrl is pressed + if wx.GetMouseState().CmdDown(): + fit = Fit.getInstance().getFit(fitID) + selectedModule = self.modules[0] + if self.context == 'fittingModule': + self.mainFrame.command.Submit(cmd.GuiChangeLocalModuleChargesCommand( + fitID=fitID, + modules=[m for m in fit.modules if m.itemID is not None and m.itemID == selectedModule.itemID], + chargeItemID=charge.ID if charge is not None else None)) + elif self.context == 'projectedModule': + self.mainFrame.command.Submit(cmd.GuiChangeProjectedModuleChargesCommand( + fitID=fitID, + modules=[m for m in fit.projectedModules if + m.itemID is not None and m.itemID == selectedModule.itemID], + chargeItemID=charge.ID if charge is not None else None)) + else: + if self.context == 'fittingModule': + self.mainFrame.command.Submit(cmd.GuiChangeLocalModuleChargesCommand( + fitID=fitID, + modules=self.modules, + chargeItemID=charge.ID if charge is not None else None)) + elif self.context == 'projectedModule': + self.mainFrame.command.Submit(cmd.GuiChangeProjectedModuleChargesCommand( + fitID=fitID, + modules=self.modules, + chargeItemID=charge.ID if charge is not None else None)) ChangeModuleAmmo.register() diff --git a/gui/builtinContextMenus/moduleAmmoChangeAll.py b/gui/builtinContextMenus/moduleAmmoChangeAll.py deleted file mode 100644 index be5e02a32..000000000 --- a/gui/builtinContextMenus/moduleAmmoChangeAll.py +++ /dev/null @@ -1,58 +0,0 @@ -import gui.fitCommands as cmd -import gui.mainFrame -from gui.builtinContextMenus.moduleAmmoChange import ChangeModuleAmmo -from service.fit import Fit -from service.settings import ContextMenuSettings - - -class ChangeModuleAmmoAll(ChangeModuleAmmo): - - def __init__(self): - super(ChangeModuleAmmoAll, self).__init__() - self.mainFrame = gui.mainFrame.MainFrame.getInstance() - self.settings = ContextMenuSettings.getInstance() - - def getText(self, itmContext, selection): - return "Charge (All)" - - def handleAmmoSwitch(self, event): - if len(self.modules) != 1: - event.Skip() - return - - charge = self.chargeIds.get(event.Id, False) - if charge is False: - event.Skip() - return - - fitID = self.mainFrame.getActiveFit() - fit = Fit.getInstance().getFit(fitID) - - selectedModule = self.modules[0] - if self.context == 'fittingModule': - self.mainFrame.command.Submit(cmd.GuiChangeLocalModuleChargesCommand( - fitID=fitID, - modules=[m for m in fit.modules if m.itemID is not None and m.itemID == selectedModule.itemID], - chargeItemID=charge.ID if charge is not None else None)) - elif self.context == 'projectedModule': - self.mainFrame.command.Submit(cmd.GuiChangeProjectedModuleChargesCommand( - fitID=fitID, - modules=[m for m in fit.projectedModules if m.itemID is not None and m.itemID == selectedModule.itemID], - chargeItemID=charge.ID if charge is not None else None)) - - def display(self, srcContext, selection): - if not self.settings.get('moduleGlobalAmmoPicker'): - return False - - try: - selectionLen = len(selection) - except: - pass - else: - if selectionLen != 1: - return False - - return super(ChangeModuleAmmoAll, self).display(srcContext, selection) - - -ChangeModuleAmmoAll.register() diff --git a/gui/builtinPreferenceViews/pyfaContextMenuPreferences.py b/gui/builtinPreferenceViews/pyfaContextMenuPreferences.py index d0f083448..937abfdfe 100644 --- a/gui/builtinPreferenceViews/pyfaContextMenuPreferences.py +++ b/gui/builtinPreferenceViews/pyfaContextMenuPreferences.py @@ -59,20 +59,10 @@ class PFContextMenuPref(PreferenceView): rbSizerRow2.Add(self.rbBox4, 1, wx.ALL, 5) self.rbBox4.Bind(wx.EVT_RADIOBOX, self.OnSetting4Change) - # self.rbBox5 = wx.RadioBox(panel, -1, "Charge", wx.DefaultPosition, wx.DefaultSize, ['Disabled', 'Enabled'], 1, wx.RA_SPECIFY_COLS) - # self.rbBox5.SetSelection(self.settings.get('moduleAmmoPicker')) - # rbSizerRow2.Add(self.rbBox5, 0, wx.ALL, 5) - # self.rbBox5.Bind(wx.EVT_RADIOBOX, self.OnSetting5Change) - - self.rbBox6 = wx.RadioBox(panel, -1, "Charge (All)", wx.DefaultPosition, wx.DefaultSize, ['Disabled', 'Enabled'], 1, wx.RA_SPECIFY_COLS) - self.rbBox6.SetSelection(self.settings.get('moduleGlobalAmmoPicker')) - rbSizerRow2.Add(self.rbBox6, 1, wx.ALL, 5) - self.rbBox6.Bind(wx.EVT_RADIOBOX, self.OnSetting6Change) - - self.rbBox7 = wx.RadioBox(panel, -1, "Project onto Fit", wx.DefaultPosition, wx.DefaultSize, ['Disabled', 'Enabled'], 1, wx.RA_SPECIFY_COLS) - self.rbBox7.SetSelection(self.settings.get('project')) - rbSizerRow2.Add(self.rbBox7, 1, wx.ALL, 5) - self.rbBox7.Bind(wx.EVT_RADIOBOX, self.OnSetting7Change) + self.rbBox5 = wx.RadioBox(panel, -1, "Project onto Fit", wx.DefaultPosition, wx.DefaultSize, ['Disabled', 'Enabled'], 1, wx.RA_SPECIFY_COLS) + self.rbBox5.SetSelection(self.settings.get('project')) + rbSizerRow2.Add(self.rbBox5, 1, wx.ALL, 5) + self.rbBox5.Bind(wx.EVT_RADIOBOX, self.OnSetting5Change) mainSizer.Add(rbSizerRow2, 1, wx.ALL | wx.EXPAND, 0) @@ -107,12 +97,6 @@ class PFContextMenuPref(PreferenceView): self.settings.set('metaSwap', event.GetInt()) def OnSetting5Change(self, event): - self.settings.set('moduleAmmoPicker', event.GetInt()) - - def OnSetting6Change(self, event): - self.settings.set('moduleGlobalAmmoPicker', event.GetInt()) - - def OnSetting7Change(self, event): self.settings.set('project', event.GetInt()) def OnSetting8Change(self, event): diff --git a/service/settings.py b/service/settings.py index aa55f98d4..360d39493 100644 --- a/service/settings.py +++ b/service/settings.py @@ -482,7 +482,6 @@ class ContextMenuSettings(object): "marketJump" : 1, "metaSwap" : 1, "moduleAmmoPicker" : 1, - "moduleGlobalAmmoPicker": 1, "openFit" : 1, "priceClear" : 1, "project" : 1,