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