diff --git a/src/plugins/android/androidmanifesteditorfactory.cpp b/src/plugins/android/androidmanifesteditorfactory.cpp
index a60342cda4c3f058da042d629a55d2db27ae9062..b5767e2edd371fd10d6d2010790a0a6e134db354 100644
--- a/src/plugins/android/androidmanifesteditorfactory.cpp
+++ b/src/plugins/android/androidmanifesteditorfactory.cpp
@@ -49,9 +49,9 @@ AndroidManifestEditorFactory::AndroidManifestEditorFactory(QObject *parent)
     new TextEditor::TextEditorActionHandler(this, Constants::ANDROID_MANIFEST_EDITOR_CONTEXT);
 }
 
-Core::IEditor *AndroidManifestEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *AndroidManifestEditorFactory::createEditor()
 {
-    AndroidManifestEditorWidget *editor = new AndroidManifestEditorWidget(parent);
+    AndroidManifestEditorWidget *editor = new AndroidManifestEditorWidget();
     TextEditor::TextEditorSettings::initializeEditor(editor);
     return editor->editor();
 }
diff --git a/src/plugins/android/androidmanifesteditorfactory.h b/src/plugins/android/androidmanifesteditorfactory.h
index e9bd307ea248b02122886965c966e285e7f1ff1f..7b62f0ad57f4e3b8d0360d3286e3078e75006095 100644
--- a/src/plugins/android/androidmanifesteditorfactory.h
+++ b/src/plugins/android/androidmanifesteditorfactory.h
@@ -42,7 +42,7 @@ class AndroidManifestEditorFactory : public Core::IEditorFactory
 public:
     explicit AndroidManifestEditorFactory(QObject *parent = 0);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 } // namespace Internal
diff --git a/src/plugins/android/androidmanifesteditorwidget.h b/src/plugins/android/androidmanifesteditorwidget.h
index eada4a006c8f93af34f062e4150b2db177b20ad3..1f5932f590d7e7054a68c801f6043391ffcc2f21 100644
--- a/src/plugins/android/androidmanifesteditorwidget.h
+++ b/src/plugins/android/androidmanifesteditorwidget.h
@@ -84,7 +84,7 @@ public:
         Source
     };
 
-    explicit AndroidManifestEditorWidget(QWidget *parent);
+    explicit AndroidManifestEditorWidget(QWidget *parent = 0);
 
     bool open(QString *errorString, const QString &fileName, const QString &realFileName);
 
diff --git a/src/plugins/bineditor/bineditorplugin.cpp b/src/plugins/bineditor/bineditorplugin.cpp
index 7f853340e22fd6976ba4e09aea6947e6e666d810..f2f57d47fabc1c0d842f6bcefe8ed1cf74007668 100644
--- a/src/plugins/bineditor/bineditorplugin.cpp
+++ b/src/plugins/bineditor/bineditorplugin.cpp
@@ -409,9 +409,9 @@ BinEditorFactory::BinEditorFactory(BinEditorPlugin *owner) :
     addMimeType(Constants::C_BINEDITOR_MIMETYPE);
 }
 
-Core::IEditor *BinEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *BinEditorFactory::createEditor()
 {
-    BinEditorWidget *widget = new BinEditorWidget(parent);
+    BinEditorWidget *widget = new BinEditorWidget();
     BinEditor *editor = new BinEditor(widget);
 
     m_owner->initializeEditor(widget);
diff --git a/src/plugins/bineditor/bineditorplugin.h b/src/plugins/bineditor/bineditorplugin.h
index 66c8adf7ed7cee588ddaf6b5c5bcd309f656e052..c1b0e8fd99ca94cae1abe2bec7b7154c004dad0f 100644
--- a/src/plugins/bineditor/bineditorplugin.h
+++ b/src/plugins/bineditor/bineditorplugin.h
@@ -102,7 +102,7 @@ class BinEditorFactory : public Core::IEditorFactory
 public:
     explicit BinEditorFactory(BinEditorPlugin *owner);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private:
     BinEditorPlugin *m_owner;
diff --git a/src/plugins/cmakeprojectmanager/cmakeeditor.cpp b/src/plugins/cmakeprojectmanager/cmakeeditor.cpp
index 52200b679ba2ee58863725ffbbf8ca66f5bab3c8..a5f48c9d77596d1f2f502e28a123511885219231 100644
--- a/src/plugins/cmakeprojectmanager/cmakeeditor.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeeditor.cpp
@@ -65,10 +65,10 @@ CMakeEditor::CMakeEditor(CMakeEditorWidget *editor)
     connect(document(), SIGNAL(changed()), this, SLOT(markAsChanged()));
 }
 
