summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorOlivier Goffart <ogoffart@trolltech.com>2010-04-01 08:45:34 (GMT)
committerOlivier Goffart <ogoffart@trolltech.com>2010-04-01 08:45:34 (GMT)
commit603ee8b841385c04c5118650075134154aee29a7 (patch)
tree690a0b4abfa9a20551aab285cbb0fef49686c917 /src/gui/widgets
parentd5e6111c62bc4437243fb1d6389e3af180f623d7 (diff)
parent8ffd45cf6832b67960dbaa10654c4b84358fe3f9 (diff)
downloadQt-603ee8b841385c04c5118650075134154aee29a7.zip
Qt-603ee8b841385c04c5118650075134154aee29a7.tar.gz
Qt-603ee8b841385c04c5118650075134154aee29a7.tar.bz2
Merge remote branch 'origin/4.7' into 4.7
Conflicts: src/gui/text/qstatictext.cpp
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/qcombobox.cpp10
-rw-r--r--src/gui/widgets/qlineedit.cpp4
-rw-r--r--src/gui/widgets/qvalidator.cpp2
3 files changed, 12 insertions, 4 deletions
diff --git a/src/gui/widgets/qcombobox.cpp b/src/gui/widgets/qcombobox.cpp
index c16f18a..b1a27f2 100644
--- a/src/gui/widgets/qcombobox.cpp
+++ b/src/gui/widgets/qcombobox.cpp
@@ -108,7 +108,15 @@ QStyleOptionMenuItem QComboMenuDelegate::getStyleOption(const QStyleOptionViewIt
const QModelIndex &index) const
{
QStyleOptionMenuItem menuOption;
- menuOption.palette = option.palette.resolve(QApplication::palette("QMenu"));
+
+ QPalette resolvedpalette = option.palette.resolve(QApplication::palette("QMenu"));
+ QVariant value = index.data(Qt::ForegroundRole);
+ if (qVariantCanConvert<QBrush>(value)) {
+ resolvedpalette.setBrush(QPalette::WindowText, qvariant_cast<QBrush>(value));
+ resolvedpalette.setBrush(QPalette::ButtonText, qvariant_cast<QBrush>(value));
+ resolvedpalette.setBrush(QPalette::Text, qvariant_cast<QBrush>(value));
+ }
+ menuOption.palette = resolvedpalette;
menuOption.state = QStyle::State_None;
if (mCombo->window()->isActiveWindow())
menuOption.state = QStyle::State_Active;
diff --git a/src/gui/widgets/qlineedit.cpp b/src/gui/widgets/qlineedit.cpp
index 817547c..0b8dca9 100644
--- a/src/gui/widgets/qlineedit.cpp
+++ b/src/gui/widgets/qlineedit.cpp
@@ -2046,7 +2046,7 @@ void QLineEdit::contextMenuEvent(QContextMenuEvent *event)
}
}
-#if defined(Q_WS_WIN)
+#if defined(Q_WS_WIN) || defined(Q_WS_X11)
extern bool qt_use_rtl_extensions;
#endif
@@ -2118,7 +2118,7 @@ QMenu *QLineEdit::createStandardContextMenu()
}
#endif
-#if defined(Q_WS_WIN)
+#if defined(Q_WS_WIN) || defined(Q_WS_X11)
if (!d->control->isReadOnly() && qt_use_rtl_extensions) {
#else
if (!d->control->isReadOnly()) {
diff --git a/src/gui/widgets/qvalidator.cpp b/src/gui/widgets/qvalidator.cpp
index 0b5cc5a..b75db45 100644
--- a/src/gui/widgets/qvalidator.cpp
+++ b/src/gui/widgets/qvalidator.cpp
@@ -523,7 +523,7 @@ public:
In addition, QDoubleValidator is always guaranteed to accept a number
formatted according to the "C" locale. QDoubleValidator will not accept
- numbers with thousand-seperators.
+ numbers with thousand-separators.
\sa QIntValidator, QRegExpValidator, {Line Edits Example}
*/