summaryrefslogtreecommitdiff
path: root/src/settings/settingswidgets.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/settings/settingswidgets.hpp')
-rw-r--r--src/settings/settingswidgets.hpp65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/settings/settingswidgets.hpp b/src/settings/settingswidgets.hpp
new file mode 100644
index 00000000..31cd4580
--- /dev/null
+++ b/src/settings/settingswidgets.hpp
@@ -0,0 +1,65 @@
+/* ============================================================
+ * The rekonq project
+ * ============================================================
+ * SPDX-License-Identifier: GPL-3.0-only
+ * Copyright (C) 2022 aqua <aqua@iserlohn-fortress.net>
+ * ============================================================
+ * Description: Settings Widgets Definitions
+ * ============================================================ */
+
+#pragma once
+
+#include <QWidget>
+
+class SettingsWidget : public QWidget {
+ Q_OBJECT
+
+public:
+ explicit SettingsWidget(QWidget *parent = nullptr) : QWidget(parent) {}
+
+signals:
+ void changed();
+public slots:
+ virtual void save() = 0;
+ virtual void reset() = 0;
+};
+
+class GeneralSettingsWidget final : public SettingsWidget {
+ Q_OBJECT
+public:
+ explicit GeneralSettingsWidget(QWidget *parent = nullptr);
+
+public slots:
+ void save() override;
+ void reset() override;
+};
+
+class AppearanceSettingsWidget final : public SettingsWidget {
+ Q_OBJECT
+public:
+ explicit AppearanceSettingsWidget(QWidget *parent = nullptr);
+
+public slots:
+ void save() override;
+ void reset() override;
+};
+
+class NetworkSettingsWidget final : public SettingsWidget {
+ Q_OBJECT
+public:
+ explicit NetworkSettingsWidget(QWidget *parent = nullptr);
+
+public slots:
+ void save() override;
+ void reset() override;
+};
+
+class ShortcutsSettingsWidget final : public SettingsWidget {
+ Q_OBJECT
+public:
+ explicit ShortcutsSettingsWidget(QWidget *parent = nullptr);
+
+public slots:
+ void save() override;
+ void reset() override;
+};