Improve some efficiencies with the variations context menu: Do not recalc twice when switching items. (#1095)

This commit is contained in:
Ryan Holmes
2017-04-02 16:46:25 -05:00
committed by GitHub
parent 1daafd15e6
commit 3dd539b4f0
2 changed files with 24 additions and 18 deletions

View File

@@ -278,7 +278,7 @@ class Fit(object):
self.recalc(fit)
return True
def addBooster(self, fitID, itemID):
def addBooster(self, fitID, itemID, recalc=True):
pyfalog.debug("Adding booster ({0}) to fit ID: {1}", itemID, fitID)
if fitID is None:
return False
@@ -292,10 +292,11 @@ class Fit(object):
return False
fit.boosters.append(booster)
self.recalc(fit)
if recalc:
self.recalc(fit)
return True
def removeBooster(self, fitID, position):
def removeBooster(self, fitID, position, recalc=True):
pyfalog.debug("Removing booster from position ({0}) for fit ID: {1}", position, fitID)
if fitID is None:
return False
@@ -303,7 +304,8 @@ class Fit(object):
fit = eos.db.getFit(fitID)
booster = fit.boosters[position]
fit.boosters.remove(booster)
self.recalc(fit)
if recalc:
self.recalc(fit)
return True
def project(self, fitID, thing):
@@ -670,7 +672,7 @@ class Fit(object):
self.recalc(fit)
return True
def addFighter(self, fitID, itemID):
def addFighter(self, fitID, itemID, recalc=True):
pyfalog.debug("Adding fighters ({0}) to fit ID: {1}", itemID, fitID)
if fitID is None:
return False
@@ -712,22 +714,24 @@ class Fit(object):
return False
eos.db.commit()
self.recalc(fit)
if recalc:
self.recalc(fit)
return True
else:
return False
def removeFighter(self, fitID, i):
def removeFighter(self, fitID, i, recalc=True):
pyfalog.debug("Removing fighters from fit ID: {0}", fitID)
fit = eos.db.getFit(fitID)
f = fit.fighters[i]
fit.fighters.remove(f)
eos.db.commit()
self.recalc(fit)
if recalc:
self.recalc(fit)
return True
def addDrone(self, fitID, itemID, numDronesToAdd=1):
def addDrone(self, fitID, itemID, numDronesToAdd=1, recalc=True):
pyfalog.debug("Adding {0} drones ({1}) to fit ID: {2}", numDronesToAdd, itemID, fitID)
if fitID is None:
return False
@@ -749,7 +753,8 @@ class Fit(object):
return False
drone.amount += numDronesToAdd
eos.db.commit()
self.recalc(fit)
if recalc:
self.recalc(fit)
return True
else:
return False
@@ -810,7 +815,7 @@ class Fit(object):
fit = eos.db.getFit(fitID)
self.splitDrones(fit, d, amount, fit.drones)
def removeDrone(self, fitID, i, numDronesToRemove=1):
def removeDrone(self, fitID, i, numDronesToRemove=1, recalc=True):
pyfalog.debug("Removing {0} drones for fit ID: {1}", numDronesToRemove, fitID)
fit = eos.db.getFit(fitID)
d = fit.drones[i]
@@ -822,7 +827,8 @@ class Fit(object):
del fit.drones[i]
eos.db.commit()
self.recalc(fit)
if recalc:
self.recalc(fit)
return True
def toggleDrone(self, fitID, i):