umbrello  2.39.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
codetexthighlighter.h
Go to the documentation of this file.
1 /*
2  CodeTextHighlighter: Syntax highlighter for the CodeTextEdit widget.
3  SPDX-FileCopyrightText: 2010 Nokia Corporation and /or its subsidiary(-ies) <qt-info@nokia.com>
4  Code based on examples of the Qt Toolkit under BSD license,
5  <http://doc.qt.nokia.com/4.6/richtext-syntaxhighlighter.html>.
6  SPDX-FileCopyrightText: 2010 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
7 
8  SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
9 */
10 
11 #ifndef CODETEXTHIGHLIGHTER_H
12 #define CODETEXTHIGHLIGHTER_H
13 
14 #include <QHash>
15 #include <QSyntaxHighlighter>
16 #include <QTextCharFormat>
17 
18 class QTextDocument;
19 
20 class CodeTextHighlighter : public QSyntaxHighlighter
21 {
22  Q_OBJECT
23 
24 public:
25  explicit CodeTextHighlighter(QTextDocument *parent = 0);
26 
27 protected:
28  void highlightBlock(const QString &text);
29 
30 private:
31  QStringList keywords();
32 
34  {
35  QRegExp pattern;
36  QTextCharFormat format;
37  };
38  QVector<HighlightingRule> m_highlightingRules;
39 
42 
43  QTextCharFormat m_keywordFormat;
44  QTextCharFormat m_classFormat;
45  QTextCharFormat m_singleLineCommentFormat;
46  QTextCharFormat m_multiLineCommentFormat;
47  QTextCharFormat m_quotationFormat;
48  QTextCharFormat m_functionFormat;
49 };
50 
51 #endif // CODETEXTHIGHLIGHTER_H
Definition: codetexthighlighter.h:21
QTextCharFormat m_functionFormat
Definition: codetexthighlighter.h:48
QRegExp m_commentStartExpression
Definition: codetexthighlighter.h:40
CodeTextHighlighter(QTextDocument *parent=0)
Definition: codetexthighlighter.cpp:22
QTextCharFormat m_singleLineCommentFormat
Definition: codetexthighlighter.h:45
QRegExp m_commentEndExpression
Definition: codetexthighlighter.h:41
QVector< HighlightingRule > m_highlightingRules
Definition: codetexthighlighter.h:38
QTextCharFormat m_classFormat
Definition: codetexthighlighter.h:44
QTextCharFormat m_quotationFormat
Definition: codetexthighlighter.h:47
QTextCharFormat m_multiLineCommentFormat
Definition: codetexthighlighter.h:46
QStringList keywords()
Definition: codetexthighlighter.cpp:105
void highlightBlock(const QString &text)
Definition: codetexthighlighter.cpp:69
QTextCharFormat m_keywordFormat
Definition: codetexthighlighter.h:43
Definition: codetexthighlighter.h:34
QRegExp pattern
Definition: codetexthighlighter.h:35
QTextCharFormat format
Definition: codetexthighlighter.h:36