diff options
Diffstat (limited to 'share/qtcreator/qml')
4 files changed, 104 insertions, 0 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri index a1f143a495..300f80d2b3 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri @@ -22,6 +22,7 @@ HEADERS += $$PWD/servernodeinstance.h HEADERS += $$PWD/anchorchangesnodeinstance.h HEADERS += $$PWD/positionernodeinstance.h HEADERS += $$PWD/layoutnodeinstance.h +HEADERS += $$PWD/qt3dpresentationnodeinstance.h SOURCES += $$PWD/qt5nodeinstanceserver.cpp SOURCES += $$PWD/qt5testnodeinstanceserver.cpp @@ -45,3 +46,4 @@ SOURCES += $$PWD/servernodeinstance.cpp SOURCES += $$PWD/anchorchangesnodeinstance.cpp SOURCES += $$PWD/positionernodeinstance.cpp SOURCES += $$PWD/layoutnodeinstance.cpp +SOURCES += $$PWD/qt3dpresentationnodeinstance.cpp diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt3dpresentationnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt3dpresentationnodeinstance.cpp new file mode 100644 index 0000000000..7568c7f129 --- /dev/null +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt3dpresentationnodeinstance.cpp @@ -0,0 +1,51 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +#include "qt3presentationdnodeinstance.h" +#include <QQuickItem> + +namespace QmlDesigner { +namespace Internal { + +Qt3DPresentationNodeInstance::Qt3DPresentationNodeInstance(QObject *object) + : ObjectNodeInstance(object) +{ +} + +Qt3DPresentationNodeInstance::Pointer Qt3DPresentationNodeInstance::create(QObject *object) +{ + Pointer instance(new Qt3DPresentationNodeInstance(object)); + instance->populateResetHashes(); + + return instance; +} + +PropertyNameList Qt3DPresentationNodeInstance::ignoredProperties() const +{ + static const PropertyNameList properties({"source"}); + return properties; +} +} // namespace Internal +} // namespace QmlDesigner diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt3presentationdnodeinstance.h b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt3presentationdnodeinstance.h new file mode 100644 index 0000000000..f7ace39b39 --- /dev/null +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt3presentationdnodeinstance.h @@ -0,0 +1,48 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +#pragma once + +#include "objectnodeinstance.h" + +namespace QmlDesigner { +namespace Internal { + +class Qt3DPresentationNodeInstance : public ObjectNodeInstance +{ +public: + typedef QSharedPointer<Qt3DPresentationNodeInstance> Pointer; + typedef QWeakPointer<Qt3DPresentationNodeInstance> WeakPointer; + + static Pointer create(QObject *objectToBeWrapped); + + PropertyNameList ignoredProperties() const override; + +protected: + Qt3DPresentationNodeInstance(QObject *item); +}; + +} // namespace Internal +} // namespace QmlDesigner diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/servernodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/servernodeinstance.cpp index 2f090517dc..11cfba7161 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/servernodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/servernodeinstance.cpp @@ -36,6 +36,7 @@ #include "positionernodeinstance.h" #include "layoutnodeinstance.h" #include "debugoutputcommand.h" +#include "qt3presentationdnodeinstance.h" #include "quickitemnodeinstance.h" @@ -161,6 +162,8 @@ Internal::ObjectNodeInstance::Pointer ServerNodeInstance::createInstance(QObject if (objectToBeWrapped == 0) instance = Internal::DummyNodeInstance::create(); + else if (isSubclassOf(objectToBeWrapped, "Q3DSPresentationItem")) + instance = Internal::Qt3DPresentationNodeInstance::create(objectToBeWrapped); else if (isSubclassOf(objectToBeWrapped, "QQuickBasePositioner")) instance = Internal::PositionerNodeInstance::create(objectToBeWrapped); else if (isSubclassOf(objectToBeWrapped, "QQuickLayout")) |