┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMéven Car <[email protected]>2023-08-23 13:11:20 +0200
committerMéven Car <[email protected]>2023-08-23 14:26:09 +0200
commitff852b97f110691cda4c2f63f8d0f6bf8759fe2f (patch)
tree8a0127fba11bb6558591a3130e5612d3e5cfed04 /src
parent8891258ef686a6c0b57069e70d1a32a1870ad574 (diff)
Re-Allow to set settings in Settings-> View-> General page
Regressed in 489b56b68bb29e81337e115c490eea4403001b71 Simplify implementation by sharing making class ViewSettingsPage implement SettingsPageBase sharing implementation with other tabs in viewsettingspage
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/settings/kcm/kcmdolphinviewmodes.cpp2
-rw-r--r--src/settings/viewmodes/viewsettingspage.cpp15
-rw-r--r--src/settings/viewmodes/viewsettingspage.h2
-rw-r--r--src/settings/viewmodes/viewsettingstab.cpp4
-rw-r--r--src/settings/viewmodes/viewsettingstab.h8
6 files changed, 14 insertions, 18 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index ce078278a..cd9abec81 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -505,6 +505,7 @@ if(NOT WIN32)
settings/viewmodes/dolphinfontrequester.cpp
settings/viewmodes/viewmodesettings.cpp
settings/viewmodes/viewsettingstab.cpp
+ settings/settingspagebase.cpp
views/zoomlevelinfo.cpp
settings/kcm/kcmdolphinviewmodes.h
settings/viewmodes/dolphinfontrequester.h
diff --git a/src/settings/kcm/kcmdolphinviewmodes.cpp b/src/settings/kcm/kcmdolphinviewmodes.cpp
index 867faf69e..962f0f112 100644
--- a/src/settings/kcm/kcmdolphinviewmodes.cpp
+++ b/src/settings/kcm/kcmdolphinviewmodes.cpp
@@ -67,7 +67,7 @@ void DolphinViewModesConfigModule::save()
void DolphinViewModesConfigModule::defaults()
{
for (ViewSettingsTab *tab : qAsConst(m_tabs)) {
- tab->restoreDefaultSettings();
+ tab->restoreDefaults();
}
reparseConfiguration();
}
diff --git a/src/settings/viewmodes/viewsettingspage.cpp b/src/settings/viewmodes/viewsettingspage.cpp
index 8e101c3d2..5e740640d 100644
--- a/src/settings/viewmodes/viewsettingspage.cpp
+++ b/src/settings/viewmodes/viewsettingspage.cpp
@@ -50,6 +50,8 @@ ViewSettingsPage::ViewSettingsPage(const QUrl &url, QWidget *parent)
tabWidget->addTab(detailsTab, QIcon::fromTheme(QStringLiteral("view-list-tree")), i18nc("@title:tab", "Details"));
connect(detailsTab, &ViewSettingsTab::changed, this, &ViewSettingsPage::changed);
+ m_tabs.append(generalViewPage);
+ m_tabs.append(contentDisplayTab);
m_tabs.append(iconsTab);
m_tabs.append(compactTab);
m_tabs.append(detailsTab);
@@ -63,23 +65,16 @@ ViewSettingsPage::~ViewSettingsPage()
void ViewSettingsPage::applySettings()
{
- contentDisplayTab->applySettings();
-
- for (ViewSettingsTab *tab : qAsConst(m_tabs)) {
+ for (SettingsPageBase *tab : qAsConst(m_tabs)) {
tab->applySettings();
}
}
void ViewSettingsPage::restoreDefaults()
{
- if (tabWidget->currentWidget() == contentDisplayTab) {
- contentDisplayTab->restoreDefaults();
- return;
- }
-
- for (ViewSettingsTab *tab : qAsConst(m_tabs)) {
+ for (SettingsPageBase *tab : qAsConst(m_tabs)) {
if (tabWidget->currentWidget() == tab) {
- tab->restoreDefaultSettings();
+ tab->restoreDefaults();
return;
}
}
diff --git a/src/settings/viewmodes/viewsettingspage.h b/src/settings/viewmodes/viewsettingspage.h
index 76743252b..eae2a6427 100644
--- a/src/settings/viewmodes/viewsettingspage.h
+++ b/src/settings/viewmodes/viewsettingspage.h
@@ -36,7 +36,7 @@ public:
private:
ContentDisplayTab *contentDisplayTab;
QTabWidget *tabWidget;
- QList<ViewSettingsTab *> m_tabs;
+ QList<SettingsPageBase *> m_tabs;
};
#endif
diff --git a/src/settings/viewmodes/viewsettingstab.cpp b/src/settings/viewmodes/viewsettingstab.cpp
index ae80a2558..5aca58ba1 100644
--- a/src/settings/viewmodes/viewsettingstab.cpp
+++ b/src/settings/viewmodes/viewsettingstab.cpp
@@ -26,7 +26,7 @@
#include <QSpinBox>
ViewSettingsTab::ViewSettingsTab(Mode mode, QWidget *parent)
- : QWidget(parent)
+ : SettingsPageBase(parent)
, m_mode(mode)
, m_defaultSizeSlider(nullptr)
, m_previewSizeSlider(nullptr)
@@ -186,7 +186,7 @@ void ViewSettingsTab::applySettings()
settings.save();
}
-void ViewSettingsTab::restoreDefaultSettings()
+void ViewSettingsTab::restoreDefaults()
{
ViewModeSettings settings(m_mode);
settings.useDefaults(true);
diff --git a/src/settings/viewmodes/viewsettingstab.h b/src/settings/viewmodes/viewsettingstab.h
index 6be8fc3b5..fd4cc85a7 100644
--- a/src/settings/viewmodes/viewsettingstab.h
+++ b/src/settings/viewmodes/viewsettingstab.h
@@ -7,7 +7,7 @@
#ifndef VIEWSETTINGSTAB_H
#define VIEWSETTINGSTAB_H
-#include <QWidget>
+#include "settings/settingspagebase.h"
class DolphinFontRequester;
class QComboBox;
@@ -19,7 +19,7 @@ class QRadioButton;
/**
* @brief Represents one tab of the view-settings page.
*/
-class ViewSettingsTab : public QWidget
+class ViewSettingsTab : public SettingsPageBase
{
Q_OBJECT
@@ -29,8 +29,8 @@ public:
explicit ViewSettingsTab(Mode mode, QWidget *parent = nullptr);
~ViewSettingsTab() override;
- void applySettings();
- void restoreDefaultSettings();
+ void applySettings() override;
+ void restoreDefaults() override;
Q_SIGNALS:
void changed();