diff --git a/share/qtcreator/qml/qmlpuppet/instances/instances.pri b/share/qtcreator/qml/qmlpuppet/instances/instances.pri
new file mode 100644
index 0000000000000000000000000000000000000000..daf1d3ed51bf2fcc82f4030ae47844f312a46abd
--- /dev/null
+++ b/share/qtcreator/qml/qmlpuppet/instances/instances.pri
@@ -0,0 +1,5 @@
+INCLUDEPATH += $$PWD/
+
+HEADERS += $$PWD/nodeinstanceclientproxy.h
+
+SOURCES +=  $$PWD/nodeinstanceclientproxy.cpp
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceclientproxy.cpp b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp
similarity index 100%
rename from share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceclientproxy.cpp
rename to share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceclientproxy.h b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h
similarity index 100%
rename from share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceclientproxy.h
rename to share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri
index 8dc3d80a4b67f77f8895267915841f3b4dc07705..5cb63be73931f12199a15a14bb54b57cf7be6f42 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/instances.pri
@@ -11,7 +11,6 @@ HEADERS += $$PWD/dummycontextobject.h
 HEADERS += $$PWD/childrenchangeeventfilter.h
 HEADERS += $$PWD/componentnodeinstance.h
 HEADERS += $$PWD/dummynodeinstance.h
-HEADERS += $$PWD/nodeinstanceclientproxy.h
 HEADERS += $$PWD/nodeinstancemetaobject.h
 HEADERS += $$PWD/nodeinstanceserver.h
 HEADERS += $$PWD/nodeinstancesignalspy.h
@@ -33,7 +32,6 @@ SOURCES +=  $$PWD/dummycontextobject.cpp
 SOURCES +=  $$PWD/childrenchangeeventfilter.cpp
 SOURCES +=  $$PWD/componentnodeinstance.cpp
 SOURCES +=  $$PWD/dummynodeinstance.cpp
-SOURCES +=  $$PWD/nodeinstanceclientproxy.cpp
 SOURCES +=  $$PWD/nodeinstancemetaobject.cpp
 SOURCES +=  $$PWD/nodeinstanceserver.cpp
 SOURCES +=  $$PWD/nodeinstancesignalspy.cpp
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/qml2puppet.pro b/share/qtcreator/qml/qmlpuppet/qml2puppet/qml2puppet.pro
index 4d0ebb4c0ce22f546541cc80dabc63dc6b7e2169..dbdeb2b9c7d5368182a4c5f449a3a3ba4a3737e7 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/qml2puppet.pro
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/qml2puppet.pro
@@ -15,6 +15,7 @@ include(../../../../../qtcreator.pri)
 DESTDIR = $$[QT_INSTALL_BINS]
 include(../../../../../src/rpath.pri)
 
+include (../instances/instances.pri)
 include (instances/instances.pri)
 include (../commands/commands.pri)
 include (../container/container.pri)
diff --git a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/instances.pri b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/instances.pri
index 19dd955dadca8ea41c0961b9cbec12edd2676d59..ff2d2b91b0d821fe469a754d2cff8a06a0c957bb 100644
--- a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/instances.pri
+++ b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/instances.pri
@@ -13,7 +13,6 @@ HEADERS += $$PWD/dummycontextobject.h
 HEADERS += $$PWD/childrenchangeeventfilter.h
 HEADERS += $$PWD/componentnodeinstance.h
 HEADERS += $$PWD/dummynodeinstance.h
-HEADERS += $$PWD/nodeinstanceclientproxy.h
 HEADERS += $$PWD/nodeinstancemetaobject.h
 HEADERS += $$PWD/nodeinstanceserver.h
 HEADERS += $$PWD/nodeinstancesignalspy.h
@@ -37,7 +36,6 @@ SOURCES +=  $$PWD/dummycontextobject.cpp
 SOURCES +=  $$PWD/childrenchangeeventfilter.cpp
 SOURCES +=  $$PWD/componentnodeinstance.cpp
 SOURCES +=  $$PWD/dummynodeinstance.cpp
-SOURCES +=  $$PWD/nodeinstanceclientproxy.cpp
 SOURCES +=  $$PWD/nodeinstancemetaobject.cpp
 SOURCES +=  $$PWD/nodeinstanceserver.cpp
 SOURCES +=  $$PWD/nodeinstancesignalspy.cpp
