summaryrefslogtreecommitdiffstats
path: root/src/quick3d/quick3drender/scene2d/qscene2d_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick3d/quick3drender/scene2d/qscene2d_p.h')
-rw-r--r--src/quick3d/quick3drender/scene2d/qscene2d_p.h31
1 files changed, 16 insertions, 15 deletions
diff --git a/src/quick3d/quick3drender/scene2d/qscene2d_p.h b/src/quick3d/quick3drender/scene2d/qscene2d_p.h
index 165a54b72..4fa65fb1b 100644
--- a/src/quick3d/quick3drender/scene2d/qscene2d_p.h
+++ b/src/quick3d/quick3drender/scene2d/qscene2d_p.h
@@ -48,12 +48,6 @@
// We mean it.
//
-#include <private/qobject_p.h>
-#include <private/qframegraphnode_p.h>
-
-#include <Qt3DQuickRender/qscene2d.h>
-#include <Qt3DRender/QAbstractTexture>
-
#include <QtQml/QQmlEngine>
#include <QtQml/QQmlComponent>
#include <QtQuick/QQuickItem>
@@ -64,6 +58,12 @@
#include <QtCore/QWaitCondition>
#include <QtCore/QThread>
+#include <Qt3DQuickRender/qscene2d.h>
+#include <Qt3DRender/qabstracttexture.h>
+
+#include <private/qobject_p.h>
+#include <private/qnode_p.h>
+
QT_BEGIN_NAMESPACE
namespace Qt3DRender {
@@ -141,7 +141,7 @@ private:
typedef QSharedPointer<Scene2DSharedObject> Scene2DSharedObjectPtr;
-class Q_AUTOTEST_EXPORT QScene2DPrivate : public QFrameGraphNodePrivate
+class Q_AUTOTEST_EXPORT QScene2DPrivate : public Qt3DCore::QNodePrivate
{
public:
Q_DECLARE_PUBLIC(QScene2D)
@@ -149,21 +149,19 @@ public:
QScene2DPrivate();
~QScene2DPrivate();
- static Scene2DSharedObject *getSharedObject(QScene2D *rqtt);
-
Scene2DManager *m_renderManager;
QMetaObject::Connection m_textureDestroyedConnection;
+ Qt3DRender::QRenderTargetOutput *m_output;
};
struct QScene2DData
{
bool renderOnce;
- Qt3DCore::QNodeId textureId;
Scene2DSharedObjectPtr sharedObject;
+ Qt3DCore::QNodeId output;
};
-
-class Scene2DManager : public QWindow
+class Scene2DManager : public QObject
{
Q_OBJECT
public:
@@ -173,11 +171,11 @@ public:
QQmlEngine *m_qmlEngine;
QQmlComponent *m_qmlComponent;
QQuickItem *m_rootItem;
+ QQuickItem *m_item;
QScene2DPrivate *m_priv;
QSharedPointer<Scene2DSharedObject> m_sharedObject;
- QAbstractTexture *m_texture;
QUrl m_source;
Qt3DCore::QNodeId m_id;
@@ -186,6 +184,7 @@ public:
bool m_renderSyncRequested;
bool m_renderOnce;
bool m_backendInitialized;
+ bool m_noSourceMode;
void requestRender();
void requestRenderSync();
@@ -195,10 +194,11 @@ public:
void run();
void updateSizes();
- void setTexture(QAbstractTexture *texture);
void setSource(const QUrl &url);
+ void setItem(QQuickItem *item);
bool event(QEvent *e) Q_DECL_OVERRIDE;
+ bool forwardEvent(QEvent *event);
Q_SIGNAL void onLoadedChanged();
@@ -206,9 +206,10 @@ public:
};
} // namespace Quick
-
} // namespace Qt3DRender
QT_END_NAMESPACE
+Q_DECLARE_METATYPE(Qt3DRender::Quick::Scene2DSharedObjectPtr)
+
#endif // QT3DRENDER_QUICK3DRENDER_QSCENE2D_P_H