From fba7d769369a30c98bd24c8e4d238b4c0746cbf7 Mon Sep 17 00:00:00 2001 From: dt <qtc-committer@nokia.com> Date: Wed, 23 Sep 2009 15:00:02 +0200 Subject: [PATCH] Canceling the wizard for a new cmake build configuration still created. Made virtual newBuildConfiguration return a bool --- src/plugins/cmakeprojectmanager/cmakeproject.cpp | 5 ++++- src/plugins/cmakeprojectmanager/cmakeproject.h | 2 +- src/plugins/genericprojectmanager/genericproject.cpp | 3 ++- src/plugins/genericprojectmanager/genericproject.h | 2 +- .../projectexplorer/buildsettingspropertiespage.cpp | 11 ++++++----- src/plugins/projectexplorer/project.h | 2 +- src/plugins/qmlprojectmanager/qmlproject.cpp | 3 ++- src/plugins/qmlprojectmanager/qmlproject.h | 2 +- src/plugins/qt4projectmanager/qt4project.cpp | 3 ++- src/plugins/qt4projectmanager/qt4project.h | 2 +- 10 files changed, 21 insertions(+), 14 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.cpp b/src/plugins/cmakeprojectmanager/cmakeproject.cpp index c4f423d3cbc..8b29c91f837 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeproject.cpp @@ -114,6 +114,7 @@ void CMakeProject::slotActiveBuildConfiguration() void CMakeProject::fileChanged(const QString &fileName) { + Q_UNUSED(fileName) if (m_insideFileChanged== true) return; m_insideFileChanged = true; @@ -537,7 +538,7 @@ QList<ProjectExplorer::BuildConfigWidget*> CMakeProject::subConfigWidgets() return list; } - void CMakeProject::newBuildConfiguration(const QString &buildConfiguration) + bool CMakeProject::newBuildConfiguration(const QString &buildConfiguration) { // Default to all if (targets().contains("all")) @@ -548,7 +549,9 @@ QList<ProjectExplorer::BuildConfigWidget*> CMakeProject::subConfigWidgets() setValue(buildConfiguration, "buildDirectory", copw.buildDirectory()); setValue(buildConfiguration, "msvcVersion", copw.msvcVersion()); parseCMakeLists(); + return true; } + return false; } ProjectExplorer::ProjectNode *CMakeProject::rootProjectNode() const diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.h b/src/plugins/cmakeprojectmanager/cmakeproject.h index f267b95a818..c9bbbfb903e 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.h +++ b/src/plugins/cmakeprojectmanager/cmakeproject.h @@ -94,7 +94,7 @@ public: // This method is called for new build configurations // You should probably set some default values in this method - virtual void newBuildConfiguration(const QString &buildConfiguration); + virtual bool newBuildConfiguration(const QString &buildConfiguration); virtual ProjectExplorer::ProjectNode *rootProjectNode() const; diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp index d012914dd90..71a78549392 100644 --- a/src/plugins/genericprojectmanager/genericproject.cpp +++ b/src/plugins/genericprojectmanager/genericproject.cpp @@ -437,9 +437,10 @@ QList<ProjectExplorer::BuildConfigWidget*> GenericProject::subConfigWidgets() return QList<ProjectExplorer::BuildConfigWidget*>(); } - void GenericProject::newBuildConfiguration(const QString &buildConfiguration) + bool GenericProject::newBuildConfiguration(const QString &buildConfiguration) { makeStep()->setBuildTarget(buildConfiguration, "all", true); + return true; } GenericProjectNode *GenericProject::rootProjectNode() const diff --git a/src/plugins/genericprojectmanager/genericproject.h b/src/plugins/genericprojectmanager/genericproject.h index 686ea7b9dd0..8ca62c83c5b 100644 --- a/src/plugins/genericprojectmanager/genericproject.h +++ b/src/plugins/genericprojectmanager/genericproject.h @@ -82,7 +82,7 @@ public: virtual ProjectExplorer::BuildConfigWidget *createConfigWidget(); virtual QList<ProjectExplorer::BuildConfigWidget*> subConfigWidgets(); - virtual void newBuildConfiguration(const QString &buildConfiguration); + virtual bool newBuildConfiguration(const QString &buildConfiguration); virtual GenericProjectNode *rootProjectNode() const; virtual QStringList files(FilesMode fileMode) const; diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp index 67e2cea8139..3fd4c8999ac 100644 --- a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp @@ -282,12 +282,13 @@ void BuildSettingsWidget::createConfiguration() newDisplayName += QString::number(i); } - m_project->addBuildConfiguration(newBuildConfiguration); - m_project->setDisplayNameFor(newBuildConfiguration, newDisplayName); - m_project->newBuildConfiguration(newBuildConfiguration); - m_buildConfiguration = newBuildConfiguration; + if (m_project->newBuildConfiguration(newBuildConfiguration)) { + m_project->addBuildConfiguration(newBuildConfiguration); + m_project->setDisplayNameFor(newBuildConfiguration, newDisplayName); + m_buildConfiguration = newBuildConfiguration; - updateBuildSettings(); + updateBuildSettings(); + } } void BuildSettingsWidget::cloneConfiguration() diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h index ad36023c2d8..456646c970d 100644 --- a/src/plugins/projectexplorer/project.h +++ b/src/plugins/projectexplorer/project.h @@ -132,7 +132,7 @@ public: /* This method is called for new build configurations. You should probably * set some default values in this method. */ - virtual void newBuildConfiguration(const QString &buildConfiguration) = 0; + virtual bool newBuildConfiguration(const QString &buildConfiguration) = 0; virtual ProjectNode *rootProjectNode() const = 0; diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp index 2d61bd50366..99fe21c147f 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.cpp +++ b/src/plugins/qmlprojectmanager/qmlproject.cpp @@ -214,8 +214,9 @@ QList<ProjectExplorer::BuildConfigWidget*> QmlProject::subConfigWidgets() return QList<ProjectExplorer::BuildConfigWidget*>(); } -void QmlProject::newBuildConfiguration(const QString &) +bool QmlProject::newBuildConfiguration(const QString &) { + return true; } QmlProjectNode *QmlProject::rootProjectNode() const diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h index 08e1164717f..df24dbfb382 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.h +++ b/src/plugins/qmlprojectmanager/qmlproject.h @@ -76,7 +76,7 @@ public: virtual ProjectExplorer::BuildConfigWidget *createConfigWidget(); virtual QList<ProjectExplorer::BuildConfigWidget*> subConfigWidgets(); - virtual void newBuildConfiguration(const QString &buildConfiguration); + virtual bool newBuildConfiguration(const QString &buildConfiguration); virtual QmlProjectNode *rootProjectNode() const; virtual QStringList files(FilesMode fileMode) const; diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp index fe7543dfc92..6a3164f5ba5 100644 --- a/src/plugins/qt4projectmanager/qt4project.cpp +++ b/src/plugins/qt4projectmanager/qt4project.cpp @@ -759,9 +759,10 @@ void Qt4Project::addDefaultBuild() } } -void Qt4Project::newBuildConfiguration(const QString &buildConfiguration) +bool Qt4Project::newBuildConfiguration(const QString &buildConfiguration) { Q_UNUSED(buildConfiguration) + return true; } void Qt4Project::proFileParseError(const QString &errorMessage) diff --git a/src/plugins/qt4projectmanager/qt4project.h b/src/plugins/qt4projectmanager/qt4project.h index 75efbc88584..5232d3e6c79 100644 --- a/src/plugins/qt4projectmanager/qt4project.h +++ b/src/plugins/qt4projectmanager/qt4project.h @@ -170,7 +170,7 @@ public: QList<ProjectExplorer::BuildConfigWidget*> subConfigWidgets(); void setQtVersion(const QString &buildConfiguration, int id); - virtual void newBuildConfiguration(const QString &buildConfiguration); + virtual bool newBuildConfiguration(const QString &buildConfiguration); QList<Internal::Qt4ProFileNode *> applicationProFiles() const; -- GitLab