Do not do extra recalc if it's not needed

This commit is contained in:
DarkPhoenix
2019-08-12 02:13:29 +03:00
parent 3e6e3b0743
commit f8062ba39f
2 changed files with 11 additions and 1 deletions

View File

@@ -61,3 +61,12 @@ class CalcChangeLocalModuleStatesCommand(wx.Command):
mod.state = state
restoreCheckedStates(fit, self.savedStateCheckChanges, ignoreModPoss=self.savedStates)
return True
@property
def recalcNeeded(self):
if self.savedStateCheckChanges is None:
return True
for container in self.savedStateCheckChanges:
if len(container) > 0:
return True
return False

View File

@@ -28,7 +28,8 @@ class GuiChangeLocalModuleStatesCommand(wx.Command):
success = self.internalHistory.submit(cmd)
eos.db.flush()
sFit = Fit.getInstance()
sFit.recalc(self.fitID)
if cmd.recalcNeeded:
sFit.recalc(self.fitID)
self.savedRemovedDummies = sFit.fill(self.fitID)
eos.db.commit()
wx.PostEvent(gui.mainFrame.MainFrame.getInstance(), GE.FitChanged(fitIDs=(self.fitID,)))