summaryrefslogtreecommitdiffstats
path: root/src/core/aspects
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2020-02-26 19:42:08 +0000
committerMike Krus <mike.krus@kdab.com>2020-04-07 07:55:41 +0000
commita1d2f784dc508eeb1fdbd613f4c9e077633501da (patch)
tree8ffc57834d1902ff8510b702cd57701b5e099cf3 /src/core/aspects
parent4af0d097e76f01957b03dfa76d335d99450e438d (diff)
Track dirty state on front end nodes
Nothing clears the state yet, will be up to the core aspect to do that. Change-Id: Ia3a5297a4b837b1d67545bd29ddce56666c520f3 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/core/aspects')
-rw-r--r--src/core/aspects/qaspectmanager.cpp9
-rw-r--r--src/core/aspects/qaspectmanager_p.h2
2 files changed, 11 insertions, 0 deletions
diff --git a/src/core/aspects/qaspectmanager.cpp b/src/core/aspects/qaspectmanager.cpp
index a327ddaf8..266beb8ff 100644
--- a/src/core/aspects/qaspectmanager.cpp
+++ b/src/core/aspects/qaspectmanager.cpp
@@ -440,6 +440,15 @@ QVector<QNode *> QAspectManager::lookupNodes(const QVector<QNodeId> &ids) const
return d->m_scene ? d->m_scene->lookupNodes(ids) : QVector<QNode *>{};
}
+QScene *QAspectManager::scene() const
+{
+ if (!m_root)
+ return nullptr;
+
+ QNodePrivate *d = QNodePrivate::get(m_root);
+ return d->m_scene;
+}
+
void QAspectManager::dumpJobsOnNextFrame()
{
m_dumpJobs = true;
diff --git a/src/core/aspects/qaspectmanager_p.h b/src/core/aspects/qaspectmanager_p.h
index 9633149f6..b9982ab96 100644
--- a/src/core/aspects/qaspectmanager_p.h
+++ b/src/core/aspects/qaspectmanager_p.h
@@ -75,6 +75,7 @@ class QAbstractAspect;
class QAbstractAspectJobManager;
class QAspectEngine;
class QServiceLocator;
+class QScene;
class NodePostConstructorInit;
struct NodeTreeChange;
#if QT_CONFIG(animation)
@@ -118,6 +119,7 @@ public:
QNode *lookupNode(QNodeId id) const;
QVector<QNode *> lookupNodes(const QVector<QNodeId> &ids) const;
+ QScene *scene() const;
int jobsInLastFrame() const { return m_jobsInLastFrame; }
void dumpJobsOnNextFrame();