diff options
6 files changed, 21 insertions, 15 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.cpp index fbfe6c2a2e7..97b0c2bf87e 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.cpp @@ -37,12 +37,13 @@ Quick3DMaterialNodeInstance::~Quick3DMaterialNodeInstance() { } -void Quick3DMaterialNodeInstance::initialize(const ObjectNodeInstance::Pointer &objectNodeInstance, - InstanceContainer::NodeFlags flags) +void Quick3DMaterialNodeInstance::invokeDummyViewCreate() const { - m_dummyRootViewCreateFunction = "createViewForMaterial"; - - Quick3DRenderableNodeInstance::initialize(objectNodeInstance, flags); + QMetaObject::invokeMethod(m_dummyRootView, "createViewForMaterial", + Q_ARG(QVariant, QVariant::fromValue(object())), + Q_ARG(QVariant, ""), + Q_ARG(QVariant, ""), + Q_ARG(QVariant, "")); } Quick3DMaterialNodeInstance::Pointer Quick3DMaterialNodeInstance::create(QObject *object) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.h b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.h index b55cbb3f309..d035761a8e9 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.h +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dmaterialnodeinstance.h @@ -41,11 +41,10 @@ public: ~Quick3DMaterialNodeInstance() override; static Pointer create(QObject *objectToBeWrapped); - void initialize(const ObjectNodeInstance::Pointer &objectNodeInstance, - InstanceContainer::NodeFlags flags) override; protected: explicit Quick3DMaterialNodeInstance(QObject *node); + void invokeDummyViewCreate() const override; }; } // namespace Internal diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.cpp index eec52e99927..5dde70d257e 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.cpp @@ -46,6 +46,12 @@ Quick3DNodeInstance::Quick3DNodeInstance(QObject *node) { } +void Quick3DNodeInstance::invokeDummyViewCreate() const +{ + QMetaObject::invokeMethod(m_dummyRootView, "createViewForNode", + Q_ARG(QVariant, QVariant::fromValue(object()))); +} + Quick3DNodeInstance::~Quick3DNodeInstance() { } @@ -79,8 +85,6 @@ void Quick3DNodeInstance::initialize(const ObjectNodeInstance::Pointer &objectNo } } - m_dummyRootViewCreateFunction = "createViewForNode"; - Quick3DRenderableNodeInstance::initialize(objectNodeInstance, flags); #else Q_UNUSED(objectNodeInstance) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.h b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.h index ea44f277fb8..e2b1ebb7e93 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.h +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3dnodeinstance.h @@ -47,6 +47,7 @@ public: protected: explicit Quick3DNodeInstance(QObject *node); + void invokeDummyViewCreate() const override; private: QQuick3DNode *quick3DNode() const; diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.cpp index cae64ad04c1..94506929eee 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.cpp @@ -50,7 +50,7 @@ Quick3DRenderableNodeInstance::~Quick3DRenderableNodeInstance() } void Quick3DRenderableNodeInstance::initialize(const ObjectNodeInstance::Pointer &objectNodeInstance, - InstanceContainer::NodeFlags flags) + InstanceContainer::NodeFlags flags) { #ifdef QUICK3D_MODULE #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) @@ -67,8 +67,7 @@ void Quick3DRenderableNodeInstance::initialize(const ObjectNodeInstance::Pointer component.loadUrl(QUrl("qrc:/qtquickplugin/mockfiles/qt6/ModelNode3DImageView.qml")); m_dummyRootView = qobject_cast<QQuickItem *>(component.create()); - QMetaObject::invokeMethod(m_dummyRootView, m_dummyRootViewCreateFunction, - Q_ARG(QVariant, QVariant::fromValue(object()))); + invokeDummyViewCreate(); nodeInstanceServer()->setRootItem(m_dummyRootView); } @@ -215,6 +214,10 @@ Qt5NodeInstanceServer *Quick3DRenderableNodeInstance::qt5NodeInstanceServer() co return qobject_cast<Qt5NodeInstanceServer *>(nodeInstanceServer()); } +void Quick3DRenderableNodeInstance::invokeDummyViewCreate() const +{ +} + } // namespace Internal } // namespace QmlDesigner diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.h b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.h index 208144cb52f..f24b149528a 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.h +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quick3drenderablenodeinstance.h @@ -57,10 +57,8 @@ public: protected: explicit Quick3DRenderableNodeInstance(QObject *node); Qt5NodeInstanceServer *qt5NodeInstanceServer() const; + virtual void invokeDummyViewCreate() const; - QByteArray m_dummyRootViewCreateFunction; - -private: QQuickItem *m_dummyRootView = nullptr; }; |