mirror of
https://invent.kde.org/system/dolphin
synced 2024-10-03 23:29:06 +00:00
Re-Allow to set settings in Settings-> View-> General page
Regressed in 489b56b68b
Simplify implementation by sharing making class ViewSettingsPage implement SettingsPageBase sharing implementation with other tabs in viewsettingspage
This commit is contained in:
parent
8891258ef6
commit
ff852b97f1
|
@ -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
|
||||
|
|
|
@ -67,7 +67,7 @@ void DolphinViewModesConfigModule::save()
|
|||
void DolphinViewModesConfigModule::defaults()
|
||||
{
|
||||
for (ViewSettingsTab *tab : qAsConst(m_tabs)) {
|
||||
tab->restoreDefaultSettings();
|
||||
tab->restoreDefaults();
|
||||
}
|
||||
reparseConfiguration();
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,7 +36,7 @@ public:
|
|||
private:
|
||||
ContentDisplayTab *contentDisplayTab;
|
||||
QTabWidget *tabWidget;
|
||||
QList<ViewSettingsTab *> m_tabs;
|
||||
QList<SettingsPageBase *> m_tabs;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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();
|
||||
|
|
Loading…
Reference in a new issue