From 51bca851174c347edcc6b148ee3a67d70e5fa9eb Mon Sep 17 00:00:00 2001
From: Daniel Teske <daniel.teske@digia.com>
Date: Thu, 8 Nov 2012 18:02:50 +0100
Subject: [PATCH] Replace BuildConfigWidge with NamedWidget

They have a identical interface.

Change-Id: Ia626496fbaffedefff6ee20b958cd505085d89f7
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
---
 .../autotoolsbuildconfiguration.cpp           |  2 +-
 .../autotoolsbuildconfiguration.h             |  2 +-
 .../autotoolsbuildsettingswidget.h            |  4 +--
 .../cmakebuildconfiguration.cpp               |  2 +-
 .../cmakebuildconfiguration.h                 |  2 +-
 .../cmakeprojectmanager/cmakeproject.h        |  4 +--
 .../genericbuildconfiguration.cpp             |  2 +-
 .../genericbuildconfiguration.h               |  6 ++--
 .../projectexplorer/buildconfiguration.cpp    |  4 +--
 .../projectexplorer/buildconfiguration.h      |  6 ++--
 .../projectexplorer/buildenvironmentwidget.h  |  3 +-
 .../buildsettingspropertiespage.cpp           | 10 +++----
 .../buildsettingspropertiespage.h             |  8 ++---
 src/plugins/projectexplorer/buildstep.h       | 30 -------------------
 .../projectexplorer/buildstepspage.cpp        |  2 +-
 src/plugins/projectexplorer/buildstepspage.h  |  2 +-
 src/plugins/projectexplorer/project.h         |  2 +-
 src/plugins/projectexplorer/target.h          |  2 +-
 .../qt4buildconfiguration.cpp                 |  2 +-
 .../qt4projectmanager/qt4buildconfiguration.h |  2 +-
 .../qt4projectconfigwidget.cpp                |  2 +-
 .../qt4projectconfigwidget.h                  |  4 +--
 22 files changed, 37 insertions(+), 66 deletions(-)

diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp
index 1e71add966d..e7194452e46 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp
@@ -65,7 +65,7 @@ AutotoolsBuildConfiguration::AutotoolsBuildConfiguration(ProjectExplorer::Target
         m_buildDirectory = project->defaultBuildDirectory();
 }
 
-BuildConfigWidget *AutotoolsBuildConfiguration::createConfigWidget()
+NamedWidget *AutotoolsBuildConfiguration::createConfigWidget()
 {
     return new AutotoolsBuildSettingsWidget(this);
 }
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h
index 362dec94df6..e7a622adb8d 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h
@@ -48,7 +48,7 @@ class AutotoolsBuildConfiguration : public ProjectExplorer::BuildConfiguration
 public:
     explicit AutotoolsBuildConfiguration(ProjectExplorer::Target *parent);
 
-    ProjectExplorer::BuildConfigWidget *createConfigWidget();
+    ProjectExplorer::NamedWidget *createConfigWidget();
 
     QString buildDirectory() const;
     void setBuildDirectory(const QString &buildDirectory);
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h b/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h
index b8f4fb79290..d2c4dbcf22f 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h
@@ -32,7 +32,7 @@
 #ifndef AUTOTOOLSBUILDSETTINGSWIDGET_H
 #define AUTOTOOLSBUILDSETTINGSWIDGET_H
 
-#include <projectexplorer/buildstep.h>
+#include <projectexplorer/namedwidget.h>
 
 QT_BEGIN_NAMESPACE
 class QComboBox;
@@ -52,7 +52,7 @@ class AutotoolsBuildConfiguration;
  *
  * Provides an editor to configure the build directory and build steps.
  */
