]> cloud.milkyroute.net Git - dolphin.git/blob - src/settings/general/statusbarsettingspage.cpp
Merge branch 'release/20.08'
[dolphin.git] / src / settings / general / statusbarsettingspage.cpp
1 /*
2 * SPDX-FileCopyrightText: 2009 Peter Penz <peter.penz19@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7 #include "statusbarsettingspage.h"
8
9 #include "dolphin_generalsettings.h"
10
11 #include <KLocalizedString>
12
13 #include <QCheckBox>
14 #include <QVBoxLayout>
15
16 StatusBarSettingsPage::StatusBarSettingsPage(QWidget* parent) :
17 SettingsPageBase(parent),
18 m_showZoomSlider(nullptr),
19 m_showSpaceInfo(nullptr)
20 {
21 m_showZoomSlider = new QCheckBox(i18nc("@option:check", "Show zoom slider"), this);
22 m_showSpaceInfo = new QCheckBox(i18nc("@option:check", "Show space information"), this);
23
24 QVBoxLayout* topLayout = new QVBoxLayout(this);
25 topLayout->addWidget(m_showZoomSlider);
26 topLayout->addWidget(m_showSpaceInfo);
27 topLayout->addStretch();
28
29 loadSettings();
30
31 connect(m_showZoomSlider, &QCheckBox::toggled, this, &StatusBarSettingsPage::changed);
32 connect(m_showSpaceInfo, &QCheckBox::toggled, this, &StatusBarSettingsPage::changed);
33 }
34
35 StatusBarSettingsPage::~StatusBarSettingsPage()
36 {
37 }
38
39 void StatusBarSettingsPage::applySettings()
40 {
41 GeneralSettings* settings = GeneralSettings::self();
42 settings->setShowZoomSlider(m_showZoomSlider->isChecked());
43 settings->setShowSpaceInfo(m_showSpaceInfo->isChecked());
44 settings->save();
45 }
46
47 void StatusBarSettingsPage::restoreDefaults()
48 {
49 GeneralSettings* settings = GeneralSettings::self();
50 settings->useDefaults(true);
51 loadSettings();
52 settings->useDefaults(false);
53 }
54
55 void StatusBarSettingsPage::loadSettings()
56 {
57 m_showZoomSlider->setChecked(GeneralSettings::showZoomSlider());
58 m_showSpaceInfo->setChecked(GeneralSettings::showSpaceInfo());
59 }
60