From cba909e43ac1e3e473eb74943fe3825bf2f999e5 Mon Sep 17 00:00:00 2001
From: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Date: Thu, 16 Sep 2010 09:24:26 +0200
Subject: [PATCH] Expose Internal::ObjectNodeInstance* for auto tests

This allows more precise unit tests on internals
---
 src/plugins/qmldesigner/designercore/include/nodeinstance.h  | 1 +
 .../qmldesigner/designercore/instances/nodeinstance.cpp      | 5 +++++
 .../designercore/instances/objectnodeinstance.cpp            | 5 +++++
 .../qmldesigner/designercore/instances/objectnodeinstance.h  | 2 ++
 4 files changed, 13 insertions(+)

diff --git a/src/plugins/qmldesigner/designercore/include/nodeinstance.h b/src/plugins/qmldesigner/designercore/include/nodeinstance.h
index d0a6a9071b9..c2fce99b77b 100644
--- a/src/plugins/qmldesigner/designercore/include/nodeinstance.h
+++ b/src/plugins/qmldesigner/designercore/include/nodeinstance.h
@@ -140,6 +140,7 @@ public:
 
 #ifdef QTCREATOR_TEST
     QObject* testHandle() const;
+    Internal::ObjectNodeInstance* internalInstance() const;
 #endif
 private: // functions
     NodeInstance(const QSharedPointer<Internal::ObjectNodeInstance> &abstractInstance);
diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
index d65fb2feac7..d331d9cf806 100644
--- a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
@@ -645,6 +645,11 @@ QObject* NodeInstance::testHandle() const
 {
     return internalObject();
 }
+Internal::ObjectNodeInstance* NodeInstance::internalInstance() const
+{
+    return m_nodeInstance.data();
+}
+
 #endif
 
 } // namespace QmlDesigner
diff --git a/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.cpp b/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.cpp
index dd6462f8c55..e9dae47e9d6 100644
--- a/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.cpp
@@ -696,6 +696,11 @@ QDeclarativeContext *ObjectNodeInstance::context() const
     return 0;
 }
 
+QDeclarativeEngine *ObjectNodeInstance::engine() const
+{
+    return nodeInstanceView()->engine();
+}
+
 void ObjectNodeInstance::paintUpdate()
 {
 }
diff --git a/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.h b/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.h
index aaa0d6a9ceb..48c13e1b226 100644
--- a/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.h
+++ b/src/plugins/qmldesigner/designercore/instances/objectnodeinstance.h
@@ -44,6 +44,7 @@
 QT_BEGIN_NAMESPACE
 class QGraphicsItem;
 class QDeclarativeContext;
+class QDeclarativeEngine;
 class QDeclarativeProperty;
 class QDeclarativeContext;
 class QDeclarativeBinding;
@@ -166,6 +167,7 @@ public:
     bool hasBindingForProperty(const QString &name) const;
 
     QDeclarativeContext *context() const;
+    QDeclarativeEngine *engine() const;
 
     virtual bool updateStateVariant(const NodeInstance &target, const QString &propertyName, const QVariant &value);
     virtual bool updateStateBinding(const NodeInstance &target, const QString &propertyName, const QString &expression);
-- 
GitLab