Elaztek Developer Hub
Blamite Game Engine - Keystone  00390.07.02.23.1947.blamite
A library that enables the use of Qt in Blamite's editing tools.
QSourceHighlite::QSourceHighliter Class Reference

#include <qsourcehighliter.h>

+ Inheritance diagram for QSourceHighlite::QSourceHighliter:
+ Collaboration diagram for QSourceHighlite::QSourceHighliter:

Public Types

enum  Themes { Monokai = 1 }
 
enum  Language {
  CodeCpp = 200, CodeCppComment = 201, CodeJs = 202, CodeJsComment = 203,
  CodeC = 204, CodeCComment = 205, CodeBash = 206, CodePHP = 208,
  CodePHPComment = 209, CodeQML = 210, CodeQMLComment = 211, CodePython = 212,
  CodeRust = 214, CodeRustComment = 215, CodeJava = 216, CodeJavaComment = 217,
  CodeCSharp = 218, CodeCSharpComment = 219, CodeGo = 220, CodeGoComment = 221,
  CodeV = 222, CodeVComment = 223, CodeSQL = 224, CodeJSON = 226,
  CodeXML = 228, CodeCSS = 230, CodeCSSComment = 231, CodeTypeScript = 232,
  CodeTypeScriptComment = 233, CodeYAML = 234, CodeINI = 236, CodeVex = 238,
  CodeVexComment = 239, CodeCMake = 240, CodeMake = 242, CodeAsm = 244,
  CodeLua = 246, CodeLuaComment = 247
}
 When adding a language make sure that its value is a multiple of 2 This is because we use the next number as comment for that language In case the language doesn't support multiline comments in the traditional C++ sense, leave the next value empty. More...
 
enum  Token {
  CodeBlock, CodeKeyWord, CodeString, CodeComment,
  CodeType, CodeOther, CodeNumLiteral, CodeBuiltIn
}
 

Public Member Functions

 QSourceHighliter (QTextDocument *doc)
 
 QSourceHighliter (QTextDocument *doc, Themes theme)
 
void setCurrentLanguage (Language language)
 
Q_REQUIRED_RESULT Language currentLanguage ()
 
void setTheme (Themes theme)
 

Protected Member Functions

void highlightBlock (const QString &text) override
 

Member Enumeration Documentation

◆ Language

When adding a language make sure that its value is a multiple of 2 This is because we use the next number as comment for that language In case the language doesn't support multiline comments in the traditional C++ sense, leave the next value empty.

Otherwise mark the next value as comment for that language. e.g CodeCpp = 200 CodeCppComment = 201

Enumerator
CodeCpp 
CodeCppComment 
CodeJs 
CodeJsComment 
CodeC 
CodeCComment 
CodeBash 
CodePHP 
CodePHPComment 
CodeQML 
CodeQMLComment 
CodePython 
CodeRust 
CodeRustComment 
CodeJava 
CodeJavaComment 
CodeCSharp 
CodeCSharpComment 
CodeGo 
CodeGoComment 
CodeV 
CodeVComment 
CodeSQL 
CodeJSON 
CodeXML 
CodeCSS 
CodeCSSComment 
CodeTypeScript 
CodeTypeScriptComment 
CodeYAML 
CodeINI 
CodeVex 
CodeVexComment 
CodeCMake 
CodeMake 
CodeAsm 
CodeLua 
CodeLuaComment 

◆ Themes

◆ Token

Enumerator
CodeBlock 
CodeKeyWord 
CodeString 
CodeComment 
CodeType 
CodeOther 
CodeNumLiteral 
CodeBuiltIn 

Constructor & Destructor Documentation

◆ QSourceHighliter() [1/2]

QSourceHighlite::QSourceHighliter::QSourceHighliter ( QTextDocument *  doc)
explicit

◆ QSourceHighliter() [2/2]

QSourceHighlite::QSourceHighliter::QSourceHighliter ( QTextDocument *  doc,
QSourceHighliter::Themes  theme 
)
+ Here is the call graph for this function:

Member Function Documentation

◆ currentLanguage()

QSourceHighliter::Language QSourceHighlite::QSourceHighliter::currentLanguage ( )

◆ highlightBlock()

void QSourceHighlite::QSourceHighliter::highlightBlock ( const QString &  text)
overrideprotected

◆ setCurrentLanguage()

void QSourceHighlite::QSourceHighliter::setCurrentLanguage ( Language  language)
+ Here is the caller graph for this function:

◆ setTheme()

void QSourceHighlite::QSourceHighliter::setTheme ( QSourceHighliter::Themes  theme)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: