summaryrefslogtreecommitdiffstats
path: root/src/core/aspects/qabstractaspect.h
diff options
context:
space:
mode:
authorKevin Ottens <kevin.ottens@kdab.com>2015-12-02 17:03:29 +0100
committerKevin Ottens <kevin.ottens@kdab.com>2015-12-03 11:44:10 +0000
commit8a49e06fbbeff56993fe74868400b33709b24ac8 (patch)
treea7d3001ace9fcd1fc4a92d12f350a45289dd3fc4 /src/core/aspects/qabstractaspect.h
parentc45b47e99eaf0bcecec606a304b338424d58561b (diff)
Factor out in QAbstractAspect common behavior
There was code involving the node visitor duplicated in several aspect, move that logic back into their common base class: QAbstractAspect. Change-Id: I47320e93691edb43e3cccdd81753423816ad955d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/core/aspects/qabstractaspect.h')
-rw-r--r--src/core/aspects/qabstractaspect.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/core/aspects/qabstractaspect.h b/src/core/aspects/qabstractaspect.h
index 1aec7aa5f..7d121d9ae 100644
--- a/src/core/aspects/qabstractaspect.h
+++ b/src/core/aspects/qabstractaspect.h
@@ -81,6 +81,9 @@ public:
void registerBackendType(const QBackendNodeFunctorPtr &functor);
void registerBackendType(const QMetaObject &, const QBackendNodeFunctorPtr &functor);
+ void sceneNodeAdded(Qt3DCore::QSceneChangePtr &e) Q_DECL_OVERRIDE;
+ void sceneNodeRemoved(Qt3DCore::QSceneChangePtr &e) Q_DECL_OVERRIDE;
+
virtual QVariant executeCommand(const QStringList &args);
protected:
@@ -90,13 +93,16 @@ protected:
QBackendNode *getBackendNode(QNode *frontend) const;
void clearBackendNode(QNode *frontend) const;
+ virtual void setRootEntity(QEntity *rootObject);
+
private:
- virtual void setRootEntity(QEntity *rootObject) = 0;
virtual void onInitialize(const QVariantMap &data) = 0;
virtual void onStartup();
virtual void onShutdown();
virtual void onCleanup() = 0;
+ virtual void visitNode(QNode *node);
+
Q_DECLARE_PRIVATE(QAbstractAspect)
friend class QAspectManager;
};