diff options
author | Konstantin Ritt <ritt.ks@gmail.com> | 2019-04-09 16:50:29 +0300 |
---|---|---|
committer | Konstantin Ritt <ritt.ks@gmail.com> | 2019-04-09 16:51:48 +0000 |
commit | 863cbcf01813192a07bc8656b5b2a7bb7beb5b41 (patch) | |
tree | 6553370283252389772b7f3a8dc4f972e21e5ee9 | |
parent | ba71d45911fab14763cad4c9aca4798f17a4fbff (diff) |
LottieAnimation: better use of the QQuickItem's componentComplete()
and clean-up the related code a little bit
Change-Id: Icc6e7fe48184609d69273ce81f0826f3f0250d01
Reviewed-by: Rebecca Worledge <rebecca.worledge@theqtcompany.com>
-rw-r--r-- | src/imports/lottieanimation.cpp | 5 | ||||
-rw-r--r-- | src/imports/lottieanimation.h | 5 |
2 files changed, 4 insertions, 6 deletions
diff --git a/src/imports/lottieanimation.cpp b/src/imports/lottieanimation.cpp index 58eb500..3cf0c1c 100644 --- a/src/imports/lottieanimation.cpp +++ b/src/imports/lottieanimation.cpp @@ -175,9 +175,8 @@ LottieAnimation::~LottieAnimation() void LottieAnimation::componentComplete() { - QQuickItem::componentComplete(); + QQuickPaintedItem::componentComplete(); - m_initialized = true; if (m_source.length()) loadSource(m_source); } @@ -282,7 +281,7 @@ void LottieAnimation::setSource(const QString &source) m_source = source; emit sourceChanged(); - if (m_initialized) + if (isComponentComplete()) loadSource(source); } } diff --git a/src/imports/lottieanimation.h b/src/imports/lottieanimation.h index 461b358..13bf885 100644 --- a/src/imports/lottieanimation.h +++ b/src/imports/lottieanimation.h @@ -74,8 +74,6 @@ public: explicit LottieAnimation(QQuickItem *parent = nullptr); ~LottieAnimation() override; - void componentComplete() override; - void paint(QPainter *painter) override; Status status() const; @@ -127,6 +125,8 @@ protected slots: void renderNextFrame(); protected: + void componentComplete() override; + void setStatus(Status status); void setStartFrame(int startFrame); @@ -156,7 +156,6 @@ protected: void reset(); private: - bool m_initialized = false; Quality m_quality = MediumQuality; bool m_autoPlay = true; int m_loops = 1; |