From d4aca1953a9a63bf468e90a3e2d37d146db84d2c Mon Sep 17 00:00:00 2001 From: Paddle Date: Mon, 27 Mar 2023 16:02:21 +0200 Subject: [PATCH] Pref: Wb: lambda to simplify saveSettings() --- src/Gui/DlgSettingsWorkbenchesImp.cpp | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/Gui/DlgSettingsWorkbenchesImp.cpp b/src/Gui/DlgSettingsWorkbenchesImp.cpp index 12d9dd7737..ba8b90c486 100644 --- a/src/Gui/DlgSettingsWorkbenchesImp.cpp +++ b/src/Gui/DlgSettingsWorkbenchesImp.cpp @@ -227,35 +227,34 @@ void DlgSettingsWorkbenchesImp::saveSettings() { std::ostringstream enabledStr, disabledStr, autoloadStr; + auto addStrToOss = [](std::string wbName, std::ostringstream& oss) { + if (!oss.str().empty()) + oss << ","; + oss << wbName; + }; + for (int i = 0; i < ui->wbList->count(); i++) { wbListItem* wbItem = dynamic_cast(ui->wbList->itemWidget(ui->wbList->item(i))); if (!wbItem) continue; + std::string wbName = wbItem->objectName().toStdString(); if (wbItem->isEnabled()) { - if (!enabledStr.str().empty()) - enabledStr << ","; - enabledStr << wbItem->objectName().toStdString(); + addStrToOss(wbName, enabledStr); } else { - if (!disabledStr.str().empty()) - disabledStr << ","; - disabledStr << wbItem->objectName().toStdString(); + addStrToOss(wbName, disabledStr); } if (wbItem->isAutoLoading()) { - if (!autoloadStr.str().empty()) - autoloadStr << ","; - autoloadStr << wbItem->objectName().toStdString(); + addStrToOss(wbName, autoloadStr); } } if (enabledStr.str().empty()) //make sure that we have at least one enabled workbench. enabledStr << "NoneWorkbench"; else { - if (!disabledStr.str().empty()) - disabledStr << ","; - disabledStr << "NoneWorkbench"; //Note, NoneWorkbench is not in the table so it's not added before. + addStrToOss("NoneWorkbench", disabledStr); //Note, NoneWorkbench is not in the table so it's not added before. } ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Workbenches");