diff options
author | Sami Merilä <sami.merila@nokia.com> | 2009-05-25 08:38:52 (GMT) |
---|---|---|
committer | Sami Merilä <sami.merila@nokia.com> | 2009-05-25 08:38:52 (GMT) |
commit | 2e3826fef5abfece022fbd1f0a1f4fbaf8c5a719 (patch) | |
tree | 0e3220b2c970496ca82b65d6922e696f336950b4 /src/gui/styles/qs60style.cpp | |
parent | 60eb2c290774b639f6fb9b7133e50699c649128a (diff) | |
download | Qt-2e3826fef5abfece022fbd1f0a1f4fbaf8c5a719.zip Qt-2e3826fef5abfece022fbd1f0a1f4fbaf8c5a719.tar.gz Qt-2e3826fef5abfece022fbd1f0a1f4fbaf8c5a719.tar.bz2 |
S60Style: Set WA_OpaquePaintEvent off for scrollbars to draw transparency correctly.
Diffstat (limited to 'src/gui/styles/qs60style.cpp')
-rw-r--r-- | src/gui/styles/qs60style.cpp | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index e65d98f..f8cf885 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -1145,7 +1145,7 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option, QS60StyleEnums::SkinParts skinPart; QS60StylePrivate::SkinElements skinElement; if (!isDisabled) { - const bool isPressed = (option->state & QStyle::State_Sunken) || + const bool isPressed = (option->state & QStyle::State_Sunken) || (option->state & QStyle::State_On); if (isFlat) { skinPart = @@ -1280,7 +1280,7 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option, QRect textRect = subElementRect(SE_ItemViewItemText, &voptAdj, widget); // draw themed background for table unless background brush has been defined. - if (vopt->backgroundBrush == Qt::NoBrush) { + if (vopt->backgroundBrush == Qt::NoBrush) { // draw the background const QStyleOptionViewItemV4 *tableOption = qstyleoption_cast<const QStyleOptionViewItemV4 *>(option); const QTableView *table = qobject_cast<const QTableView *>(widget); @@ -2616,6 +2616,14 @@ void QS60Style::polish(QWidget *widget) if (!widget) return; + if (false +#ifndef QT_NO_SCROLLBAR + || qobject_cast<QScrollBar *>(widget) +#endif + ) { + widget->setAttribute(Qt::WA_OpaquePaintEvent, false); + } + if (QS60StylePrivate::drawsOwnThemeBackground(widget)) { widget->setAttribute(Qt::WA_StyledBackground); } else if (false @@ -2636,6 +2644,14 @@ void QS60Style::polish(QWidget *widget) void QS60Style::unpolish(QWidget *widget) { + if (false + #ifndef QT_NO_SCROLLBAR + || qobject_cast<QScrollBar *>(widget) + #endif + ) { + widget->setAttribute(Qt::WA_OpaquePaintEvent); + } + if (QS60StylePrivate::drawsOwnThemeBackground(widget)) { widget->setAttribute(Qt::WA_StyledBackground, false); } else if (false @@ -2670,7 +2686,7 @@ void QS60Style::unpolish(QApplication *application) { QPalette newPalette = qApp->style()->standardPalette(); application->setPalette(newPalette); - QApplicationPrivate::setSystemPalette(originalPalette); + QApplicationPrivate::setSystemPalette(originalPalette); } void QS60Style::setStyleProperty(const char *name, const QVariant &value) |