summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@nokia.com>2012-06-01 10:32:17 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-07 17:41:37 +0200
commit1f9ae50457a3750f03fbe1be16dcb870af961d18 (patch)
tree016e53ba46311ebe4b6adad6313fb0c280958297 /src/gui
parentd728bfe79349ff8da2a811270f2af3f5cacc6f95 (diff)
Added SpellCheckUnderlineStyle theme hint.
Task-number: QTBUG-25115 Change-Id: I70abbed426ad8bebca51823ed5ce16f2f300b5cc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/kernel/qplatformtheme.h3
-rw-r--r--src/gui/kernel/qplatformtheme_qpa.cpp6
-rw-r--r--src/gui/painting/qpainter.cpp6
3 files changed, 13 insertions, 2 deletions
diff --git a/src/gui/kernel/qplatformtheme.h b/src/gui/kernel/qplatformtheme.h
index 971c010214..f80f9e59d8 100644
--- a/src/gui/kernel/qplatformtheme.h
+++ b/src/gui/kernel/qplatformtheme.h
@@ -86,7 +86,8 @@ public:
DialogButtonBoxButtonsHaveIcons,
UseFullScreenForPopupMenu,
KeyboardScheme,
- UiEffects
+ UiEffects,
+ SpellCheckUnderlineStyle
};
enum DialogType {
diff --git a/src/gui/kernel/qplatformtheme_qpa.cpp b/src/gui/kernel/qplatformtheme_qpa.cpp
index 32204e6a26..1038eb2826 100644
--- a/src/gui/kernel/qplatformtheme_qpa.cpp
+++ b/src/gui/kernel/qplatformtheme_qpa.cpp
@@ -44,6 +44,7 @@
#include <QtCore/QVariant>
#include <QtCore/QStringList>
#include <qpalette.h>
+#include <qtextformat.h>
QT_BEGIN_NAMESPACE
@@ -101,6 +102,9 @@ QT_BEGIN_NAMESPACE
\value UiEffects (int) A flag value consisting of UiEffect values specifying the enabled UI animations.
+ \value SpellCheckUnderlineStyle (int) A QTextCharFormat::UnderlineStyle specifying
+ the underline style used misspelled words when spell checking.
+
\sa themeHint(), QStyle::pixelMetric()
*/
@@ -167,6 +171,8 @@ QVariant QPlatformTheme::themeHint(ThemeHint hint) const
return QVariant(int(WindowsKeyboardScheme));
case UiEffects:
return QVariant(int(0));
+ case SpellCheckUnderlineStyle:
+ return QVariant(int(QTextCharFormat::SpellCheckUnderline));
}
return QVariant();
}
diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp
index ed08162c1c..f49b4d92b1 100644
--- a/src/gui/painting/qpainter.cpp
+++ b/src/gui/painting/qpainter.cpp
@@ -61,6 +61,8 @@
#include "qstatictext.h"
#include "qglyphrun.h"
+#include <qpa/qplatformtheme.h>
+
#include <private/qfontengine_p.h>
#include <private/qpaintengine_p.h>
#include <private/qemulationpaintengine_p.h>
@@ -6180,7 +6182,9 @@ static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const
const qreal underlinePos = pos.y() + qCeil(underlineOffset);
if (underlineStyle == QTextCharFormat::SpellCheckUnderline) {
- underlineStyle = QTextCharFormat::SpellCheckUnderline; // ### Qt5 QTextCharFormat::UnderlineStyle(QApplication::style()->styleHint(QStyle::SH_SpellCheckUnderlineStyle));
+ QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme();
+ if (theme)
+ underlineStyle = QTextCharFormat::UnderlineStyle(theme->themeHint(QPlatformTheme::SpellCheckUnderlineStyle).toInt());
}
if (underlineStyle == QTextCharFormat::WaveUnderline) {