diff --git a/src/Mod/Draft/DraftGui.py b/src/Mod/Draft/DraftGui.py index 4c9303c61a..ca162304fe 100644 --- a/src/Mod/Draft/DraftGui.py +++ b/src/Mod/Draft/DraftGui.py @@ -1184,11 +1184,12 @@ class DraftToolBar: def __init__(self,extra=None,callback=None): if extra: self.form = [extra] + self.callback=callback def getStandardButtons(self): return int(QtGui.QDialogButtonBox.Close) def reject(self): - if callback: - callback() + if self.callback: + self.callback() return True FreeCADGui.Control.closeDialog() panel = TaskPanel(extra,callback) diff --git a/src/Mod/Draft/draftguitools/gui_clone.py b/src/Mod/Draft/draftguitools/gui_clone.py index 26797cefd3..e987ef7ce2 100644 --- a/src/Mod/Draft/draftguitools/gui_clone.py +++ b/src/Mod/Draft/draftguitools/gui_clone.py @@ -75,7 +75,7 @@ class Clone(gui_base_original.Modifier): super(Clone, self).Activated(name=translate("draft","Clone")) if not Gui.Selection.getSelection(): if self.ui: - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to clone")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_downgrade.py b/src/Mod/Draft/draftguitools/gui_downgrade.py index 015717681d..15215a2ec8 100644 --- a/src/Mod/Draft/draftguitools/gui_downgrade.py +++ b/src/Mod/Draft/draftguitools/gui_downgrade.py @@ -63,7 +63,7 @@ class Downgrade(gui_base_original.Modifier): super(Downgrade, self).Activated(name=translate("draft","Downgrade")) if self.ui: if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to upgrade")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_draft2sketch.py b/src/Mod/Draft/draftguitools/gui_draft2sketch.py index 2759e6e0ff..7087b6d826 100644 --- a/src/Mod/Draft/draftguitools/gui_draft2sketch.py +++ b/src/Mod/Draft/draftguitools/gui_draft2sketch.py @@ -62,7 +62,7 @@ class Draft2Sketch(gui_base_original.Modifier): super(Draft2Sketch, self).Activated(name=translate("draft","Convert Draft/Sketch")) if not Gui.Selection.getSelection(): if self.ui: - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to convert.")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_edit.py b/src/Mod/Draft/draftguitools/gui_edit.py index 5dbac65bef..4f4a6e3868 100644 --- a/src/Mod/Draft/draftguitools/gui_edit.py +++ b/src/Mod/Draft/draftguitools/gui_edit.py @@ -300,7 +300,7 @@ class Edit(gui_base_original.Modifier): if Gui.Selection.getSelection(): self.proceed() else: - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) App.Console.PrintMessage(translate("draft", "Select a Draft object to edit") + "\n") diff --git a/src/Mod/Draft/draftguitools/gui_facebinders.py b/src/Mod/Draft/draftguitools/gui_facebinders.py index 7a8bf83f0c..2b71842f03 100644 --- a/src/Mod/Draft/draftguitools/gui_facebinders.py +++ b/src/Mod/Draft/draftguitools/gui_facebinders.py @@ -67,7 +67,7 @@ class Facebinder(gui_base_original.Creator): if not Gui.Selection.getSelection(): if self.ui: - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select faces from existing objects")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_join.py b/src/Mod/Draft/draftguitools/gui_join.py index ce2b6a4119..45372462f5 100644 --- a/src/Mod/Draft/draftguitools/gui_join.py +++ b/src/Mod/Draft/draftguitools/gui_join.py @@ -72,7 +72,7 @@ class Join(gui_base_original.Modifier): if not self.ui: return if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to join")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_mirror.py b/src/Mod/Draft/draftguitools/gui_mirror.py index 18afa9c9f7..f3951fe256 100644 --- a/src/Mod/Draft/draftguitools/gui_mirror.py +++ b/src/Mod/Draft/draftguitools/gui_mirror.py @@ -70,7 +70,7 @@ class Mirror(gui_base_original.Modifier): self.ghost = None if self.ui: if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to mirror")) self.call = \ self.view.addEventCallback("SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_move.py b/src/Mod/Draft/draftguitools/gui_move.py index ccccbd5876..f8edf8e778 100644 --- a/src/Mod/Draft/draftguitools/gui_move.py +++ b/src/Mod/Draft/draftguitools/gui_move.py @@ -78,7 +78,7 @@ class Move(gui_base_original.Modifier): """Get the object selection.""" if Gui.Selection.getSelectionEx(): return self.proceed() - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to move")) self.call = \ self.view.addEventCallback("SoEvent", gui_tool_utils.selectObject) diff --git a/src/Mod/Draft/draftguitools/gui_offset.py b/src/Mod/Draft/draftguitools/gui_offset.py index 50f8c928f4..b1d34bd3f2 100644 --- a/src/Mod/Draft/draftguitools/gui_offset.py +++ b/src/Mod/Draft/draftguitools/gui_offset.py @@ -72,7 +72,7 @@ class Offset(gui_base_original.Modifier): self.arctrack = None if self.ui: if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to offset")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_rotate.py b/src/Mod/Draft/draftguitools/gui_rotate.py index 0f55cc5449..e7f1438b54 100644 --- a/src/Mod/Draft/draftguitools/gui_rotate.py +++ b/src/Mod/Draft/draftguitools/gui_rotate.py @@ -75,7 +75,7 @@ class Rotate(gui_base_original.Modifier): """Get the object selection.""" if Gui.Selection.getSelection(): return self.proceed() - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to rotate")) self.call = \ self.view.addEventCallback("SoEvent", gui_tool_utils.selectObject) diff --git a/src/Mod/Draft/draftguitools/gui_scale.py b/src/Mod/Draft/draftguitools/gui_scale.py index b4b689733a..5dc46b2411 100644 --- a/src/Mod/Draft/draftguitools/gui_scale.py +++ b/src/Mod/Draft/draftguitools/gui_scale.py @@ -84,7 +84,7 @@ class Scale(gui_base_original.Modifier): """Get object selection and proceed if successful.""" if Gui.Selection.getSelection(): return self.proceed() - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to scale")) self.call = self.view.addEventCallback("SoEvent", gui_tool_utils.selectObject) diff --git a/src/Mod/Draft/draftguitools/gui_shape2dview.py b/src/Mod/Draft/draftguitools/gui_shape2dview.py index 52ea98e5bb..d5f7e1a80f 100644 --- a/src/Mod/Draft/draftguitools/gui_shape2dview.py +++ b/src/Mod/Draft/draftguitools/gui_shape2dview.py @@ -64,7 +64,7 @@ class Shape2DView(gui_base_original.Modifier): super(Shape2DView, self).Activated(name=translate("draft","Project 2D view")) if not Gui.Selection.getSelection(): if self.ui: - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to project")) self.call = self.view.addEventCallback( "SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_stretch.py b/src/Mod/Draft/draftguitools/gui_stretch.py index 0139c067cf..4ac6860c6b 100644 --- a/src/Mod/Draft/draftguitools/gui_stretch.py +++ b/src/Mod/Draft/draftguitools/gui_stretch.py @@ -69,7 +69,7 @@ class Stretch(gui_base_original.Modifier): super(Stretch, self).Activated(name=translate("draft","Stretch")) if self.ui: if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to stretch")) self.call = \ self.view.addEventCallback("SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_trimex.py b/src/Mod/Draft/draftguitools/gui_trimex.py index 88546b0716..6a54d24f71 100644 --- a/src/Mod/Draft/draftguitools/gui_trimex.py +++ b/src/Mod/Draft/draftguitools/gui_trimex.py @@ -87,7 +87,7 @@ class Trimex(gui_base_original.Modifier): self.width = None if self.ui: if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select objects to trim or extend")) self.call = \ self.view.addEventCallback("SoEvent", diff --git a/src/Mod/Draft/draftguitools/gui_upgrade.py b/src/Mod/Draft/draftguitools/gui_upgrade.py index fbab4fa431..9137bb99c3 100644 --- a/src/Mod/Draft/draftguitools/gui_upgrade.py +++ b/src/Mod/Draft/draftguitools/gui_upgrade.py @@ -63,7 +63,7 @@ class Upgrade(gui_base_original.Modifier): super(Upgrade, self).Activated(name=translate("draft","Upgrade")) if self.ui: if not Gui.Selection.getSelection(): - self.ui.selectUi() + self.ui.selectUi(callback=self.finish) _msg(translate("draft", "Select an object to upgrade")) self.call = self.view.addEventCallback( "SoEvent",