From 9368a82eaaf62bc4d66c6f7e2cc4b84b57024a04 Mon Sep 17 00:00:00 2001 From: Tobias Hunger <tobias.hunger@digia.com> Date: Tue, 18 Jun 2013 15:52:29 +0200 Subject: [PATCH] Qbs: Make use of buildSystemFiles Change-Id: I1d7151cd0aa6388c5d7fe20dbc4ed2a154325e1a Reviewed-by: Tobias Hunger <tobias.hunger@digia.com> --- src/plugins/qbsprojectmanager/qbsproject.cpp | 16 +++++----------- src/plugins/qbsprojectmanager/qbsproject.h | 2 +- src/shared/qbs | 2 +- 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp index d370e3659a..643e721898 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.cpp +++ b/src/plugins/qbsprojectmanager/qbsproject.cpp @@ -120,7 +120,7 @@ QbsProject::QbsProject(QbsManager *manager, const QString &fileName) : connect(&m_parsingDelay, SIGNAL(timeout()), this, SLOT(parseCurrentBuildConfiguration())); - updateDocuments(0); + updateDocuments(QSet<QString>() << fileName); m_rootProjectNode = new QbsProjectNode(this); // needs documents to be initialized! } @@ -282,7 +282,7 @@ void QbsProject::handleQbsParsingDone(bool success) m_rootProjectNode->update(project); - updateDocuments(m_rootProjectNode->qbsProjectData()); + updateDocuments(project ? project->buildSystemFiles() : QSet<QString>() << m_fileName); updateCppCodeModel(m_rootProjectNode->qbsProjectData()); updateQmlJsCodeModel(m_rootProjectNode->qbsProjectData()); @@ -465,17 +465,11 @@ void QbsProject::prepareForParsing() m_qbsUpdateFutureInterface->reportStarted(); } -void QbsProject::updateDocuments(const qbs::ProjectData *prj) +void QbsProject::updateDocuments(const QSet<QString> &files) { // Update documents: - QSet<QString> newFiles; - newFiles.insert(m_fileName); // make sure we always have the project file... - - if (prj) { - newFiles.insert(prj->location().fileName()); - foreach (const qbs::ProductData &prd, prj->products()) - newFiles.insert(prd.location().fileName()); - } + QSet<QString> newFiles = files; + QTC_ASSERT(!newFiles.isEmpty(), newFiles << m_fileName); QSet<QString> oldFiles; foreach (Core::IDocument *doc, m_qbsDocuments) oldFiles.insert(doc->fileName()); diff --git a/src/plugins/qbsprojectmanager/qbsproject.h b/src/plugins/qbsprojectmanager/qbsproject.h index 7c3806a231..d657dc105b 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.h +++ b/src/plugins/qbsprojectmanager/qbsproject.h @@ -122,7 +122,7 @@ private: void generateErrors(const qbs::ErrorInfo &e); void prepareForParsing(); - void updateDocuments(const qbs::ProjectData *prj); + void updateDocuments(const QSet<QString> &files); void updateCppCodeModel(const qbs::ProjectData *prj); void updateQmlJsCodeModel(const qbs::ProjectData *prj); QString qbsBuildDir() const; diff --git a/src/shared/qbs b/src/shared/qbs index 36c7dba4ae..22a2777a89 160000 --- a/src/shared/qbs +++ b/src/shared/qbs @@ -1 +1 @@ -Subproject commit 36c7dba4ae3688e354f6e6985b3da4429b9084fd +Subproject commit 22a2777a898fdef6f2d5fc4f93a8c11682ecf4ea -- GitLab