]> cloud.milkyroute.net Git - dolphin.git/blob - src/settings/startup/startupsettingspage.h
Build with QT_NO_KEYWORDS
[dolphin.git] / src / settings / startup / startupsettingspage.h
1 /*
2 * SPDX-FileCopyrightText: 2008 Peter Penz <peter.penz19@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 #ifndef STARTUPSETTINGSPAGE_H
7 #define STARTUPSETTINGSPAGE_H
8
9 #include "settings/settingspagebase.h"
10
11 #include <QUrl>
12
13 class QCheckBox;
14 class QLineEdit;
15 class QRadioButton;
16
17 /**
18 * @brief Page for the 'Startup' settings of the Dolphin settings dialog.
19 *
20 * The startup settings allow to set the home URL and to configure the
21 * state of the view mode, split mode and the filter bar when starting Dolphin.
22 */
23 class StartupSettingsPage : public SettingsPageBase
24 {
25 Q_OBJECT
26
27 public:
28 StartupSettingsPage(const QUrl& url, QWidget* parent);
29 ~StartupSettingsPage() override;
30
31 /** @see SettingsPageBase::applySettings() */
32 void applySettings() override;
33
34 /** @see SettingsPageBase::restoreDefaults() */
35 void restoreDefaults() override;
36
37 private Q_SLOTS:
38 void slotSettingsChanged();
39 void updateInitialViewOptions();
40 void selectHomeUrl();
41 void useCurrentLocation();
42 void useDefaultLocation();
43
44 private:
45 void loadSettings();
46 void showSetDefaultDirectoryError();
47
48 private:
49 QUrl m_url;
50 QLineEdit* m_homeUrl;
51 QWidget* m_homeUrlBoxLayoutContainer;
52 QWidget* m_buttonBoxLayoutContainer;
53 QRadioButton* m_rememberOpenedTabsRadioButton;
54 QRadioButton* m_homeUrlRadioButton;
55
56 QCheckBox* m_splitView;
57 QCheckBox* m_editableUrl;
58 QCheckBox* m_showFullPath;
59 QCheckBox* m_filterBar;
60 QCheckBox* m_showFullPathInTitlebar;
61 QCheckBox* m_openExternallyCalledFolderInNewTab;
62 };
63
64 #endif