From 9179165fcd3e4ab840150cc1e3f74bbdae41ed55 Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Sun, 21 May 2017 18:21:01 -0300 Subject: [PATCH] Draft: Leave all clones selected after cloning --- src/Mod/Draft/Draft.py | 1 + src/Mod/Draft/DraftTools.py | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Mod/Draft/Draft.py b/src/Mod/Draft/Draft.py index b30dc6b002..fc8d316b9b 100644 --- a/src/Mod/Draft/Draft.py +++ b/src/Mod/Draft/Draft.py @@ -2956,6 +2956,7 @@ def mirror(objlist,p1,p2): if len(result) == 1: result = result[0] + select(result) return result diff --git a/src/Mod/Draft/DraftTools.py b/src/Mod/Draft/DraftTools.py index 1076351309..1773fa11aa 100644 --- a/src/Mod/Draft/DraftTools.py +++ b/src/Mod/Draft/DraftTools.py @@ -4831,11 +4831,15 @@ class Draft_Clone(Modifier): if self.call: self.view.removeEventCallback("SoEvent",self.call) if FreeCADGui.Selection.getSelection(): + l = len(FreeCADGui.Selection.getSelection()) FreeCAD.ActiveDocument.openTransaction("Clone") for obj in FreeCADGui.Selection.getSelection(): - Draft.clone(obj) + FreeCADGui.doCommand("Draft.clone(FreeCAD.ActiveDocument."+obj.Name+")") FreeCAD.ActiveDocument.commitTransaction() FreeCAD.ActiveDocument.recompute() + FreeCADGui.Selection.clearSelection() + for i in range(l): + FreeCADGui.Selection.addSelection(FreeCAD.ActiveDocument.Objects[-(1+i)]) self.finish()