diff options
author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2024-02-19 14:47:02 +0100 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2024-02-20 13:58:11 +0000 |
commit | 5d630786852e1d653acea5e94cacfbb30d2dc791 (patch) | |
tree | 1cdf0c184add9a7ee1132a058cbc5809128f29be /src/plugins/cppeditor | |
parent | 2e276fb8a6842ae2fe1ad87fb1f44044acf671ad (diff) |
SemanticHighlighter: Simplify disconnecting from the watcher
Change-Id: I92c78f71a209ac428354284649e0f4b6522a947f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/cppeditor')
-rw-r--r-- | src/plugins/cppeditor/semantichighlighter.cpp | 27 | ||||
-rw-r--r-- | src/plugins/cppeditor/semantichighlighter.h | 3 |
2 files changed, 6 insertions, 24 deletions
diff --git a/src/plugins/cppeditor/semantichighlighter.cpp b/src/plugins/cppeditor/semantichighlighter.cpp index 4cafaecd46..17cfb2c40e 100644 --- a/src/plugins/cppeditor/semantichighlighter.cpp +++ b/src/plugins/cppeditor/semantichighlighter.cpp @@ -39,7 +39,7 @@ SemanticHighlighter::SemanticHighlighter(TextDocument *baseTextDocument) SemanticHighlighter::~SemanticHighlighter() { if (m_watcher) { - disconnectWatcher(); + m_watcher->disconnect(this); m_watcher->cancel(); m_watcher->waitForFinished(); } @@ -57,11 +57,14 @@ void SemanticHighlighter::run() qCDebug(log) << "SemanticHighlighter: run()"; if (m_watcher) { - disconnectWatcher(); + m_watcher->disconnect(this); m_watcher->cancel(); } m_watcher.reset(new QFutureWatcher<HighlightingResult>); - connectWatcher(); + connect(m_watcher.get(), &QFutureWatcherBase::resultsReadyAt, + this, &SemanticHighlighter::onHighlighterResultAvailable); + connect(m_watcher.get(), &QFutureWatcherBase::finished, + this, &SemanticHighlighter::onHighlighterFinished); m_revision = documentRevision(); m_seenBlocks.clear(); @@ -236,24 +239,6 @@ void SemanticHighlighter::onHighlighterFinished() qCDebug(log) << "onHighlighterFinished() took" << t.elapsed() << "ms"; } -void SemanticHighlighter::connectWatcher() -{ - using Watcher = QFutureWatcher<HighlightingResult>; - connect(m_watcher.get(), &Watcher::resultsReadyAt, - this, &SemanticHighlighter::onHighlighterResultAvailable); - connect(m_watcher.get(), &Watcher::finished, - this, &SemanticHighlighter::onHighlighterFinished); -} - -void SemanticHighlighter::disconnectWatcher() -{ - using Watcher = QFutureWatcher<HighlightingResult>; - disconnect(m_watcher.get(), &Watcher::resultsReadyAt, - this, &SemanticHighlighter::onHighlighterResultAvailable); - disconnect(m_watcher.get(), &Watcher::finished, - this, &SemanticHighlighter::onHighlighterFinished); -} - unsigned SemanticHighlighter::documentRevision() const { return m_baseTextDocument->document()->revision(); diff --git a/src/plugins/cppeditor/semantichighlighter.h b/src/plugins/cppeditor/semantichighlighter.h index a0d8e8db9e..60edcb2215 100644 --- a/src/plugins/cppeditor/semantichighlighter.h +++ b/src/plugins/cppeditor/semantichighlighter.h @@ -70,9 +70,6 @@ private: void handleHighlighterResults(); void onHighlighterFinished(); - void connectWatcher(); - void disconnectWatcher(); - unsigned documentRevision() const; QVector<TextEditor::Parenthesis> getClearedParentheses(const QTextBlock &block); |