forked from qt-creator/qt-creator
Enable macro editing for the Clang indexer
Refactor much of the code from Environment* classes to NameValue* classes to share it with the preprocessor macro settings. Change-Id: Ica4ee817aa338230c422b30d91240d266248d226 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
@@ -42,8 +42,8 @@
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <coreplugin/progressmanager/progressmanager.h>
|
||||
#include <extensionsystem/pluginmanager.h>
|
||||
#include <cpptools/cpptoolsconstants.h>
|
||||
#include <extensionsystem/pluginmanager.h>
|
||||
|
||||
#include <refactoringdatabaseinitializer.h>
|
||||
#include <filepathcaching.h>
|
||||
@@ -103,16 +103,13 @@ public:
|
||||
QtCreatorRefactoringProjectUpdater projectUpdate{connectionClient.serverProxy(),
|
||||
ClangPchManagerPlugin::pchManagerClient(),
|
||||
filePathCache,
|
||||
projectPartsStorage};
|
||||
projectPartsStorage,
|
||||
ClangPchManagerPlugin::settingsManager()};
|
||||
};
|
||||
|
||||
ClangRefactoringPlugin::ClangRefactoringPlugin()
|
||||
{
|
||||
}
|
||||
ClangRefactoringPlugin::ClangRefactoringPlugin() = default;
|
||||
|
||||
ClangRefactoringPlugin::~ClangRefactoringPlugin()
|
||||
{
|
||||
}
|
||||
ClangRefactoringPlugin::~ClangRefactoringPlugin() = default;
|
||||
|
||||
static bool useClangFilters()
|
||||
{
|
||||
@@ -131,8 +128,8 @@ bool ClangRefactoringPlugin::initialize(const QStringList & /*arguments*/, QStri
|
||||
connectBackend();
|
||||
startBackend();
|
||||
|
||||
CppTools::CppModelManager::addRefactoringEngine(
|
||||
CppTools::RefactoringEngineType::ClangRefactoring, &refactoringEngine());
|
||||
CppTools::CppModelManager::addRefactoringEngine(CppTools::RefactoringEngineType::ClangRefactoring,
|
||||
&refactoringEngine());
|
||||
|
||||
initializeFilters();
|
||||
|
||||
|
||||
@@ -64,12 +64,14 @@ QtCreatorRefactoringProjectUpdater::QtCreatorRefactoringProjectUpdater(
|
||||
ClangBackEnd::ProjectManagementServerInterface &server,
|
||||
ClangPchManager::PchManagerClient &pchManagerClient,
|
||||
ClangBackEnd::FilePathCachingInterface &filePathCache,
|
||||
ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage)
|
||||
ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage,
|
||||
ClangPchManager::ClangIndexingSettingsManager &settingsManager)
|
||||
: RefactoringProjectUpdater(server,
|
||||
pchManagerClient,
|
||||
*cppModelManager(),
|
||||
filePathCache,
|
||||
projectPartsStorage)
|
||||
projectPartsStorage,
|
||||
settingsManager)
|
||||
{
|
||||
connectToCppModelManager();
|
||||
}
|
||||
|
||||
@@ -32,11 +32,11 @@ namespace ClangRefactoring {
|
||||
class QtCreatorRefactoringProjectUpdater final : public RefactoringProjectUpdater
|
||||
{
|
||||
public:
|
||||
QtCreatorRefactoringProjectUpdater(
|
||||
ClangBackEnd::ProjectManagementServerInterface &server,
|
||||
ClangPchManager::PchManagerClient &pchManagerClient,
|
||||
ClangBackEnd::FilePathCachingInterface &filePathCache,
|
||||
ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage);
|
||||
QtCreatorRefactoringProjectUpdater(ClangBackEnd::ProjectManagementServerInterface &server,
|
||||
ClangPchManager::PchManagerClient &pchManagerClient,
|
||||
ClangBackEnd::FilePathCachingInterface &filePathCache,
|
||||
ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage,
|
||||
ClangPchManager::ClangIndexingSettingsManager &settingsManager);
|
||||
|
||||
private:
|
||||
void abstractEditorUpdated(const QString &filePath, const QByteArray &contents);
|
||||
|
||||
@@ -40,8 +40,9 @@ public:
|
||||
ClangPchManager::PchManagerClient &pchManagerClient,
|
||||
CppTools::CppModelManagerInterface &cppModelManager,
|
||||
ClangBackEnd::FilePathCachingInterface &filePathCache,
|
||||
ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage)
|
||||
: ClangPchManager::ProjectUpdater(server, filePathCache, projectPartsStorage)
|
||||
ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage,
|
||||
ClangPchManager::ClangIndexingSettingsManager &settingsManager)
|
||||
: ClangPchManager::ProjectUpdater(server, filePathCache, projectPartsStorage, settingsManager)
|
||||
, ClangPchManager::PchManagerNotifierInterface(pchManagerClient)
|
||||
, m_cppModelManager(cppModelManager)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user