diff options
author | Samuel Rødal <samuel.rodal@nokia.com> | 2012-06-01 10:32:17 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-06-07 17:41:37 +0200 |
commit | 1f9ae50457a3750f03fbe1be16dcb870af961d18 (patch) | |
tree | 016e53ba46311ebe4b6adad6313fb0c280958297 | |
parent | d728bfe79349ff8da2a811270f2af3f5cacc6f95 (diff) |
Added SpellCheckUnderlineStyle theme hint.
Task-number: QTBUG-25115
Change-Id: I70abbed426ad8bebca51823ed5ce16f2f300b5cc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
-rw-r--r-- | src/gui/kernel/qplatformtheme.h | 3 | ||||
-rw-r--r-- | src/gui/kernel/qplatformtheme_qpa.cpp | 6 | ||||
-rw-r--r-- | src/gui/painting/qpainter.cpp | 6 |
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) { |