From b6eb3f0b4ccd06ad11242602b3a7a8d05eb258e5 Mon Sep 17 00:00:00 2001 From: Markus Lampert Date: Mon, 9 Oct 2017 12:25:03 -0700 Subject: [PATCH] Fixed dirty'ing of page and op. --- src/Mod/Path/PathScripts/PathOpGui.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/Mod/Path/PathScripts/PathOpGui.py b/src/Mod/Path/PathScripts/PathOpGui.py index 17f6f3fc82..2205e9c133 100644 --- a/src/Mod/Path/PathScripts/PathOpGui.py +++ b/src/Mod/Path/PathScripts/PathOpGui.py @@ -171,7 +171,7 @@ class TaskPanelPage(object): self.obj = obj self.form = self.getForm() self.signalDirtyChanged = None - self.setDirty() + self.setClean() self.setTitle('-') self.features = features @@ -636,8 +636,10 @@ class TaskPanelDepthsPage(TaskPanelPage): PathLog.debug("depthSet(%s, %s, %.2f)" % (obj.Label, prop, z)) if spinbox.expression(): obj.setExpression(prop, None) + self.setDirty() spinbox.updateSpinBox(FreeCAD.Units.Quantity(z, FreeCAD.Units.Length)) - spinbox.updateProperty() + if spinbox.updateProperty(): + self.setDirty() else: PathLog.info("depthSet(-)") @@ -736,7 +738,7 @@ class TaskPanel(object): self.selectionFactory = selectionFactory self.obj = obj - self.isdirty = True + self.isdirty = deleteOnReject def isDirty(self): '''isDirty() ... returns true if the model is not in sync with the UI anymore.''' @@ -800,6 +802,7 @@ class TaskPanel(object): self.buttonBox = buttonBox for page in self.featurePages: page.modifyStandardButtons(buttonBox) + self.pageDirtyChanged(None) def panelGetFields(self): '''panelGetFields() ... invoked to trigger a complete transfer of UI data to the model.'''