aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickspriteengine_p.h
diff options
context:
space:
mode:
authorAlan Alpert <alan.alpert@nokia.com>2012-01-25 19:18:25 +1000
committerQt by Nokia <qt-info@nokia.com>2012-02-09 07:32:07 +0100
commit298b86b95bd42d12e15e8d8a137cd9bee21d6094 (patch)
tree6ac8ee1d463f419966d64756452849d36913a885 /src/quick/items/qquickspriteengine_p.h
parent3233e8052d2d25fd36567f67f9cd314cf0eaef92 (diff)
Use QDeclarativePixmap in the Particle System
This allows for source URLs to come from network sources. Change-Id: I416edca010e77e507598eaf4eead4291f044f379 Reviewed-by: Martin Jones <martin.jones@nokia.com>
Diffstat (limited to 'src/quick/items/qquickspriteengine_p.h')
-rw-r--r--src/quick/items/qquickspriteengine_p.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/quick/items/qquickspriteengine_p.h b/src/quick/items/qquickspriteengine_p.h
index 34de7282ec..500d526da5 100644
--- a/src/quick/items/qquickspriteengine_p.h
+++ b/src/quick/items/qquickspriteengine_p.h
@@ -50,6 +50,7 @@
#include <QDeclarativeListProperty>
#include <QImage>
#include <QPair>
+#include <QtQuick/private/qdeclarativepixmapcache_p.h>
QT_BEGIN_HEADER
@@ -61,7 +62,7 @@ class Q_AUTOTEST_EXPORT QQuickStochasticState : public QObject //Currently for i
Q_OBJECT
Q_PROPERTY(int duration READ duration WRITE setDuration NOTIFY durationChanged)
Q_PROPERTY(int durationVariation READ durationVariation WRITE setDurationVariation NOTIFY durationVariationChanged)
- //Note than manually advanced sprites need to query this variable and implement own behaviour for it
+ //Note that manually advanced sprites need to query this variable and implement own behaviour for it
Q_PROPERTY(bool randomStart READ randomStart WRITE setRandomStart NOTIFY randomStartChanged)
Q_PROPERTY(QVariantMap to READ to WRITE setTo NOTIFY toChanged)
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
@@ -268,21 +269,30 @@ public:
int spriteState(int sprite=0);
int spriteStart(int sprite=0);
int spriteFrames(int sprite=0);
- int spriteDuration(int sprite=0);//Full duration, not per frame
+ int spriteDuration(int sprite=0);
int spriteX(int sprite=0);
int spriteY(int sprite=0);
int spriteWidth(int sprite=0);
int spriteHeight(int sprite=0);
int spriteCount();//Like state count
int maxFrames();
- QString realName(int sprite=0);//Gives the parent sprite name for pseudosprites
- QImage assembledImage();
virtual void restart(int index=0);
virtual void advance(int index=0);
+
+ //Similar API to QDeclarativePixmap for async loading convenience
+ bool isNull() { return status() == QDeclarativePixmap::Null; }
+ bool isReady() { return status() == QDeclarativePixmap::Ready; }
+ bool isLoading() { return status() == QDeclarativePixmap::Loading; }
+ bool isError() { return status() == QDeclarativePixmap::Error; }
+ QDeclarativePixmap::Status status();//Composed status of all Sprites
+ void startAssemblingImage();
+ QImage assembledImage();
+
private:
int pseudospriteProgress(int,int,int*rd=0);
QList<QQuickSprite*> m_sprites;
+ bool m_startedImageAssembly;
};
//Common use is to have your own list property which is transparently an engine