summaryrefslogtreecommitdiff
path: root/bootstrap.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'bootstrap.cxx')
-rw-r--r--bootstrap.cxx67
1 files changed, 0 insertions, 67 deletions
diff --git a/bootstrap.cxx b/bootstrap.cxx
deleted file mode 100644
index 921a190..0000000
--- a/bootstrap.cxx
+++ /dev/null
@@ -1,67 +0,0 @@
-#include "tomlc99/toml.h"
-#include "bootstrap.hxx"
-
-Bootstrap::Bootstrap(QObject *parent):
- QObject(parent),
- bsTheme(None),
- bsDarkMode(false),
- bsLightBodyBg("#fff"),
- bsDarkBodyBg("#212529")
-{
- QFile conf{QStringLiteral(":/qtquickcontrols2.conf")};
- if (!conf.open(QIODevice::ReadOnly | QIODevice::Text)) return;
- auto toml = toml_parse(conf.readAll().data(), nullptr, 0);
- conf.close();
- auto bootstrap = toml_table_in(toml, "Bootstrap");
- if (!bootstrap) {
- toml_free(toml);
- return;
- }
- auto darkMode = toml_bool_in(bootstrap, "DarkMode");
- if (darkMode.ok) bsDarkMode = darkMode.u.b;
- auto bodyBg = toml_array_in(bootstrap, "BodyBg");
- if (bodyBg) {
- auto lightBodyBg = toml_string_at(bodyBg, 0).u.s;
- bsLightBodyBg = QColor{lightBodyBg};
- free(lightBodyBg);
- auto darkBodyBg = toml_string_at(bodyBg, 1).u.s;
- bsDarkBodyBg = QColor{darkBodyBg};
- free(darkBodyBg);
- }
- toml_free(toml);
-}
-
-Bootstrap *Bootstrap::qmlAttachedProperties(QObject *object)
-{
- return new Bootstrap(object);
-}
-
-bool Bootstrap::darkMode() const
-{
- return bsDarkMode;
-}
-
-void Bootstrap::setDarkMode(bool darkMode)
-{
- if (darkMode == bsDarkMode) return;
- bsDarkMode = darkMode;
- emit darkModeChanged();
- emit bodyBgChanged();
-}
-
-Bootstrap::Theme Bootstrap::theme() const
-{
- return bsTheme;
-}
-
-void Bootstrap::setTheme(Theme theme)
-{
- if (theme == bsTheme) return;
- bsTheme = theme;
- emit themeChanged();
-}
-
-QColor Bootstrap::bodyBg() const
-{
- return bsDarkMode ? bsDarkBodyBg : bsLightBodyBg;
-}