summaryrefslogtreecommitdiff
path: root/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
diff options
context:
space:
mode:
authorMahmoud Badri <mahmoud.badri@qt.io>2019-10-23 15:40:55 +0300
committerMahmoud Badri <mahmoud.badri@qt.io>2019-10-24 09:07:38 +0000
commit3c78d4d74d69ab44e49d6c3d854abf12ab2b2d3a (patch)
treec71702ade506814c7d681f16f7ee87df52647ccc /share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
parent946943203566167a2f8d3e785d6250ed8a8a87cd (diff)
downloadqt-creator-3c78d4d74d69ab44e49d6c3d854abf12ab2b2d3a.tar.gz
Enable object selection in the 3D edit view
Clicking an object in the 3D object selection view, selects it in the creator side. Multiselection (i.e. Ctrl+click) is not implemented yet. Also selected object is not highlighted in the view yet. Task-number: QDS-1124 Change-Id: I0b10162539ecedc40ed117896e385975c52b04a9 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp')
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
index b8aabfffc7..ff4bb7e84d 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
@@ -75,7 +75,7 @@ static QVariant objectToVariant(QObject *object)
return QVariant::fromValue(object);
}
-static QObject *createEditView3D(QQmlEngine *engine)
+QObject *Qt5InformationNodeInstanceServer::createEditView3D(QQmlEngine *engine)
{
QmlDesigner::Internal::CameraControlHelper *helper = new QmlDesigner::Internal::CameraControlHelper();
engine->rootContext()->setContextProperty("designStudioNativeCameraControlHelper", helper);
@@ -89,6 +89,8 @@ static QObject *createEditView3D(QQmlEngine *engine)
return nullptr;
}
+ QObject::connect(window, SIGNAL(objectClicked(QVariant)), this, SLOT(objectClicked(QVariant)));
+
//For macOS we have to use the 4.1 core profile
QSurfaceFormat surfaceFormat = window->requestedFormat();
surfaceFormat.setVersion(4, 1);
@@ -99,6 +101,11 @@ static QObject *createEditView3D(QQmlEngine *engine)
return window;
}
+void Qt5InformationNodeInstanceServer::objectClicked(const QVariant &object) {
+ QObject *item = qobject_cast<QObject *>(object.value<QObject *>());
+ selectInstance(instanceForObject(item));
+}
+
Qt5InformationNodeInstanceServer::Qt5InformationNodeInstanceServer(NodeInstanceClientInterface *nodeInstanceClient) :
Qt5NodeInstanceServer(nodeInstanceClient)
{