From a57b323e001d95c3d677bf798997c0ab0358a59d Mon Sep 17 00:00:00 2001 From: marioalexis Date: Sun, 7 Feb 2021 02:35:14 -0300 Subject: [PATCH 1/4] Draft: Call finish method if pressed Close button in dumb taskdialog --- src/Mod/Draft/DraftGui.py | 5 +++-- src/Mod/Draft/draftguitools/gui_clone.py | 2 +- src/Mod/Draft/draftguitools/gui_downgrade.py | 2 +- src/Mod/Draft/draftguitools/gui_draft2sketch.py | 2 +- src/Mod/Draft/draftguitools/gui_edit.py | 2 +- src/Mod/Draft/draftguitools/gui_facebinders.py | 2 +- src/Mod/Draft/draftguitools/gui_join.py | 2 +- src/Mod/Draft/draftguitools/gui_mirror.py | 2 +- src/Mod/Draft/draftguitools/gui_move.py | 2 +- src/Mod/Draft/draftguitools/gui_offset.py | 2 +- src/Mod/Draft/draftguitools/gui_rotate.py | 2 +- src/Mod/Draft/draftguitools/gui_scale.py | 2 +- src/Mod/Draft/draftguitools/gui_shape2dview.py | 2 +- src/Mod/Draft/draftguitools/gui_stretch.py | 2 +- src/Mod/Draft/draftguitools/gui_trimex.py | 2 +- src/Mod/Draft/draftguitools/gui_upgrade.py | 2 +- 16 files changed, 18 insertions(+), 17 deletions(-) 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", From 122a3dad59cda6abc2ce278b80e2821e27c46255 Mon Sep 17 00:00:00 2001 From: marioalexis Date: Sun, 7 Feb 2021 14:04:35 -0300 Subject: [PATCH 2/4] Draft: Set reject method for working plane task dialog --- src/Mod/Draft/draftguitools/gui_selectplane.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Mod/Draft/draftguitools/gui_selectplane.py b/src/Mod/Draft/draftguitools/gui_selectplane.py index 0f02e484c3..3c309ae928 100644 --- a/src/Mod/Draft/draftguitools/gui_selectplane.py +++ b/src/Mod/Draft/draftguitools/gui_selectplane.py @@ -91,6 +91,7 @@ class Draft_SelectPlane: # Create task panel FreeCADGui.Control.closeDialog() self.taskd = task_selectplane.SelectPlaneTaskPanel() + self.taskd.reject = self.reject # Fill values self.taskd.form.checkCenter.setChecked(self.param.GetBool("CenterPlaneOnView", False)) From 96d1516abe58476661a992988551c9fb7a488d4f Mon Sep 17 00:00:00 2001 From: marioalexis Date: Sun, 7 Feb 2021 19:50:49 -0300 Subject: [PATCH 3/4] Draft: Change selectUi and makeDumbTask argument named 'callback' to 'on_close_call' Suggested by user @carlopav --- src/Mod/Draft/DraftGui.py | 12 ++++++------ src/Mod/Draft/draftguitools/gui_clone.py | 2 +- src/Mod/Draft/draftguitools/gui_downgrade.py | 2 +- src/Mod/Draft/draftguitools/gui_draft2sketch.py | 2 +- src/Mod/Draft/draftguitools/gui_edit.py | 2 +- src/Mod/Draft/draftguitools/gui_facebinders.py | 2 +- src/Mod/Draft/draftguitools/gui_join.py | 2 +- src/Mod/Draft/draftguitools/gui_mirror.py | 2 +- src/Mod/Draft/draftguitools/gui_move.py | 2 +- src/Mod/Draft/draftguitools/gui_offset.py | 2 +- src/Mod/Draft/draftguitools/gui_rotate.py | 2 +- src/Mod/Draft/draftguitools/gui_scale.py | 2 +- src/Mod/Draft/draftguitools/gui_shape2dview.py | 2 +- src/Mod/Draft/draftguitools/gui_stretch.py | 2 +- src/Mod/Draft/draftguitools/gui_trimex.py | 2 +- src/Mod/Draft/draftguitools/gui_upgrade.py | 2 +- 16 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/Mod/Draft/DraftGui.py b/src/Mod/Draft/DraftGui.py index ca162304fe..b5ee10f571 100644 --- a/src/Mod/Draft/DraftGui.py +++ b/src/Mod/Draft/DraftGui.py @@ -1061,12 +1061,12 @@ class DraftToolBar: else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020) self.cmdlabel.setText(title) - def selectUi(self,extra=None,callback=None): + def selectUi(self,extra=None, on_close_call=None): if not self.taskmode: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020) self.labelx.setText(translate("draft", "Pick Object")) self.labelx.show() - self.makeDumbTask(extra,callback) + self.makeDumbTask(extra, on_close_call) def editUi(self, mode=None): self.lastMode=mode @@ -1178,13 +1178,13 @@ class DraftToolBar: else: self.layout.setDirection(QtGui.QBoxLayout.LeftToRight) - def makeDumbTask(self,extra=None,callback=None): + def makeDumbTask(self, extra=None, on_close_call=None): """create a dumb taskdialog to prevent deleting the temp object""" class TaskPanel: - def __init__(self,extra=None,callback=None): + def __init__(self, extra=None, callback=None): if extra: self.form = [extra] - self.callback=callback + self.callback = callback def getStandardButtons(self): return int(QtGui.QDialogButtonBox.Close) def reject(self): @@ -1192,7 +1192,7 @@ class DraftToolBar: self.callback() return True FreeCADGui.Control.closeDialog() - panel = TaskPanel(extra,callback) + panel = TaskPanel(extra, on_close_call) FreeCADGui.Control.showDialog(panel) diff --git a/src/Mod/Draft/draftguitools/gui_clone.py b/src/Mod/Draft/draftguitools/gui_clone.py index e987ef7ce2..b65329aae0 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 15215a2ec8..6cf612739a 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 7087b6d826..bb8efc8855 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 4f4a6e3868..612d217444 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 2b71842f03..a0aa1a5ef5 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 45372462f5..d9e9d716e4 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 f3951fe256..7969bbb6a6 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 f8edf8e778..7475db2d8e 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 b1d34bd3f2..466a64b6c2 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 e7f1438b54..23ad2beb73 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 5dc46b2411..46402f7401 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 d5f7e1a80f..90b57b2934 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 4ac6860c6b..b4fc8cdfff 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 6a54d24f71..afd2a53861 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(callback=self.finish) + self.ui.selectUi(on_close_call=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 9137bb99c3..cca3e74bf2 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(callback=self.finish) + self.ui.selectUi(on_close_call=self.finish) _msg(translate("draft", "Select an object to upgrade")) self.call = self.view.addEventCallback( "SoEvent", From efbdc2ec9e72cf302d6e73bb0cb80b09151193b3 Mon Sep 17 00:00:00 2001 From: marioalexis Date: Mon, 8 Feb 2021 00:10:08 -0300 Subject: [PATCH 4/4] Draft: Clear tracker attributes when finish method is executed in gui_stretch --- src/Mod/Draft/draftguitools/gui_stretch.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Mod/Draft/draftguitools/gui_stretch.py b/src/Mod/Draft/draftguitools/gui_stretch.py index b4fc8cdfff..b44480f46e 100644 --- a/src/Mod/Draft/draftguitools/gui_stretch.py +++ b/src/Mod/Draft/draftguitools/gui_stretch.py @@ -67,6 +67,8 @@ class Stretch(gui_base_original.Modifier): def Activated(self): """Execute when the command is called.""" super(Stretch, self).Activated(name=translate("draft","Stretch")) + self.rectracker = None + self.nodetracker = None if self.ui: if not Gui.Selection.getSelection(): self.ui.selectUi(on_close_call=self.finish) @@ -251,9 +253,9 @@ class Stretch(gui_base_original.Modifier): def finish(self, closed=False): """Terminate the operation of the command. and clean up.""" - if hasattr(self, "rectracker") and self.rectracker: + if self.rectracker: self.rectracker.finalize() - if hasattr(self, "nodetracker") and self.nodetracker: + if self.nodetracker: for n in self.nodetracker: n.finalize() super(Stretch, self).finish()