diff options
author | Tobias Hunger <tobias.hunger@qt.io> | 2017-03-27 12:12:38 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@qt.io> | 2017-03-27 15:32:13 +0000 |
commit | fc5ce1e710500bb603ceafb9a2c005bbaf2f7cec (patch) | |
tree | 473544ed89fa3158c18f709445314f639f9485f8 /src | |
parent | d1a53045640fc37f00ae556e683a87927cdddf91 (diff) | |
download | qt-creator-fc5ce1e710500bb603ceafb9a2c005bbaf2f7cec.tar.gz |
ProjectExplorer: Handle project file list globally
Handle the generation of the list of files in a project globally, based
on the project tree.
Creator now has the concept of TreeManagers which can enrich the project
tree with additional data (e.g. the files found in a resource file), which
the project does not necessarily know about. So use that tree to find
the files that belong to a project instead of implementing similar features
in each project.
Change-Id: Ia375a914a1f2c0adaa427f9eda834eec2db07f68
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
Diffstat (limited to 'src')
19 files changed, 43 insertions, 200 deletions
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp index 296142ec5a..d7d389ed3a 100644 --- a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp +++ b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp @@ -101,12 +101,6 @@ QString AutotoolsProject::defaultBuildDirectory(const QString &projectPath) return QFileInfo(projectPath).absolutePath(); } -QStringList AutotoolsProject::files(FilesMode fileMode) const -{ - Q_UNUSED(fileMode); - return m_files; -} - // This function, is called at the very beginning, to // restore the settings if there are some stored. Project::RestoreResult AutotoolsProject::fromMap(const QVariantMap &map, QString *errorMessage) diff --git a/src/plugins/autotoolsprojectmanager/autotoolsproject.h b/src/plugins/autotoolsprojectmanager/autotoolsproject.h index 9e90c12d80..3ebaeb763a 100644 --- a/src/plugins/autotoolsprojectmanager/autotoolsproject.h +++ b/src/plugins/autotoolsprojectmanager/autotoolsproject.h @@ -58,7 +58,6 @@ public: ~AutotoolsProject() override; QString displayName() const override; - QStringList files(FilesMode fileMode) const override; static QString defaultBuildDirectory(const QString &projectPath); QStringList buildTargets() const; diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.cpp b/src/plugins/cmakeprojectmanager/cmakeproject.cpp index 7e77cba361..cf9d0f0ca4 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeproject.cpp @@ -306,21 +306,6 @@ QString CMakeProject::displayName() const return root ? root->displayName() : projectDirectory().fileName(); } -QStringList CMakeProject::files(FilesMode fileMode) const -{ - QStringList result; - if (ProjectNode *rpn = rootProjectNode()) { - rpn->forEachNode([&](const FileNode *fn) { - const bool isGenerated = fn->isGenerated(); - if ((fileMode & Project::SourceFiles) && !isGenerated) - result.append(fn->filePath().toString()); - if ((fileMode & Project::GeneratedFiles) && isGenerated) - result.append(fn->filePath().toString()); - }); - } - return result; -} - Project::RestoreResult CMakeProject::fromMap(const QVariantMap &map, QString *errorMessage) { RestoreResult result = Project::fromMap(map, errorMessage); diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.h b/src/plugins/cmakeprojectmanager/cmakeproject.h index 33890fcd8f..f0bc68ce12 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.h +++ b/src/plugins/cmakeprojectmanager/cmakeproject.h @@ -88,7 +88,6 @@ public: QString displayName() const final; - QStringList files(FilesMode fileMode) const final; QStringList buildTargetTitles(bool runnable = false) const; bool hasBuildTarget(const QString &title) const; diff --git a/src/plugins/cpptools/modelmanagertesthelper.h b/src/plugins/cpptools/modelmanagertesthelper.h index f7ef4ec189..18f0d6b5ef 100644 --- a/src/plugins/cpptools/modelmanagertesthelper.h +++ b/src/plugins/cpptools/modelmanagertesthelper.h @@ -45,8 +45,6 @@ public: QString displayName() const override { return m_name; } - QStringList files(FilesMode fileMode) const override { Q_UNUSED(fileMode); return QStringList(); } - private: QString m_name; }; diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp index c8b14a125d..8d70582f50 100644 --- a/src/plugins/genericprojectmanager/genericproject.cpp +++ b/src/plugins/genericprojectmanager/genericproject.cpp @@ -249,9 +249,6 @@ void GenericProject::parseProject(RefreshOptions options) // TODO: Possibly load some configuration from the project file //QSettings projectInfo(m_fileName, QSettings::IniFormat); } - - if (options & Files) - emit fileListChanged(); } void GenericProject::refresh(RefreshOptions options) @@ -261,7 +258,7 @@ void GenericProject::refresh(RefreshOptions options) if (options & Files) { auto newRoot = new GenericProjectNode(this); - for (const QString &f : files()) { + for (const QString &f : m_files) { FileType fileType = FileType::Source; // ### FIXME if (f.endsWith(".qrc")) fileType = FileType::Resource; @@ -364,7 +361,7 @@ void GenericProject::refreshCppCodeModel() rpp.setQtVersion(activeQtVersion); rpp.setIncludePaths(projectIncludePaths()); rpp.setConfigFileName(configFileName()); - rpp.setFiles(files()); + rpp.setFiles(m_files); const CppTools::ProjectUpdateInfo projectInfoUpdate(this, cToolChain, cxxToolChain, k, {rpp}); m_cppCodeModelUpdater->update(projectInfoUpdate); @@ -397,22 +394,11 @@ QStringList GenericProject::projectIncludePaths() const return m_projectIncludePaths; } -QStringList GenericProject::files() const -{ - return m_files; -} - QString GenericProject::displayName() const { return projectFilePath().toFileInfo().completeBaseName(); } -QStringList GenericProject::files(FilesMode fileMode) const -{ - Q_UNUSED(fileMode); - return m_files; -} - QStringList GenericProject::buildTargets() const { const QStringList targets = { "all", "clean" }; diff --git a/src/plugins/genericprojectmanager/genericproject.h b/src/plugins/genericprojectmanager/genericproject.h index c63614ed6f..a2d163328d 100644 --- a/src/plugins/genericprojectmanager/genericproject.h +++ b/src/plugins/genericprojectmanager/genericproject.h @@ -57,8 +57,6 @@ public: QString displayName() const override; - QStringList files(FilesMode fileMode) const override; - QStringList buildTargets() const; bool addFiles(const QStringList &filePaths); @@ -75,7 +73,6 @@ public: void refresh(RefreshOptions options); QStringList projectIncludePaths() const; - QStringList files() const; protected: RestoreResult fromMap(const QVariantMap &map, QString *errorMessage) override; diff --git a/src/plugins/genericprojectmanager/genericprojectplugin.cpp b/src/plugins/genericprojectmanager/genericprojectplugin.cpp index fb69394ff5..edd5d42866 100644 --- a/src/plugins/genericprojectmanager/genericprojectplugin.cpp +++ b/src/plugins/genericprojectmanager/genericprojectplugin.cpp @@ -87,7 +87,8 @@ void GenericProjectPlugin::editFiles() if (!genericProject) return; SelectableFilesDialogEditFiles sfd(genericProject->projectDirectory(), - Utils::transform(genericProject->files(), [](const QString &f) { return Utils::FileName::fromString(f); }), + Utils::transform(genericProject->files(Project::AllFiles), + [](const QString &f) { return Utils::FileName::fromString(f); }), ICore::mainWindow()); if (sfd.exec() == QDialog::Accepted) genericProject->setFiles(Utils::transform(sfd.selectedFiles(), &Utils::FileName::toString)); diff --git a/src/plugins/nim/project/nimproject.cpp b/src/plugins/nim/project/nimproject.cpp index a73daf1095..35795954eb 100644 --- a/src/plugins/nim/project/nimproject.cpp +++ b/src/plugins/nim/project/nimproject.cpp @@ -34,6 +34,7 @@ #include <projectexplorer/buildconfiguration.h> #include <projectexplorer/kit.h> #include <projectexplorer/projectexplorerconstants.h> +#include <projectexplorer/projectnodes.h> #include <projectexplorer/target.h> #include <projectexplorer/toolchain.h> #include <projectexplorer/kitinformation.h> @@ -73,11 +74,6 @@ QString NimProject::displayName() const return projectFilePath().toFileInfo().completeBaseName(); } -QStringList NimProject::files(FilesMode) const -{ - return m_files; -} - bool NimProject::needsConfiguration() const { return targets().empty(); @@ -133,7 +129,7 @@ void NimProject::collectProjectFiles() void NimProject::updateProject() { - QStringList oldFiles = m_files; + const QStringList oldFiles = m_files; m_files.clear(); QList<FileNode *> fileNodes = Utils::filtered(m_futureWatcher.future().result(), @@ -158,9 +154,6 @@ void NimProject::updateProject() newRoot->setDisplayName(displayName()); newRoot->addNestedNodes(fileNodes); setRootProjectNode(newRoot); - - emit fileListChanged(); - emit parsingFinished(); } @@ -182,12 +175,10 @@ bool NimProject::supportsKit(Kit *k, QString *errorMessage) const FileNameList NimProject::nimFiles() const { - FileNameList result; - rootProjectNode()->forEachNode([&](FileNode *file) { - if (file->displayName().endsWith(QLatin1String(".nim"))) - result.append(file->filePath()); + const QStringList nim = files(AllFiles, [](const ProjectExplorer::FileNode *fn) { + return fn->filePath().endsWith(".nim"); }); - return result; + return Utils::transform(nim, [](const QString &fp) { return Utils::FileName::fromString(fp); }); } QVariantMap NimProject::toMap() const @@ -203,4 +194,4 @@ Project::RestoreResult NimProject::fromMap(const QVariantMap &map, QString *erro return Project::fromMap(map, errorMessage); } -} +} // namespace Nim diff --git a/src/plugins/nim/project/nimproject.h b/src/plugins/nim/project/nimproject.h index 7ea82a0c81..5072ce478d 100644 --- a/src/plugins/nim/project/nimproject.h +++ b/src/plugins/nim/project/nimproject.h @@ -42,7 +42,6 @@ public: explicit NimProject(const Utils::FileName &fileName); QString displayName() const override; - QStringList files(FilesMode) const override; bool needsConfiguration() const override; bool supportsKit(ProjectExplorer::Kit *k, QString *errorMessage) const override; Utils::FileNameList nimFiles() const; diff --git a/src/plugins/projectexplorer/project.cpp b/src/plugins/projectexplorer/project.cpp index 6b092b676a..1549c51795 100644 --- a/src/plugins/projectexplorer/project.cpp +++ b/src/plugins/projectexplorer/project.cpp @@ -476,6 +476,7 @@ void Project::setRootProjectNode(ProjectNode *root) if (root) root->setParentFolderNode(&d->m_containerNode); ProjectTree::emitSubtreeChanged(root); + emit fileListChanged(); delete oldNode; } @@ -524,6 +525,25 @@ Project::RestoreResult Project::restoreSettings(QString *errorMessage) return result; } +QStringList Project::files(Project::FilesMode fileMode, + const std::function<bool (const FileNode *)> &filter) const +{ + QStringList result; + + if (!rootProjectNode()) + return result; + + rootProjectNode()->forEachNode([&](const FileNode *fn) { + if (filter && !filter(fn)) + return; + if ((fileMode == AllFiles) + || (fileMode == SourceFiles && !fn->isGenerated()) + || (fileMode == GeneratedFiles && fn->isGenerated())) + result.append(fn->filePath().toString()); + }); + return result; +} + /*! Serializes all data into a QVariantMap. diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h index 3c7623cfcd..daed9e5afc 100644 --- a/src/plugins/projectexplorer/project.h +++ b/src/plugins/projectexplorer/project.h @@ -36,6 +36,8 @@ #include <QObject> #include <QFileSystemModel> +#include <functional> + namespace Core { class IDocument; class Context; @@ -47,6 +49,7 @@ namespace ProjectExplorer { class BuildInfo; class EditorConfiguration; +class FileNode; class NamedWidget; class ProjectImporter; class ProjectNode; @@ -112,7 +115,8 @@ public: GeneratedFiles = 0x2, AllFiles = SourceFiles | GeneratedFiles }; - virtual QStringList files(FilesMode fileMode) const = 0; + virtual QStringList files(FilesMode fileMode, + const std::function<bool(const FileNode *)> &filter = {}) const; virtual QStringList filesGeneratedFrom(const QString &sourceFile) const; static QString makeUnique(const QString &preferredName, const QStringList &usedNames); diff --git a/src/plugins/pythoneditor/pythoneditorplugin.cpp b/src/plugins/pythoneditor/pythoneditorplugin.cpp index 08f2ffc95a..967c5f58a6 100644 --- a/src/plugins/pythoneditor/pythoneditorplugin.cpp +++ b/src/plugins/pythoneditor/pythoneditorplugin.cpp @@ -96,9 +96,6 @@ public: QString displayName() const override; - QStringList files(FilesMode) const override { return m_files; } - QStringList files() const { return m_files; } - bool addFiles(const QStringList &filePaths); bool removeFiles(const QStringList &filePaths); bool setFiles(const QStringList &filePaths); @@ -356,7 +353,7 @@ public: PythonProject *project = static_cast<PythonProject *>(parent->project()); QList<Core::Id> allIds; - foreach (const QString &file, project->files()) + foreach (const QString &file, project->files(ProjectExplorer::Project::AllFiles)) allIds.append(idFromScript(file)); return allIds; } @@ -371,7 +368,7 @@ public: if (!canHandle(parent)) return false; PythonProject *project = static_cast<PythonProject *>(parent->project()); - return project->files().contains(scriptFromId(id)); + return project->files(ProjectExplorer::Project::AllFiles).contains(scriptFromId(id)); } bool canRestore(Target *parent, const QVariantMap &map) const override @@ -533,7 +530,6 @@ void PythonProject::parseProject() m_rawFileList = readLines(projectFilePath().toString()); m_rawFileList << projectFilePath().fileName(); m_files = processEntries(m_rawFileList, &m_rawListEntries); - emit fileListChanged(); } /** diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp index ec047b8639..56c326896e 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.cpp +++ b/src/plugins/qbsprojectmanager/qbsproject.cpp @@ -175,58 +175,6 @@ void QbsProject::projectLoaded() m_parsingDelay.start(0); } -static void collectFilesForProject(const qbs::ProjectData &project, Project::FilesMode mode, - QSet<QString> &result) -{ - if (mode & Project::SourceFiles) - result.insert(project.location().filePath()); - - foreach (const qbs::ProductData &prd, project.products()) { - if (mode & Project::SourceFiles) { - foreach (const qbs::GroupData &grp, prd.groups()) { - foreach (const QString &file, grp.allFilePaths()) - result.insert(file); - result.insert(grp.location().filePath()); - } - result.insert(prd.location().filePath()); - } - if (mode & Project::GeneratedFiles) { - foreach (const qbs::ProductData &prd, project.products()) { - foreach (const qbs::ArtifactData &artifact, prd.generatedArtifacts()) { - // A list of human-readable file types that we can reasonably expect - // to get generated during a build. Extend as needed. - static const QSet<QString> sourceTags = { - QLatin1String("c"), QLatin1String("cpp"), QLatin1String("hpp"), - QLatin1String("objc"), QLatin1String("objcpp"), - QLatin1String("c_pch_src"), QLatin1String("cpp_pch_src"), - QLatin1String("objc_pch_src"), QLatin1String("objcpp_pch_src"), - QLatin1String("asm"), QLatin1String("asm_cpp"), - QLatin1String("linkerscript"), - QLatin1String("qrc"), QLatin1String("java.java") - }; - if (artifact.fileTags().toSet().intersects(sourceTags)) - result.insert(artifact.filePath()); - } - } - } - } - - foreach (const qbs::ProjectData &subProject, project.subProjects()) - collectFilesForProject(subProject, mode, result); -} - -QStringList QbsProject::files(Project::FilesMode fileMode) const -{ - qCDebug(qbsPmLog) << Q_FUNC_INFO << fileMode << m_qbsProject.isValid() << isParsing(); - if (!m_qbsProject.isValid() || isParsing()) - return QStringList(); - QSet<QString> result; - collectFilesForProject(m_projectData, fileMode, result); - result.unite(m_qbsProject.buildSystemFiles()); - qCDebug(qbsPmLog) << "file count:" << result.count(); - return result.toList(); -} - QStringList QbsProject::filesGeneratedFrom(const QString &sourceFile) const { QStringList generated; @@ -312,7 +260,6 @@ bool QbsProject::addFilesToProduct(const QStringList &filePaths, if (notAdded->count() != filePaths.count()) { m_projectData = m_qbsProject.projectData(); setRootProjectNode(Internal::QbsNodeTreeBuilder::buildTree(this)); - emit fileListChanged(); } return notAdded->isEmpty(); } diff --git a/src/plugins/qbsprojectmanager/qbsproject.h b/src/plugins/qbsprojectmanager/qbsproject.h index c2d7c1df23..dd24093e42 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.h +++ b/src/plugins/qbsprojectmanager/qbsproject.h @@ -64,7 +64,6 @@ public: QString displayName() const override; QbsRootProjectNode *rootProjectNode() const override; - QStringList files(FilesMode fileMode) const override; QStringList filesGeneratedFrom(const QString &sourceFile) const override; bool isProjectEditable() const; diff --git a/src/plugins/qmakeprojectmanager/qmakeproject.cpp b/src/plugins/qmakeprojectmanager/qmakeproject.cpp index a3c504e17f..0d76e07cdb 100644 --- a/src/plugins/qmakeprojectmanager/qmakeproject.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeproject.cpp @@ -191,7 +191,6 @@ static QList<QmakeProject *> s_projects; */ QmakeProject::QmakeProject(const FileName &fileName) : - m_projectFiles(new QmakeProjectFiles), m_qmakeVfs(new QMakeVfs), m_cppCodeModelUpdater(new CppTools::CppProjectUpdater(this)) { @@ -230,7 +229,6 @@ QmakeProject::~QmakeProject() setRootProjectNode(nullptr); m_rootProFile.reset(); - delete m_projectFiles; m_cancelEvaluate = true; Q_ASSERT(m_qmakeGlobalsRefCnt == 0); delete m_qmakeVfs; @@ -241,32 +239,6 @@ QmakeProFile *QmakeProject::rootProFile() const return m_rootProFile.get(); } -void QmakeProject::updateFileList() -{ - QmakeProjectFiles files; - rootProjectNode()->forEachNode([&](FileNode *fileNode) { - const int type = static_cast<int>(fileNode->fileType()); - QStringList &targetList = fileNode->isGenerated() ? files.generatedFiles[type] : files.files[type]; - targetList.push_back(fileNode->filePath().toString()); - }, [&](FolderNode *folderNode) { - if (ProjectNode *projectNode = folderNode->asProjectNode()) - files.proFiles.append(projectNode->filePath().toString()); - if (dynamic_cast<ResourceEditor::ResourceTopLevelNode *>(folderNode)) - files.files[static_cast<int>(FileType::Resource)].push_back(folderNode->filePath().toString()); - }); - - for (QStringList &f : files.files) - f.removeDuplicates(); - for (QStringList &f : files.generatedFiles) - f.removeDuplicates(); - files.proFiles.removeDuplicates(); - - if (files != *m_projectFiles) { - *m_projectFiles = files; - emit fileListChanged(); - } -} - Project::RestoreResult QmakeProject::fromMap(const QVariantMap &map, QString *errorMessage) { RestoreResult result = Project::fromMap(map, errorMessage); @@ -576,7 +548,6 @@ void QmakeProject::decrementPendingEvaluateFutures() setAllBuildConfigurationsEnabled(true); m_asyncUpdateState = Base; - updateFileList(); updateCodeModels(); updateBuildSystemData(); if (activeTarget()) @@ -639,21 +610,6 @@ QString QmakeProject::displayName() const return projectFilePath().toFileInfo().completeBaseName(); } -QStringList QmakeProject::files(FilesMode fileMode) const -{ - QStringList files; - for (int i = 0; i < static_cast<int>(FileType::FileTypeSize); ++i) { - if (fileMode & SourceFiles) - files += m_projectFiles->files[i]; - if (fileMode & GeneratedFiles) - files += m_projectFiles->generatedFiles[i]; - } - - files.removeDuplicates(); - - return files; -} - // Find the folder that contains a file with a certain name (recurse down) static FolderNode *folderOf(FolderNode *in, const FileName &fileName) { @@ -1086,10 +1042,8 @@ void CentralizedFolderWatcher::delayedFolderChanged(const QString &folder) m_recursiveWatchedFolders += tmp; } - if (newOrRemovedFiles) { - m_project->updateFileList(); + if (newOrRemovedFiles) m_project->updateCodeModels(); - } } bool QmakeProject::needsConfiguration() const diff --git a/src/plugins/qmakeprojectmanager/qmakeproject.h b/src/plugins/qmakeprojectmanager/qmakeproject.h index fb96fbc266..2f4fb8a427 100644 --- a/src/plugins/qmakeprojectmanager/qmakeproject.h +++ b/src/plugins/qmakeprojectmanager/qmakeproject.h @@ -73,7 +73,6 @@ public: bool validParse(const Utils::FileName &proFilePath) const; bool parseInProgress(const Utils::FileName &proFilePath) const; - virtual QStringList files(FilesMode fileMode) const final; virtual QStringList filesGeneratedFrom(const QString &file) const final; enum Parsing {ExactParse, ExactAndCumulativeParse }; @@ -109,8 +108,6 @@ public: /// \internal bool wasEvaluateCanceled(); - // For QmakeProFileNode after a on disk change - void updateFileList(); void updateCodeModels(); void watchFolders(const QStringList &l, QmakePriFile *file); @@ -188,9 +185,6 @@ private: std::unique_ptr<QmakeProFile> m_rootProFile; - // cached lists of all of files - Internal::QmakeProjectFiles *m_projectFiles = nullptr; - QMakeVfs *m_qmakeVfs = nullptr; // cached data during project rescan diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp index bb88cc898e..43fbe6ab56 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.cpp +++ b/src/plugins/qmlprojectmanager/qmlproject.cpp @@ -168,9 +168,6 @@ void QmlProject::parseProject(RefreshOptions options) if (options & Configuration) { // update configuration } - - if (options & Files) - emit fileListChanged(); } void QmlProject::refresh(RefreshOptions options) @@ -195,16 +192,6 @@ void QmlProject::refresh(RefreshOptions options) emit parsingFinished(); } -QStringList QmlProject::files() const -{ - QStringList files; - if (m_projectItem) - files = m_projectItem.data()->files(); - else - files = m_files; - return files; -} - QString QmlProject::mainFile() const { if (m_projectItem) @@ -296,11 +283,6 @@ Internal::QmlProjectNode *QmlProject::rootProjectNode() const return static_cast<Internal::QmlProjectNode *>(Project::rootProjectNode()); } -QStringList QmlProject::files(FilesMode) const -{ - return files(); -} - Project::RestoreResult QmlProject::fromMap(const QVariantMap &map, QString *errorMessage) { RestoreResult result = Project::fromMap(map, errorMessage); @@ -371,9 +353,12 @@ Project::RestoreResult QmlProject::fromMap(const QVariantMap &map, QString *erro void QmlProject::generateProjectTree() { + if (!m_projectItem) + return; + auto newRoot = new Internal::QmlProjectNode(this); - for (const QString &f : files()) { + for (const QString &f : m_projectItem.data()->files()) { FileType fileType = FileType::Source; // ### FIXME if (f == projectFilePath().toString()) fileType = FileType::Project; diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h index c8900b6ebe..616c2c6d18 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.h +++ b/src/plugins/qmlprojectmanager/qmlproject.h @@ -51,7 +51,6 @@ public: bool supportsKit(ProjectExplorer::Kit *k, QString *errorMessage) const override; Internal::QmlProjectNode *rootProjectNode() const override; - QStringList files(FilesMode fileMode) const override; bool validProjectFile() const; @@ -66,7 +65,6 @@ public: void refresh(RefreshOptions options); QDir projectDir() const; - QStringList files() const; QString mainFile() const; QStringList customImportPaths() const; @@ -92,10 +90,7 @@ private: void parseProject(RefreshOptions options); QmlImport m_defaultImport; - ProjectExplorer::Target *m_activeTarget = 0; - - // plain format - QStringList m_files; + ProjectExplorer::Target *m_activeTarget = nullptr; QPointer<QmlProjectItem> m_projectItem; }; |