diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_collection.cpp b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_collection.cpp
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_collection.cpp
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_collection.cpp
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_collection.h b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_collection.h
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_collection.h
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_collection.h
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_plugin.pro b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_plugin.pro
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_plugin.pro
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_plugin.pro
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_resources.qrc b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_resources.qrc
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_resources.qrc
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_resources.qrc
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_single.cpp b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_single.cpp
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_single.cpp
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_single.cpp
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_single.h b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_single.h
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_single.h
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_single.h
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget.cpp b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget.cpp
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget.cpp
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget.cpp
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget.h b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget.h
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget.h
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget.h
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget_include.pri b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget_include.pri
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget_include.pri
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget_include.pri
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget_lib.pro b/share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget_lib.pro
similarity index 100%
rename from src/plugins/qt4projectmanager/customwidgetwizard/templates/tpl_widget_lib.pro
rename to share/qtcreator/templates/qt4project/customwidgetwizard/tpl_widget_lib.pro
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp
index 0617d1451238d2ff3aa6832b658163ad04c68eae..83042b443b5f9f0920fa6a1e3ff4be6534b81e8d 100644
--- a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp
+++ b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp
@@ -65,6 +65,8 @@ Core::GeneratedFiles CustomWidgetWizard::generateFiles(const QWizard *w,
     p.name = cw->name();
     p.path = cw->path();
     p.license = CppTools::AbstractEditorSupport::licenseTemplate();
+    p.templatePath = QtWizard::templateDir();
+    p.templatePath += QLatin1String("/customwidgetwizard");
     return PluginGenerator::generatePlugin(p, *(cw->pluginOptions()), errorMessage);
 }
 
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.pri b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.pri
index a52a62848a3644f11c3f2eb12a1877ac795172ea..4547080e9611cba10199ee844f038c50e64f5e16 100644
--- a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.pri
+++ b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.pri
@@ -22,4 +22,4 @@ FORMS += \
  $$PWD/classdefinition.ui \
  $$PWD/customwidgetwidgetswizardpage.ui \
  $$PWD/customwidgetpluginwizardpage.ui
-RESOURCES +=  $$PWD/templates/templates.qrc
+ 
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.cpp b/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.cpp
index b2b67808921f511f56558839cac8b0cfc394b6b7..fdb712892e4506f0cbdae6f51761fbfb660ae2af 100644
--- a/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.cpp
+++ b/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.cpp
@@ -97,7 +97,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
         sm.clear();
         sm.insert(QLatin1String("SINGLE_INCLUDE_GUARD"), headerGuard(wo.pluginHeaderFile));
         sm.insert(QLatin1String("PLUGIN_CLASS"), wo.pluginClassName);
-        const QString pluginHeaderContents = processTemplate(QLatin1String(":/tpl_single.h"), sm, errorMessage);
+        const QString pluginHeaderContents = processTemplate(p.templatePath + QLatin1String("/tpl_single.h"), sm, errorMessage);
         if (pluginHeaderContents.isEmpty())
             return QList<Core::GeneratedFile>();
         Core::GeneratedFile pluginHeader(baseDir + wo.pluginHeaderFile);
@@ -128,7 +128,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
                     wo.pluginClassName +
                     QLatin1Char(')') :
                 QLatin1String(""));
-        const QString pluginSourceContents = processTemplate(QLatin1String(":/tpl_single.cpp"), sm, errorMessage);
+        const QString pluginSourceContents = processTemplate(p.templatePath + QLatin1String("/tpl_single.cpp"), sm, errorMessage);
         if (pluginSourceContents.isEmpty())
             return QList<Core::GeneratedFile>();
         Core::GeneratedFile pluginSource(baseDir + wo.pluginSourceFile);
