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 d9550acdbe
commit 5c13007d92

View File

@ -19,13 +19,28 @@
namespace lyx { namespace lyx {
namespace frontend { namespace frontend {
namespace {
QColor 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);
};
}
LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent) LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent)
: QSyntaxHighlighter(parent) : QSyntaxHighlighter(parent)
{ {
keywordFormat.setForeground(Qt::darkBlue); 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);
} }