OSDN Git Service

Fixed issues with line number colors on dark themes
authorThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>
Mon, 15 Jun 2009 13:35:06 +0000 (15:35 +0200)
committerThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>
Mon, 15 Jun 2009 13:53:47 +0000 (15:53 +0200)
By using the palette foreground color for line numbers when the
background is very dark, instead of the palette's "dark" color.

src/plugins/texteditor/fontsettingspage.cpp

index 7407404..cb19938 100644 (file)
@@ -143,10 +143,23 @@ QString FormatDescription::trName() const
 
 QColor FormatDescription::foreground() const
 {
-    if (m_name == QLatin1String(Constants::C_LINE_NUMBER))
-        return QApplication::palette().dark().color();
-    if (m_name == QLatin1String(Constants::C_PARENTHESES))
+    if (m_name == QLatin1String(Constants::C_LINE_NUMBER)) {
+        const QColor bg = QApplication::palette().background().color();
+        if (bg.value() < 128) {
+            return QApplication::palette().foreground().color();
+        } else {
+            return QApplication::palette().dark().color();
+        }
+    } else if (m_name == QLatin1String(Constants::C_CURRENT_LINE_NUMBER)) {
+        const QColor bg = QApplication::palette().background().color();
+        if (bg.value() < 128) {
+            return QApplication::palette().foreground().color();
+        } else {
+            return m_format.foreground();
+        }
+    } else if (m_name == QLatin1String(Constants::C_PARENTHESES)) {
         return QColor(Qt::red);
+    }
     return m_format.foreground();
 }