Make latex highlighter colors compatible with dark theme

Partial fix for #8325
This commit is contained in:
Guillaume Munch 2016-06-14 21:45:47 +01:00
parent 5de30b1210
commit c76e0f1153

View File

@ -19,13 +19,23 @@
namespace lyx { namespace lyx {
namespace frontend { namespace frontend {
LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent) LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent)
: QSyntaxHighlighter(parent) : QSyntaxHighlighter(parent)
{ {
keywordFormat.setForeground(Qt::darkBlue); auto blend = [](QColor color1, QColor color2) {
int r = 0.5 * (color1.red() + color2.red());
int g = 0.5 * (color1.green() + color2.green());
int b = 0.5 * (color1.blue() + color2.blue());
return QColor(r, g, b);
};
QPalette palette = QPalette();
QColor text_color = palette.color(QPalette::Active, QPalette::Text);
keywordFormat.setForeground(blend(Qt::blue, text_color));
keywordFormat.setFontWeight(QFont::Bold); keywordFormat.setFontWeight(QFont::Bold);
commentFormat.setForeground(Qt::darkGray); commentFormat.setForeground(palette.color(QPalette::Disabled,
mathFormat.setForeground(Qt::red); QPalette::Text));
mathFormat.setForeground(blend(Qt::red, text_color));
warningFormat.setForeground(Qt::red); warningFormat.setForeground(Qt::red);
warningFormat.setFontWeight(QFont::Bold); warningFormat.setFontWeight(QFont::Bold);
} }