Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qquicktranslate_p.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QQUICKTRANSLATE_P_H
6#define QQUICKTRANSLATE_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include <private/qtquickglobal_p.h>
20
21#include <QtQuick/qquickitem.h>
22
23#include <QtGui/qmatrix4x4.h>
24
26
28class Q_QUICK_EXPORT QQuickTranslate : public QQuickTransform
29{
30 Q_OBJECT
31
32 Q_PROPERTY(qreal x READ x WRITE setX NOTIFY xChanged)
33 Q_PROPERTY(qreal y READ y WRITE setY NOTIFY yChanged)
34 QML_NAMED_ELEMENT(Translate)
35 QML_ADDED_IN_VERSION(2, 0)
36
37public:
38 QQuickTranslate(QObject *parent = nullptr);
39
40 qreal x() const;
41 void setX(qreal);
42
43 qreal y() const;
44 void setY(qreal);
45
46 void applyTo(QMatrix4x4 *matrix) const override;
47
48Q_SIGNALS:
49 void xChanged();
50 void yChanged();
51
52private:
53 Q_DECLARE_PRIVATE(QQuickTranslate)
54};
55
57class Q_QUICK_EXPORT QQuickScale : public QQuickTransform
58{
59 Q_OBJECT
60
61 Q_PROPERTY(QVector3D origin READ origin WRITE setOrigin NOTIFY originChanged)
62 Q_PROPERTY(qreal xScale READ xScale WRITE setXScale NOTIFY xScaleChanged)
63 Q_PROPERTY(qreal yScale READ yScale WRITE setYScale NOTIFY yScaleChanged)
64 Q_PROPERTY(qreal zScale READ zScale WRITE setZScale NOTIFY zScaleChanged)
65 QML_NAMED_ELEMENT(Scale)
66 QML_ADDED_IN_VERSION(2, 0)
67public:
68 QQuickScale(QObject *parent = nullptr);
69
70 QVector3D origin() const;
71 void setOrigin(const QVector3D &point);
72
73 qreal xScale() const;
74 void setXScale(qreal);
75
76 qreal yScale() const;
77 void setYScale(qreal);
78
79 qreal zScale() const;
80 void setZScale(qreal);
81
82 void applyTo(QMatrix4x4 *matrix) const override;
83
84Q_SIGNALS:
85 void originChanged();
86 void xScaleChanged();
87 void yScaleChanged();
88 void zScaleChanged();
89 void scaleChanged();
90
91private:
92 Q_DECLARE_PRIVATE(QQuickScale)
93};
94
96class Q_QUICK_EXPORT QQuickRotation : public QQuickTransform
97{
98 Q_OBJECT
99
100 Q_PROPERTY(QVector3D origin READ origin WRITE setOrigin NOTIFY originChanged)
101 Q_PROPERTY(qreal angle READ angle WRITE setAngle NOTIFY angleChanged)
102 Q_PROPERTY(QVector3D axis READ axis WRITE setAxis NOTIFY axisChanged)
103 Q_PROPERTY(qreal distanceToPlane READ distanceToPlane WRITE setDistanceToPlane NOTIFY distanceToPlaneChanged REVISION(6, 11))
104 QML_NAMED_ELEMENT(Rotation)
105 QML_ADDED_IN_VERSION(2, 0)
106public:
107 QQuickRotation(QObject *parent = nullptr);
108
109 QVector3D origin() const;
110 void setOrigin(const QVector3D &point);
111
112 qreal angle() const;
113 void setAngle(qreal);
114
115 QVector3D axis() const;
116 void setAxis(const QVector3D &axis);
117 void setAxis(Qt::Axis axis);
118
119 qreal distanceToPlane() const;
120 void setDistanceToPlane(qreal newDistanceToPlane);
121
122 void applyTo(QMatrix4x4 *matrix) const override;
123
124Q_SIGNALS:
125 void originChanged();
126 void angleChanged();
127 void axisChanged();
128 Q_REVISION(6, 11) void distanceToPlaneChanged();
129
130private:
131 Q_DECLARE_PRIVATE(QQuickRotation)
132};
133
135class Q_QUICK_EXPORT QQuickShear : public QQuickTransform
136{
137 Q_OBJECT
138
139 Q_PROPERTY(QVector3D origin READ origin WRITE setOrigin NOTIFY originChanged)
140 Q_PROPERTY(qreal xFactor READ xFactor WRITE setXFactor NOTIFY xFactorChanged)
141 Q_PROPERTY(qreal yFactor READ yFactor WRITE setYFactor NOTIFY yFactorChanged)
142 Q_PROPERTY(qreal xAngle READ xAngle WRITE setXAngle NOTIFY xAngleChanged)
143 Q_PROPERTY(qreal yAngle READ yAngle WRITE setYAngle NOTIFY yAngleChanged)
144 QML_NAMED_ELEMENT(Shear)
145 QML_ADDED_IN_VERSION(6, 9)
146public:
147 QQuickShear(QObject *parent = nullptr);
148
149 QVector3D origin() const;
150 void setOrigin(const QVector3D &point);
151
152 qreal xFactor() const;
153 void setXFactor(qreal);
154
155 qreal yFactor() const;
156 void setYFactor(qreal);
157
158 qreal xAngle() const;
159 void setXAngle(qreal);
160
161 qreal yAngle() const;
162 void setYAngle(qreal);
163
164 void applyTo(QMatrix4x4 *matrix) const override;
165
166Q_SIGNALS:
167 void originChanged();
168 void xFactorChanged();
169 void yFactorChanged();
170 void xAngleChanged();
171 void yAngleChanged();
172
173private:
174 Q_DECLARE_PRIVATE(QQuickShear)
175};
176
178class Q_QUICK_EXPORT QQuickMatrix4x4 : public QQuickTransform
179{
180 Q_OBJECT
181
182 Q_PROPERTY(QMatrix4x4 matrix READ matrix WRITE setMatrix NOTIFY matrixChanged)
183 QML_NAMED_ELEMENT(Matrix4x4)
184 QML_ADDED_IN_VERSION(2, 3)
185public:
186 QQuickMatrix4x4(QObject *parent = nullptr);
187
188 QMatrix4x4 matrix() const;
189 void setMatrix(const QMatrix4x4& matrix);
190
191 void applyTo(QMatrix4x4 *matrix) const override;
192
193Q_SIGNALS:
194 void matrixChanged();
195
196private:
197 Q_DECLARE_PRIVATE(QQuickMatrix4x4)
198};
199
200
201QT_END_NAMESPACE
202
203#endif
QPointer< QQuickItem > back
QPointer< QQuickItem > front
QPointer< QQuickLocalTransform > backTransform
\qmltype Shear \nativetype QQuickShear \inqmlmodule QtQuick
Combined button and popup list for selecting options.
QT_REQUIRE_CONFIG(quick_flipable)