From cd788bbd286a25419276f613844284b3f382c7cc Mon Sep 17 00:00:00 2001 From: 0penBrain <48731257+0penBrain@users.noreply.github.com> Date: Sat, 11 Apr 2020 14:10:35 +0200 Subject: [PATCH] [Sketcher] Simplify general settings management --- src/Mod/Sketcher/Gui/CommandCreateGeo.cpp | 4 +-- src/Mod/Sketcher/Gui/TaskSketcherGeneral.cpp | 27 ++++++-------- src/Mod/Sketcher/Gui/TaskSketcherGeneral.ui | 37 +++++++++++++++++--- 3 files changed, 44 insertions(+), 24 deletions(-) diff --git a/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp b/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp index c75c090c58..7e062b9f4a 100644 --- a/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp +++ b/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp @@ -362,7 +362,7 @@ public: } ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Mod/Sketcher"); - bool avoidredundant = hGrp->GetBool("AvoidRedundantAutoconstraints",true); + bool avoidredundant = hGrp->GetGroup("General")->GetBool("AvoidRedundantAutoconstraints",true); if(avoidredundant) removeRedundantHorizontalVertical(static_cast(sketchgui->getObject()),sugConstr1,sugConstr2); @@ -1167,7 +1167,7 @@ public: } ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Mod/Sketcher"); - bool avoidredundant = hGrp->GetBool("AvoidRedundantAutoconstraints",true); + bool avoidredundant = hGrp->GetGroup("General")->GetBool("AvoidRedundantAutoconstraints",true); if (Mode == STATUS_Close) { diff --git a/src/Mod/Sketcher/Gui/TaskSketcherGeneral.cpp b/src/Mod/Sketcher/Gui/TaskSketcherGeneral.cpp index 974d5f1bfb..aa7b3fc85e 100644 --- a/src/Mod/Sketcher/Gui/TaskSketcherGeneral.cpp +++ b/src/Mod/Sketcher/Gui/TaskSketcherGeneral.cpp @@ -69,27 +69,22 @@ SketcherGeneralWidget::~SketcherGeneralWidget() void SketcherGeneralWidget::saveSettings() { - Base::Reference hGrp = App::GetApplication().GetUserParameter() - .GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/Sketcher/General"); - hGrp->SetBool("ShowGrid", ui->checkBoxShowGrid->isChecked()); - - ui->gridSize->pushToHistory(); - - hGrp->SetBool("GridSnap", ui->checkBoxGridSnap->isChecked()); - hGrp->SetBool("AutoConstraints", ui->checkBoxAutoconstraints->isChecked()); + ui->checkBoxShowGrid->onSave(); + ui->gridSize->onSave(); + ui->checkBoxGridSnap->onSave(); + ui->checkBoxAutoconstraints->onSave(); + ui->checkBoxRedundantAutoconstraints->onSave(); //not necessary to save renderOrder, as it is already stored in renderOrderChanged on every change. } void SketcherGeneralWidget::loadSettings() { - Base::Reference hGrp = App::GetApplication().GetUserParameter() - .GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/Sketcher/General"); - ui->checkBoxShowGrid->setChecked(hGrp->GetBool("ShowGrid", true)); - ui->gridSize->setParamGrpPath(QByteArray("User parameter:BaseApp/History/SketchGridSize")); - ui->gridSize->setToLastUsedValue(); - ui->checkBoxGridSnap->setChecked(hGrp->GetBool("GridSnap", ui->checkBoxGridSnap->isChecked())); - ui->checkBoxAutoconstraints->setChecked(hGrp->GetBool("AutoConstraints", ui->checkBoxAutoconstraints->isChecked())); + ui->checkBoxShowGrid->onRestore(); + ui->gridSize->onRestore(); + ui->checkBoxGridSnap->onRestore(); + ui->checkBoxAutoconstraints->onRestore(); + ui->checkBoxRedundantAutoconstraints->onRestore(); ParameterGrp::handle hGrpp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Mod/Sketcher"); @@ -112,8 +107,6 @@ void SketcherGeneralWidget::loadSettings() newItem->setData(Qt::UserRole, QVariant(lowid)); newItem->setText(lowid==1?tr("Normal Geometry"):lowid==2?tr("Construction Geometry"):tr("External Geometry")); ui->renderingOrder->insertItem(2,newItem); - - ui->checkBoxRedundantAutoconstraints->onRestore(); } void SketcherGeneralWidget::setGridSize(double val) diff --git a/src/Mod/Sketcher/Gui/TaskSketcherGeneral.ui b/src/Mod/Sketcher/Gui/TaskSketcherGeneral.ui index ff0a177d6f..ad35354fc6 100644 --- a/src/Mod/Sketcher/Gui/TaskSketcherGeneral.ui +++ b/src/Mod/Sketcher/Gui/TaskSketcherGeneral.ui @@ -15,7 +15,10 @@ - + + + true + A grid will be shown @@ -23,7 +26,13 @@ Show grid - true + false + + + ShowGrid + + + Mod/Sketcher/General @@ -59,12 +68,18 @@ 10.000000000000000 + + GridSize + + + Mod/Sketcher/General/GridSize + - + true @@ -75,10 +90,16 @@ Points must be set closer than a fifth of the grid size to a grid line to snap.< Grid snap + + GridSnap + + + Mod/Sketcher/General + - + true @@ -91,6 +112,12 @@ Points must be set closer than a fifth of the grid size to a grid line to snap.< true + + AutoConstraints + + + Mod/Sketcher/General + @@ -108,7 +135,7 @@ Points must be set closer than a fifth of the grid size to a grid line to snap.< AvoidRedundantAutoconstraints - Mod/Sketcher + Mod/Sketcher/General