From 0d48351c9ed265faa56d43ce351240a2ddc27e50 Mon Sep 17 00:00:00 2001 From: Tiago-Almeida007 Date: Sat, 27 Sep 2025 03:33:04 +0100 Subject: [PATCH] Gui: Organize tree view preferences (#21867) * feat #18649: Organize tree options in one single preference page -Removed tree view related code from all DlgSettingsAdvanced files -Added Font size and Item Background Padding to DlgSettingsUI Co-authored-by: Tiago Cardoso * fix #18649: Organize tree options in one single preference page -Added new line at the end of file DlgSettingsAdvanced.cpp -Added new line at the end of file DlgSettingsAdvanced.py -Added new line at the end of file DlgSettingsUI.ui -Delete trailing space on file DlgSettingsAdvanced.py -Delete extra line on file DlgSettingsAdvanced.h Co-authored-by: Tiago Almeida * Gui: Remove over-advanced UI prefs --------- Co-authored-by: Tiago Cardoso Co-authored-by: Chris Hennes --- .../PreferencePages/DlgSettingsAdvanced.cpp | 50 ------------ src/Gui/PreferencePages/DlgSettingsAdvanced.h | 7 -- .../PreferencePages/DlgSettingsAdvanced.py | 8 +- src/Gui/PreferencePages/DlgSettingsUI.cpp | 4 +- src/Gui/PreferencePages/DlgSettingsUI.ui | 80 +++++++++++-------- 5 files changed, 49 insertions(+), 100 deletions(-) diff --git a/src/Gui/PreferencePages/DlgSettingsAdvanced.cpp b/src/Gui/PreferencePages/DlgSettingsAdvanced.cpp index f808bc6adc..ac730e083e 100644 --- a/src/Gui/PreferencePages/DlgSettingsAdvanced.cpp +++ b/src/Gui/PreferencePages/DlgSettingsAdvanced.cpp @@ -52,45 +52,6 @@ DlgSettingsAdvanced::DlgSettingsAdvanced(QWidget* parent) auto layout = new QVBoxLayout(this); - // Auto generated code (Tools/params_utils.py:420) - groupTreeview = new QGroupBox(this); - layout->addWidget(groupTreeview); - auto layoutHorizTreeview = new QHBoxLayout(groupTreeview); - auto layoutTreeview = new QGridLayout(); - layoutHorizTreeview->addLayout(layoutTreeview); - layoutHorizTreeview->addStretch(); - - // Auto generated code (Tools/params_utils.py:433) - labelItemBackgroundPadding = new QLabel(this); - layoutTreeview->addWidget(labelItemBackgroundPadding, 0, 0); - ItemBackgroundPadding = new Gui::PrefSpinBox(this); - layoutTreeview->addWidget(ItemBackgroundPadding, 0, 1); - ItemBackgroundPadding->setValue(Gui::TreeParams::defaultItemBackgroundPadding()); - ItemBackgroundPadding->setEntryName("ItemBackgroundPadding"); - ItemBackgroundPadding->setParamGrpPath("TreeView"); - // Auto generated code (Tools/params_utils.py:1135) - ItemBackgroundPadding->setMinimum(0); - ItemBackgroundPadding->setMaximum(100); - ItemBackgroundPadding->setSingleStep(1); - ItemBackgroundPadding->setAlignment(Qt::AlignRight); - ItemBackgroundPadding->setSuffix(QLatin1String(" px")); - - // Auto generated code (Tools/params_utils.py:433) - labelFontSize = new QLabel(this); - layoutTreeview->addWidget(labelFontSize, 1, 0); - FontSize = new Gui::PrefSpinBox(this); - layoutTreeview->addWidget(FontSize, 1, 1); - FontSize->setValue(Gui::TreeParams::defaultFontSize()); - FontSize->setEntryName("FontSize"); - FontSize->setParamGrpPath("TreeView"); - // Auto generated code (Tools/params_utils.py:1135) - FontSize->setMinimum(0); - FontSize->setMaximum(100); - FontSize->setSingleStep(1); - FontSize->setAlignment(Qt::AlignRight); - FontSize->setSuffix(QLatin1String(" pt")); - - // Auto generated code (Tools/params_utils.py:420) groupOverlay = new QGroupBox(this); layout->addWidget(groupOverlay); @@ -379,8 +340,6 @@ DlgSettingsAdvanced::~DlgSettingsAdvanced() void DlgSettingsAdvanced::saveSettings() { // Auto generated code (Tools/params_utils.py:461) - ItemBackgroundPadding->onSave(); - FontSize->onSave(); DockOverlayWheelDelay->onSave(); DockOverlayAlphaRadius->onSave(); DockOverlayCheckNaviCube->onSave(); @@ -406,8 +365,6 @@ void DlgSettingsAdvanced::saveSettings() void DlgSettingsAdvanced::loadSettings() { // Auto generated code (Tools/params_utils.py:449) - ItemBackgroundPadding->onRestore(); - FontSize->onRestore(); DockOverlayWheelDelay->onRestore(); DockOverlayAlphaRadius->onRestore(); DockOverlayCheckNaviCube->onRestore(); @@ -433,13 +390,6 @@ void DlgSettingsAdvanced::loadSettings() void DlgSettingsAdvanced::retranslateUi() { setWindowTitle(QObject::tr("Advanced")); - groupTreeview->setTitle(QObject::tr("Tree view")); - ItemBackgroundPadding->setToolTip(QApplication::translate("TreeParams", Gui::TreeParams::docItemBackgroundPadding())); - labelItemBackgroundPadding->setText(QObject::tr("Item background padding")); - labelItemBackgroundPadding->setToolTip(ItemBackgroundPadding->toolTip()); - FontSize->setToolTip(QApplication::translate("TreeParams", Gui::TreeParams::docFontSize())); - labelFontSize->setText(QObject::tr("Font size")); - labelFontSize->setToolTip(FontSize->toolTip()); groupOverlay->setTitle(QObject::tr("Overlay")); DockOverlayWheelDelay->setToolTip(QApplication::translate("OverlayParams", Gui::OverlayParams::docDockOverlayWheelDelay())); labelDockOverlayWheelDelay->setText(QObject::tr("Delay mouse wheel pass through")); diff --git a/src/Gui/PreferencePages/DlgSettingsAdvanced.h b/src/Gui/PreferencePages/DlgSettingsAdvanced.h index 01ae6411c7..30f3af804c 100644 --- a/src/Gui/PreferencePages/DlgSettingsAdvanced.h +++ b/src/Gui/PreferencePages/DlgSettingsAdvanced.h @@ -71,13 +71,6 @@ protected: private: - // Auto generated code (Tools/params_utils.py:400) - QGroupBox * groupTreeview = nullptr; - QLabel *labelItemBackgroundPadding = nullptr; - Gui::PrefSpinBox *ItemBackgroundPadding = nullptr; - QLabel *labelFontSize = nullptr; - Gui::PrefSpinBox *FontSize = nullptr; - // Auto generated code (Tools/params_utils.py:400) QGroupBox * groupOverlay = nullptr; QLabel *labelDockOverlayWheelDelay = nullptr; diff --git a/src/Gui/PreferencePages/DlgSettingsAdvanced.py b/src/Gui/PreferencePages/DlgSettingsAdvanced.py index ed622e7b46..9144dc6b24 100644 --- a/src/Gui/PreferencePages/DlgSettingsAdvanced.py +++ b/src/Gui/PreferencePages/DlgSettingsAdvanced.py @@ -32,7 +32,7 @@ from params_utils import auto_comment sys.path.append(path.join(path.dirname( path.dirname(path.dirname(path.abspath(__file__)))), 'Gui')) -import OverlayParams, TreeParams +import OverlayParams Title = 'Advanced' NameSpace = 'Gui' @@ -41,13 +41,8 @@ ClassDoc = 'Preference dialog for various advanced UI settings' UserInit = 'init();' _OverlayParams = { param.name : param for param in OverlayParams.Params } -_TreeParams = { param.name : param for param in TreeParams.Params } ParamGroup = ( - ('Tree view', [_TreeParams[name] for name in ( - 'ItemBackgroundPadding', - 'FontSize', - )]), ('Overlay', [_OverlayParams[name] for name in ( 'DockOverlayWheelDelay', @@ -80,3 +75,4 @@ def declare_end(): def define(): params_utils.preference_dialog_define(sys.modules[__name__]) + \ No newline at end of file diff --git a/src/Gui/PreferencePages/DlgSettingsUI.cpp b/src/Gui/PreferencePages/DlgSettingsUI.cpp index 1c9de8bc0f..be12ded5a4 100644 --- a/src/Gui/PreferencePages/DlgSettingsUI.cpp +++ b/src/Gui/PreferencePages/DlgSettingsUI.cpp @@ -68,8 +68,8 @@ void DlgSettingsUI::saveSettings() ui->OverlayStyleSheets->onSave(); // Tree View + ui->fontSizeSpinBox->onSave(); ui->iconSizeSpinBox->onSave(); - ui->rowSpacingSpinBox->onSave(); ui->resizableColumnsCheckBox->onSave(); ui->showVisibilityIconCheckBox->onSave(); ui->hideDescriptionCheckBox->onSave(); @@ -97,8 +97,8 @@ void DlgSettingsUI::loadSettings() ui->ThemeAccentColor3->onRestore(); // Tree View + ui->fontSizeSpinBox->onRestore(); ui->iconSizeSpinBox->onRestore(); - ui->rowSpacingSpinBox->onRestore(); ui->resizableColumnsCheckBox->onRestore(); ui->showVisibilityIconCheckBox->onRestore(); ui->hideDescriptionCheckBox->onRestore(); diff --git a/src/Gui/PreferencePages/DlgSettingsUI.ui b/src/Gui/PreferencePages/DlgSettingsUI.ui index 7c8b48d548..ba6eaf104a 100644 --- a/src/Gui/PreferencePages/DlgSettingsUI.ui +++ b/src/Gui/PreferencePages/DlgSettingsUI.ui @@ -227,6 +227,34 @@ + + + Font size override, set to 0 for the default value. + + + 0 + + + 100 + + + 1 + + + pt + + + 0 + + + TreeView + + + FontSize + + + + Icon size override, set to 0 for the default value. @@ -245,17 +273,8 @@ - - - - Additional row spacing - - - rowSpacingSpinBox - - - - + + Allow tree view columns to be manually resized. @@ -271,7 +290,7 @@ - + Icon size @@ -281,26 +300,17 @@ - - - - Additional spacing for tree view rows. Bigger values will increase row item heights. + + + + Font size - - 1 - - - 0 - - - ItemSpacing - - - TreeView + + fontSizeSpinBox - + Displays an eye icon in front of the tree view items, showing their visibility status. When clicked the visibility is toggled. @@ -385,7 +395,7 @@ Overlay - + Hide tab bar in dock overlay @@ -404,7 +414,7 @@ - + Show tab bar on mouse over when auto hide @@ -420,7 +430,7 @@ - + Hide property view scroll bar in dock overlay @@ -436,7 +446,7 @@ - + Automatically hide overlaid dock panels when in non 3D view (e.g. TechDraw or Spreadsheet) @@ -455,7 +465,7 @@ - + Auto mouse click through transparent part of dock overlay. @@ -474,7 +484,7 @@ - + Automatically passes mouse wheel events through the transparent areas of an overlay panel @@ -566,8 +576,8 @@ ThemeAccentColor3 StyleSheets OverlayStyleSheets + fontSizeSpinBox iconSizeSpinBox - rowSpacingSpinBox resizableColumnsCheckBox showVisibilityIconCheckBox hideDescriptionCheckBox