forked from qt-creator/qt-creator
QbsProjectManager: Make sub-project files available in the locator.
They are currently ignored. Change-Id: I9a13d37e857d03f988884031bbba81a7f3b95d02 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
committed by
Tobias Hunger
parent
c61610b259
commit
69c4770e68
@@ -156,21 +156,28 @@ ProjectNode *QbsProject::rootProjectNode() const
|
|||||||
return m_rootProjectNode;
|
return m_rootProjectNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void collectFilesForProject(const qbs::ProjectData &project, QSet<QString> &result)
|
||||||
|
{
|
||||||
|
result.insert(project.location().fileName());
|
||||||
|
foreach (const qbs::ProductData &prd, project.products()) {
|
||||||
|
foreach (const qbs::GroupData &grp, prd.groups()) {
|
||||||
|
foreach (const QString &file, grp.allFilePaths())
|
||||||
|
result.insert(file);
|
||||||
|
result.insert(grp.location().fileName());
|
||||||
|
}
|
||||||
|
result.insert(prd.location().fileName());
|
||||||
|
}
|
||||||
|
foreach (const qbs::ProjectData &subProject, project.subProjects())
|
||||||
|
collectFilesForProject(subProject, result);
|
||||||
|
}
|
||||||
|
|
||||||
QStringList QbsProject::files(Project::FilesMode fileMode) const
|
QStringList QbsProject::files(Project::FilesMode fileMode) const
|
||||||
{
|
{
|
||||||
Q_UNUSED(fileMode);
|
Q_UNUSED(fileMode);
|
||||||
|
if (!m_rootProjectNode || !m_rootProjectNode->qbsProjectData().isValid())
|
||||||
|
return QStringList();
|
||||||
QSet<QString> result;
|
QSet<QString> result;
|
||||||
if (m_rootProjectNode && m_rootProjectNode->qbsProjectData().isValid()) {
|
collectFilesForProject(m_rootProjectNode->qbsProjectData(), result);
|
||||||
foreach (const qbs::ProductData &prd, m_rootProjectNode->qbsProjectData().allProducts()) {
|
|
||||||
foreach (const qbs::GroupData &grp, prd.groups()) {
|
|
||||||
foreach (const QString &file, grp.allFilePaths())
|
|
||||||
result.insert(file);
|
|
||||||
result.insert(grp.location().fileName());
|
|
||||||
}
|
|
||||||
result.insert(prd.location().fileName());
|
|
||||||
}
|
|
||||||
result.insert(m_rootProjectNode->qbsProjectData().location().fileName());
|
|
||||||
}
|
|
||||||
return result.toList();
|
return result.toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user