-Core::IEditor *CMakeEditor::duplicate(QWidget *parent)
+Core::IEditor *CMakeEditor::duplicate()
 {
     CMakeEditorWidget *w = qobject_cast<CMakeEditorWidget*>(widget());
-    CMakeEditorWidget *ret = new CMakeEditorWidget(parent, w->factory());
+    CMakeEditorWidget *ret = new CMakeEditorWidget(w->factory());
     ret->duplicateFrom(w);
     TextEditor::TextEditorSettings::initializeEditor(ret);
     return ret->editor();
@@ -116,7 +116,7 @@ void CMakeEditor::build()
 // CMakeEditor
 //
 
-CMakeEditorWidget::CMakeEditorWidget(QWidget *parent, CMakeEditorFactory *factory)
+CMakeEditorWidget::CMakeEditorWidget(CMakeEditorFactory *factory, QWidget *parent)
     : BaseTextEditorWidget(parent), m_factory(factory)
 {
     QSharedPointer<CMakeDocument> doc(new CMakeDocument);
diff --git a/src/plugins/cmakeprojectmanager/cmakeeditor.h b/src/plugins/cmakeprojectmanager/cmakeeditor.h
index 00f1b6f461f0a6248379bd18aa95efeef68b85cf..a416e5577c7370eb3f40bf9c467671c12e4e129a 100644
--- a/src/plugins/cmakeprojectmanager/cmakeeditor.h
+++ b/src/plugins/cmakeprojectmanager/cmakeeditor.h
@@ -57,7 +57,7 @@ public:
     CMakeEditor(CMakeEditorWidget *);
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
     Core::Id id() const;
     TextEditor::CompletionAssistProvider *completionAssistProvider();
 
@@ -71,7 +71,7 @@ class CMakeEditorWidget : public TextEditor::BaseTextEditorWidget
     Q_OBJECT
 
 public:
-    CMakeEditorWidget(QWidget *parent, CMakeEditorFactory *factory);
+    CMakeEditorWidget(CMakeEditorFactory *factory, QWidget *parent = 0);
 
     bool save(const QString &fileName = QString());
 
diff --git a/src/plugins/cmakeprojectmanager/cmakeeditorfactory.cpp b/src/plugins/cmakeprojectmanager/cmakeeditorfactory.cpp
index 015a208cd6a2fe2f62004650383c447f8e8b2702..8f1adee2414a89a042913d6acc66a20f9f398b64 100644
--- a/src/plugins/cmakeprojectmanager/cmakeeditorfactory.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeeditorfactory.cpp
@@ -69,9 +69,9 @@ CMakeEditorFactory::CMakeEditorFactory(CMakeManager *manager)
     contextMenu->addAction(cmd);
 }
 
-Core::IEditor *CMakeEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *CMakeEditorFactory::createEditor()
 {
-    CMakeEditorWidget *rc = new CMakeEditorWidget(parent, this);
+    CMakeEditorWidget *rc = new CMakeEditorWidget(this);
     TextEditor::TextEditorSettings::initializeEditor(rc);
     return rc->editor();
 }
diff --git a/src/plugins/cmakeprojectmanager/cmakeeditorfactory.h b/src/plugins/cmakeprojectmanager/cmakeeditorfactory.h
index c942438509d8a830a3a6c78dfa7a75eeccc6361e..4d6b4fae956a6ed6b6806d420d50514098a0b7c6 100644
--- a/src/plugins/cmakeprojectmanager/cmakeeditorfactory.h
+++ b/src/plugins/cmakeprojectmanager/cmakeeditorfactory.h
@@ -43,7 +43,7 @@ class CMakeEditorFactory : public Core::IEditorFactory
 
 public:
     CMakeEditorFactory(CMakeManager *parent);
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private:
     const QStringList m_mimeTypes;
diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 18a6feb0495ae7cbeaade139ea2788aef49e8e16..4c2e9c9bbd887e071431fb51c25c47b54cb14db5 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -1416,7 +1416,7 @@ IEditor *EditorManager::createEditor(const Id &editorId, const QString &fileName
         return 0;
     }
 
-    IEditor *editor = factories.front()->createEditor(m_instance);
+    IEditor *editor = factories.front()->createEditor();
     if (editor)
         connect(editor->document(), SIGNAL(changed()), m_instance, SLOT(handleDocumentStateChange()));
     if (editor)
@@ -2410,7 +2410,7 @@ Core::IEditor *EditorManager::duplicateEditor(Core::IEditor *editor)
     if (!editor->duplicateSupported())
         return 0;
 
-    IEditor *duplicate = editor->duplicate(0);
+    IEditor *duplicate = editor->duplicate();
     duplicate->restoreState(editor->saveState());
     emit m_instance->editorCreated(duplicate, duplicate->document()->filePath());
     addEditor(duplicate);
diff --git a/src/plugins/coreplugin/editormanager/ieditor.h b/src/plugins/coreplugin/editormanager/ieditor.h
index c38aa84e98b39c951d4f95c60119ea41a0abc84d..75ba8ddf4b7acefbd983d50749bcb9ec50b5659b 100644
--- a/src/plugins/coreplugin/editormanager/ieditor.h
+++ b/src/plugins/coreplugin/editormanager/ieditor.h
@@ -52,7 +52,7 @@ public:
     virtual Core::Id id() const = 0;
 
     virtual bool duplicateSupported() const { return false; }
-    virtual IEditor *duplicate(QWidget * /*parent*/) { return 0; }
+    virtual IEditor *duplicate() { return 0; }
 
     virtual QByteArray saveState() const { return QByteArray(); }
     virtual bool restoreState(const QByteArray &/*state*/) { return true; }
diff --git a/src/plugins/coreplugin/editormanager/ieditorfactory.h b/src/plugins/coreplugin/editormanager/ieditorfactory.h
index e4f4f31849272bff8c23db93ebd41a512048bc9e..6a08caf9c59dbc095f22cafc9bbdf8cf4c60da39 100644
--- a/src/plugins/coreplugin/editormanager/ieditorfactory.h
+++ b/src/plugins/coreplugin/editormanager/ieditorfactory.h
@@ -43,7 +43,7 @@ class CORE_EXPORT IEditorFactory : public Core::IDocumentFactory
 public:
     IEditorFactory(QObject *parent = 0) : IDocumentFactory(parent) {}
 
-    virtual IEditor *createEditor(QWidget *parent) = 0;
+    virtual IEditor *createEditor() = 0;
     virtual IDocument *open(const QString &);
 };
 
diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp
index 6b44b15670879d2e5573b819b514d356a7acb928..850e4bce64ad0cdec348ff28446380d0ac858597 100644
--- a/src/plugins/cppeditor/cppeditor.cpp
+++ b/src/plugins/cppeditor/cppeditor.cpp
@@ -1499,9 +1499,9 @@ void CPPEditorWidget::keyPressEvent(QKeyEvent *e)
     finishRename();
 }
 
-Core::IEditor *CPPEditor::duplicate(QWidget *parent)
+Core::IEditor *CPPEditor::duplicate()
 {
-    CPPEditorWidget *newEditor = new CPPEditorWidget(parent);
+    CPPEditorWidget *newEditor = new CPPEditorWidget();
     newEditor->duplicateFrom(editorWidget());
     // A new QTextDocument was set, so update our signal/slot connection to the new document
     newEditor->updateContentsChangedSignal();
diff --git a/src/plugins/cppeditor/cppeditor.h b/src/plugins/cppeditor/cppeditor.h
index 4a838ade7d7a411f6a1e77f7a6e067f3b2ce0df5..7a08c6c1a91a52ee57bf92da93b64e3860205ef6 100644
--- a/src/plugins/cppeditor/cppeditor.h
+++ b/src/plugins/cppeditor/cppeditor.h
@@ -78,7 +78,7 @@ public:
     CPPEditor(CPPEditorWidget *);
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
     Core::Id id() const;
 
     bool open(QString *errorString, const QString &fileName, const QString &realFileName);
@@ -97,7 +97,7 @@ class CPPEditorWidget : public TextEditor::BaseTextEditorWidget
 public:
     typedef TextEditor::TabSettings TabSettings;
 
-    CPPEditorWidget(QWidget *parent);
+    CPPEditorWidget(QWidget *parent = 0);
     ~CPPEditorWidget();
     void unCommentSelection();
 
diff --git a/src/plugins/cppeditor/cppeditorplugin.cpp b/src/plugins/cppeditor/cppeditorplugin.cpp
index fe02ac3d5cc3ebabb601d482b2a0d84b8b400fa1..505ffe9d17de4605c7102f3fe859364b39bfefe2 100644
--- a/src/plugins/cppeditor/cppeditorplugin.cpp
+++ b/src/plugins/cppeditor/cppeditorplugin.cpp
@@ -93,9 +93,9 @@ CppEditorFactory::CppEditorFactory(CppEditorPlugin *owner) :
     }
 }
 
