#pragma once #include "configobject.hpp" #include namespace ZShell::config { class Presets : public ConfigObject { Q_OBJECT QML_ANONYMOUS CFG_PROPERTY(QString, accent, QString()) CFG_PROPERTY(QString, name, QStringLiteral("Catppuccin")) CFG_PROPERTY(QString, variant, QStringLiteral("latte")) public: explicit Presets(QObject* parent = nullptr) : ConfigObject(parent) {} }; class Colors : public ConfigObject { Q_OBJECT QML_ANONYMOUS CONFIG_SUBOBJECT(Presets, presets) CFG_PROPERTY(QString, schemeType, QStringLiteral("fidelity")) public: explicit Colors(QObject* parent = nullptr) : ConfigObject(parent), m_presets(new Presets(this)) {} }; } // namespace ZShell::config