-class AutotoolsBuildSettingsWidget : public ProjectExplorer::BuildConfigWidget
+class AutotoolsBuildSettingsWidget : public ProjectExplorer::NamedWidget
 {
     Q_OBJECT
 
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
index d35aaf60996..838f52c03d4 100644
--- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
@@ -106,7 +106,7 @@ void CMakeBuildConfiguration::setUseNinja(bool useNninja)
 CMakeBuildConfiguration::~CMakeBuildConfiguration()
 { }
 
-ProjectExplorer::BuildConfigWidget *CMakeBuildConfiguration::createConfigWidget()
+ProjectExplorer::NamedWidget *CMakeBuildConfiguration::createConfigWidget()
 {
     return new CMakeBuildSettingsWidget(this);
 }
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
index 973766394c1..c46880aaa99 100644
--- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
+++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.h
@@ -51,7 +51,7 @@ public:
     CMakeBuildConfiguration(ProjectExplorer::Target *parent);
     ~CMakeBuildConfiguration();
 
-    ProjectExplorer::BuildConfigWidget *createConfigWidget();
+    ProjectExplorer::NamedWidget *createConfigWidget();
     QString buildDirectory() const;
 
     void setBuildDirectory(const QString &buildDirectory);
diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.h b/src/plugins/cmakeprojectmanager/cmakeproject.h
index 392af8c3b20..8c8a74a8695 100644
--- a/src/plugins/cmakeprojectmanager/cmakeproject.h
+++ b/src/plugins/cmakeprojectmanager/cmakeproject.h
@@ -37,8 +37,8 @@
 
 #include <projectexplorer/project.h>
 #include <projectexplorer/projectnodes.h>
-#include <projectexplorer/buildstep.h>
 #include <projectexplorer/buildconfiguration.h>
+#include <projectexplorer/namedwidget.h>
 #include <coreplugin/idocument.h>
 #include <coreplugin/editormanager/editormanager.h>
 #include <coreplugin/editormanager/ieditor.h>
@@ -224,7 +224,7 @@ private:
     QString m_fileName;
 };
 
-class CMakeBuildSettingsWidget : public ProjectExplorer::BuildConfigWidget
+class CMakeBuildSettingsWidget : public ProjectExplorer::NamedWidget
 {
     Q_OBJECT
 public:
diff --git a/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp b/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp
index 04f0952f28f..d0650402316 100644
--- a/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp
+++ b/src/plugins/genericprojectmanager/genericbuildconfiguration.cpp
@@ -105,7 +105,7 @@ void GenericBuildConfiguration::setBuildDirectory(const QString &buildDirectory)
     emit buildDirectoryChanged();
 }
 
-BuildConfigWidget *GenericBuildConfiguration::createConfigWidget()
+NamedWidget *GenericBuildConfiguration::createConfigWidget()
 {
     return new GenericBuildSettingsWidget(this);
 }
diff --git a/src/plugins/genericprojectmanager/genericbuildconfiguration.h b/src/plugins/genericprojectmanager/genericbuildconfiguration.h
index d090bb37413..c3348763dd8 100644
--- a/src/plugins/genericprojectmanager/genericbuildconfiguration.h
+++ b/src/plugins/genericprojectmanager/genericbuildconfiguration.h
@@ -31,7 +31,7 @@
 #define GENERICBUILDCONFIGURATION_H
 
 #include <projectexplorer/buildconfiguration.h>
-#include <projectexplorer/buildstep.h> // for BuildConfigWidget
+#include <projectexplorer/namedwidget.h>
 
 namespace Utils { class PathChooser; }
 
@@ -49,7 +49,7 @@ class GenericBuildConfiguration : public ProjectExplorer::BuildConfiguration
 public:
     explicit GenericBuildConfiguration(ProjectExplorer::Target *parent);
 
-    ProjectExplorer::BuildConfigWidget *createConfigWidget();
+    ProjectExplorer::NamedWidget *createConfigWidget();
     QString buildDirectory() const;
 
     QString rawBuildDirectory() const;
@@ -89,7 +89,7 @@ private:
     bool canHandle(const ProjectExplorer::Target *t) const;
 };
 
-class GenericBuildSettingsWidget : public ProjectExplorer::BuildConfigWidget
+class GenericBuildSettingsWidget : public ProjectExplorer::NamedWidget
 {
     Q_OBJECT
 
diff --git a/src/plugins/projectexplorer/buildconfiguration.cpp b/src/plugins/projectexplorer/buildconfiguration.cpp
index 0beb3879432..660d9ad9fc8 100644
--- a/src/plugins/projectexplorer/buildconfiguration.cpp
+++ b/src/plugins/projectexplorer/buildconfiguration.cpp
@@ -117,9 +117,9 @@ BuildConfiguration::~BuildConfiguration()
     delete m_macroExpander;
 }
 