-IEditor *CppEditorFactory::createEditor(QWidget *parent)
+IEditor *CppEditorFactory::createEditor()
 {
-    CPPEditorWidget *editor = new CPPEditorWidget(parent);
+    CPPEditorWidget *editor = new CPPEditorWidget();
     editor->setRevisionsVisible(true);
     m_owner->initializeEditor(editor);
     return editor->editor();
diff --git a/src/plugins/cppeditor/cppeditorplugin.h b/src/plugins/cppeditor/cppeditorplugin.h
index 3d51932e13eec18d73e5bedc38a72f3614412a0a..998c6ca9526092b28adf09a9051eadf2c905b263 100644
--- a/src/plugins/cppeditor/cppeditorplugin.h
+++ b/src/plugins/cppeditor/cppeditorplugin.h
@@ -255,7 +255,7 @@ class CppEditorFactory : public Core::IEditorFactory
 public:
     CppEditorFactory(CppEditorPlugin *owner);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private:
     CppEditorPlugin *m_owner;
diff --git a/src/plugins/designer/formeditorfactory.cpp b/src/plugins/designer/formeditorfactory.cpp
index cbbd830c260b43c45e8912407be83244930accf7..a005946fe3e6ef80c92883ff41f0f11a63fc623b 100644
--- a/src/plugins/designer/formeditorfactory.cpp
+++ b/src/plugins/designer/formeditorfactory.cpp
@@ -57,9 +57,9 @@ FormEditorFactory::FormEditorFactory()
     Core::FileIconProvider::registerIconOverlayForSuffix(":/formeditor/images/qt_ui.png", "ui");
 }
 
-Core::IEditor *FormEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *FormEditorFactory::createEditor()
 {
-    const EditorData data = FormEditorW::instance()->createEditor(parent);
+    const EditorData data = FormEditorW::instance()->createEditor();
     if (data.formWindowEditor) {
         Core::InfoBarEntry info(Core::Id(Constants::INFO_READ_ONLY),
                                 tr("This file can only be edited in <b>Design</b> mode."));
diff --git a/src/plugins/designer/formeditorfactory.h b/src/plugins/designer/formeditorfactory.h
index 45b96f80ba02615673b2284ae29aaddb88dee293..0b0d662071d83df0b6b20cdb75f4c7c2c146c7ac 100644
--- a/src/plugins/designer/formeditorfactory.h
+++ b/src/plugins/designer/formeditorfactory.h
@@ -42,7 +42,7 @@ class FormEditorFactory : public Core::IEditorFactory
 public:
     FormEditorFactory();
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private slots:
     void designerModeClicked();
diff --git a/src/plugins/designer/formeditorw.h b/src/plugins/designer/formeditorw.h
index 7f20ee2eda4331d2d29a667c110e65e44e24e2a0..c476e1c7ce8bbf04bb977c0bc16fac30c852fdf4 100644
--- a/src/plugins/designer/formeditorw.h
+++ b/src/plugins/designer/formeditorw.h
@@ -113,7 +113,7 @@ public:
     // Deletes an existing instance if there is one.
     static void deleteInstance();
 
-    EditorData createEditor(QWidget *parent);
+    EditorData createEditor(QWidget *parent = 0);
 
     inline QDesignerFormEditorInterface *designerEditor() const { return m_formeditor; }
     inline QWidget * const*designerSubWindows() const { return m_designerSubWindows; }
diff --git a/src/plugins/diffeditor/diffeditorfactory.cpp b/src/plugins/diffeditor/diffeditorfactory.cpp
index 46fbbf1e74f183d9be97ff4f47f46e2a677a1a2b..4cd2a1b11f1312b17ca0b7029acb03db6e9ca2be 100644
--- a/src/plugins/diffeditor/diffeditorfactory.cpp
+++ b/src/plugins/diffeditor/diffeditorfactory.cpp
@@ -46,9 +46,9 @@ DiffEditorFactory::DiffEditorFactory(QObject *parent)
     addMimeType(QLatin1String(Constants::DIFF_EDITOR_MIMETYPE));
 }
 
-Core::IEditor *DiffEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *DiffEditorFactory::createEditor()
 {
-    DiffEditorWidget *editorWidget = new DiffEditorWidget(parent);
+    DiffEditorWidget *editorWidget = new DiffEditorWidget();
     DiffEditor *editor = new DiffEditor(editorWidget);
     return editor;
 }
diff --git a/src/plugins/diffeditor/diffeditorfactory.h b/src/plugins/diffeditor/diffeditorfactory.h
index 7abe41259a9cfd53cf7523cd5651eb2b0ff734d0..d171cfe24371763958b90cd8220ac7a7a03f80f7 100644
--- a/src/plugins/diffeditor/diffeditorfactory.h
+++ b/src/plugins/diffeditor/diffeditorfactory.h
@@ -47,7 +47,7 @@ class DiffEditorFactory : public Core::IEditorFactory
 public:
     explicit DiffEditorFactory(QObject *parent);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 } // namespace Internal
diff --git a/src/plugins/diffeditor/diffshoweditorfactory.cpp b/src/plugins/diffeditor/diffshoweditorfactory.cpp
index b169a64898516232870b32bb88c4193d315e4eb8..a7e5e76bf89e6f92584545b1527a97def5dfbaf3 100644
--- a/src/plugins/diffeditor/diffshoweditorfactory.cpp
+++ b/src/plugins/diffeditor/diffshoweditorfactory.cpp
@@ -46,9 +46,9 @@ DiffShowEditorFactory::DiffShowEditorFactory(QObject *parent)
     setMimeTypes(QStringList() << QLatin1String(Constants::DIFF_EDITOR_MIMETYPE));
 }
 
-Core::IEditor *DiffShowEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *DiffShowEditorFactory::createEditor()
 {
-    DiffEditorWidget *editorWidget = new DiffEditorWidget(parent);
+    DiffEditorWidget *editorWidget = new DiffEditorWidget();
     DiffShowEditor *editor = new DiffShowEditor(editorWidget);
     return editor;
 }
diff --git a/src/plugins/diffeditor/diffshoweditorfactory.h b/src/plugins/diffeditor/diffshoweditorfactory.h
index 268ee01e599ebe16427dbb0dccb6a62f01352bf5..b1823a27a9ca47507012b8231a5c38e84794dd88 100644
--- a/src/plugins/diffeditor/diffshoweditorfactory.h
+++ b/src/plugins/diffeditor/diffshoweditorfactory.h
@@ -47,7 +47,7 @@ class DiffShowEditorFactory : public Core::IEditorFactory
 public:
     explicit DiffShowEditorFactory(QObject *parent);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 } // namespace Internal
