diff options
Diffstat (limited to 'src/plugins/texteditor/semantichighlighter.h')
-rw-r--r-- | src/plugins/texteditor/semantichighlighter.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/plugins/texteditor/semantichighlighter.h b/src/plugins/texteditor/semantichighlighter.h index 330f9c8f05..35573261c2 100644 --- a/src/plugins/texteditor/semantichighlighter.h +++ b/src/plugins/texteditor/semantichighlighter.h @@ -33,6 +33,13 @@ #include <QFuture> #include <QTextCharFormat> +#include <functional> +#include <utility> + +QT_BEGIN_NAMESPACE +class QTextBlock; +QT_END_NAMESPACE + namespace TextEditor { class SyntaxHighlighter; @@ -76,6 +83,9 @@ using HighlightingResults = QList<HighlightingResult>; namespace SemanticHighlighter { +using Splitter = std::function<const QList<std::pair<HighlightingResult, QTextBlock>> + (const HighlightingResult &, const QTextBlock &)>; + // Applies the future results [from, to) and applies the extra formats // indicated by Result::kind and kindToFormat to the correct location using // SyntaxHighlighter::setExtraAdditionalFormats. @@ -87,7 +97,8 @@ void TEXTEDITOR_EXPORT incrementalApplyExtraAdditionalFormats( SyntaxHighlighter *highlighter, const QFuture<HighlightingResult> &future, int from, int to, - const QHash<int, QTextCharFormat> &kindToFormat); + const QHash<int, QTextCharFormat> &kindToFormat, + const Splitter &splitter = {}); // Clears all extra highlights and applies the extra formats // indicated by Result::kind and kindToFormat to the correct location using |