diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2014-09-17 16:38:50 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2014-09-30 10:21:54 +0200 |
commit | 143b5de7bf788c0e07e460c3c6150861a7eaaf7d (patch) | |
tree | b4c87167ae7708b2b65de8e398c919dd75629f6f /src/render/frontend/qabstractsceneloader.h | |
parent | 7acc347bee7bccca53269ae85417e68102dc79a1 (diff) |
Refactored QAbstractSceneLoader and QSceneLoader
QNode, also to make deep clones and shallow clones.
Change-Id: I38362485e3f7870da3d49aba95603fe4d61876fe
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/frontend/qabstractsceneloader.h')
-rw-r--r-- | src/render/frontend/qabstractsceneloader.h | 29 |
1 files changed, 12 insertions, 17 deletions
diff --git a/src/render/frontend/qabstractsceneloader.h b/src/render/frontend/qabstractsceneloader.h index a7d6d1f55..4dd06a6f6 100644 --- a/src/render/frontend/qabstractsceneloader.h +++ b/src/render/frontend/qabstractsceneloader.h @@ -56,38 +56,33 @@ class QAbstractSceneLoaderPrivate; class QT3DRENDERERSHARED_EXPORT QAbstractSceneLoader : public QComponent { Q_OBJECT + Q_ENUMS(Status) Q_PROPERTY(QString source READ source WRITE setSource NOTIFY sourceChanged) - Q_PROPERTY(QString sceneId READ sceneId WRITE setSceneId NOTIFY sceneIdChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) public: explicit QAbstractSceneLoader(QNode *parent = 0); + enum Status { + Loading = 0, + Loaded, + Error + }; + void copy(const QNode *ref) Q_DECL_OVERRIDE; QString source() const; void setSource(QString arg); - QString sceneId() const; - void setSceneId(QString arg); - - virtual QNode *node(QString id); - virtual QNode *scene(QString id); + Status status() const; + void setStatus(Status status); - void clear(); + virtual void sceneChangeEvent(const QSceneChangePtr &change) = 0; - /** - * @brief findInTree - given a Node* object rooting a tree, find - * the top-most Scene entity within. - * @param root - the found Scene or NULL if no Scene was found - * @return - */ - static QAbstractSceneLoader* findInTree(QNode* root); Q_SIGNALS: - void sourceChanged(QString arg); - void sceneIdChanged(QString arg); + void statusChanged(); protected: - void rebuild(); Q_DECLARE_PRIVATE(QAbstractSceneLoader) QAbstractSceneLoader(QAbstractSceneLoaderPrivate &dd, QNode *parent = 0); }; |