diff --git a/src/plugins/genericprojectmanager/genericprojectfileseditor.cpp b/src/plugins/genericprojectmanager/genericprojectfileseditor.cpp
index 48f5b77c957d027049a5df87599a6bc81ba85fd0..5925f8427bedc90620c0809f5044dacd98f3654c 100644
--- a/src/plugins/genericprojectmanager/genericprojectfileseditor.cpp
+++ b/src/plugins/genericprojectmanager/genericprojectfileseditor.cpp
@@ -62,9 +62,9 @@ ProjectFilesFactory::ProjectFilesFactory(Manager *manager)
 
 }
 
-Core::IEditor *ProjectFilesFactory::createEditor(QWidget *parent)
+Core::IEditor *ProjectFilesFactory::createEditor()
 {
-    ProjectFilesEditorWidget *ed = new ProjectFilesEditorWidget(parent, this);
+    ProjectFilesEditorWidget *ed = new ProjectFilesEditorWidget(this);
     TextEditorSettings::initializeEditor(ed);
     return ed->editor();
 }
@@ -91,11 +91,10 @@ bool ProjectFilesEditor::duplicateSupported() const
     return true;
 }
 
-Core::IEditor *ProjectFilesEditor::duplicate(QWidget *parent)
+Core::IEditor *ProjectFilesEditor::duplicate()
 {
     ProjectFilesEditorWidget *parentEditor = qobject_cast<ProjectFilesEditorWidget *>(editorWidget());
-    ProjectFilesEditorWidget *editor = new ProjectFilesEditorWidget(parent,
-                                                        parentEditor->factory());
+    ProjectFilesEditorWidget *editor = new ProjectFilesEditorWidget(parentEditor->factory());
     TextEditorSettings::initializeEditor(editor);
     return editor->editor();
 }
@@ -106,7 +105,7 @@ Core::IEditor *ProjectFilesEditor::duplicate(QWidget *parent)
 //
 ////////////////////////////////////////////////////////////////////////////////////////
 
-ProjectFilesEditorWidget::ProjectFilesEditorWidget(QWidget *parent, ProjectFilesFactory *factory)
+ProjectFilesEditorWidget::ProjectFilesEditorWidget(ProjectFilesFactory *factory, QWidget *parent)
     : BaseTextEditorWidget(parent),
       m_factory(factory)
 {
diff --git a/src/plugins/genericprojectmanager/genericprojectfileseditor.h b/src/plugins/genericprojectmanager/genericprojectfileseditor.h
index d737e47571b46ed5729bec4eeb38668d1538efdd..521e451fa540f211ad6859b4102db3ee45786976 100644
--- a/src/plugins/genericprojectmanager/genericprojectfileseditor.h
+++ b/src/plugins/genericprojectmanager/genericprojectfileseditor.h
@@ -50,7 +50,7 @@ class ProjectFilesFactory: public Core::IEditorFactory
 public:
     ProjectFilesFactory(Manager *manager);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 class ProjectFilesEditor : public TextEditor::BaseTextEditor
@@ -62,7 +62,7 @@ public:
 
     Core::Id id() const;
     bool duplicateSupported() const;
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
 };
 
 class ProjectFilesEditorWidget : public TextEditor::BaseTextEditorWidget
@@ -70,7 +70,7 @@ class ProjectFilesEditorWidget : public TextEditor::BaseTextEditorWidget
     Q_OBJECT
 
 public:
-    ProjectFilesEditorWidget(QWidget *parent, ProjectFilesFactory *factory);
+    ProjectFilesEditorWidget(ProjectFilesFactory *factory, QWidget *parent = 0);
 
     ProjectFilesFactory *factory() const;
     TextEditor::BaseTextEditor *createEditor();
diff --git a/src/plugins/glsleditor/glsleditor.cpp b/src/plugins/glsleditor/glsleditor.cpp
index a4936bc50f21b38358f555b281410e2cd4dbd310..471da951580f113ebcea0599ca72ff50c0f4baed 100644
--- a/src/plugins/glsleditor/glsleditor.cpp
+++ b/src/plugins/glsleditor/glsleditor.cpp
@@ -187,9 +187,9 @@ bool GLSLTextEditorWidget::isOutdated() const
     return false;
 }
 
-Core::IEditor *GLSLEditorEditable::duplicate(QWidget *parent)
+Core::IEditor *GLSLEditorEditable::duplicate()
 {
-    GLSLTextEditorWidget *newEditor = new GLSLTextEditorWidget(parent);
+    GLSLTextEditorWidget *newEditor = new GLSLTextEditorWidget();
     newEditor->duplicateFrom(editorWidget());
     TextEditor::TextEditorSettings::initializeEditor(newEditor);
     return newEditor->editor();
diff --git a/src/plugins/glsleditor/glsleditoreditable.h b/src/plugins/glsleditor/glsleditoreditable.h
index f4fec5744c80b08c69e63f1153d220f772861d59..8632c64fa9a360f370dbc8e06f7696dbf320716b 100644
--- a/src/plugins/glsleditor/glsleditoreditable.h
+++ b/src/plugins/glsleditor/glsleditoreditable.h
@@ -45,7 +45,7 @@ public:
     explicit GLSLEditorEditable(GLSLTextEditorWidget *);
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
     Core::Id id() const;
     bool open(QString *errorString, const QString &fileName, const QString &realFileName);
     TextEditor::CompletionAssistProvider *completionAssistProvider();
diff --git a/src/plugins/glsleditor/glsleditorfactory.cpp b/src/plugins/glsleditor/glsleditorfactory.cpp
index f25cb99fbcba62609e854f440d7b8203fbcc86a3..502d2dd3ef8ff0189ac0102db2b584b25c07ec9a 100644
--- a/src/plugins/glsleditor/glsleditorfactory.cpp
+++ b/src/plugins/glsleditor/glsleditorfactory.cpp
@@ -63,9 +63,9 @@ GLSLEditorFactory::GLSLEditorFactory(QObject *parent)
 
 }
 
-Core::IEditor *GLSLEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *GLSLEditorFactory::createEditor()
 {
-    GLSLTextEditorWidget *rc = new GLSLTextEditorWidget(parent);
+    GLSLTextEditorWidget *rc = new GLSLTextEditorWidget();
     TextEditor::TextEditorSettings::initializeEditor(rc);
     return rc->editor();
 }
