diff options
author | Marco Bubke <marco.bubke@qt.io> | 2018-09-06 11:57:36 +0200 |
---|---|---|
committer | Marco Bubke <marco.bubke@qt.io> | 2018-09-12 14:32:34 +0000 |
commit | e0b7a283332095fea03a5bed310b632e72f7d486 (patch) | |
tree | 39298c1fb984c0492da6118bb428385a88e18f75 /src/plugins/clangrefactoring/refactoringprojectupdater.h | |
parent | 415fc654cce0228d8e3800ddc1ebe3517c3ff119 (diff) |
Clang: Add refactoring project updater
The project parts are now first used by the pch manager and then notified
by the pch manager to the refactoring plugin.
Change-Id: I88074d8891cd0de9721497bbafee0deffc0b6339
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Diffstat (limited to 'src/plugins/clangrefactoring/refactoringprojectupdater.h')
-rw-r--r-- | src/plugins/clangrefactoring/refactoringprojectupdater.h | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/plugins/clangrefactoring/refactoringprojectupdater.h b/src/plugins/clangrefactoring/refactoringprojectupdater.h index f8b771187e..8e2652cf23 100644 --- a/src/plugins/clangrefactoring/refactoringprojectupdater.h +++ b/src/plugins/clangrefactoring/refactoringprojectupdater.h @@ -26,17 +26,34 @@ #pragma once #include <clangpchmanager/projectupdater.h> +#include <clangpchmanager/pchmanagernotifierinterface.h> -namespace ClangRefactoring { +#include <cpptools/cppmodelmanagerinterface.h> -class RefactoringClient; +namespace ClangRefactoring { -class RefactoringProjectUpdater : public ClangPchManager::ProjectUpdater +class RefactoringProjectUpdater : public ClangPchManager::ProjectUpdater, + public ClangPchManager::PchManagerNotifierInterface { public: RefactoringProjectUpdater(ClangBackEnd::ProjectManagementServerInterface &server, - RefactoringClient &client, - ClangBackEnd::FilePathCachingInterface &filePathCache); + ClangPchManager::PchManagerClient &pchManagerClient, + CppTools::CppModelManagerInterface &cppModelManager, + ClangBackEnd::FilePathCachingInterface &filePathCache) + : ClangPchManager::ProjectUpdater(server, filePathCache), + ClangPchManager::PchManagerNotifierInterface(pchManagerClient), + m_cppModelManager(cppModelManager) + { + + } + + void precompiledHeaderUpdated(const QString &projectPartId, + const QString &pchFilePath, + long long lastModified) override; + void precompiledHeaderRemoved(const QString &projectPartId) override; + +private: + CppTools::CppModelManagerInterface &m_cppModelManager; }; } // namespace ClangRefactoring |