From a90b1c26b1d9f7b76dad51e5ec5f2c15f8816ad6 Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Mon, 12 Aug 2019 14:12:01 +0200 Subject: [PATCH] CMake: Remove CMakeProject::buildTargetTitles The only user can also get this information from the relevant CMakeBuildConfiguration. Change-Id: I80e176ef0a8bc427f6adbf75b20e29f38d7b949f Reviewed-by: Eike Ziller --- src/plugins/cmakeprojectmanager/cmakebuildstep.cpp | 12 ++++++++---- src/plugins/cmakeprojectmanager/cmakebuildstep.h | 2 ++ src/plugins/cmakeprojectmanager/cmakeproject.cpp | 6 ------ src/plugins/cmakeprojectmanager/cmakeproject.h | 2 -- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/cmakebuildstep.cpp b/src/plugins/cmakeprojectmanager/cmakebuildstep.cpp index 830a3fb57fa..2c89e091b1d 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildstep.cpp +++ b/src/plugins/cmakeprojectmanager/cmakebuildstep.cpp @@ -108,8 +108,7 @@ void CMakeBuildStep::handleBuildTargetChanges(bool success) { if (!success) return; // Do not change when parsing failed. - if (!isCurrentExecutableTarget(m_buildTarget) - && !static_cast(project())->buildTargetTitles().contains(m_buildTarget)) { + if (!isCurrentExecutableTarget(m_buildTarget) && !knownBuildTargets().contains(m_buildTarget)) { setBuildTarget(defaultBuildTarget()); } emit buildTargetsChanged(); @@ -374,6 +373,12 @@ Utils::CommandLine CMakeBuildStep::cmakeCommand(RunConfiguration *rc) const return cmd; } +QStringList CMakeBuildStep::knownBuildTargets() +{ + auto bc = qobject_cast(buildConfiguration()); + return bc ? bc->buildTargetTitles() : QStringList(); +} + QString CMakeBuildStep::cleanTarget() { return QString("clean"); @@ -472,8 +477,7 @@ void CMakeBuildStepConfigWidget::buildTargetsChanged() QSignalBlocker blocker(m_buildTargetsList); m_buildTargetsList->clear(); - auto pro = static_cast(m_buildStep->project()); - QStringList targetList = pro->buildTargetTitles(); + QStringList targetList = m_buildStep->knownBuildTargets(); targetList.sort(); QFont italics; diff --git a/src/plugins/cmakeprojectmanager/cmakebuildstep.h b/src/plugins/cmakeprojectmanager/cmakebuildstep.h index 5f2b9336b24..28c6ccb46e5 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildstep.h +++ b/src/plugins/cmakeprojectmanager/cmakebuildstep.h @@ -71,6 +71,8 @@ public: Utils::CommandLine cmakeCommand(ProjectExplorer::RunConfiguration *rc) const; + QStringList knownBuildTargets(); + QVariantMap toMap() const override; static QString cleanTarget(); diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.cpp b/src/plugins/cmakeprojectmanager/cmakeproject.cpp index 4fb6bd297a6..43702812e67 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeproject.cpp @@ -392,12 +392,6 @@ void CMakeProject::startParsing(int reparseParameters) bc->m_buildDirManager.parse(reparseParameters); } -QStringList CMakeProject::buildTargetTitles() const -{ - CMakeBuildConfiguration *bc = activeBc(this); - return bc ? bc->buildTargetTitles() : QStringList(); -} - bool CMakeProject::setupTarget(Target *t) { t->updateDefaultBuildConfigurations(); diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.h b/src/plugins/cmakeprojectmanager/cmakeproject.h index 645deacf8dd..4413c69b91b 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.h +++ b/src/plugins/cmakeprojectmanager/cmakeproject.h @@ -63,8 +63,6 @@ public: explicit CMakeProject(const Utils::FilePath &filename); ~CMakeProject() final; - QStringList buildTargetTitles() const; - ProjectExplorer::Tasks projectIssues(const ProjectExplorer::Kit *k) const final; void runCMake();