| 9 | |
| 10 | |
| 11 | class CalcRemoveBoosterCommand(wx.Command): |
| 12 | |
| 13 | def __init__(self, fitID, position): |
| 14 | wx.Command.__init__(self, True, 'Remove Booster') |
| 15 | self.fitID = fitID |
| 16 | self.position = position |
| 17 | self.savedBoosterInfo = None |
| 18 | |
| 19 | def Do(self): |
| 20 | pyfalog.debug('Doing removal of booster from position {} on fit {}'.format(self.position, self.fitID)) |
| 21 | fit = Fit.getInstance().getFit(self.fitID) |
| 22 | booster = fit.boosters[self.position] |
| 23 | self.savedBoosterInfo = BoosterInfo.fromBooster(booster) |
| 24 | fit.boosters.remove(booster) |
| 25 | return True |
| 26 | |
| 27 | def Undo(self): |
| 28 | pyfalog.debug('Undoing removal of booster {} on fit {}'.format(self.savedBoosterInfo, self.fitID)) |
| 29 | from .add import CalcAddBoosterCommand |
| 30 | cmd = CalcAddBoosterCommand( |
| 31 | fitID=self.fitID, |
| 32 | boosterInfo=self.savedBoosterInfo, |
| 33 | position=self.position) |
| 34 | return cmd.Do() |