diff --git a/src/plugins/glsleditor/glsleditorfactory.h b/src/plugins/glsleditor/glsleditorfactory.h
index d36f8d459ad18138fb1f7d83df9554dcd7324c27..01a507b7486c430c10af20f5feb81f4545d8983d 100644
--- a/src/plugins/glsleditor/glsleditorfactory.h
+++ b/src/plugins/glsleditor/glsleditorfactory.h
@@ -42,7 +42,7 @@ class GLSLEditorFactory : public Core::IEditorFactory
 public:
     GLSLEditorFactory(QObject *parent);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private slots:
     void updateEditorInfoBar(Core::IEditor *editor);
diff --git a/src/plugins/imageviewer/imageviewerfactory.cpp b/src/plugins/imageviewer/imageviewerfactory.cpp
index faced86d9e053ff483c10ee63baa6880d88626e1..c972823e0797b1822419686a84e55ad0e41be210 100644
--- a/src/plugins/imageviewer/imageviewerfactory.cpp
+++ b/src/plugins/imageviewer/imageviewerfactory.cpp
@@ -85,9 +85,9 @@ ImageViewerFactory::~ImageViewerFactory()
     delete d;
 }
 
-Core::IEditor *ImageViewerFactory::createEditor(QWidget *parent)
+Core::IEditor *ImageViewerFactory::createEditor()
 {
-    return new ImageViewer(parent);
+    return new ImageViewer();
 }
 
 void ImageViewerFactory::extensionsInitialized()
diff --git a/src/plugins/imageviewer/imageviewerfactory.h b/src/plugins/imageviewer/imageviewerfactory.h
index fa61e9ec1e4f3dd1685dbb0d5c1097eee1a5eb59..b788fdc6e3fb74ab9f9f4f49e15c0c8304d1c336 100644
--- a/src/plugins/imageviewer/imageviewerfactory.h
+++ b/src/plugins/imageviewer/imageviewerfactory.h
@@ -45,7 +45,7 @@ public:
     explicit ImageViewerFactory(QObject *parent = 0);
     ~ImageViewerFactory();
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
     void extensionsInitialized();
 
diff --git a/src/plugins/pythoneditor/pythoneditor.cpp b/src/plugins/pythoneditor/pythoneditor.cpp
index f327fd7e9e2974fc9e806640b2a6a694c2fe2d0d..26f9b5ffd0d200093524d1cb6ec3b800e1e38a1e 100644
--- a/src/plugins/pythoneditor/pythoneditor.cpp
+++ b/src/plugins/pythoneditor/pythoneditor.cpp
@@ -58,9 +58,9 @@ PythonEditor::~PythonEditor()
 {
 }
 
-Core::IEditor *PythonEditor::duplicate(QWidget *parent)
+Core::IEditor *PythonEditor::duplicate()
 {
-    EditorWidget *widget = new EditorWidget(parent);
+    EditorWidget *widget = new EditorWidget();
     widget->duplicateFrom(editorWidget());
     TextEditor::TextEditorSettings::initializeEditor(widget);
 
diff --git a/src/plugins/pythoneditor/pythoneditor.h b/src/plugins/pythoneditor/pythoneditor.h
index ed1eff5e8e2354bb8e15f381806707550fc32de9..a53d031abe01af26913087c7c22ae54a2cb81894 100644
--- a/src/plugins/pythoneditor/pythoneditor.h
+++ b/src/plugins/pythoneditor/pythoneditor.h
@@ -46,7 +46,7 @@ public:
     virtual ~PythonEditor();
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
 
     Core::Id id() const;
 
diff --git a/src/plugins/pythoneditor/pythoneditorfactory.cpp b/src/plugins/pythoneditor/pythoneditorfactory.cpp
index acf42d7f8aa24c85f1f2b7529f2678167ddcc03e..c5496464053ed55abc1312f79438979de29ea20e 100644
--- a/src/plugins/pythoneditor/pythoneditorfactory.cpp
+++ b/src/plugins/pythoneditor/pythoneditorfactory.cpp
@@ -55,9 +55,9 @@ EditorFactory::EditorFactory(QObject *parent)
                               | TextEditor::TextEditorActionHandler::UnCollapseAll);
 }
 
-Core::IEditor *EditorFactory::createEditor(QWidget *parent)
+Core::IEditor *EditorFactory::createEditor()
 {
-    EditorWidget *widget = new EditorWidget(parent);
+    EditorWidget *widget = new EditorWidget();
     TextEditor::TextEditorSettings::initializeEditor(widget);
 
     return widget->editor();
diff --git a/src/plugins/pythoneditor/pythoneditorfactory.h b/src/plugins/pythoneditor/pythoneditorfactory.h
index 0dcca8fbc2ae8b6e272e0bf34ae7a8dca47a29f5..50d8f925c178c99c9d6b9fdb90da52d7c0d01328 100644
--- a/src/plugins/pythoneditor/pythoneditorfactory.h
+++ b/src/plugins/pythoneditor/pythoneditorfactory.h
@@ -45,7 +45,7 @@ public:
     /**
       Creates and initializes new editor widget
       */
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 } // namespace Internal
diff --git a/src/plugins/qmakeprojectmanager/profileeditor.cpp b/src/plugins/qmakeprojectmanager/profileeditor.cpp
index 1cbb4d839c00fe43c2b9eb676a63c48b4655d386..2e9515506775417dc9ee60f19eaf8c67a8662897 100644
--- a/src/plugins/qmakeprojectmanager/profileeditor.cpp
+++ b/src/plugins/qmakeprojectmanager/profileeditor.cpp
@@ -59,9 +59,10 @@ ProFileEditor::ProFileEditor(ProFileEditorWidget *editor)
               TextEditor::Constants::C_TEXTEDITOR));
 }
 
