diff options
Diffstat (limited to 'src/quick/util/qquickvaluetypes_p.h')
-rw-r--r-- | src/quick/util/qquickvaluetypes_p.h | 87 |
1 files changed, 72 insertions, 15 deletions
diff --git a/src/quick/util/qquickvaluetypes_p.h b/src/quick/util/qquickvaluetypes_p.h index 70ad5c2b0d..e49d3daed8 100644 --- a/src/quick/util/qquickvaluetypes_p.h +++ b/src/quick/util/qquickvaluetypes_p.h @@ -30,7 +30,7 @@ QT_BEGIN_NAMESPACE -class Q_QUICK_PRIVATE_EXPORT QQuickColorValueType +class Q_QUICK_EXPORT QQuickColorValueType { QColor v; Q_PROPERTY(qreal r READ r WRITE setR FINAL) @@ -43,7 +43,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickColorValueType Q_PROPERTY(qreal hslHue READ hslHue WRITE setHslHue FINAL) Q_PROPERTY(qreal hslSaturation READ hslSaturation WRITE setHslSaturation FINAL) Q_PROPERTY(qreal hslLightness READ hslLightness WRITE setHslLightness FINAL) - Q_PROPERTY(bool valid READ isValid) + Q_PROPERTY(bool valid READ isValid FINAL) Q_GADGET QML_ADDED_IN_VERSION(2, 0) QML_FOREIGN(QColor) @@ -54,6 +54,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickColorValueType public: static QVariant create(const QJSValue ¶ms); + Q_INVOKABLE QQuickColorValueType() = default; Q_INVOKABLE QQuickColorValueType(const QString &string); Q_INVOKABLE QString toString() const; @@ -83,9 +84,11 @@ public: void setHslHue(qreal); void setHslSaturation(qreal); void setHslLightness(qreal); + + operator QColor() const { return v; } }; -class Q_QUICK_PRIVATE_EXPORT QQuickVector2DValueType +class Q_QUICK_EXPORT QQuickVector2DValueType { QVector2D v; Q_PROPERTY(qreal x READ x WRITE setX FINAL) @@ -100,6 +103,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickVector2DValueType public: static QVariant create(const QJSValue ¶ms); + Q_INVOKABLE QQuickVector2DValueType() = default; Q_INVOKABLE QString toString() const; qreal x() const; @@ -118,9 +122,11 @@ public: Q_INVOKABLE QVector4D toVector4d() const; Q_INVOKABLE bool fuzzyEquals(const QVector2D &vec, qreal epsilon) const; Q_INVOKABLE bool fuzzyEquals(const QVector2D &vec) const; + + operator QVector2D() const { return v; } }; -class Q_QUICK_PRIVATE_EXPORT QQuickVector3DValueType +class Q_QUICK_EXPORT QQuickVector3DValueType { QVector3D v; Q_PROPERTY(qreal x READ x WRITE setX FINAL) @@ -136,6 +142,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickVector3DValueType public: static QVariant create(const QJSValue ¶ms); + Q_INVOKABLE QQuickVector3DValueType() = default; Q_INVOKABLE QString toString() const; qreal x() const; @@ -158,9 +165,11 @@ public: Q_INVOKABLE QVector4D toVector4d() const; Q_INVOKABLE bool fuzzyEquals(const QVector3D &vec, qreal epsilon) const; Q_INVOKABLE bool fuzzyEquals(const QVector3D &vec) const; + + operator QVector3D() const { return v; } }; -class Q_QUICK_PRIVATE_EXPORT QQuickVector4DValueType +class Q_QUICK_EXPORT QQuickVector4DValueType { QVector4D v; Q_PROPERTY(qreal x READ x WRITE setX FINAL) @@ -177,6 +186,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickVector4DValueType public: static QVariant create(const QJSValue ¶ms); + Q_INVOKABLE QQuickVector4DValueType() = default; Q_INVOKABLE QString toString() const; qreal x() const; @@ -200,15 +210,17 @@ public: Q_INVOKABLE QVector3D toVector3d() const; Q_INVOKABLE bool fuzzyEquals(const QVector4D &vec, qreal epsilon) const; Q_INVOKABLE bool fuzzyEquals(const QVector4D &vec) const; + + operator QVector4D() const { return v; } }; -class Q_QUICK_PRIVATE_EXPORT QQuickQuaternionValueType +class Q_QUICK_EXPORT QQuickQuaternionValueType { QQuaternion v; - Q_PROPERTY(qreal scalar READ scalar WRITE setScalar) - Q_PROPERTY(qreal x READ x WRITE setX) - Q_PROPERTY(qreal y READ y WRITE setY) - Q_PROPERTY(qreal z READ z WRITE setZ) + Q_PROPERTY(qreal scalar READ scalar WRITE setScalar FINAL) + Q_PROPERTY(qreal x READ x WRITE setX FINAL) + Q_PROPERTY(qreal y READ y WRITE setY FINAL) + Q_PROPERTY(qreal z READ z WRITE setZ FINAL) Q_GADGET QML_ADDED_IN_VERSION(2, 0) QML_FOREIGN(QQuaternion) @@ -219,6 +231,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickQuaternionValueType public: static QVariant create(const QJSValue ¶ms); + Q_INVOKABLE QQuickQuaternionValueType() = default; Q_INVOKABLE QString toString() const; qreal scalar() const; @@ -247,9 +260,11 @@ public: Q_INVOKABLE bool fuzzyEquals(const QQuaternion &q, qreal epsilon) const; Q_INVOKABLE bool fuzzyEquals(const QQuaternion &q) const; + + operator QQuaternion() const { return v; } }; -class Q_QUICK_PRIVATE_EXPORT QQuickMatrix4x4ValueType +class Q_QUICK_EXPORT QQuickMatrix4x4ValueType { QMatrix4x4 v; Q_PROPERTY(qreal m11 READ m11 WRITE setM11 FINAL) @@ -278,6 +293,8 @@ class Q_QUICK_PRIVATE_EXPORT QQuickMatrix4x4ValueType public: static QVariant create(const QJSValue ¶ms); + Q_INVOKABLE QQuickMatrix4x4ValueType() = default; + qreal m11() const { return v(0, 0); } qreal m12() const { return v(0, 1); } qreal m13() const { return v(0, 2); } @@ -339,11 +356,34 @@ public: Q_INVOKABLE bool fuzzyEquals(const QMatrix4x4 &m, qreal epsilon) const; Q_INVOKABLE bool fuzzyEquals(const QMatrix4x4 &m) const; + + operator QMatrix4x4() const { return v; } +}; + +class Q_QUICK_EXPORT QQuickPlanarTransform : public QObject +{ + Q_OBJECT + QML_SINGLETON + QML_NAMED_ELEMENT(PlanarTransform) + QML_ADDED_IN_VERSION(6, 8) + +public: + explicit QQuickPlanarTransform(QObject *parent = nullptr); + + Q_INVOKABLE static QMatrix4x4 fromAffineMatrix(float scaleX, float shearY, + float shearX, float scaleY, + float translateX, float translateY); + Q_INVOKABLE static QMatrix4x4 fromTranslate(float translateX, float translateY); + Q_INVOKABLE static QMatrix4x4 fromScale(float scaleX, float scaleY, + float originX = 0, float originY = 0); + Q_INVOKABLE static QMatrix4x4 fromRotate(float angle,float originX = 0, float originY = 0); + Q_INVOKABLE static QMatrix4x4 fromShear(float shearX, float shearY, + float originX = 0, float originY = 0); }; namespace QQuickFontEnums { -Q_NAMESPACE_EXPORT(Q_QUICK_PRIVATE_EXPORT) +Q_NAMESPACE_EXPORT(Q_QUICK_EXPORT) QML_NAMED_ELEMENT(Font) QML_ADDED_IN_VERSION(2, 0) @@ -374,7 +414,7 @@ enum HintingPreference { Q_ENUM_NS(HintingPreference) }; -class Q_QUICK_PRIVATE_EXPORT QQuickFontValueType +class Q_QUICK_EXPORT QQuickFontValueType { QFont v; Q_GADGET @@ -395,6 +435,9 @@ class Q_QUICK_PRIVATE_EXPORT QQuickFontValueType Q_PROPERTY(QQuickFontEnums::HintingPreference hintingPreference READ hintingPreference WRITE setHintingPreference FINAL) Q_PROPERTY(bool kerning READ kerning WRITE setKerning FINAL) Q_PROPERTY(bool preferShaping READ preferShaping WRITE setPreferShaping FINAL) + Q_PROPERTY(QVariantMap features READ features WRITE setFeatures FINAL) + Q_PROPERTY(QVariantMap variableAxes READ variableAxes WRITE setVariableAxes FINAL) + Q_PROPERTY(bool contextFontMerging READ contextFontMerging WRITE setContextFontMerging FINAL) QML_VALUE_TYPE(font) QML_FOREIGN(QFont) @@ -405,6 +448,7 @@ class Q_QUICK_PRIVATE_EXPORT QQuickFontValueType public: static QVariant create(const QJSValue &value); + Q_INVOKABLE QQuickFontValueType() = default; Q_INVOKABLE QString toString() const; QString family() const; @@ -454,11 +498,22 @@ public: bool preferShaping() const; void setPreferShaping(bool b); + + QVariantMap features() const; + void setFeatures(const QVariantMap &features); + + QVariantMap variableAxes() const; + void setVariableAxes(const QVariantMap &variableAxes); + + bool contextFontMerging() const; + void setContextFontMerging(bool b); + + operator QFont() const { return v; } }; namespace QQuickColorSpaceEnums { -Q_NAMESPACE_EXPORT(Q_QUICK_PRIVATE_EXPORT) +Q_NAMESPACE_EXPORT(Q_QUICK_EXPORT) QML_NAMED_ELEMENT(ColorSpace) QML_ADDED_IN_VERSION(2, 15) Q_CLASSINFO("RegisterEnumClassesUnscoped", "false") @@ -491,7 +546,7 @@ enum class TransferFunction { Q_ENUM_NS(TransferFunction) } -class Q_QUICK_PRIVATE_EXPORT QQuickColorSpaceValueType +class Q_QUICK_EXPORT QQuickColorSpaceValueType { QColorSpace v; Q_GADGET @@ -518,6 +573,8 @@ public: void setTransferFunction(QQuickColorSpaceEnums::TransferFunction transferFunction); float gamma() const noexcept; void setGamma(float gamma); + + operator QColorSpace() const { return v; } }; QT_END_NAMESPACE |