/
atikbif
/
RelkonIDE
Обзор
Документация
Войти
/
atikbif
/
RelkonIDE
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
highlighter.cpp
25 строк
920 B
Roman Pelevin
Первая версия IDE среды для языка Релкон.
23 апр 2015, 12:28
23 апр 2015, 12:28
4142fd1
Код
Авторство
О чём код?
#include "highlighter.h" #include "highlightsettingsreader.h" Highlighter::Highlighter(QTextDocument *parent) : QSyntaxHighlighter(parent) { HighlightSettingsReader reader; reader.parseXML(); algs = reader.getAlgorithms(); } void Highlighter::highlightBlock(const QString &text) { foreach (HighlightAlgorithm* alg, algs) { alg->setInputText(text); alg->setAdditionPar("previousBlockState",previousBlockState()); alg->setAdditionPar("currentBlockState",currentBlockState()); QVector<HighlightAlgorithm::HighlightPositionInText> blocks = alg->getPosition(); int state = alg->getAdditionPar("currentBlockState"); if(state>=0) setCurrentBlockState(state); QTextCharFormat format = alg->getFormat(); foreach (HighlightAlgorithm::HighlightPositionInText block, blocks) { setFormat(block.startPosition,block.length,format); } } }