@@ -152,9 +152,9 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
             if (pc.headers.isEmpty()) {
                 if (wo.sourceType == PluginOptions::WidgetOptions::LinkLibrary) {
                     pc.library = wo.widgetLibrary;
-                    pc.tmpl = QLatin1String(":/tpl_widget_lib.pro");
+                    pc.tmpl = p.templatePath + QLatin1String("/tpl_widget_lib.pro");
                 } else {
-                    pc.tmpl = QLatin1String(":/tpl_widget_include.pri");
+                    pc.tmpl = p.templatePath + QLatin1String("/tpl_widget_include.pri");
                 }
                 widgetProjectContents.insert(wo.widgetProjectFile, pc);
             } else {
@@ -171,7 +171,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
             sm.insert(QLatin1String("WIDGET_INCLUDE_GUARD"), headerGuard(wo.widgetHeaderFile));
             sm.insert(QLatin1String("WIDGET_BASE_CLASS"), wo.widgetBaseClassName);
             sm.insert(QLatin1String("WIDGET_CLASS"), wo.widgetClassName);
-            const QString widgetHeaderContents = processTemplate(QLatin1String(":/tpl_widget.h"), sm, errorMessage);
+            const QString widgetHeaderContents = processTemplate(p.templatePath + QLatin1String("/tpl_widget.h"), sm, errorMessage);
             if (widgetHeaderContents.isEmpty())
                 return QList<Core::GeneratedFile>();
             Core::GeneratedFile widgetHeader(baseDir + wo.widgetHeaderFile);
@@ -180,7 +180,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
 
             sm.remove(QLatin1String("WIDGET_INCLUDE_GUARD"));
             sm.insert(QLatin1String("WIDGET_HEADER"), wo.widgetHeaderFile);
-            const QString widgetSourceContents = processTemplate(QLatin1String(":/tpl_widget.cpp"), sm, errorMessage);
+            const QString widgetSourceContents = processTemplate(p.templatePath + QLatin1String("/tpl_widget.cpp"), sm, errorMessage);
             if (widgetSourceContents.isEmpty())
                 return QList<Core::GeneratedFile>();
             Core::GeneratedFile widgetSource(baseDir + wo.widgetSourceFile);
@@ -213,7 +213,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
         sm.clear();
         sm.insert(QLatin1String("COLLECTION_INCLUDE_GUARD"), headerGuard(options.collectionHeaderFile));
         sm.insert(QLatin1String("COLLECTION_PLUGIN_CLASS"), options.collectionClassName);
-        const QString collectionHeaderContents = processTemplate(QLatin1String(":/tpl_collection.h"), sm, errorMessage);
+        const QString collectionHeaderContents = processTemplate(p.templatePath + QLatin1String("/tpl_collection.h"), sm, errorMessage);
         if (collectionHeaderContents.isEmpty())
             return QList<Core::GeneratedFile>();
         Core::GeneratedFile collectionHeader(baseDir + options.collectionHeaderFile);
@@ -233,7 +233,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
                 QLatin1String(", ") +
                 options.collectionClassName +
                 QLatin1Char(')'));
-        const QString collectionSourceFileContents = processTemplate(QLatin1String(":/tpl_collection.cpp"), sm, errorMessage);
+        const QString collectionSourceFileContents = processTemplate(p.templatePath + QLatin1String("/tpl_collection.cpp"), sm, errorMessage);
         if (collectionSourceFileContents.isEmpty())
             return QList<Core::GeneratedFile>();
         Core::GeneratedFile collectionSource(baseDir + options.collectionSourceFile);
@@ -262,7 +262,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
     // Create the resource file with the icons.
     sm.clear();
     sm.insert(QLatin1String("ICON_FILES"), iconFiles);
-    const QString resourceFileContents = processTemplate(QLatin1String(":/tpl_resources.qrc"), sm, errorMessage);
+    const QString resourceFileContents = processTemplate(p.templatePath + QLatin1String("/tpl_resources.qrc"), sm, errorMessage);
     if (resourceFileContents.isEmpty())
         return QList<Core::GeneratedFile>();
     Core::GeneratedFile resourceFile(baseDir + options.resourceFile);
@@ -277,7 +277,7 @@ QList<Core::GeneratedFile>  PluginGenerator::generatePlugin(const GenerationPara
     sm.insert(QLatin1String("PLUGIN_RESOURCES"), options.resourceFile);
     sm.insert(QLatin1String("WIDGET_LIBS"), QStringList(widgetLibraries.toList()).join(QString(blank)));
     sm.insert(QLatin1String("INCLUSIONS"), QStringList(widgetProjects.toList()).join(QLatin1String("\n")));
-    const QString proFileContents = processTemplate(QLatin1String(":/tpl_plugin.pro"), sm, errorMessage);
+    const QString proFileContents = processTemplate(p.templatePath + QLatin1String("/tpl_plugin.pro"), sm, errorMessage);
     if (proFileContents.isEmpty())
         return QList<Core::GeneratedFile>();
     Core::GeneratedFile proFile(baseDir + p.name + QLatin1String(".pro"));
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.h b/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.h
index 5d89ca648b7b1d878b3bb5d3790a84ad4e22f5cf..6bc653143b0fb675600362188742d98a44c17e14 100644
--- a/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.h
+++ b/src/plugins/qt4projectmanager/customwidgetwizard/plugingenerator.h
@@ -52,6 +52,7 @@ struct GenerationParameters {
     QString path;
     QString name;
     QString license;
+    QString templatePath;
 };
 
 class PluginGenerator : public QObject
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/templates/templates.qrc b/src/plugins/qt4projectmanager/customwidgetwizard/templates/templates.qrc
deleted file mode 100644
index 804d271dae41eb97653df93939ab3ca4f21e3bc3..0000000000000000000000000000000000000000
--- a/src/plugins/qt4projectmanager/customwidgetwizard/templates/templates.qrc
+++ /dev/null
@@ -1,14 +0,0 @@
-<RCC>
-    <qresource prefix="/" >
-        <file>tpl_widget.h</file>
-        <file>tpl_widget.cpp</file>
-        <file>tpl_widget_include.pri</file>
-        <file>tpl_widget_lib.pro</file>
-        <file>tpl_single.h</file>
-        <file>tpl_single.cpp</file>
-        <file>tpl_collection.h</file>
-        <file>tpl_collection.cpp</file>
-        <file>tpl_plugin.pro</file>
-        <file>tpl_resources.qrc</file>
-    </qresource>
-</RCC>