def Activated(self): selection = FreeCADGui.Selection.getSelectionEx() for selobj in selection: newobj = selobj.Document.addObject("Mesh::Feature", 'scale') newobj.Label = 'scale_%s' % selobj.Object.Label msh = selobj.Object.Mesh items = ["[1;1;1]"] item, ok = QtGui.QInputDialog.getItem( QtGui.QApplication.activeWindow(), 'Scale about which Axis?', 'Enter scaling value:', items, editable=True) if ok: splits = list( item.replace('[', '').replace(']', '').split(';')) x = float(splits[0]) y = float(splits[1]) z = float(splits[2]) vec = FreeCAD.Base.Vector(x, y, z) newmesh = OpenSCADUtils.scalemesh(msh, vec) newobj.Mesh = newmesh selobj.Object.ViewObject.hide() else: selobj.Document.removeObject(newobj.Name) FreeCAD.ActiveDocument.recompute()