37 Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
39 Q_PROPERTY(
bool reverse READ reverse WRITE setReverse NOTIFY reverseChanged)
40 Q_PROPERTY(
bool frameSync READ frameSync WRITE setFrameSync NOTIFY frameSyncChanged)
41 Q_PROPERTY(
int frames READ frames WRITE setFrames NOTIFY frameCountChanged)
42 Q_PROPERTY(
int frameCount READ frameCount WRITE setFrameCount NOTIFY frameCountChanged)
45 Q_PROPERTY(
int frameHeight READ frameHeight WRITE setFrameHeight NOTIFY frameHeightChanged)
46 Q_PROPERTY(
int frameWidth READ frameWidth WRITE setFrameWidth NOTIFY frameWidthChanged)
47 Q_PROPERTY(
int frameX READ frameX WRITE setFrameX NOTIFY frameXChanged)
48 Q_PROPERTY(
int frameY READ frameY WRITE setFrameY NOTIFY frameYChanged)
50 Q_PROPERTY(qreal frameRate READ frameRate WRITE setFrameRate NOTIFY frameRateChanged RESET resetFrameRate)
51 Q_PROPERTY(qreal frameRateVariation READ frameRateVariation WRITE setFrameRateVariation NOTIFY frameRateVariationChanged)
52 Q_PROPERTY(
int frameDuration READ frameDuration WRITE setFrameDuration NOTIFY frameDurationChanged RESET resetFrameDuration)
53 Q_PROPERTY(
int frameDurationVariation READ frameDurationVariation WRITE setFrameDurationVariation NOTIFY frameDurationVariationChanged)
54 QML_NAMED_ELEMENT(Sprite)
55 QML_ADDED_IN_VERSION(2, 0)
58 explicit QQuickSprite(QObject *parent =
nullptr);
59 ~QQuickSprite() override;
66 int frameHeight()
const
71 int frameWidth()
const
86 int frameCount()
const
101 void resetFrameRate()
106 qreal frameRate()
const
111 qreal frameRateVariation()
const
113 return m_frameRateVariation;
116 void resetFrameDuration()
118 setFrameDuration(-1);
121 int frameDuration()
const
123 return m_frameDuration;
126 int frameDurationVariation()
const
128 return m_frameDurationVariation;
131 int variedDuration()
const override;
133 bool frameSync()
const
138 void setDevicePixelRatio(qreal dpr)
140 m_devicePixelRatio = dpr;
143 qreal devicePixelRatio()
const
145 return m_devicePixelRatio;
150 void sourceChanged(QUrl arg);
152 void frameHeightChanged(
int arg);
154 void frameWidthChanged(
int arg);
156 void reverseChanged(
bool arg);
158 void frameCountChanged(
int arg);
160 void frameXChanged(
int arg);
162 void frameYChanged(
int arg);
164 void frameRateChanged(qreal arg);
166 void frameRateVariationChanged(qreal arg);
168 void frameDurationChanged(
int arg);
170 void frameDurationVariationChanged(
int arg);
172 void frameSyncChanged(
bool arg);
176 void setSource(QUrl arg)
178 if (m_source != arg) {
180 Q_EMIT sourceChanged(arg);
185 void setFrameHeight(
int arg)
187 if (m_frameHeight != arg) {
189 Q_EMIT frameHeightChanged(arg);
193 void setFrameWidth(
int arg)
195 if (m_frameWidth != arg) {
197 Q_EMIT frameWidthChanged(arg);
201 void setReverse(
bool arg)
203 if (m_reverse != arg) {
205 Q_EMIT reverseChanged(arg);
209 void setFrames(
int arg)
211 qWarning() <<
"Sprite::frames has been renamed Sprite::frameCount";
215 void setFrameCount(
int arg)
217 if (m_frames != arg) {
219 Q_EMIT frameCountChanged(arg);
223 void setFrameX(
int arg)
225 if (m_frameX != arg) {
227 Q_EMIT frameXChanged(arg);
231 void setFrameY(
int arg)
233 if (m_frameY != arg) {
235 Q_EMIT frameYChanged(arg);
239 void setFrameRate(qreal arg)
241 if (m_frameRate != arg) {
243 Q_EMIT frameRateChanged(arg);
247 void setFrameRateVariation(qreal arg)
249 if (m_frameRateVariation != arg) {
250 m_frameRateVariation = arg;
251 Q_EMIT frameRateVariationChanged(arg);
255 void setFrameDuration(
int arg)
257 if (m_frameDuration != arg) {
258 m_frameDuration = arg;
259 Q_EMIT frameDurationChanged(arg);
263 void setFrameDurationVariation(
int arg)
265 if (m_frameDurationVariation != arg) {
266 m_frameDurationVariation = arg;
267 Q_EMIT frameDurationVariationChanged(arg);
271 void setFrameSync(
bool arg)
273 if (m_frameSync != arg) {
275 Q_EMIT frameSyncChanged(arg);
280 void startImageLoading();
283 friend class QQuickImageParticle;
285 friend class QQuickAnimatedSprite;
286 friend class QQuickSpriteEngine;
287 friend class QQuickStochasticEngine;
289 int m_generatedCount;
302 qreal m_frameRateVariation;
304 int m_frameDurationVariation;
306 qreal m_devicePixelRatio;