#pragma once #include #include #include "FluAccentColor.h" #include "stdafx.h" #include "singleton.h" /** * @brief The FluColors class */ class FluColors : public QObject { Q_OBJECT Q_PROPERTY_AUTO(QColor, Transparent) Q_PROPERTY_AUTO(QColor, Black) Q_PROPERTY_AUTO(QColor, White) Q_PROPERTY_AUTO(QColor, Grey10) Q_PROPERTY_AUTO(QColor, Grey20) Q_PROPERTY_AUTO(QColor, Grey30) Q_PROPERTY_AUTO(QColor, Grey40) Q_PROPERTY_AUTO(QColor, Grey50) Q_PROPERTY_AUTO(QColor, Grey60) Q_PROPERTY_AUTO(QColor, Grey70) Q_PROPERTY_AUTO(QColor, Grey80) Q_PROPERTY_AUTO(QColor, Grey90) Q_PROPERTY_AUTO(QColor, Grey100) Q_PROPERTY_AUTO(QColor, Grey110) Q_PROPERTY_AUTO(QColor, Grey120) Q_PROPERTY_AUTO(QColor, Grey130) Q_PROPERTY_AUTO(QColor, Grey140) Q_PROPERTY_AUTO(QColor, Grey150) Q_PROPERTY_AUTO(QColor, Grey160) Q_PROPERTY_AUTO(QColor, Grey170) Q_PROPERTY_AUTO(QColor, Grey180) Q_PROPERTY_AUTO(QColor, Grey190) Q_PROPERTY_AUTO(QColor, Grey200) Q_PROPERTY_AUTO(QColor, Grey210) Q_PROPERTY_AUTO(QColor, Grey220) Q_PROPERTY_AUTO_P(FluAccentColor *, Yellow) Q_PROPERTY_AUTO_P(FluAccentColor *, Orange) Q_PROPERTY_AUTO_P(FluAccentColor *, Red) Q_PROPERTY_AUTO_P(FluAccentColor *, Magenta) Q_PROPERTY_AUTO_P(FluAccentColor *, Purple) Q_PROPERTY_AUTO_P(FluAccentColor *, Blue) Q_PROPERTY_AUTO_P(FluAccentColor *, Teal) Q_PROPERTY_AUTO_P(FluAccentColor *, Green) QML_NAMED_ELEMENT(FluColors) QML_SINGLETON private: explicit FluColors(QObject *parent = nullptr); public: SINGLETON(FluColors) [[maybe_unused]] Q_INVOKABLE FluAccentColor *createAccentColor(const QColor &primaryColor); static FluColors *create(QQmlEngine *, QJSEngine *) { return getInstance(); } };