-Core::IEditor *ProFileEditor::duplicate(QWidget *parent)
+Core::IEditor *ProFileEditor::duplicate()
 {
-    ProFileEditorWidget *ret = new ProFileEditorWidget(parent, qobject_cast<ProFileEditorWidget*>(editorWidget())->factory());
+    ProFileEditorWidget *ret = new ProFileEditorWidget(
+                qobject_cast<ProFileEditorWidget*>(editorWidget())->factory());
     ret->duplicateFrom(editorWidget());
     TextEditor::TextEditorSettings::initializeEditor(ret);
     return ret->editor();
@@ -81,7 +82,7 @@ TextEditor::CompletionAssistProvider *ProFileEditor::completionAssistProvider()
 // ProFileEditorWidget
 //
 
-ProFileEditorWidget::ProFileEditorWidget(QWidget *parent, ProFileEditorFactory *factory)
+ProFileEditorWidget::ProFileEditorWidget(ProFileEditorFactory *factory, QWidget *parent)
     : BaseTextEditorWidget(parent), m_factory(factory)
 {
     QSharedPointer<ProFileDocument> doc(new ProFileDocument());
diff --git a/src/plugins/qmakeprojectmanager/profileeditor.h b/src/plugins/qmakeprojectmanager/profileeditor.h
index 3274e981050cc2882df9cad02d607e697c93c577..f0ab2fcfe76ed62a3a1862714ca1ddf86ea4bdce 100644
--- a/src/plugins/qmakeprojectmanager/profileeditor.h
+++ b/src/plugins/qmakeprojectmanager/profileeditor.h
@@ -48,7 +48,7 @@ public:
     ProFileEditor(ProFileEditorWidget *);
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
     Core::Id id() const;
     TextEditor::CompletionAssistProvider *completionAssistProvider();
 };
@@ -58,7 +58,7 @@ class ProFileEditorWidget : public TextEditor::BaseTextEditorWidget
     Q_OBJECT
 
 public:
-    ProFileEditorWidget(QWidget *parent, ProFileEditorFactory *factory);
+    ProFileEditorWidget(ProFileEditorFactory *factory, QWidget *parent = 0);
 
     ProFileEditorFactory *factory() { return m_factory; }
 
diff --git a/src/plugins/qmakeprojectmanager/profileeditorfactory.cpp b/src/plugins/qmakeprojectmanager/profileeditorfactory.cpp
index 82a1a8905e72d75300c82fe724d9d1ea576f141a..7ba617ce4e2a319d57eb71602ed73f9c0825218f 100644
--- a/src/plugins/qmakeprojectmanager/profileeditorfactory.cpp
+++ b/src/plugins/qmakeprojectmanager/profileeditorfactory.cpp
@@ -60,9 +60,9 @@ ProFileEditorFactory::ProFileEditorFactory(QmakeManager *manager) :
     Core::FileIconProvider::registerIconOverlayForSuffix(QtSupport::Constants::ICON_QT_PROJECT, "prf");
 }
 
-Core::IEditor *ProFileEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *ProFileEditorFactory::createEditor()
 {
-    ProFileEditorWidget *editor = new ProFileEditorWidget(parent, this);
+    ProFileEditorWidget *editor = new ProFileEditorWidget(this);
     TextEditor::TextEditorSettings::initializeEditor(editor);
     return editor->editor();
 }
diff --git a/src/plugins/qmakeprojectmanager/profileeditorfactory.h b/src/plugins/qmakeprojectmanager/profileeditorfactory.h
index 0a805ade4861015d27a94242a0d995f1f389bbb4..d42deadfbcf11179cbf5c5974abf91b5a2a64ec6 100644
--- a/src/plugins/qmakeprojectmanager/profileeditorfactory.h
+++ b/src/plugins/qmakeprojectmanager/profileeditorfactory.h
@@ -45,7 +45,7 @@ class ProFileEditorFactory : public Core::IEditorFactory
 public:
     ProFileEditorFactory(QmakeManager *parent);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
     QmakeManager *qmakeProjectManager() const { return m_manager; }
 
diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp
index bcd2b642b2f825f4adf9d1af3be2ddc1cabdfebf..061bf76054df02a01c9f2ac5fb0921ca2a7f99ff 100644
--- a/src/plugins/qmljseditor/qmljseditor.cpp
+++ b/src/plugins/qmljseditor/qmljseditor.cpp
@@ -581,9 +581,9 @@ QModelIndex QmlJSTextEditorWidget::outlineModelIndex()
     return m_outlineModelIndex;
 }
 
-IEditor *QmlJSEditor::duplicate(QWidget *parent)
+IEditor *QmlJSEditor::duplicate()
 {
-    QmlJSTextEditorWidget *newEditor = new QmlJSTextEditorWidget(parent);
+    QmlJSTextEditorWidget *newEditor = new QmlJSTextEditorWidget();
     newEditor->duplicateFrom(editorWidget());
     TextEditor::TextEditorSettings::initializeEditor(newEditor);
     return newEditor->editor();
diff --git a/src/plugins/qmljseditor/qmljseditoreditable.h b/src/plugins/qmljseditor/qmljseditoreditable.h
index 98d05470f9abb979ab6de7bab48d258659f7c8f2..13cc7ff00a9a9d4990cb544c0c3d63e33fb1c973 100644
--- a/src/plugins/qmljseditor/qmljseditoreditable.h
+++ b/src/plugins/qmljseditor/qmljseditoreditable.h
@@ -45,7 +45,7 @@ public:
     explicit QmlJSEditor(QmlJSTextEditorWidget *);
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
     Core::Id id() const;
     bool open(QString *errorString, const QString &fileName, const QString &realFileName);
     bool isDesignModePreferred() const;
diff --git a/src/plugins/qmljseditor/qmljseditorfactory.cpp b/src/plugins/qmljseditor/qmljseditorfactory.cpp
index 5cba6ecb9b5318f6e31a320395551c8f918d8745..f0bbfb975786cb6625b2df2b8997bce37575998d 100644
--- a/src/plugins/qmljseditor/qmljseditorfactory.cpp
+++ b/src/plugins/qmljseditor/qmljseditorfactory.cpp
@@ -62,9 +62,9 @@ QmlJSEditorFactory::QmlJSEditorFactory(QObject *parent)
 
 }
 
-Core::IEditor *QmlJSEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *QmlJSEditorFactory::createEditor()
 {
-    QmlJSTextEditorWidget *rc = new QmlJSTextEditorWidget(parent);
+    QmlJSTextEditorWidget *rc = new QmlJSTextEditorWidget();
     TextEditor::TextEditorSettings::initializeEditor(rc);
     return rc->editor();
 }
diff --git a/src/plugins/qmljseditor/qmljseditorfactory.h b/src/plugins/qmljseditor/qmljseditorfactory.h
index 8370f68a53c74596900abe5d9b34720aa7e9452d..e8e047cd9b8f9ae8fb464afc9cde6ed2951af6b7 100644
--- a/src/plugins/qmljseditor/qmljseditorfactory.h
+++ b/src/plugins/qmljseditor/qmljseditorfactory.h
@@ -42,7 +42,7 @@ class QmlJSEditorFactory : public Core::IEditorFactory
 public:
     QmlJSEditorFactory(QObject *parent);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 } // namespace Internal
diff --git a/src/plugins/qnx/bardescriptoreditorfactory.cpp b/src/plugins/qnx/bardescriptoreditorfactory.cpp
index befa564bf00cc09ec4f6e87db1f35250ef2505f4..529b6272c3b00308e820c24939f22996e2cc08fe 100644
--- a/src/plugins/qnx/bardescriptoreditorfactory.cpp
+++ b/src/plugins/qnx/bardescriptoreditorfactory.cpp
@@ -65,8 +65,8 @@ BarDescriptorEditorFactory::BarDescriptorEditorFactory(QObject *parent)
     new BarDescriptorActionHandler(this);
 }
 
