From a7831eee4bd392dfa77f21f662466a9e72f21864 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Br=C3=A6strup=20Sayoc?= Date: Thu, 12 Sep 2024 16:17:29 +0200 Subject: [PATCH 1/2] [Measure] Fix redundant variable assignment --- src/Mod/Measure/Gui/TaskMeasure.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Mod/Measure/Gui/TaskMeasure.cpp b/src/Mod/Measure/Gui/TaskMeasure.cpp index 455ea6f3af..328ea28b56 100644 --- a/src/Mod/Measure/Gui/TaskMeasure.cpp +++ b/src/Mod/Measure/Gui/TaskMeasure.cpp @@ -251,7 +251,6 @@ void TaskMeasure::saveObject() _mDocument = App::GetApplication().getActiveDocument(); _mDocument->addObject(_mMeasureObject, _mMeasureType->label.c_str()); - _mMeasureObject = nullptr; } @@ -387,8 +386,6 @@ bool TaskMeasure::apply() { saveObject(); ensureGroup(_mMeasureObject); - _mMeasureType = nullptr; - _mMeasureObject = nullptr; reset(); // Commit transaction @@ -411,6 +408,7 @@ void TaskMeasure::reset() { // Reset tool state _mMeasureType = nullptr; + _mMeasureObject = nullptr; this->clearSelection(); // Should the explicit mode also be reset? From e20ab85fd33af5fd67118eb6a919735c4c6ed864 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Br=C3=A6strup=20Sayoc?= Date: Thu, 12 Sep 2024 16:23:17 +0200 Subject: [PATCH 2/2] [Measure] Redirect enter key press to apply button Fixes #16401. Now call of the save function is dependent on whether the apply button is enabled. The button is only enabled if valid objects to save. --- src/Mod/Measure/Gui/TaskMeasure.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Mod/Measure/Gui/TaskMeasure.cpp b/src/Mod/Measure/Gui/TaskMeasure.cpp index 328ea28b56..a227c31f4e 100644 --- a/src/Mod/Measure/Gui/TaskMeasure.cpp +++ b/src/Mod/Measure/Gui/TaskMeasure.cpp @@ -479,7 +479,9 @@ bool TaskMeasure::eventFilter(QObject* obj, QEvent* event) } if (keyEvent->key() == Qt::Key_Return || keyEvent->key() == Qt::Key_Enter) { - this->apply(); + // Save object. Indirectly dependent on whether the apply button is enabled + // enabled if valid measurement object. + this->buttonBox->button(QDialogButtonBox::Apply)->click(); return true; } }