feat: advanced -> tokens
This commit is contained in:
parent
4ff97c8306
commit
f4b851b5b3
5 changed files with 79 additions and 106 deletions
|
|
@ -4,7 +4,7 @@ qml_module(caelestia-config
|
||||||
config.cpp
|
config.cpp
|
||||||
configobject.cpp
|
configobject.cpp
|
||||||
appearanceconfig.cpp
|
appearanceconfig.cpp
|
||||||
advancedconfig.hpp
|
tokensconfig.hpp
|
||||||
backgroundconfig.hpp
|
backgroundconfig.hpp
|
||||||
barconfig.hpp
|
barconfig.hpp
|
||||||
borderconfig.hpp
|
borderconfig.hpp
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
#include "appearanceconfig.hpp"
|
#include "appearanceconfig.hpp"
|
||||||
#include "advancedconfig.hpp"
|
#include "tokensconfig.hpp"
|
||||||
|
|
||||||
#include <qmetaobject.h>
|
#include <qmetaobject.h>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,21 +34,21 @@ GlobalConfig::GlobalConfig(QObject* parent)
|
||||||
, m_sidebar(new SidebarConfig(this))
|
, m_sidebar(new SidebarConfig(this))
|
||||||
, m_services(new ServiceConfig(this))
|
, m_services(new ServiceConfig(this))
|
||||||
, m_paths(new UserPaths(this))
|
, m_paths(new UserPaths(this))
|
||||||
, m_advanced(new AdvancedConfig(this)) {
|
, m_tokens(new TokenConfig(this)) {
|
||||||
// Set global instance
|
// Set global instance
|
||||||
s_instance = this;
|
s_instance = this;
|
||||||
|
|
||||||
// Bind token base values from advanced config to appearance computed properties
|
// Bind token base values from token config to appearance computed properties
|
||||||
auto* adv = m_advanced->appearance();
|
auto* appearance = m_tokens->appearance();
|
||||||
m_appearance->rounding()->bindTokens(adv->rounding());
|
m_appearance->rounding()->bindTokens(appearance->rounding());
|
||||||
m_appearance->spacing()->bindTokens(adv->spacing());
|
m_appearance->spacing()->bindTokens(appearance->spacing());
|
||||||
m_appearance->padding()->bindTokens(adv->padding());
|
m_appearance->padding()->bindTokens(appearance->padding());
|
||||||
m_appearance->font()->size()->bindTokens(adv->fontSize());
|
m_appearance->font()->size()->bindTokens(appearance->fontSize());
|
||||||
m_appearance->anim()->durations()->bindTokens(adv->animDurations());
|
m_appearance->anim()->durations()->bindTokens(appearance->animDurations());
|
||||||
|
|
||||||
// Each has its own file backend
|
// Each has its own file backend
|
||||||
setupFileBackend(configDir() + QStringLiteral("shell.json"));
|
setupFileBackend(configDir() + QStringLiteral("shell.json"));
|
||||||
m_advanced->setupFileBackend(configDir() + QStringLiteral("advanced.json"));
|
m_tokens->setupFileBackend(configDir() + QStringLiteral("shell-tokens.json"));
|
||||||
}
|
}
|
||||||
|
|
||||||
GlobalConfig::~GlobalConfig() {
|
GlobalConfig::~GlobalConfig() {
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@
|
||||||
#include <qqmlintegration.h>
|
#include <qqmlintegration.h>
|
||||||
#include <qquickitem.h>
|
#include <qquickitem.h>
|
||||||
|
|
||||||
#include "advancedconfig.hpp"
|
|
||||||
#include "appearanceconfig.hpp"
|
#include "appearanceconfig.hpp"
|
||||||
#include "backgroundconfig.hpp"
|
#include "backgroundconfig.hpp"
|
||||||
#include "barconfig.hpp"
|
#include "barconfig.hpp"
|
||||||
|
|
@ -18,6 +17,7 @@
|
||||||
#include "serviceconfig.hpp"
|
#include "serviceconfig.hpp"
|
||||||
#include "sessionconfig.hpp"
|
#include "sessionconfig.hpp"
|
||||||
#include "sidebarconfig.hpp"
|
#include "sidebarconfig.hpp"
|
||||||
|
#include "tokensconfig.hpp"
|
||||||
#include "userpaths.hpp"
|
#include "userpaths.hpp"
|
||||||
#include "utilitiesconfig.hpp"
|
#include "utilitiesconfig.hpp"
|
||||||
#include "winfoconfig.hpp"
|
#include "winfoconfig.hpp"
|
||||||
|
|
@ -46,14 +46,14 @@ class GlobalConfig : public ConfigObject {
|
||||||
CONFIG_SUBOBJECT(SidebarConfig, sidebar)
|
CONFIG_SUBOBJECT(SidebarConfig, sidebar)
|
||||||
CONFIG_SUBOBJECT(ServiceConfig, services)
|
CONFIG_SUBOBJECT(ServiceConfig, services)
|
||||||
CONFIG_SUBOBJECT(UserPaths, paths)
|
CONFIG_SUBOBJECT(UserPaths, paths)
|
||||||
// advanced is NOT a CONFIG_SUBOBJECT — it has its own file backend
|
// tokens is NOT a CONFIG_SUBOBJECT — it has its own file backend
|
||||||
Q_PROPERTY(AdvancedConfig* advanced READ advanced CONSTANT)
|
Q_PROPERTY(TokenConfig* tokens READ tokens CONSTANT)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
static GlobalConfig* instance();
|
static GlobalConfig* instance();
|
||||||
static GlobalConfig* create(QQmlEngine*, QJSEngine*);
|
static GlobalConfig* create(QQmlEngine*, QJSEngine*);
|
||||||
|
|
||||||
[[nodiscard]] AdvancedConfig* advanced() const { return m_advanced; }
|
[[nodiscard]] TokenConfig* tokens() const { return m_tokens; }
|
||||||
|
|
||||||
Q_INVOKABLE void save();
|
Q_INVOKABLE void save();
|
||||||
Q_INVOKABLE void reload();
|
Q_INVOKABLE void reload();
|
||||||
|
|
@ -63,7 +63,7 @@ public:
|
||||||
private:
|
private:
|
||||||
explicit GlobalConfig(QObject* parent = nullptr);
|
explicit GlobalConfig(QObject* parent = nullptr);
|
||||||
|
|
||||||
AdvancedConfig* m_advanced = nullptr;
|
TokenConfig* m_tokens = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
class Config : public QQuickItem {
|
class Config : public QQuickItem {
|
||||||
|
|
|
||||||
|
|
@ -111,7 +111,7 @@ public:
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class AdvancedAppearance : public ConfigObject {
|
class AppearanceTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -123,7 +123,7 @@ class AdvancedAppearance : public ConfigObject {
|
||||||
CONFIG_SUBOBJECT(AnimDurationTokens, animDurations)
|
CONFIG_SUBOBJECT(AnimDurationTokens, animDurations)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit AdvancedAppearance(QObject* parent = nullptr)
|
explicit AppearanceTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent)
|
: ConfigObject(parent)
|
||||||
, m_curves(new AnimCurves(this))
|
, m_curves(new AnimCurves(this))
|
||||||
, m_rounding(new RoundingTokens(this))
|
, m_rounding(new RoundingTokens(this))
|
||||||
|
|
@ -133,7 +133,7 @@ public:
|
||||||
, m_animDurations(new AnimDurationTokens(this)) {}
|
, m_animDurations(new AnimDurationTokens(this)) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class BarSizes : public ConfigObject {
|
class BarTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -145,11 +145,11 @@ class BarSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(int, kbLayoutWidth, 320)
|
CONFIG_PROPERTY(int, kbLayoutWidth, 320)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit BarSizes(QObject* parent = nullptr)
|
explicit BarTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class AdvancedDashboard : public ConfigObject {
|
class DashboardTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -157,53 +157,26 @@ class AdvancedDashboard : public ConfigObject {
|
||||||
CONFIG_PROPERTY(bool, showMedia, true)
|
CONFIG_PROPERTY(bool, showMedia, true)
|
||||||
CONFIG_PROPERTY(bool, showPerformance, true)
|
CONFIG_PROPERTY(bool, showPerformance, true)
|
||||||
CONFIG_PROPERTY(bool, showWeather, true)
|
CONFIG_PROPERTY(bool, showWeather, true)
|
||||||
|
CONFIG_PROPERTY(int, tabIndicatorHeight, 3)
|
||||||
Q_PROPERTY(int tabIndicatorHeight READ tabIndicatorHeight CONSTANT)
|
CONFIG_PROPERTY(int, tabIndicatorSpacing, 5)
|
||||||
Q_PROPERTY(int tabIndicatorSpacing READ tabIndicatorSpacing CONSTANT)
|
CONFIG_PROPERTY(int, infoWidth, 200)
|
||||||
Q_PROPERTY(int infoWidth READ infoWidth CONSTANT)
|
CONFIG_PROPERTY(int, infoIconSize, 25)
|
||||||
Q_PROPERTY(int infoIconSize READ infoIconSize CONSTANT)
|
CONFIG_PROPERTY(int, dateTimeWidth, 110)
|
||||||
Q_PROPERTY(int dateTimeWidth READ dateTimeWidth CONSTANT)
|
CONFIG_PROPERTY(int, mediaWidth, 200)
|
||||||
Q_PROPERTY(int mediaWidth READ mediaWidth CONSTANT)
|
CONFIG_PROPERTY(int, mediaProgressSweep, 180)
|
||||||
Q_PROPERTY(int mediaProgressSweep READ mediaProgressSweep CONSTANT)
|
CONFIG_PROPERTY(int, mediaProgressThickness, 8)
|
||||||
Q_PROPERTY(int mediaProgressThickness READ mediaProgressThickness CONSTANT)
|
CONFIG_PROPERTY(int, resourceProgressThickness, 10)
|
||||||
Q_PROPERTY(int resourceProgessThickness READ resourceProgessThickness CONSTANT)
|
CONFIG_PROPERTY(int, weatherWidth, 250)
|
||||||
Q_PROPERTY(int weatherWidth READ weatherWidth CONSTANT)
|
CONFIG_PROPERTY(int, mediaCoverArtSize, 150)
|
||||||
Q_PROPERTY(int mediaCoverArtSize READ mediaCoverArtSize CONSTANT)
|
CONFIG_PROPERTY(int, mediaVisualiserSize, 80)
|
||||||
Q_PROPERTY(int mediaVisualiserSize READ mediaVisualiserSize CONSTANT)
|
CONFIG_PROPERTY(int, resourceSize, 200)
|
||||||
Q_PROPERTY(int resourceSize READ resourceSize CONSTANT)
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit AdvancedDashboard(QObject* parent = nullptr)
|
explicit DashboardTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
|
|
||||||
[[nodiscard]] static int tabIndicatorHeight() { return 3; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int tabIndicatorSpacing() { return 5; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int infoWidth() { return 200; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int infoIconSize() { return 25; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int dateTimeWidth() { return 110; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int mediaWidth() { return 200; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int mediaProgressSweep() { return 180; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int mediaProgressThickness() { return 8; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int resourceProgessThickness() { return 10; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int weatherWidth() { return 250; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int mediaCoverArtSize() { return 150; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int mediaVisualiserSize() { return 80; }
|
|
||||||
|
|
||||||
[[nodiscard]] static int resourceSize() { return 200; }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class LauncherSizes : public ConfigObject {
|
class LauncherTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -213,11 +186,11 @@ class LauncherSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(int, wallpaperHeight, 200)
|
CONFIG_PROPERTY(int, wallpaperHeight, 200)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit LauncherSizes(QObject* parent = nullptr)
|
explicit LauncherTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class NotifsSizes : public ConfigObject {
|
class NotifsTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -226,11 +199,11 @@ class NotifsSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(int, badge, 20)
|
CONFIG_PROPERTY(int, badge, 20)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit NotifsSizes(QObject* parent = nullptr)
|
explicit NotifsTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class OsdSizes : public ConfigObject {
|
class OsdTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -238,33 +211,33 @@ class OsdSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(int, sliderHeight, 150)
|
CONFIG_PROPERTY(int, sliderHeight, 150)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit OsdSizes(QObject* parent = nullptr)
|
explicit OsdTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class SessionSizes : public ConfigObject {
|
class SessionTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
CONFIG_PROPERTY(int, button, 80)
|
CONFIG_PROPERTY(int, button, 80)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit SessionSizes(QObject* parent = nullptr)
|
explicit SessionTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class SidebarSizes : public ConfigObject {
|
class SidebarTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
CONFIG_PROPERTY(int, width, 430)
|
CONFIG_PROPERTY(int, width, 430)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit SidebarSizes(QObject* parent = nullptr)
|
explicit SidebarTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class UtilitiesSizes : public ConfigObject {
|
class UtilitiesTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -272,11 +245,11 @@ class UtilitiesSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(int, toastWidth, 430)
|
CONFIG_PROPERTY(int, toastWidth, 430)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit UtilitiesSizes(QObject* parent = nullptr)
|
explicit UtilitiesTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class LockSizes : public ConfigObject {
|
class LockTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -285,11 +258,11 @@ class LockSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(int, centerWidth, 600)
|
CONFIG_PROPERTY(int, centerWidth, 600)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit LockSizes(QObject* parent = nullptr)
|
explicit LockTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class WInfoSizes : public ConfigObject {
|
class WInfoTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -297,11 +270,11 @@ class WInfoSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(qreal, detailsWidth, 500)
|
CONFIG_PROPERTY(qreal, detailsWidth, 500)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit WInfoSizes(QObject* parent = nullptr)
|
explicit WInfoTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class ControlCenterSizes : public ConfigObject {
|
class ControlCenterTokens : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
|
|
@ -309,42 +282,42 @@ class ControlCenterSizes : public ConfigObject {
|
||||||
CONFIG_PROPERTY(qreal, ratio, 16.0 / 9.0)
|
CONFIG_PROPERTY(qreal, ratio, 16.0 / 9.0)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit ControlCenterSizes(QObject* parent = nullptr)
|
explicit ControlCenterTokens(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent) {}
|
: ConfigObject(parent) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
class AdvancedConfig : public ConfigObject {
|
class TokenConfig : public ConfigObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
QML_ANONYMOUS
|
QML_ANONYMOUS
|
||||||
|
|
||||||
CONFIG_SUBOBJECT(AdvancedAppearance, appearance)
|
CONFIG_SUBOBJECT(AppearanceTokens, appearance)
|
||||||
CONFIG_SUBOBJECT(BarSizes, bar)
|
CONFIG_SUBOBJECT(BarTokens, bar)
|
||||||
CONFIG_SUBOBJECT(AdvancedDashboard, dashboard)
|
CONFIG_SUBOBJECT(DashboardTokens, dashboard)
|
||||||
CONFIG_SUBOBJECT(LauncherSizes, launcher)
|
CONFIG_SUBOBJECT(LauncherTokens, launcher)
|
||||||
CONFIG_SUBOBJECT(NotifsSizes, notifs)
|
CONFIG_SUBOBJECT(NotifsTokens, notifs)
|
||||||
CONFIG_SUBOBJECT(OsdSizes, osd)
|
CONFIG_SUBOBJECT(OsdTokens, osd)
|
||||||
CONFIG_SUBOBJECT(SessionSizes, session)
|
CONFIG_SUBOBJECT(SessionTokens, session)
|
||||||
CONFIG_SUBOBJECT(SidebarSizes, sidebar)
|
CONFIG_SUBOBJECT(SidebarTokens, sidebar)
|
||||||
CONFIG_SUBOBJECT(UtilitiesSizes, utilities)
|
CONFIG_SUBOBJECT(UtilitiesTokens, utilities)
|
||||||
CONFIG_SUBOBJECT(LockSizes, lock)
|
CONFIG_SUBOBJECT(LockTokens, lock)
|
||||||
CONFIG_SUBOBJECT(WInfoSizes, winfo)
|
CONFIG_SUBOBJECT(WInfoTokens, winfo)
|
||||||
CONFIG_SUBOBJECT(ControlCenterSizes, controlCenter)
|
CONFIG_SUBOBJECT(ControlCenterTokens, controlCenter)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit AdvancedConfig(QObject* parent = nullptr)
|
explicit TokenConfig(QObject* parent = nullptr)
|
||||||
: ConfigObject(parent)
|
: ConfigObject(parent)
|
||||||
, m_appearance(new AdvancedAppearance(this))
|
, m_appearance(new AppearanceTokens(this))
|
||||||
, m_bar(new BarSizes(this))
|
, m_bar(new BarTokens(this))
|
||||||
, m_dashboard(new AdvancedDashboard(this))
|
, m_dashboard(new DashboardTokens(this))
|
||||||
, m_launcher(new LauncherSizes(this))
|
, m_launcher(new LauncherTokens(this))
|
||||||
, m_notifs(new NotifsSizes(this))
|
, m_notifs(new NotifsTokens(this))
|
||||||
, m_osd(new OsdSizes(this))
|
, m_osd(new OsdTokens(this))
|
||||||
, m_session(new SessionSizes(this))
|
, m_session(new SessionTokens(this))
|
||||||
, m_sidebar(new SidebarSizes(this))
|
, m_sidebar(new SidebarTokens(this))
|
||||||
, m_utilities(new UtilitiesSizes(this))
|
, m_utilities(new UtilitiesTokens(this))
|
||||||
, m_lock(new LockSizes(this))
|
, m_lock(new LockTokens(this))
|
||||||
, m_winfo(new WInfoSizes(this))
|
, m_winfo(new WInfoTokens(this))
|
||||||
, m_controlCenter(new ControlCenterSizes(this)) {}
|
, m_controlCenter(new ControlCenterTokens(this)) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace caelestia::config
|
} // namespace caelestia::config
|
||||||
Loading…
Add table
Reference in a new issue