-Core::IEditor *BarDescriptorEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *BarDescriptorEditorFactory::createEditor()
 {
-    BarDescriptorEditorWidget *editorWidget = new BarDescriptorEditorWidget(parent);
+    BarDescriptorEditorWidget *editorWidget = new BarDescriptorEditorWidget();
     return editorWidget->editor();
 }
diff --git a/src/plugins/qnx/bardescriptoreditorfactory.h b/src/plugins/qnx/bardescriptoreditorfactory.h
index 9d4621ebc7d883d3dd143c3447cc821208f2f800..2edf3cf7c2baa6a672cacbd1c61c123469cd8a9a 100644
--- a/src/plugins/qnx/bardescriptoreditorfactory.h
+++ b/src/plugins/qnx/bardescriptoreditorfactory.h
@@ -44,7 +44,7 @@ class BarDescriptorEditorFactory : public Core::IEditorFactory
 public:
     explicit BarDescriptorEditorFactory(QObject *parent = 0);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 };
 
 } // namespace Internal
diff --git a/src/plugins/qnx/bardescriptoreditorwidget.h b/src/plugins/qnx/bardescriptoreditorwidget.h
index ab089bbf052d8d25da86996d09b63d6341cb22a8..f20cf40bc338077af5bcae0f9913230ae8147e1b 100644
--- a/src/plugins/qnx/bardescriptoreditorwidget.h
+++ b/src/plugins/qnx/bardescriptoreditorwidget.h
@@ -66,7 +66,7 @@ class BarDescriptorEditorWidget : public QStackedWidget
     Q_OBJECT
 
 public:
-    explicit BarDescriptorEditorWidget(QWidget *parent);
+    explicit BarDescriptorEditorWidget(QWidget *parent = 0);
 
     Core::IEditor *editor() const;
 
diff --git a/src/plugins/resourceeditor/resourceeditorfactory.cpp b/src/plugins/resourceeditor/resourceeditorfactory.cpp
index 6999022d4f33e8baede19ae904ebca2a03603101..824aed6c20a715681b57cdf263d3e40f85cc106e 100644
--- a/src/plugins/resourceeditor/resourceeditorfactory.cpp
+++ b/src/plugins/resourceeditor/resourceeditorfactory.cpp
@@ -53,8 +53,8 @@ ResourceEditorFactory::ResourceEditorFactory(ResourceEditorPlugin *plugin) :
     Core::FileIconProvider::registerIconOverlayForSuffix(":/resourceeditor/images/qt_qrc.png", "qrc");
 }
 
-Core::IEditor *ResourceEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *ResourceEditorFactory::createEditor()
 {
     Core::Context context(ResourceEditor::Constants::C_RESOURCEEDITOR);
-    return new ResourceEditorW(context, m_plugin, parent);
+    return new ResourceEditorW(context, m_plugin);
 }
diff --git a/src/plugins/resourceeditor/resourceeditorfactory.h b/src/plugins/resourceeditor/resourceeditorfactory.h
index 26ae4ece1e84477fda55a2c6f1f3e8f840133edb..67cf83a840f0caa55cca0759dfe24a00bc48ab04 100644
--- a/src/plugins/resourceeditor/resourceeditorfactory.h
+++ b/src/plugins/resourceeditor/resourceeditorfactory.h
@@ -47,7 +47,7 @@ class ResourceEditorFactory : public Core::IEditorFactory
 public:
     explicit ResourceEditorFactory(ResourceEditorPlugin *plugin);
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private:
     ResourceEditorPlugin *m_plugin;
diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp
index 7632efc87a3d057b058bc8b6f2fd30190289c989..3907c42cc089ed2fd8cedcafcdfb9476c20090c7 100644
--- a/src/plugins/texteditor/basetexteditor.cpp
+++ b/src/plugins/texteditor/basetexteditor.cpp
@@ -6302,7 +6302,7 @@ void BaseTextEditor::setFileEncodingLabelText(const QString &text)
 QString BaseTextEditor::contextHelpId() const
 {
     if (m_contextHelpId.isEmpty())
-        emit const_cast<BaseTextEditor*>(this)->contextHelpIdRequested(m_editorWidget->editor(),
+        emit const_cast<BaseTextEditor*>(this)->contextHelpIdRequested(const_cast<BaseTextEditor*>(this),
                                                                        m_editorWidget->textCursor().position());
     return m_contextHelpId;
 }
diff --git a/src/plugins/texteditor/plaintexteditor.cpp b/src/plugins/texteditor/plaintexteditor.cpp
index 08f2076f77aee9ec2252c891ad1ac29a115ff003..4893aa220938cb117b6d271f8eb78931a79126a0 100644
--- a/src/plugins/texteditor/plaintexteditor.cpp
+++ b/src/plugins/texteditor/plaintexteditor.cpp
@@ -75,9 +75,9 @@ PlainTextEditorWidget::PlainTextEditorWidget(QWidget *parent)
     connect(Manager::instance(), SIGNAL(mimeTypesRegistered()), this, SLOT(configure()));
 }
 
-IEditor *PlainTextEditor::duplicate(QWidget *parent)
+IEditor *PlainTextEditor::duplicate()
 {
-    PlainTextEditorWidget *newWidget = new PlainTextEditorWidget(parent);
+    PlainTextEditorWidget *newWidget = new PlainTextEditorWidget();
     newWidget->duplicateFrom(editorWidget());
     TextEditorSettings::initializeEditor(newWidget);
     return newWidget->editor();
diff --git a/src/plugins/texteditor/plaintexteditor.h b/src/plugins/texteditor/plaintexteditor.h
index d9f1452ab938205bc8202b33c9d78643ab6a9110..76909fc78ca2bc78e43cecf79e2673a24243b75f 100644
--- a/src/plugins/texteditor/plaintexteditor.h
+++ b/src/plugins/texteditor/plaintexteditor.h
@@ -50,7 +50,7 @@ public:
     PlainTextEditor(PlainTextEditorWidget *);
 
     bool duplicateSupported() const { return true; }
-    Core::IEditor *duplicate(QWidget *parent);
+    Core::IEditor *duplicate();
     Core::Id id() const;
 };
 
@@ -59,7 +59,7 @@ class TEXTEDITOR_EXPORT PlainTextEditorWidget : public BaseTextEditorWidget
     Q_OBJECT
 
 public:
-    PlainTextEditorWidget(QWidget *parent);
+    PlainTextEditorWidget(QWidget *parent = 0);
 
     void configure(const QString& mimeType);
     void configure(const Core::MimeType &mimeType);
