summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMitch Curtis <mitch.curtis@digia.com>2014-09-15 15:48:42 +0200
committerMitch Curtis <mitch.curtis@digia.com>2014-09-16 14:33:33 +0200
commit6ecc1e800649ce037008af4afd09a9c5d8648418 (patch)
tree8c6fcd19a6847cbf6e15d26a97897040f85e7246 /src
parent16b72baf2e7289ca284c5eff13ceb28b646fb470 (diff)
Respect Qt::FontRole for QComboBox items.
Change-Id: I810ae2d77109a36b457f07e4a7b0489c954279e8 Task-number: QTBUG-41131 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/widgets/widgets/qcombobox.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp
index eae0cbbd06..b4f9d25331 100644
--- a/src/widgets/widgets/qcombobox.cpp
+++ b/src/widgets/widgets/qcombobox.cpp
@@ -165,10 +165,15 @@ QStyleOptionMenuItem QComboMenuDelegate::getStyleOption(const QStyleOptionViewIt
if (mCombo->testAttribute(Qt::WA_SetFont)
|| mCombo->testAttribute(Qt::WA_MacSmallSize)
|| mCombo->testAttribute(Qt::WA_MacMiniSize)
- || mCombo->font() != qt_app_fonts_hash()->value("QComboBox", QFont()))
+ || mCombo->font() != qt_app_fonts_hash()->value("QComboBox", QFont())) {
menuOption.font = mCombo->font();
- else
- menuOption.font = qt_app_fonts_hash()->value("QComboMenuItem", mCombo->font());
+ } else {
+ QVariant fontRoleData = index.data(Qt::FontRole);
+ if (fontRoleData.isValid())
+ menuOption.font = fontRoleData.value<QFont>();
+ else
+ menuOption.font = qt_app_fonts_hash()->value("QComboMenuItem", mCombo->font());
+ }
menuOption.fontMetrics = QFontMetrics(menuOption.font);