-QList<BuildConfigWidget*> BuildConfiguration::createSubConfigWidgets()
+QList<NamedWidget *> BuildConfiguration::createSubConfigWidgets()
 {
-    return QList<BuildConfigWidget *>() << new ProjectExplorer::BuildEnvironmentWidget(this);
+    return QList<NamedWidget *>() << new ProjectExplorer::BuildEnvironmentWidget(this);
 }
 
 Utils::AbstractMacroExpander *BuildConfiguration::macroExpander()
diff --git a/src/plugins/projectexplorer/buildconfiguration.h b/src/plugins/projectexplorer/buildconfiguration.h
index 33a96b8c45d..50f6f5baaae 100644
--- a/src/plugins/projectexplorer/buildconfiguration.h
+++ b/src/plugins/projectexplorer/buildconfiguration.h
@@ -44,7 +44,7 @@ class AbstractMacroExpander;
 namespace ProjectExplorer {
 
 class BuildConfiguration;
-class BuildConfigWidget;
+class NamedWidget;
 class BuildStepList;
 class Kit;
 class Target;
@@ -60,8 +60,8 @@ public:
 
     virtual QString buildDirectory() const = 0;
 
-    virtual BuildConfigWidget *createConfigWidget() = 0;
-    virtual QList<BuildConfigWidget*> createSubConfigWidgets();
+    virtual ProjectExplorer::NamedWidget *createConfigWidget() = 0;
+    virtual QList<NamedWidget *> createSubConfigWidgets();
 
     // Maybe the BuildConfiguration is not the best place for the environment
     Utils::Environment baseEnvironment() const;
diff --git a/src/plugins/projectexplorer/buildenvironmentwidget.h b/src/plugins/projectexplorer/buildenvironmentwidget.h
index e9cefd81ff4..3853920c3f4 100644
--- a/src/plugins/projectexplorer/buildenvironmentwidget.h
+++ b/src/plugins/projectexplorer/buildenvironmentwidget.h
@@ -31,6 +31,7 @@
 #define BUILDENVIRONMENTWIDGET_H
 
 #include <projectexplorer/buildstep.h>
+#include <projectexplorer/namedwidget.h>
 
 QT_BEGIN_NAMESPACE
 class QCheckBox;
@@ -41,7 +42,7 @@ namespace ProjectExplorer {
 class EnvironmentWidget;
 class BuildConfiguration;
 
-class PROJECTEXPLORER_EXPORT BuildEnvironmentWidget : public BuildConfigWidget
+class PROJECTEXPLORER_EXPORT BuildEnvironmentWidget : public NamedWidget
 {
     Q_OBJECT
 
diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp
index 87a636d236e..c3e3548b5e1 100644
--- a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp
+++ b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp
@@ -175,7 +175,7 @@ BuildSettingsWidget::BuildSettingsWidget(Target *target) :
     connect(m_target, SIGNAL(kitChanged()), this, SLOT(updateAddButtonMenu()));
 }
 
-void BuildSettingsWidget::addSubWidget(BuildConfigWidget *widget)
+void BuildSettingsWidget::addSubWidget(NamedWidget *widget)
 {
     widget->setContentsMargins(0, 10, 0, 0);
 
@@ -205,7 +205,7 @@ void BuildSettingsWidget::clear()
     m_labels.clear();
 }
 
-QList<BuildConfigWidget *> BuildSettingsWidget::subWidgets() const
+QList<NamedWidget *> BuildSettingsWidget::subWidgets() const
 {
     return m_subWidgets;
 }
@@ -239,14 +239,14 @@ void BuildSettingsWidget::updateBuildSettings()
         return;
 
     // Add pages
-    BuildConfigWidget *generalConfigWidget = m_buildConfiguration->createConfigWidget();
+    NamedWidget *generalConfigWidget = m_buildConfiguration->createConfigWidget();
     addSubWidget(generalConfigWidget);
 
     addSubWidget(new BuildStepsPage(m_buildConfiguration, Core::Id(Constants::BUILDSTEPS_BUILD)));
     addSubWidget(new BuildStepsPage(m_buildConfiguration, Core::Id(Constants::BUILDSTEPS_CLEAN)));
 
-    QList<BuildConfigWidget *> subConfigWidgets = m_buildConfiguration->createSubConfigWidgets();
-    foreach (BuildConfigWidget *subConfigWidget, subConfigWidgets)
+    QList<NamedWidget *> subConfigWidgets = m_buildConfiguration->createSubConfigWidgets();
+    foreach (NamedWidget *subConfigWidget, subConfigWidgets)
         addSubWidget(subConfigWidget);
 }
 
diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.h b/src/plugins/projectexplorer/buildsettingspropertiespage.h
index 019cde728b0..d2c3286cc92 100644
--- a/src/plugins/projectexplorer/buildsettingspropertiespage.h
+++ b/src/plugins/projectexplorer/buildsettingspropertiespage.h
@@ -45,8 +45,8 @@ QT_END_NAMESPACE
 namespace ProjectExplorer {
 
 class BuildConfiguration;
-class BuildConfigWidget;
 class IBuildStepFactory;
+class NamedWidget;
 
 namespace Internal {
 
@@ -73,8 +73,8 @@ public:
     ~BuildSettingsWidget();
 
     void clear();
-    void addSubWidget(BuildConfigWidget *widget);
-    QList<BuildConfigWidget *> subWidgets() const;
+    void addSubWidget(ProjectExplorer::NamedWidget *widget);
+    QList<ProjectExplorer::NamedWidget *> subWidgets() const;
 
 private slots:
     void updateBuildSettings();
@@ -103,7 +103,7 @@ private:
     QComboBox *m_buildConfigurationComboBox;
     QMenu *m_addButtonMenu;
 
-    QList<BuildConfigWidget *> m_subWidgets;
+    QList<NamedWidget *> m_subWidgets;
     QList<QLabel *> m_labels;
 };
 
diff --git a/src/plugins/projectexplorer/buildstep.h b/src/plugins/projectexplorer/buildstep.h
index 68f7f633d07..f3f9c495c1c 100644
--- a/src/plugins/projectexplorer/buildstep.h
+++ b/src/plugins/projectexplorer/buildstep.h
@@ -118,36 +118,6 @@ public:
     virtual BuildStep *clone(BuildStepList *parent, BuildStep *product) = 0;
 };
 
-class PROJECTEXPLORER_EXPORT BuildConfigWidget
-    : public QWidget
-{
-    Q_OBJECT
-public:
-    BuildConfigWidget()
-        :QWidget(0)
-        {}
-
-    QString displayName() const
-    {
-        return m_displayName;
-    }
-
-signals:
-    void displayNameChanged(const QString &);
-
-protected:
-    void setDisplayName(const QString &displayName)
-    {
-        if (m_displayName == displayName)
-            return;
-        m_displayName = displayName;
-        emit displayNameChanged(m_displayName);
-    }
-
-private:
-    QString m_displayName;
-};
-
 class PROJECTEXPLORER_EXPORT BuildStepConfigWidget
     : public QWidget
 {
diff --git a/src/plugins/projectexplorer/buildstepspage.cpp b/src/plugins/projectexplorer/buildstepspage.cpp
index 52d760e7ff7..bcbdea0f382 100644
--- a/src/plugins/projectexplorer/buildstepspage.cpp
+++ b/src/plugins/projectexplorer/buildstepspage.cpp
@@ -492,7 +492,7 @@ void BuildStepListWidget::updateBuildStepButtonsState()
 }
 
 BuildStepsPage::BuildStepsPage(BuildConfiguration *bc, Core::Id id) :
-    BuildConfigWidget(),
+    NamedWidget(),
     m_id(id),
     m_widget(new BuildStepListWidget(this))
 {
diff --git a/src/plugins/projectexplorer/buildstepspage.h b/src/plugins/projectexplorer/buildstepspage.h
index 70d46cc41a6..8da94d02014 100644
--- a/src/plugins/projectexplorer/buildstepspage.h
+++ b/src/plugins/projectexplorer/buildstepspage.h
@@ -151,7 +151,7 @@ namespace Ui {
     class BuildStepsPage;
 }
 
-class BuildStepsPage : public BuildConfigWidget
+class BuildStepsPage : public NamedWidget
 {
     Q_OBJECT
 
diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h
index 56b9a15c540..cef039e8166 100644
--- a/src/plugins/projectexplorer/project.h
+++ b/src/plugins/projectexplorer/project.h
@@ -45,11 +45,11 @@ class Context;
 
 namespace ProjectExplorer {
 
-class BuildConfigWidget;
 class IProjectManager;
 class EditorConfiguration;
 class ProjectNode;
 class Kit;
+class NamedWidget;
 class Target;
 class ProjectPrivate;
 
diff --git a/src/plugins/projectexplorer/target.h b/src/plugins/projectexplorer/target.h
index 805e3c8c6bf..03d8d8d81bf 100644
--- a/src/plugins/projectexplorer/target.h
+++ b/src/plugins/projectexplorer/target.h
@@ -49,7 +49,7 @@ class DeployConfigurationFactory;
 class IRunConfigurationFactory;
 class Kit;
 class Project;
-class BuildConfigWidget;
+class NamedWidget;
 
 class TargetPrivate;
 
diff --git a/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp b/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
index d6191c57672..97e243effd8 100644
--- a/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
+++ b/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
@@ -184,7 +184,7 @@ void Qt4BuildConfiguration::emitBuildDirectoryChanged()
     }
 }
 
-BuildConfigWidget *Qt4BuildConfiguration::createConfigWidget()
+NamedWidget *Qt4BuildConfiguration::createConfigWidget()
 {
     return new Qt4ProjectConfigWidget(this);
 }
diff --git a/src/plugins/qt4projectmanager/qt4buildconfiguration.h b/src/plugins/qt4projectmanager/qt4buildconfiguration.h
index b2348b8306d..4a792966135 100644
--- a/src/plugins/qt4projectmanager/qt4buildconfiguration.h
+++ b/src/plugins/qt4projectmanager/qt4buildconfiguration.h
@@ -55,7 +55,7 @@ public:
     explicit Qt4BuildConfiguration(ProjectExplorer::Target *target);
     ~Qt4BuildConfiguration();
 
-    ProjectExplorer::BuildConfigWidget *createConfigWidget();
+    ProjectExplorer::NamedWidget *createConfigWidget();
     QString buildDirectory() const;
     bool shadowBuild() const;
     QString shadowBuildDirectory() const;
diff --git a/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp b/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp
index f52739ce08a..a14f2ad67e1 100644
--- a/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp
+++ b/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp
@@ -63,7 +63,7 @@ using namespace Qt4ProjectManager::Internal;
 using namespace ProjectExplorer;
 
 Qt4ProjectConfigWidget::Qt4ProjectConfigWidget(Qt4BuildConfiguration *bc)
-    : BuildConfigWidget(),
+    : NamedWidget(),
       m_buildConfiguration(bc),
       m_ignoreChange(false)
 {
diff --git a/src/plugins/qt4projectmanager/qt4projectconfigwidget.h b/src/plugins/qt4projectmanager/qt4projectconfigwidget.h
index 0c40fed346a..fdaddce3d7f 100644
--- a/src/plugins/qt4projectmanager/qt4projectconfigwidget.h
+++ b/src/plugins/qt4projectmanager/qt4projectconfigwidget.h
@@ -30,7 +30,7 @@
 #ifndef QT4PROJECTCONFIGWIDGET_H
 #define QT4PROJECTCONFIGWIDGET_H
 
-#include <projectexplorer/buildstep.h>
+#include <projectexplorer/namedwidget.h>
 
 QT_BEGIN_NAMESPACE
 class QAbstractButton;
@@ -49,7 +49,7 @@ namespace Ui {
 class Qt4ProjectConfigWidget;
 }
 
-class Qt4ProjectConfigWidget : public ProjectExplorer::BuildConfigWidget
+class Qt4ProjectConfigWidget : public ProjectExplorer::NamedWidget
 {
     Q_OBJECT
 public:
-- 
GitLab