From 48ff3f7a2938a271d2f91c0dc2aa5edb8765e13e Mon Sep 17 00:00:00 2001 From: Thomas Hartmann <Thomas.Hartmann@nokia.com> Date: Thu, 23 Sep 2010 15:57:28 +0200 Subject: [PATCH] QmlDesigner.NodeInstances: Fix id getter Add getter for id in node instances. --- src/plugins/qmldesigner/designercore/include/nodeinstance.h | 2 ++ .../qmldesigner/designercore/instances/nodeinstance.cpp | 5 +++++ .../qmldesigner/designercore/instances/nodeinstanceview.cpp | 4 ++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/include/nodeinstance.h b/src/plugins/qmldesigner/designercore/include/nodeinstance.h index 7ccf54cfb8b..df3d38494f2 100644 --- a/src/plugins/qmldesigner/designercore/include/nodeinstance.h +++ b/src/plugins/qmldesigner/designercore/include/nodeinstance.h @@ -141,6 +141,8 @@ public: static void registerDeclarativeTypes(); + QString id() const; + #ifdef QTCREATOR_TEST QObject* testHandle() const; Internal::ObjectNodeInstance* internalInstance() const; diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp index 7d88a726010..88c1306f12f 100644 --- a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp +++ b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp @@ -644,6 +644,11 @@ void NodeInstance::registerDeclarativeTypes() // qmlRegisterType<QmlDesigner::Internal::QmlPropertyChangesObject>(); } +QString NodeInstance::id() const +{ + return m_nodeInstance->id(); +} + #ifdef QTCREATOR_TEST QObject* NodeInstance::testHandle() const { diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp index c7dd9275144..d83cd9711ae 100644 --- a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp +++ b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp @@ -699,8 +699,8 @@ void NodeInstanceView::removeIdFromContext(QObject *object) { if (hasInstanceForObject(object)) { NodeInstance instance = instanceForObject(object); - if (instance.internalInstance()) { - QString id = instance.internalInstance()->id(); + if (instance.isValid()) { + QString id = instance.id(); if (!id.isEmpty()) engine()->rootContext()->setContextProperty(id, 0); } -- GitLab