#ifndef CONFIGMANAGER_H #define CONFIGMANAGER_H #include #include #include #include #include #include "../widgets/appicon.h" #include "../widgets/launcherpage.h" class ConfigManager : public QObject { Q_OBJECT public: explicit ConfigManager(QObject *parent = nullptr); ~ConfigManager(); bool loadFromFile(const QString &filePath); bool loadDefaultConfig(); bool saveToFile(const QString &filePath); QVector getPages() const; QVector getDockApps() const; QJsonObject getColorSystem() const; QJsonObject getAnimations() const; private: AppIconData parseAppData(const QJsonObject &obj) const; PageConfig parsePageConfig(const QJsonObject &obj) const; QJsonDocument m_configDoc; QJsonObject m_config; }; #endif // CONFIGMANAGER_H