diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-02-21 11:58:16 +0100 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-03-19 13:37:46 +0000 |
commit | 08d1274ccc0e9b116626afad60afaa970fe2fbbf (patch) | |
tree | e6fc80b45812c84f47bb72018b0e8362e3b31073 /src/plugins/clangrefactoring | |
parent | d471006d8136cd6f99f668d5a55e4f7a7483737e (diff) | |
download | qt-creator-08d1274ccc0e9b116626afad60afaa970fe2fbbf.tar.gz |
CppTools: Remove processEvents call from follow symbol
processEvents is a bad way of dealing with asynchronous
requests. Use QFutureWatcher for that purpose.
Change-Id: I3839cb9db80a6d391f6af1178e96986a325b7b99
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Diffstat (limited to 'src/plugins/clangrefactoring')
-rw-r--r-- | src/plugins/clangrefactoring/refactoringengine.cpp | 13 | ||||
-rw-r--r-- | src/plugins/clangrefactoring/refactoringengine.h | 3 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/plugins/clangrefactoring/refactoringengine.cpp b/src/plugins/clangrefactoring/refactoringengine.cpp index 7c69cfc9d1..952ed9bf19 100644 --- a/src/plugins/clangrefactoring/refactoringengine.cpp +++ b/src/plugins/clangrefactoring/refactoringengine.cpp @@ -123,11 +123,12 @@ void RefactoringEngine::findUsages(const CppTools::CursorInEditor &data, showUsagesCallback(locationsAt(data)); } -RefactoringEngine::Link RefactoringEngine::globalFollowSymbol(const CppTools::CursorInEditor &data, - const CPlusPlus::Snapshot &, - const CPlusPlus::Document::Ptr &, - CppTools::SymbolFinder *, - bool) const +void RefactoringEngine::globalFollowSymbol(const CppTools::CursorInEditor &data, + Utils::ProcessLinkCallback &&processLinkCallback, + const CPlusPlus::Snapshot &, + const CPlusPlus::Document::Ptr &, + CppTools::SymbolFinder *, + bool) const { // TODO: replace that with specific followSymbol query const CppTools::Usages usages = locationsAt(data); @@ -138,7 +139,7 @@ RefactoringEngine::Link RefactoringEngine::globalFollowSymbol(const CppTools::Cu return true; }); - return Link(usage.path, usage.line, usage.column); + processLinkCallback(Link(usage.path, usage.line, usage.column)); } bool RefactoringEngine::isRefactoringEngineAvailable() const diff --git a/src/plugins/clangrefactoring/refactoringengine.h b/src/plugins/clangrefactoring/refactoringengine.h index 951a18fb53..739b545310 100644 --- a/src/plugins/clangrefactoring/refactoringengine.h +++ b/src/plugins/clangrefactoring/refactoringengine.h @@ -57,7 +57,8 @@ public: const QString &) override; void findUsages(const CppTools::CursorInEditor &data, CppTools::UsagesCallback &&showUsagesCallback) const override; - Link globalFollowSymbol(const CppTools::CursorInEditor &data, + void globalFollowSymbol(const CppTools::CursorInEditor &data, + Utils::ProcessLinkCallback &&processLinkCallback, const CPlusPlus::Snapshot &, const CPlusPlus::Document::Ptr &, CppTools::SymbolFinder *, |