Add support for ship browser lite to command view

This commit is contained in:
DarkPhoenix
2019-08-01 12:21:01 +03:00
parent 2e9b024390
commit b3b134ea45
6 changed files with 30 additions and 13 deletions

View File

@@ -117,7 +117,7 @@ class CommandView(d.Display):
if type == "fit":
activeFit = self.mainFrame.getActiveFit()
if activeFit:
self.mainFrame.command.Submit(cmd.GuiAddCommandFitCommand(fitID=activeFit, commandFitID=fitID))
self.mainFrame.command.Submit(cmd.GuiAddCommandFitsCommand(fitID=activeFit, commandFitIDs=[fitID]))
@staticmethod
def fitSort(fit):
@@ -228,8 +228,20 @@ class CommandView(d.Display):
commandFits.append(commandFit)
return commandFits
# Context menu handlers
def addFit(self, fit):
if fit is None:
return
fitID = self.mainFrame.getActiveFit()
self.mainFrame.command.Submit(cmd.GuiAddCommandFitCommand(fitID=fitID, commandFitID=fit.ID))
self.mainFrame.command.Submit(cmd.GuiAddCommandFitsCommand(
fitID=self.mainFrame.getActiveFit(),
commandFitIDs=[fit.ID]))
def getExistingFitIDs(self):
return [f.ID for f in self.fits]
def addFitsByIDs(self, fitIDs):
if not fitIDs:
return
self.mainFrame.command.Submit(cmd.GuiAddCommandFitsCommand(
fitID=self.mainFrame.getActiveFit(),
commandFitIDs=fitIDs))

View File

@@ -97,7 +97,7 @@ class AddCommandFit(ContextMenuUnconditional):
return
fitID = self.mainFrame.getActiveFit()
self.mainFrame.command.Submit(cmd.GuiAddCommandFitCommand(fitID=fitID, commandFitID=fit.ID))
self.mainFrame.command.Submit(cmd.GuiAddCommandFitsCommand(fitID=fitID, commandFitIDs=[fit.ID]))
AddCommandFit.populateFits(None)

View File

@@ -184,7 +184,7 @@ class FitItem(SFItem.SFBrowserItem):
def OnAddCommandFit(self, event):
activeFit = self.mainFrame.getActiveFit()
if activeFit:
if self.mainFrame.command.Submit(cmd.GuiAddCommandFitCommand(fitID=activeFit, commandFitID=self.fitID)):
if self.mainFrame.command.Submit(cmd.GuiAddCommandFitsCommand(fitID=activeFit, commandFitIDs=[self.fitID])):
self.mainFrame.additionsPane.select("Command")
def OnMouseCaptureLost(self, event):

View File

@@ -7,7 +7,7 @@ from .gui.cargo.add import GuiAddCargoCommand
from .gui.cargo.changeAmount import GuiChangeCargoAmountCommand
from .gui.cargo.changeMetas import GuiChangeCargoMetasCommand
from .gui.cargo.remove import GuiRemoveCargosCommand
from .gui.commandFit.add import GuiAddCommandFitCommand
from .gui.commandFit.add import GuiAddCommandFitsCommand
from .gui.commandFit.remove import GuiRemoveCommandFitsCommand
from .gui.commandFit.toggleStates import GuiToggleCommandFitStatesCommand
from .gui.fitRename import GuiRenameFitCommand

View File

@@ -8,17 +8,22 @@ from gui.fitCommands.helpers import InternalCommandHistory
from service.fit import Fit
class GuiAddCommandFitCommand(wx.Command):
class GuiAddCommandFitsCommand(wx.Command):
def __init__(self, fitID, commandFitID):
wx.Command.__init__(self, True, 'Add Command Fit')
def __init__(self, fitID, commandFitIDs):
wx.Command.__init__(self, True, 'Add Command Fits')
self.internalHistory = InternalCommandHistory()
self.fitID = fitID
self.commandFitID = commandFitID
self.commandFitIDs = commandFitIDs
def Do(self):
cmd = CalcAddCommandCommand(fitID=self.fitID, commandFitID=self.commandFitID)
success = self.internalHistory.submit(cmd)
commands = []
for commandFitID in self.commandFitIDs:
cmd = CalcAddCommandCommand(fitID=self.fitID, commandFitID=commandFitID)
commands.append(cmd)
if not commands:
return False
success = self.internalHistory.submitBatch(*commands)
eos.db.flush()
sFit = Fit.getInstance()
sFit.recalc(self.fitID)

View File

@@ -176,7 +176,7 @@ class BaseList(gui.display.Display):
self.fits.append(fit)
self.updateView()
self.graphFrame.draw()
class FitList(BaseList):