aboutsummaryrefslogtreecommitdiffstats
path: root/Plugins/FusionDarkStyle
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2021-12-17 07:06:30 -0500
committerLibravatarUnit 193 <unit193@unit193.net>2021-12-17 07:06:30 -0500
commit1fdc150116cad39aae5c5da407c3312b47a59e3a (patch)
tree123c79a4d7ad2d45781ba03ce939f7539fb428d8 /Plugins/FusionDarkStyle
parentfeda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (diff)
New upstream version 3.3.3+dfsg1.upstream/3.3.3+dfsg1
Diffstat (limited to 'Plugins/FusionDarkStyle')
-rw-r--r--Plugins/FusionDarkStyle/FusionDarkStyle.json3
-rw-r--r--Plugins/FusionDarkStyle/FusionDarkStyle.pro18
-rw-r--r--Plugins/FusionDarkStyle/fusiondarkplugin.cpp75
-rw-r--r--Plugins/FusionDarkStyle/fusiondarkplugin.h24
4 files changed, 120 insertions, 0 deletions
diff --git a/Plugins/FusionDarkStyle/FusionDarkStyle.json b/Plugins/FusionDarkStyle/FusionDarkStyle.json
new file mode 100644
index 0000000..936193f
--- /dev/null
+++ b/Plugins/FusionDarkStyle/FusionDarkStyle.json
@@ -0,0 +1,3 @@
+{
+ "Keys" : ["Fusion Dark"]
+}
diff --git a/Plugins/FusionDarkStyle/FusionDarkStyle.pro b/Plugins/FusionDarkStyle/FusionDarkStyle.pro
new file mode 100644
index 0000000..73c5218
--- /dev/null
+++ b/Plugins/FusionDarkStyle/FusionDarkStyle.pro
@@ -0,0 +1,18 @@
+include($$PWD/../../SQLiteStudio3/plugins.pri)
+
+DESTDIR = $$PWD/../../$$OUTPUT_DIR_NAME/SQLiteStudio/styles
+mkpath($$DESTDIR)
+
+QT += widgets
+
+TEMPLATE = lib
+
+DEFINES += QT_DEPRECATED_WARNINGS
+
+SOURCES += \
+ fusiondarkplugin.cpp
+
+HEADERS += \
+ fusiondarkplugin.h
+
+DISTFILES += FusionDarkStyle.json
diff --git a/Plugins/FusionDarkStyle/fusiondarkplugin.cpp b/Plugins/FusionDarkStyle/fusiondarkplugin.cpp
new file mode 100644
index 0000000..2b2a2e8
--- /dev/null
+++ b/Plugins/FusionDarkStyle/fusiondarkplugin.cpp
@@ -0,0 +1,75 @@
+#include "fusiondarkplugin.h"
+#include "themetuner.h"
+#include <QProxyStyle>
+#include <QPalette>
+#include <QDebug>
+#include <QWizard>
+
+class FusionDarkStyle : public QProxyStyle
+{
+ public:
+ FusionDarkStyle();
+
+ QPalette standardPalette() const;
+
+ private:
+ QPalette darkPalette;
+};
+
+FusionDarkStyle::FusionDarkStyle()
+ : QProxyStyle("fusion")
+{
+ setObjectName(FusionDarkPlugin::STYLE_NAME);
+
+ QColor lightGray(190, 190, 190);
+ QColor gray(128, 128, 128);
+ QColor midDarkGray(100, 100, 100);
+ QColor darkGray(53, 53, 53);
+ QColor black(25, 25, 25);
+ QColor blue(42, 130, 218);
+
+ darkPalette.setColor(QPalette::Window, darkGray);
+ darkPalette.setColor(QPalette::WindowText, Qt::white);
+ darkPalette.setColor(QPalette::Base, black);
+ darkPalette.setColor(QPalette::AlternateBase, darkGray);
+ darkPalette.setColor(QPalette::ToolTipBase, darkGray);
+ darkPalette.setColor(QPalette::ToolTipText, Qt::white);
+ darkPalette.setColor(QPalette::Text, lightGray);
+ darkPalette.setColor(QPalette::Button, darkGray);
+ darkPalette.setColor(QPalette::ButtonText, Qt::white);
+ darkPalette.setColor(QPalette::Link, blue);
+ darkPalette.setColor(QPalette::Highlight, blue);
+ darkPalette.setColor(QPalette::HighlightedText, Qt::black);
+ darkPalette.setColor(QPalette::Light, blue);
+ darkPalette.setColor(QPalette::Dark, midDarkGray);
+
+ darkPalette.setColor(QPalette::Active, QPalette::Button, gray.darker());
+ darkPalette.setColor(QPalette::Disabled, QPalette::ButtonText, gray);
+ darkPalette.setColor(QPalette::Disabled, QPalette::WindowText, gray);
+ darkPalette.setColor(QPalette::Disabled, QPalette::Text, gray);
+ darkPalette.setColor(QPalette::Disabled, QPalette::Light, darkGray);
+}
+
+QPalette FusionDarkStyle::standardPalette() const
+{
+ return darkPalette;
+}
+
+FusionDarkPlugin::FusionDarkPlugin(QObject *parent)
+ : QStylePlugin(parent)
+{
+ THEME_TUNER->registerQWizardThemeTuneRequired(STYLE_NAME);
+}
+
+FusionDarkPlugin::~FusionDarkPlugin()
+{
+ THEME_TUNER->deregisterQWizardThemeTuneRequired(STYLE_NAME);
+}
+
+QStyle *FusionDarkPlugin::create(const QString &key)
+{
+ if (key.toLower() == STYLE_NAME)
+ return new FusionDarkStyle();
+
+ return nullptr;
+}
diff --git a/Plugins/FusionDarkStyle/fusiondarkplugin.h b/Plugins/FusionDarkStyle/fusiondarkplugin.h
new file mode 100644
index 0000000..b5fc346
--- /dev/null
+++ b/Plugins/FusionDarkStyle/fusiondarkplugin.h
@@ -0,0 +1,24 @@
+#ifndef STYLEPLUGIN_H
+#define STYLEPLUGIN_H
+
+#include <QStylePlugin>
+
+class QWizard;
+
+class FusionDarkPlugin : public QStylePlugin
+{
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QStyleFactoryInterface" FILE "FusionDarkStyle.json")
+
+ public:
+ explicit FusionDarkPlugin(QObject *parent = nullptr);
+ virtual ~FusionDarkPlugin();
+
+ static constexpr const char* STYLE_NAME = "fusion dark";
+
+ private:
+
+ QStyle *create(const QString &key) override;
+};
+
+#endif // STYLEPLUGIN_H