 |
Blamite Game Engine - Keystone
00402.09.29.23.0627.blamite
A library that enables the use of Qt in Blamite's editing tools.
|
Go to the documentation of this file.
24 #ifndef QSOURCEHIGHLITER_H
25 #define QSOURCEHIGHLITER_H
27 #include <QSyntaxHighlighter>
29 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
30 #include <QStringView>
119 void highlightSyntax(
const QString &text);
120 Q_REQUIRED_RESULT
int highlightNumericLiterals(
const QString &text,
int i);
121 Q_REQUIRED_RESULT
int highlightStringLiterals(
const QChar strType,
const QString &text,
int i);
128 Q_REQUIRED_RESULT
static constexpr
inline bool isOctal(
const char c) {
129 return (c >=
'0' && c <=
'7');
137 Q_REQUIRED_RESULT
static constexpr
inline bool isHex(
const char c) {
139 (c >=
'0' && c <=
'9') ||
140 (c >=
'a' && c <=
'f') ||
141 (c >=
'A' && c <=
'F')
145 void cssHighlighter(
const QString &text);
146 void ymlHighlighter(
const QString &text);
147 void xmlHighlighter(
const QString &text);
148 void makeHighlighter(
const QString &text);
149 void highlightInlineAsmLabels(
const QString& text);
150 void asmHighlighter(
const QString& text);
153 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
154 static inline QStringView strMidRef(
const QString& str, qsizetype position, qsizetype n = -1)
156 return QStringView(str).mid(position, n);
159 static inline QStringRef strMidRef(
const QString& str,
int position,
int n = -1)
161 return str.midRef(position, n);
165 QHash<Token, QTextCharFormat> _formats;
169 #endif // QSOURCEHIGHLITER_H
@ CodeBuiltIn
Definition: qsourcehighliter.h:107
void loadShellData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:631
@ CodeYAML
Definition: qsourcehighliter.h:87
@ CodeVex
Definition: qsourcehighliter.h:89
void loadVEXData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:3521
@ CodeComment
Definition: qsourcehighliter.h:103
void loadCSharpData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1638
@ CodeTypeScript
Definition: qsourcehighliter.h:85
@ CodeCpp
Definition: qsourcehighliter.h:58
@ CodeKeyWord
Definition: qsourcehighliter.h:101
@ CodeQMLComment
Definition: qsourcehighliter.h:68
void loadGoData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1744
@ CodeV
Definition: qsourcehighliter.h:78
void loadPythonData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1221
void loadVData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1826
@ CodeAsm
Definition: qsourcehighliter.h:93
QHash< QSourceHighliter::Token, QTextCharFormat > theme(QSourceHighliter::Themes)
Definition: qsourcehighliterthemes.cpp:63
@ CodeJs
Definition: qsourcehighliter.h:60
@ CodeOther
Definition: qsourcehighliter.h:105
void loadCSSData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:2594
@ CodeC
Definition: qsourcehighliter.h:62
void loadJSONData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:2239
@ CodeRustComment
Definition: qsourcehighliter.h:71
@ Monokai
Definition: qsourcehighliter.h:39
void loadTypescriptData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:2744
Definition: qsourcehighliter.h:35
@ CodePHPComment
Definition: qsourcehighliter.h:66
void loadJSData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:784
void loadYAMLData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:2781
@ CodeCComment
Definition: qsourcehighliter.h:63
@ CodePython
Definition: qsourcehighliter.h:69
@ CodeNumLiteral
Definition: qsourcehighliter.h:106
void loadPHPData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:917
@ CodeCSSComment
Definition: qsourcehighliter.h:84
@ CodePHP
Definition: qsourcehighliter.h:65
Definition: languagedata.cpp:55
@ CodeCSharpComment
Definition: qsourcehighliter.h:75
void loadCMakeData(QMultiHash< char, QLatin1String > &types, QMultiHash< char, QLatin1String > &keywords, QMultiHash< char, QLatin1String > &builtin, QMultiHash< char, QLatin1String > &literals, QMultiHash< char, QLatin1String > &other)
Definition: languagedata.cpp:4136
@ CodeXML
Definition: qsourcehighliter.h:82
@ CodeQML
Definition: qsourcehighliter.h:67
QMultiHash< char, QLatin1String > LanguageData
Definition: languagedata.h:34
@ CodeCMake
Definition: qsourcehighliter.h:91
@ CodeLua
Definition: qsourcehighliter.h:94
void loadSQLData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:2195
void highlightBlock(const QString &text) override
Definition: qsourcehighliter.cpp:101
@ CodeVComment
Definition: qsourcehighliter.h:79
void loadQMLData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1060
@ CodeRust
Definition: qsourcehighliter.h:70
@ CodeGo
Definition: qsourcehighliter.h:76
@ CodeString
Definition: qsourcehighliter.h:102
@ CodeTypeScriptComment
Definition: qsourcehighliter.h:86
@ CodeMake
Definition: qsourcehighliter.h:92
void setTheme(Themes theme)
Definition: qsourcehighliter.cpp:95
Language
When adding a language make sure that its value is a multiple of 2 This is because we use the next nu...
Definition: qsourcehighliter.h:56
void loadJavaData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1484
@ CodeCSS
Definition: qsourcehighliter.h:83
QSourceHighliter(QTextDocument *doc)
Definition: qsourcehighliter.cpp:34
@ CodeINI
Definition: qsourcehighliter.h:88
void loadLuaData(LanguageData &typess, LanguageData &keywordss, LanguageData &builtins, LanguageData &literalss, LanguageData &others)
Definition: languagedata.cpp:147
@ CodeJava
Definition: qsourcehighliter.h:72
@ CodeJSON
Definition: qsourcehighliter.h:81
Q_REQUIRED_RESULT Language currentLanguage()
Definition: qsourcehighliter.cpp:91
@ CodeCSharp
Definition: qsourcehighliter.h:74
void setCurrentLanguage(Language language)
Definition: qsourcehighliter.cpp:86
void loadRustData(LanguageData &types, LanguageData &keywords, LanguageData &builtin, LanguageData &literals, LanguageData &other)
Definition: languagedata.cpp:1375
Definition: languagedata.h:28
@ CodeJavaComment
Definition: qsourcehighliter.h:73
@ CodeJsComment
Definition: qsourcehighliter.h:61
Themes
Definition: qsourcehighliter.h:38
Token
Definition: qsourcehighliter.h:99
@ CodeGoComment
Definition: qsourcehighliter.h:77
void loadMakeData(QMultiHash< char, QLatin1String > &types, QMultiHash< char, QLatin1String > &keywords, QMultiHash< char, QLatin1String > &builtin, QMultiHash< char, QLatin1String > &literals, QMultiHash< char, QLatin1String > &other)
Definition: languagedata.cpp:4230
@ CodeLuaComment
Definition: qsourcehighliter.h:95
@ CodeBash
Definition: qsourcehighliter.h:64
@ CodeType
Definition: qsourcehighliter.h:104
void loadCppData(LanguageData &typess, LanguageData &keywordss, LanguageData &builtins, LanguageData &literalss, LanguageData &others)
Definition: languagedata.cpp:437
@ CodeSQL
Definition: qsourcehighliter.h:80
@ CodeBlock
Definition: qsourcehighliter.h:100
@ CodeCppComment
Definition: qsourcehighliter.h:59
void loadAsmData(QMultiHash< char, QLatin1String > &types, QMultiHash< char, QLatin1String > &keywords, QMultiHash< char, QLatin1String > &builtin, QMultiHash< char, QLatin1String > &literals, QMultiHash< char, QLatin1String > &other)
Definition: languagedata.cpp:4243
@ CodeVexComment
Definition: qsourcehighliter.h:90