From 2f333b107224613c3c4a56ba5db6017bb65c4024 Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Wed, 15 Feb 2017 10:24:32 +0100 Subject: [PATCH] qmake: add displayname method to Qmake*File Change-Id: I90e6ef357f050953f51ae9cad4eb1c1d2daf4e5a Reviewed-by: Tim Jenssen --- .../qmakeprojectmanager/qmakeparsernodes.cpp | 19 ++++++++++++++----- .../qmakeprojectmanager/qmakeparsernodes.h | 4 +++- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp b/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp index d92b715d1de..8c1caaadc63 100644 --- a/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp @@ -42,7 +42,6 @@ #include #include #include -#include #include #include @@ -266,11 +265,21 @@ FileName QmakePriFile::directoryPath() const return filePath().parentDir(); } +QString QmakePriFile::displayName() const +{ + return filePath().toFileInfo().completeBaseName(); +} + QmakePriFile *QmakePriFile::parent() const { return m_parent; } +QmakeProject *QmakePriFile::project() const +{ + return m_project; +} + QVector QmakePriFile::children() const { return m_children; @@ -1202,7 +1211,9 @@ bool QmakeProFile::isParent(QmakeProFile *node) QString QmakeProFile::displayName() const { - return m_displayName; + if (!m_displayName.isEmpty()) + return m_displayName; + return QmakePriFile::displayName(); } bool QmakeProFile::isDebugAndRelease() const @@ -1704,9 +1715,7 @@ void QmakeProFile::applyEvaluate(QmakeEvalResult *evalResult) if (m_varValues != result->newVarValues) m_varValues = result->newVarValues; - const QString projectName = singleVariableValue(Variable::QmakeProjectName); - m_displayName = projectName.isEmpty() ? filePath().toFileInfo().completeBaseName() - : projectName; + m_displayName = singleVariableValue(Variable::QmakeProjectName); } // result == EvalOk setParseInProgress(false); diff --git a/src/plugins/qmakeprojectmanager/qmakeparsernodes.h b/src/plugins/qmakeprojectmanager/qmakeparsernodes.h index 6e05f2e05eb..85a7e9ce04f 100644 --- a/src/plugins/qmakeprojectmanager/qmakeparsernodes.h +++ b/src/plugins/qmakeprojectmanager/qmakeparsernodes.h @@ -114,8 +114,10 @@ public: Utils::FileName filePath() const; Utils::FileName directoryPath() const; + virtual QString displayName() const; QmakePriFile *parent() const; + QmakeProject *project() const; QVector children() const; void makeEmpty(); @@ -269,7 +271,7 @@ public: ~QmakeProFile() override; bool isParent(QmakeProFile *node); - QString displayName() const; + QString displayName() const final; ProjectType projectType() const;