diff --git a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/nodeinstanceclientproxy.h b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/nodeinstanceclientproxy.h
deleted file mode 100644
index 54b56d026772fc84231005601aec1c5d6b8ab84c..0000000000000000000000000000000000000000
--- a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/nodeinstanceclientproxy.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/**************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact: http://www.qt-project.org/
-**
-**
-** GNU Lesser General Public License Usage
-**
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this file.
-** Please review the following information to ensure the GNU Lesser General
-** Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** Other Usage
-**
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**************************************************************************/
-
-#ifndef NODEINSTANCECLIENTPROXY_H
-#define NODEINSTANCECLIENTPROXY_H
-
-#include "nodeinstanceclientinterface.h"
-
-#include <QObject>
-#include <QHash>
-#include <QWeakPointer>
-
-QT_BEGIN_NAMESPACE
-class QLocalSocket;
-QT_END_NAMESPACE
-
-namespace QmlDesigner {
-
-class NodeInstanceServerInterface;
-class CreateSceneCommand;
-class CreateInstancesCommand;
-class ClearSceneCommand;
-class ReparentInstancesCommand;
-class ChangeFileUrlCommand;
-class ChangeValuesCommand;
-class ChangeAuxiliaryCommand;
-class ChangeBindingsCommand;
-class ChangeIdsCommand;
-class RemoveInstancesCommand;
-class RemovePropertiesCommand;
-class CompleteComponentCommand;
-class ChangeStateCommand;
-class ChangeNodeSourceCommand;
-
-
-class NodeInstanceClientProxy : public QObject, public NodeInstanceClientInterface
-{
-    Q_OBJECT
-
-public:
-    NodeInstanceClientProxy(QObject *parent = 0);
-
-    void informationChanged(const InformationChangedCommand &command);
-    void valuesChanged(const ValuesChangedCommand &command);
-    void pixmapChanged(const PixmapChangedCommand &command);
-    void childrenChanged(const ChildrenChangedCommand &command);
-    void statePreviewImagesChanged(const StatePreviewImageChangedCommand &command);
-    void componentCompleted(const ComponentCompletedCommand &command);    
-    void token(const TokenCommand &command);
-
-    void flush();
-    void synchronizeWithClientProcess();
-    qint64 bytesToWrite() const;
-
-protected:
-    void initializeSocket();
-    void writeCommand(const QVariant &command);
-    void dispatchCommand(const QVariant &command);
-    NodeInstanceServerInterface *nodeInstanceServer() const;
-    void setNodeInstanceServer(NodeInstanceServerInterface *nodeInstanceServer);
-
-    void createInstances(const CreateInstancesCommand &command);
-    void changeFileUrl(const ChangeFileUrlCommand &command);
-    void createScene(const CreateSceneCommand &command);
-    void clearScene(const ClearSceneCommand &command);
-    void removeInstances(const RemoveInstancesCommand &command);
-    void removeProperties(const RemovePropertiesCommand &command);
-    void changePropertyBindings(const ChangeBindingsCommand &command);
-    void changePropertyValues(const ChangeValuesCommand &command);
-    void changeAuxiliaryValues(const ChangeAuxiliaryCommand &command);
-    void reparentInstances(const ReparentInstancesCommand &command);
-    void changeIds(const ChangeIdsCommand &command);
-    void changeState(const ChangeStateCommand &command);
-    void completeComponent(const CompleteComponentCommand &command);
-    void changeNodeSource(const ChangeNodeSourceCommand &command);
-    void removeSharedMemory(const RemoveSharedMemoryCommand &command);
-    void redirectToken(const TokenCommand &command);
-
-private slots:
-    void readDataStream();
-
-private:
-    QLocalSocket *m_socket;
-    NodeInstanceServerInterface *m_nodeInstanceServer;
-    quint32 m_blockSize;
-    quint32 m_writeCommandCounter;
-    quint32 m_lastReadCommandCounter;
-    int m_synchronizeId;
-};
-
-} // namespace QmlDesigner
-
-#endif // NODEINSTANCECLIENTPROXY_H
diff --git a/share/qtcreator/qml/qmlpuppet/qmlpuppet/qmlpuppet.pri b/share/qtcreator/qml/qmlpuppet/qmlpuppet/qmlpuppet.pri
index 4d92c176829886b007b92ce0e525d8a6bf7bf533..30944a7ae32f298dd287d5d9c6e92d4b7feae48d 100644
--- a/share/qtcreator/qml/qmlpuppet/qmlpuppet/qmlpuppet.pri
+++ b/share/qtcreator/qml/qmlpuppet/qmlpuppet/qmlpuppet.pri
@@ -16,6 +16,7 @@ greaterThan(QT_MAJOR_VERSION, 4) {
 
 DEFINES += QWEAKPOINTER_ENABLE_ARROW
 
+include (../instances/instances.pri)
 include (instances/instances.pri)
 include (../commands/commands.pri)
 include (../container/container.pri)