From a959fe59da71289cb52b6c006d8ec7bc70362ad8 Mon Sep 17 00:00:00 2001 From: Ivan Donchevskii Date: Mon, 18 Sep 2017 11:29:55 +0200 Subject: C++: remove builtin RefactoringEngine dependency from CppEditor Move CppRefactoringEngine to CppTools and builtin member ownership to model manager. Change-Id: I3e72308559fd2928229f9f25d4dd09beb3f56c34 Reviewed-by: Nikolai Kosjar --- src/plugins/cpptools/cppmodelmanager.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'src/plugins/cpptools/cppmodelmanager.cpp') diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp index 7385d5ea6e..da45301782 100644 --- a/src/plugins/cpptools/cppmodelmanager.cpp +++ b/src/plugins/cpptools/cppmodelmanager.cpp @@ -33,6 +33,7 @@ #include "cppindexingsupport.h" #include "cppmodelmanagersupportinternal.h" #include "cpprefactoringchanges.h" +#include "cpprefactoringengine.h" #include "cppsourceprocessor.h" #include "cpptoolsconstants.h" #include "cpptoolsplugin.h" @@ -165,7 +166,8 @@ public: QTimer m_delayedGcTimer; // Refactoring - RefactoringEngineInterface *m_refactoringEngine = nullptr; + CppRefactoringEngine m_builtInRefactoringEngine; + RefactoringEngineInterface *m_refactoringEngine { &m_builtInRefactoringEngine }; }; } // namespace Internal @@ -267,12 +269,15 @@ QString CppModelManager::editorConfigurationFileName() void CppModelManager::setRefactoringEngine(RefactoringEngineInterface *refactoringEngine) { - instance()->d->m_refactoringEngine = refactoringEngine; + if (refactoringEngine) + instance()->d->m_refactoringEngine = refactoringEngine; + else + instance()->d->m_refactoringEngine = &instance()->d->m_builtInRefactoringEngine; } -RefactoringEngineInterface *CppModelManager::refactoringEngine() +RefactoringEngineInterface &CppModelManager::refactoringEngine() { - return instance()->d->m_refactoringEngine; + return *instance()->d->m_refactoringEngine; } FollowSymbolInterface &CppModelManager::followSymbolInterface() const -- cgit v1.2.1