diff --git a/src/plugins/autotest/testcodeparser.cpp b/src/plugins/autotest/testcodeparser.cpp index 5b48ed1ca70..001ea5d48b0 100644 --- a/src/plugins/autotest/testcodeparser.cpp +++ b/src/plugins/autotest/testcodeparser.cpp @@ -206,7 +206,7 @@ void TestCodeParser::onDocumentUpdated(const QString &fileName) Project *project = SessionManager::startupProject(); if (!project) return; - if (!project->files(Project::SourceFiles).contains(fileName)) + if (!SessionManager::projectContainsFile(project, Utils::FileName::fromString(fileName))) return; scanForTests(QStringList(fileName)); diff --git a/src/plugins/projectexplorer/session.cpp b/src/plugins/projectexplorer/session.cpp index 5b8e6d382c0..432915f7770 100644 --- a/src/plugins/projectexplorer/session.cpp +++ b/src/plugins/projectexplorer/session.cpp @@ -74,7 +74,6 @@ namespace ProjectExplorer { class SessionManagerPrivate { public: - bool projectContainsFile(Project *p, const FileName &fileName) const; void restoreValues(const PersistentSettingsReader &reader); void restoreDependencies(const PersistentSettingsReader &reader); void restoreStartupProject(const PersistentSettingsReader &reader); @@ -658,19 +657,19 @@ Project *SessionManager::projectForFile(const Utils::FileName &fileName) { const QList &projectList = projects(); foreach (Project *p, projectList) { - if (d->projectContainsFile(p, fileName)) + if (projectContainsFile(p, fileName)) return p; } return nullptr; } -bool SessionManagerPrivate::projectContainsFile(Project *p, const Utils::FileName &fileName) const +bool SessionManager::projectContainsFile(Project *p, const Utils::FileName &fileName) { - if (!m_projectFileCache.contains(p)) - m_projectFileCache.insert(p, p->files(Project::AllFiles)); + if (!d->m_projectFileCache.contains(p)) + d->m_projectFileCache.insert(p, p->files(Project::AllFiles)); - return m_projectFileCache.value(p).contains(fileName.toString()); + return d->m_projectFileCache.value(p).contains(fileName.toString()); } void SessionManager::configureEditor(IEditor *editor, const QString &fileName) @@ -686,7 +685,7 @@ void SessionManager::configureEditor(IEditor *editor, const QString &fileName) void SessionManager::configureEditors(Project *project) { foreach (IDocument *document, DocumentModel::openedDocuments()) { - if (d->projectContainsFile(project, document->filePath())) { + if (projectContainsFile(project, document->filePath())) { foreach (IEditor *editor, DocumentModel::editorsForDocument(document)) { if (auto textEditor = qobject_cast(editor)) { project->editorConfiguration()->configureEditor(textEditor); diff --git a/src/plugins/projectexplorer/session.h b/src/plugins/projectexplorer/session.h index 8d6987363a4..a229ce58e14 100644 --- a/src/plugins/projectexplorer/session.h +++ b/src/plugins/projectexplorer/session.h @@ -115,6 +115,7 @@ public: static Project *projectForNode(Node *node); static Node *nodeForFile(const Utils::FileName &fileName); static Project *projectForFile(const Utils::FileName &fileName); + static bool projectContainsFile(Project *p, const Utils::FileName &fileName); static QStringList projectsForSessionName(const QString &session);