diff options
author | Tobias Hunger <tobias.hunger@qt.io> | 2018-04-19 13:30:15 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@qt.io> | 2018-04-19 13:21:52 +0000 |
commit | 2a34f2177cfd07f1c3dc20485f9f3938cc2e35bd (patch) | |
tree | 98da139c94e3e5f0e4ab2ee17849cda0a58061e6 | |
parent | 460fdc02e058100baabdc5cdb658bbb9790a46ca (diff) |
ProjectExplorer: Hide build page for projects that do not build
Change-Id: I56feaab67690b5ece7379a9c1f676392230de107
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
-rw-r--r-- | src/plugins/projectexplorer/project.cpp | 8 | ||||
-rw-r--r-- | src/plugins/projectexplorer/project.h | 1 | ||||
-rw-r--r-- | src/plugins/projectexplorer/targetsettingspanel.cpp | 3 | ||||
-rw-r--r-- | src/plugins/pythoneditor/pythoneditorplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/qmlprojectmanager/qmlproject.cpp | 12 | ||||
-rw-r--r-- | src/plugins/qmlprojectmanager/qmlproject.h | 3 |
6 files changed, 18 insertions, 10 deletions
diff --git a/src/plugins/projectexplorer/project.cpp b/src/plugins/projectexplorer/project.cpp index 14e47cba43..c70202d39e 100644 --- a/src/plugins/projectexplorer/project.cpp +++ b/src/plugins/projectexplorer/project.cpp @@ -452,7 +452,8 @@ bool Project::copySteps(Target *sourceTarget, Target *newTarget) bool Project::setupTarget(Target *t) { - t->updateDefaultBuildConfigurations(); + if (needsBuildConfigurations()) + t->updateDefaultBuildConfigurations(); t->updateDefaultDeployConfigurations(); t->updateDefaultRunConfigurations(); return true; @@ -798,6 +799,11 @@ bool Project::needsConfiguration() const return d->m_targets.isEmpty(); } +bool Project::needsBuildConfigurations() const +{ + return true; +} + void Project::configureAsExampleProject(const QSet<Core::Id> &platforms) { Q_UNUSED(platforms); diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h index 8400ea6975..b51a44abae 100644 --- a/src/plugins/projectexplorer/project.h +++ b/src/plugins/projectexplorer/project.h @@ -150,6 +150,7 @@ public: void setNamedSettings(const QString &name, const QVariant &value); virtual bool needsConfiguration() const; + virtual bool needsBuildConfigurations() const; virtual void configureAsExampleProject(const QSet<Core::Id> &platforms); virtual ProjectImporter *projectImporter() const; diff --git a/src/plugins/projectexplorer/targetsettingspanel.cpp b/src/plugins/projectexplorer/targetsettingspanel.cpp index b14d574e85..88ba9e2f0b 100644 --- a/src/plugins/projectexplorer/targetsettingspanel.cpp +++ b/src/plugins/projectexplorer/targetsettingspanel.cpp @@ -805,7 +805,8 @@ void TargetItem::updateSubItems() m_currentChild = DefaultPage; // We will add children below. removeChildren(); if (isEnabled()) { - appendChild(new BuildOrRunItem(m_project, m_kitId, BuildOrRunItem::BuildPage)); + if (m_project->needsBuildConfigurations()) + appendChild(new BuildOrRunItem(m_project, m_kitId, BuildOrRunItem::BuildPage)); appendChild(new BuildOrRunItem(m_project, m_kitId, BuildOrRunItem::RunPage)); } } diff --git a/src/plugins/pythoneditor/pythoneditorplugin.cpp b/src/plugins/pythoneditor/pythoneditorplugin.cpp index 5518d81df1..c579b8526a 100644 --- a/src/plugins/pythoneditor/pythoneditorplugin.cpp +++ b/src/plugins/pythoneditor/pythoneditorplugin.cpp @@ -98,6 +98,7 @@ public: void refresh(Target *target = nullptr); bool needsConfiguration() const final { return false; } + bool needsBuildConfigurations() const final { return false; } private: RestoreResult fromMap(const QVariantMap &map, QString *errorMessage) override; diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp index 47bc18e0fe..d0dd28e0cf 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.cpp +++ b/src/plugins/qmlprojectmanager/qmlproject.cpp @@ -247,6 +247,11 @@ void QmlProject::refreshProjectFile() refresh(QmlProject::ProjectFile | Files); } +bool QmlProject::needsBuildConfigurations() const +{ + return false; +} + QStringList QmlProject::makeAbsolute(const Utils::FileName &path, const QStringList &relativePaths) { if (path.isEmpty()) @@ -349,13 +354,6 @@ Project::RestoreResult QmlProject::fromMap(const QVariantMap &map, QString *erro return RestoreResult::Ok; } -bool QmlProject::setupTarget(Target *target) -{ - target->updateDefaultDeployConfigurations(); - target->updateDefaultRunConfigurations(); - return true; -} - void QmlProject::generateProjectTree() { if (!m_projectItem) diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h index 075bd77a44..c65b4803ac 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.h +++ b/src/plugins/qmlprojectmanager/qmlproject.h @@ -75,10 +75,11 @@ public: void refreshProjectFile(); + bool needsBuildConfigurations() const final; + static QStringList makeAbsolute(const Utils::FileName &path, const QStringList &relativePaths); protected: RestoreResult fromMap(const QVariantMap &map, QString *errorMessage) override; - bool setupTarget(ProjectExplorer::Target *t) override; private: void generateProjectTree(); |