diff options
Diffstat (limited to '')
| -rw-r--r-- | src/Configuration.hpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Configuration.hpp b/src/Configuration.hpp index 3b491b2..1f861fa 100644 --- a/src/Configuration.hpp +++ b/src/Configuration.hpp @@ -1,5 +1,6 @@ #pragma once +#include "utils.hpp" #include <QtCore> #include <qwebengineprofile.h> #include <unordered_map> @@ -13,7 +14,9 @@ private: {"close_window_when_no_views", true}, {"user_agent", QWebEngineProfile::defaultProfile()->httpUserAgent()}, {"downloads_dir", QWebEngineProfile::defaultProfile()->downloadPath()}, + {"app_data_dir", QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation)}, }; + QDir config_dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation)); public: using QObject::QObject; @@ -24,6 +27,9 @@ public: } QVariant get_config(const QString &name, QVariant default_value = "") const { + if (name == "config_dir") // readonly + return config_dir.path(); + if (!config_map.contains(name)) return default_value; @@ -37,6 +43,12 @@ public: QString user_agent() const { return get_config("user_agent").toString(); } QString downloads_dir() const { return get_config("downloads_dir").toString(); } + DEFINE_GETTER(get_config_dir, config_dir) + DEFINE_SETTER(set_config_dir, config_dir) + + QString get_config_lua_init_file() const { return config_dir.filePath("init.lua"); } + QString get_config_lua_dir() const { return config_dir.filePath("lua"); } + private: void on_update(const QString &name, const QVariant &value) { if (name == "user_agent") |
