#pragma once #include "ltsutilsguistylemanager_export.h" #include class QPluginLoader; namespace LtsUtils { class LTSUTILSGUISTYLEMANAGER_EXPORT StyleManager : public QObject { Q_OBJECT using QObject::QObject; ~StyleManager() = default; public: static StyleManager* getInstance(); bool loadStyle(const QString& stylePluginName, bool highDpi = false); const QString& currentStyleName() const { return m_stylePluginName; } private: friend struct StyleManagerHandler; QPluginLoader* m_currentStylePluginLoader = nullptr; QString m_stylePluginName; signals: void signalStyleChanged(const QString& stylePluginName); }; } // namespace LtsUtils