349 lines
10 KiB
C++
349 lines
10 KiB
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <qqmlregistration.h>
|
|
#include <QQmlEngine>
|
|
#include <QJSEngine>
|
|
|
|
class TokensRounding : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(qreal extraSmall READ extraSmall CONSTANT)
|
|
Q_PROPERTY(qreal full READ full CONSTANT)
|
|
Q_PROPERTY(qreal large READ large CONSTANT)
|
|
Q_PROPERTY(qreal medium READ medium CONSTANT)
|
|
Q_PROPERTY(qreal normal READ normal CONSTANT)
|
|
Q_PROPERTY(qreal scale READ scale CONSTANT)
|
|
Q_PROPERTY(qreal small READ small CONSTANT)
|
|
Q_PROPERTY(qreal smallest READ smallest CONSTANT)
|
|
|
|
public:
|
|
explicit TokensRounding(QObject* parent = nullptr);
|
|
|
|
qreal extraSmall() const { return m_extraSmall; }
|
|
qreal full() const { return m_full; }
|
|
qreal large() const { return m_large; }
|
|
qreal medium() const { return m_medium; }
|
|
qreal normal() const { return m_normal; }
|
|
qreal scale() const { return m_scale; }
|
|
qreal small() const { return m_small; }
|
|
qreal smallest() const { return m_smallest; }
|
|
|
|
private:
|
|
qreal m_extraSmall;
|
|
qreal m_full;
|
|
qreal m_large;
|
|
qreal m_medium;
|
|
qreal m_normal;
|
|
qreal m_scale;
|
|
qreal m_small;
|
|
qreal m_smallest;
|
|
};
|
|
|
|
class TokensPadding : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(qreal extraLarge READ extraLarge CONSTANT)
|
|
Q_PROPERTY(qreal extraLargeIncreased READ extraLargeIncreased CONSTANT)
|
|
Q_PROPERTY(qreal extraSmall READ extraSmall CONSTANT)
|
|
Q_PROPERTY(qreal large READ large CONSTANT)
|
|
Q_PROPERTY(qreal largeIncreased READ largeIncreased CONSTANT)
|
|
Q_PROPERTY(qreal larger READ larger CONSTANT)
|
|
Q_PROPERTY(qreal normal READ normal CONSTANT)
|
|
Q_PROPERTY(qreal scale READ scale CONSTANT)
|
|
Q_PROPERTY(qreal small READ small CONSTANT)
|
|
Q_PROPERTY(qreal smaller READ smaller CONSTANT)
|
|
Q_PROPERTY(qreal smallest READ smallest CONSTANT)
|
|
|
|
public:
|
|
explicit TokensPadding(QObject* parent = nullptr);
|
|
|
|
qreal extraLarge() const { return m_extraLarge; }
|
|
qreal extraLargeIncreased() const { return m_extraLargeIncreased; }
|
|
qreal extraSmall() const { return m_extraSmall; }
|
|
qreal large() const { return m_large; }
|
|
qreal largeIncreased() const { return m_largeIncreased; }
|
|
qreal larger() const { return m_larger; }
|
|
qreal normal() const { return m_normal; }
|
|
qreal scale() const { return m_scale; }
|
|
qreal small() const { return m_small; }
|
|
qreal smaller() const { return m_smaller; }
|
|
qreal smallest() const { return m_smallest; }
|
|
|
|
private:
|
|
qreal m_extraLarge;
|
|
qreal m_extraLargeIncreased;
|
|
qreal m_extraSmall;
|
|
qreal m_large;
|
|
qreal m_largeIncreased;
|
|
qreal m_larger;
|
|
qreal m_normal;
|
|
qreal m_scale;
|
|
qreal m_small;
|
|
qreal m_smaller;
|
|
qreal m_smallest;
|
|
};
|
|
|
|
class TokensSpacing : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(qreal extraSmall READ extraSmall CONSTANT)
|
|
Q_PROPERTY(qreal large READ large CONSTANT)
|
|
Q_PROPERTY(qreal larger READ larger CONSTANT)
|
|
Q_PROPERTY(qreal normal READ normal CONSTANT)
|
|
Q_PROPERTY(qreal scale READ scale CONSTANT)
|
|
Q_PROPERTY(qreal small READ small CONSTANT)
|
|
Q_PROPERTY(qreal smaller READ smaller CONSTANT)
|
|
|
|
public:
|
|
explicit TokensSpacing(QObject* parent = nullptr);
|
|
|
|
qreal extraSmall() const { return m_extraSmall; }
|
|
qreal large() const { return m_large; }
|
|
qreal larger() const { return m_larger; }
|
|
qreal normal() const { return m_normal; }
|
|
qreal scale() const { return m_scale; }
|
|
qreal small() const { return m_small; }
|
|
qreal smaller() const { return m_smaller; }
|
|
|
|
private:
|
|
qreal m_extraSmall;
|
|
qreal m_large;
|
|
qreal m_larger;
|
|
qreal m_normal;
|
|
qreal m_scale;
|
|
qreal m_small;
|
|
qreal m_smaller;
|
|
};
|
|
|
|
class TokensFontSize : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(qreal extraLarge READ extraLarge CONSTANT)
|
|
Q_PROPERTY(qreal large READ large CONSTANT)
|
|
Q_PROPERTY(qreal larger READ larger CONSTANT)
|
|
Q_PROPERTY(qreal medium READ medium CONSTANT)
|
|
Q_PROPERTY(qreal normal READ normal CONSTANT)
|
|
Q_PROPERTY(qreal scale READ scale CONSTANT)
|
|
Q_PROPERTY(qreal small READ small CONSTANT)
|
|
Q_PROPERTY(qreal smaller READ smaller CONSTANT)
|
|
|
|
public:
|
|
explicit TokensFontSize(QObject* parent = nullptr);
|
|
|
|
qreal extraLarge() const { return m_extraLarge; }
|
|
qreal large() const { return m_large; }
|
|
qreal larger() const { return m_larger; }
|
|
qreal medium() const { return m_medium; }
|
|
qreal normal() const { return m_normal; }
|
|
qreal scale() const { return m_scale; }
|
|
qreal small() const { return m_small; }
|
|
qreal smaller() const { return m_smaller; }
|
|
|
|
private:
|
|
qreal m_extraLarge;
|
|
qreal m_large;
|
|
qreal m_larger;
|
|
qreal m_medium;
|
|
qreal m_normal;
|
|
qreal m_scale;
|
|
qreal m_small;
|
|
qreal m_smaller;
|
|
};
|
|
|
|
class TokensFont : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(TokensFontSize* size READ size CONSTANT)
|
|
|
|
public:
|
|
explicit TokensFont(QObject* parent = nullptr);
|
|
|
|
TokensFontSize* size() const { return m_size; }
|
|
|
|
private:
|
|
TokensFontSize* m_size = nullptr;
|
|
};
|
|
|
|
class TokensAnimCurves : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(QVariantList emphasized READ emphasized CONSTANT)
|
|
Q_PROPERTY(QVariantList emphasizedAccel READ emphasizedAccel CONSTANT)
|
|
Q_PROPERTY(QVariantList emphasizedDecel READ emphasizedDecel CONSTANT)
|
|
Q_PROPERTY(
|
|
QVariantList expressiveDefaultEffects READ expressiveDefaultEffects
|
|
CONSTANT)
|
|
Q_PROPERTY(
|
|
QVariantList expressiveDefaultSpatial READ expressiveDefaultSpatial
|
|
CONSTANT)
|
|
Q_PROPERTY(QVariantList expressiveEffects READ expressiveEffects CONSTANT)
|
|
Q_PROPERTY(
|
|
QVariantList expressiveFastEffects READ expressiveFastEffects CONSTANT)
|
|
Q_PROPERTY(
|
|
QVariantList expressiveFastSpatial READ expressiveFastSpatial CONSTANT)
|
|
Q_PROPERTY(
|
|
QVariantList expressiveSlowEffects READ expressiveSlowEffects CONSTANT)
|
|
Q_PROPERTY(
|
|
QVariantList expressiveSlowSpatial READ expressiveSlowSpatial CONSTANT)
|
|
Q_PROPERTY(QVariantList standard READ standard CONSTANT)
|
|
Q_PROPERTY(QVariantList standardAccel READ standardAccel CONSTANT)
|
|
Q_PROPERTY(QVariantList standardDecel READ standardDecel CONSTANT)
|
|
|
|
public:
|
|
explicit TokensAnimCurves(QObject* parent = nullptr);
|
|
|
|
QVariantList emphasized() const { return m_emphasized; }
|
|
QVariantList emphasizedAccel() const { return m_emphasizedAccel; }
|
|
QVariantList emphasizedDecel() const { return m_emphasizedDecel; }
|
|
QVariantList expressiveDefaultEffects() const {
|
|
return m_expressiveDefaultEffects;
|
|
}
|
|
QVariantList expressiveDefaultSpatial() const {
|
|
return m_expressiveDefaultSpatial;
|
|
}
|
|
QVariantList expressiveEffects() const { return m_expressiveEffects; }
|
|
QVariantList expressiveFastEffects() const {
|
|
return m_expressiveFastEffects;
|
|
}
|
|
QVariantList expressiveFastSpatial() const {
|
|
return m_expressiveFastSpatial;
|
|
}
|
|
QVariantList expressiveSlowEffects() const {
|
|
return m_expressiveSlowEffects;
|
|
}
|
|
QVariantList expressiveSlowSpatial() const {
|
|
return m_expressiveSlowSpatial;
|
|
}
|
|
QVariantList standard() const { return m_standard; }
|
|
QVariantList standardAccel() const { return m_standardAccel; }
|
|
QVariantList standardDecel() const { return m_standardDecel; }
|
|
|
|
private:
|
|
QVariantList m_emphasized;
|
|
QVariantList m_emphasizedAccel;
|
|
QVariantList m_emphasizedDecel;
|
|
QVariantList m_expressiveDefaultEffects;
|
|
QVariantList m_expressiveDefaultSpatial;
|
|
QVariantList m_expressiveEffects;
|
|
QVariantList m_expressiveFastEffects;
|
|
QVariantList m_expressiveFastSpatial;
|
|
QVariantList m_expressiveSlowEffects;
|
|
QVariantList m_expressiveSlowSpatial;
|
|
QVariantList m_standard;
|
|
QVariantList m_standardAccel;
|
|
QVariantList m_standardDecel;
|
|
};
|
|
|
|
class TokensAnimDurations : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(
|
|
int expressiveDefaultSpatial READ expressiveDefaultSpatial CONSTANT)
|
|
Q_PROPERTY(int expressiveEffects READ expressiveEffects CONSTANT)
|
|
Q_PROPERTY(int expressiveFastEffects READ expressiveFastEffects CONSTANT)
|
|
Q_PROPERTY(int expressiveFastSpatial READ expressiveFastSpatial CONSTANT)
|
|
Q_PROPERTY(int expressiveSlowEffects READ expressiveSlowEffects CONSTANT)
|
|
Q_PROPERTY(int extraLarge READ extraLarge CONSTANT)
|
|
Q_PROPERTY(int large READ large CONSTANT)
|
|
Q_PROPERTY(int normal READ normal CONSTANT)
|
|
Q_PROPERTY(qreal scale READ scale CONSTANT)
|
|
Q_PROPERTY(int small READ small CONSTANT)
|
|
|
|
public:
|
|
explicit TokensAnimDurations(QObject* parent = nullptr);
|
|
|
|
int expressiveDefaultSpatial() const { return m_expressiveDefaultSpatial; }
|
|
int expressiveEffects() const { return m_expressiveEffects; }
|
|
int expressiveFastEffects() const { return m_expressiveFastEffects; }
|
|
int expressiveFastSpatial() const { return m_expressiveFastSpatial; }
|
|
int expressiveSlowEffects() const { return m_expressiveSlowEffects; }
|
|
int extraLarge() const { return m_extraLarge; }
|
|
int large() const { return m_large; }
|
|
int normal() const { return m_normal; }
|
|
qreal scale() const { return m_scale; }
|
|
int small() const { return m_small; }
|
|
|
|
private:
|
|
int m_expressiveDefaultSpatial;
|
|
int m_expressiveEffects;
|
|
int m_expressiveFastEffects;
|
|
int m_expressiveFastSpatial;
|
|
int m_expressiveSlowEffects;
|
|
int m_extraLarge;
|
|
int m_large;
|
|
int m_normal;
|
|
qreal m_scale;
|
|
int m_small;
|
|
};
|
|
|
|
class TokensAnim : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
QML_UNCREATABLE("Instantiated internally by Tokens")
|
|
|
|
Q_PROPERTY(TokensAnimCurves* curves READ curves CONSTANT)
|
|
Q_PROPERTY(TokensAnimDurations* durations READ durations CONSTANT)
|
|
|
|
public:
|
|
explicit TokensAnim(QObject* parent = nullptr);
|
|
|
|
TokensAnimCurves* curves() const { return m_curves; }
|
|
TokensAnimDurations* durations() const { return m_durations; }
|
|
|
|
private:
|
|
TokensAnimCurves* m_curves = nullptr;
|
|
TokensAnimDurations* m_durations = nullptr;
|
|
};
|
|
|
|
class Tokens : public QObject {
|
|
Q_OBJECT
|
|
QML_ELEMENT
|
|
QML_SINGLETON
|
|
|
|
Q_PROPERTY(TokensRounding* rounding READ rounding CONSTANT)
|
|
Q_PROPERTY(TokensPadding* padding READ padding CONSTANT)
|
|
Q_PROPERTY(TokensSpacing* spacing READ spacing CONSTANT)
|
|
Q_PROPERTY(TokensFont* font READ font CONSTANT)
|
|
Q_PROPERTY(TokensAnim* anim READ anim CONSTANT)
|
|
|
|
public:
|
|
explicit Tokens(QObject* parent = nullptr);
|
|
static Tokens* create(QQmlEngine*, QJSEngine*);
|
|
|
|
TokensRounding* rounding() const { return m_rounding; }
|
|
TokensPadding* padding() const { return m_padding; }
|
|
TokensSpacing* spacing() const { return m_spacing; }
|
|
TokensFont* font() const { return m_font; }
|
|
TokensAnim* anim() const { return m_anim; }
|
|
|
|
private:
|
|
TokensRounding* m_rounding = nullptr;
|
|
TokensPadding* m_padding = nullptr;
|
|
TokensSpacing* m_spacing = nullptr;
|
|
TokensFont* m_font = nullptr;
|
|
TokensAnim* m_anim = nullptr;
|
|
};
|