diff --git a/src/Mod/Path/PathCommands.py b/src/Mod/Path/PathCommands.py index b4c17880d8..3afbd053f7 100644 --- a/src/Mod/Path/PathCommands.py +++ b/src/Mod/Path/PathCommands.py @@ -170,15 +170,17 @@ class _CopyOperation: if bool(FreeCADGui.Selection.getSelection()) is False: return False try: - obj = FreeCADGui.Selection.getSelectionEx()[0].Object - return isinstance(obj.Proxy, PathScripts.PathOp.ObjectOp) + for sel in FreeCADGui.Selection.getSelectionEx(): + if not isinstance(sel.Object.Proxy, PathScripts.PathOp.ObjectOp): + return False + return True except(IndexError, AttributeError): return False def Activated(self): - obj = FreeCADGui.Selection.getSelectionEx()[0].Object - jobname = findParentJob(obj).Name - addToJob(FreeCAD.ActiveDocument.copyObject(obj, False), jobname) + for sel in FreeCADGui.Selection.getSelectionEx(): + jobname = findParentJob(sel.Object).Name + addToJob(FreeCAD.ActiveDocument.copyObject(sel.Object, False), jobname) if FreeCAD.GuiUp: