From 7b71c16cec0233a211e5b4b413802550debb3142 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Sun, 21 Apr 2019 14:35:52 +0300 Subject: [PATCH] Remove bunch of modules on alt-double click --- gui/builtinViews/fittingView.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/gui/builtinViews/fittingView.py b/gui/builtinViews/fittingView.py index 7e58b8777..13f4cbe96 100644 --- a/gui/builtinViews/fittingView.py +++ b/gui/builtinViews/fittingView.py @@ -400,7 +400,19 @@ class FittingView(d.Display): if row != -1 and row not in self.blanks and isinstance(self.mods[row], Module): col = self.getColumn(event.Position) if col != self.getColIndex(State): - self.removeModule(self.mods[row]) + try: + mod = self.mods[row] + except IndexError: + return + if not isinstance(mod, Module) or mod.isEmpty: + return + if event.altDown: + fit = Fit.getInstance().getFit(self.activeFitID) + positions = getSimilarModPositions(fit.modules, mod) + self.mainFrame.command.Submit(cmd.GuiRemoveLocalModuleCommand( + fitID=self.activeFitID, positions=positions)) + else: + self.removeModule(mod) else: if "wxMSW" in wx.PlatformInfo: self.click(event)