Files
qt5-legatus-legacy/Lts/Common/LtsUtils/LtsUtilsGui/StyleManager/style_manager.h
T
2026-08-13 18:33:10 +02:00

44 lines
874 B
C++
Executable File

/**
* @RDE_HEADER@
* Loads Style Plugins and unloads them to keep one resource file only
* $Id$
* $HeadURL$
* $Author$
*
* Created by Mike Wille, NLSE, 2018-02-15
*/
#pragma once
#include <StyleManager/ltsutilsguistylemanager_export.h>
#include <QObject>
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