diff --git a/src/plugins/texteditor/plaintexteditorfactory.cpp b/src/plugins/texteditor/plaintexteditorfactory.cpp
index f4836ce624e9f9e44317aa52192065b254bb0fe8..f57cf8c2312f3a5db68df0c38e5a3df5bee0b5e6 100644
--- a/src/plugins/texteditor/plaintexteditorfactory.cpp
+++ b/src/plugins/texteditor/plaintexteditorfactory.cpp
@@ -58,9 +58,9 @@ PlainTextEditorFactory::PlainTextEditorFactory(QObject *parent)
         TextEditorActionHandler::UnCollapseAll);
 }
 
-Core::IEditor *PlainTextEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *PlainTextEditorFactory::createEditor()
 {
-    PlainTextEditorWidget *rc = new PlainTextEditorWidget(parent);
+    PlainTextEditorWidget *rc = new PlainTextEditorWidget();
     TextEditorSettings::initializeEditor(rc);
     connect(rc, SIGNAL(configured(Core::IEditor*)),
             this, SLOT(updateEditorInfoBar(Core::IEditor*)));
diff --git a/src/plugins/texteditor/plaintexteditorfactory.h b/src/plugins/texteditor/plaintexteditorfactory.h
index e7c6b377fc66d5799338979fbf106396c37e5e99..8633fc89498e5687e005b575d9f5a08da453f506 100644
--- a/src/plugins/texteditor/plaintexteditorfactory.h
+++ b/src/plugins/texteditor/plaintexteditorfactory.h
@@ -45,7 +45,7 @@ public:
     PlainTextEditorFactory(QObject *parent = 0);
 
     using Core::IEditorFactory::addMimeType;
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private slots:
     void updateEditorInfoBar(Core::IEditor *editor);
diff --git a/src/plugins/texteditor/snippets/snippeteditor.h b/src/plugins/texteditor/snippets/snippeteditor.h
index 33229ef3d07b096cf87dc7e91331af74deaee0a4..564eccaa78e1443c083ec1662db5c00c57647208 100644
--- a/src/plugins/texteditor/snippets/snippeteditor.h
+++ b/src/plugins/texteditor/snippets/snippeteditor.h
@@ -49,7 +49,7 @@ public:
     SnippetEditor(SnippetEditorWidget *editorWidget);
 
     bool duplicateSupported() const { return false; }
-    Core::IEditor *duplicate(QWidget * /* parent */ ) { return 0; }
+    Core::IEditor *duplicate() { return 0; }
     Core::Id id() const;
 };
 
diff --git a/src/plugins/vcsbase/basevcseditorfactory.cpp b/src/plugins/vcsbase/basevcseditorfactory.cpp
index 186d3088604c30a5e9a940542fead0204b000fe5..346eed104326b5c61d293ffcd86b72b13b73be73 100644
--- a/src/plugins/vcsbase/basevcseditorfactory.cpp
+++ b/src/plugins/vcsbase/basevcseditorfactory.cpp
@@ -77,9 +77,9 @@ BaseVcsEditorFactory::~BaseVcsEditorFactory()
     delete d;
 }
 
-Core::IEditor *BaseVcsEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *BaseVcsEditorFactory::createEditor()
 {
-    VcsBaseEditorWidget *vcsEditor = createVcsBaseEditor(d->m_type, parent);
+    VcsBaseEditorWidget *vcsEditor = createVcsBaseEditor(d->m_type);
 
     vcsEditor->setMimeType(mimeTypes().front());
 
diff --git a/src/plugins/vcsbase/basevcseditorfactory.h b/src/plugins/vcsbase/basevcseditorfactory.h
index a58cb20e43aef21e7dc97d8bb7f96d96c5e6a2b8..d239b85e562edf7cfbd596b6012926c2a7710f58 100644
--- a/src/plugins/vcsbase/basevcseditorfactory.h
+++ b/src/plugins/vcsbase/basevcseditorfactory.h
@@ -48,13 +48,13 @@ public:
     explicit BaseVcsEditorFactory(const VcsBaseEditorParameters *type);
     ~BaseVcsEditorFactory();
 
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private:
     // Implement to create and initialize (call init()) a
     // VcsBaseEditor subclass
     virtual VcsBaseEditorWidget *createVcsBaseEditor(const VcsBaseEditorParameters *type,
-                                               QWidget *parent) = 0;
+                                               QWidget *parent = 0) = 0;
 
     Internal::BaseVcsEditorFactoryPrivate *const d;
 };
@@ -70,7 +70,7 @@ public:
 
 private:
     VcsBaseEditorWidget *createVcsBaseEditor(const VcsBaseEditorParameters *type,
-                                             QWidget *parent);
+                                             QWidget *parent = 0);
     QObject *m_describeReceiver;
     const char *m_describeSlot;
 };
diff --git a/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp b/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp
index 15a1f1eb3d10a2339f6ba23a19865ed7972dc4cd..08c265006caee2a97ac9cadd80ce1e43b5734442 100644
--- a/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp
+++ b/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp
@@ -44,9 +44,9 @@ BaseVcsSubmitEditorFactory::~BaseVcsSubmitEditorFactory()
 {
 }
 
-Core::IEditor *BaseVcsSubmitEditorFactory::createEditor(QWidget *parent)
+Core::IEditor *BaseVcsSubmitEditorFactory::createEditor()
 {
-    return createBaseSubmitEditor(m_parameters, parent);
+    return createBaseSubmitEditor(m_parameters);
 }
 
 } // namespace VcsBase
diff --git a/src/plugins/vcsbase/basevcssubmiteditorfactory.h b/src/plugins/vcsbase/basevcssubmiteditorfactory.h
index fa6dbff0bfd6af6bf98f7bbe19d7f18b034b1a20..acf91cb3a4a5b4a93a09bac515ee73fb16b456cf 100644
--- a/src/plugins/vcsbase/basevcssubmiteditorfactory.h
+++ b/src/plugins/vcsbase/basevcssubmiteditorfactory.h
@@ -50,12 +50,12 @@ protected:
     ~BaseVcsSubmitEditorFactory();
 
 public:
-    Core::IEditor *createEditor(QWidget *parent);
+    Core::IEditor *createEditor();
 
 private:
     virtual VcsBaseSubmitEditor
         *createBaseSubmitEditor(const VcsBaseSubmitEditorParameters *parameters,
-                                QWidget *parent) = 0;
+                                QWidget *parent = 0) = 0;
 
     const VcsBaseSubmitEditorParameters *const m_parameters; // Not owned.
 };
@@ -74,7 +74,7 @@ public:
 
 private:
     VcsBaseSubmitEditor *createBaseSubmitEditor
-        (const VcsBaseSubmitEditorParameters *parameters, QWidget *parent)
+        (const VcsBaseSubmitEditorParameters *parameters, QWidget *parent = 0)
     {
         return new Editor(parameters, parent);
     }