38 Q_PROPERTY(
bool running READ running WRITE setRunning NOTIFY runningChanged)
39 Q_PROPERTY(
bool interpolate READ interpolate WRITE setInterpolate NOTIFY interpolateChanged)
42 Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
43 Q_PROPERTY(
bool reverse READ reverse WRITE setReverse NOTIFY reverseChanged)
44 Q_PROPERTY(
bool frameSync READ frameSync WRITE setFrameSync NOTIFY frameSyncChanged)
45 Q_PROPERTY(
int frameCount READ frameCount WRITE setFrameCount NOTIFY frameCountChanged)
48 Q_PROPERTY(
int frameHeight READ frameHeight WRITE setFrameHeight NOTIFY frameHeightChanged)
49 Q_PROPERTY(
int frameWidth READ frameWidth WRITE setFrameWidth NOTIFY frameWidthChanged)
50 Q_PROPERTY(
int frameX READ frameX WRITE setFrameX NOTIFY frameXChanged)
51 Q_PROPERTY(
int frameY READ frameY WRITE setFrameY NOTIFY frameYChanged)
53 Q_PROPERTY(qreal frameRate READ frameRate WRITE setFrameRate NOTIFY frameRateChanged RESET resetFrameRate)
54 Q_PROPERTY(
int frameDuration READ frameDuration WRITE setFrameDuration NOTIFY frameDurationChanged RESET resetFrameDuration)
56 Q_PROPERTY(
int loops READ loops WRITE setLoops NOTIFY loopsChanged)
57 Q_PROPERTY(
bool paused READ paused WRITE setPaused NOTIFY pausedChanged)
58 Q_PROPERTY(
int currentFrame READ currentFrame WRITE setCurrentFrame NOTIFY currentFrameChanged)
59 Q_PROPERTY(FinishBehavior finishBehavior READ finishBehavior WRITE setFinishBehavior NOTIFY finishBehaviorChanged REVISION(2, 15))
60 QML_NAMED_ELEMENT(AnimatedSprite)
61 QML_ADDED_IN_VERSION(2, 0)
64 explicit QQuickAnimatedSprite(QQuickItem *parent =
nullptr);
68 Q_ENUM(LoopParameters)
74 Q_ENUM(FinishBehavior)
77 bool interpolate()
const;
80 bool frameSync()
const;
81 int frameCount()
const;
82 int frameHeight()
const;
83 int frameWidth()
const;
86 qreal frameRate()
const;
87 int frameDuration()
const;
90 int currentFrame()
const;
91 FinishBehavior finishBehavior()
const;
92 void setFinishBehavior(FinishBehavior arg);
96 void pausedChanged(
bool arg);
97 void runningChanged(
bool arg);
98 void interpolateChanged(
bool arg);
100 void sourceChanged(
const QUrl &arg);
101 void reverseChanged(
bool arg);
102 void frameSyncChanged(
bool arg);
103 void frameCountChanged(
int arg);
104 void frameHeightChanged(
int arg);
105 void frameWidthChanged(
int arg);
106 void frameXChanged(
int arg);
107 void frameYChanged(
int arg);
108 void frameRateChanged(qreal arg);
109 void frameDurationChanged(
int arg);
110 void loopsChanged(
int arg);
111 void currentFrameChanged(
int arg);
112 Q_REVISION(2, 15)
void finishBehaviorChanged(QQuickAnimatedSprite::FinishBehavior arg);
114 Q_REVISION(2, 12)
void finished();
119 void restart() {stop(); start();}
120 void advance(
int frames=1);
124 void setRunning(
bool arg);
125 void setPaused(
bool arg);
126 void setInterpolate(
bool arg);
127 void setSource(
const QUrl &arg);
128 void setReverse(
bool arg);
129 void setFrameSync(
bool arg);
130 void setFrameCount(
int arg);
131 void setFrameHeight(
int arg);
132 void setFrameWidth(
int arg);
133 void setFrameX(
int arg);
134 void setFrameY(
int arg);
135 void setFrameRate(qreal arg);
136 void setFrameDuration(
int arg);
137 void resetFrameRate();
138 void resetFrameDuration();
139 void setLoops(
int arg);
140 void setCurrentFrame(
int arg);
149 void componentComplete() override;
150 QSGNode *updatePaintNode(QSGNode *, UpdatePaintNodeData *) override;
151 void itemChange(ItemChange,
const ItemChangeData &) override;
155 bool isCurrentFrameChangedConnected();
156 void prepareNextFrame(QSGSpriteNode *node);
158 QSGSpriteNode* initNode();
161 Q_DECLARE_PRIVATE(QQuickAnimatedSprite)