diff options
author | Bradley T. Hughes <bradley.hughes@nokia.com> | 2009-06-24 15:18:05 (GMT) |
---|---|---|
committer | Bradley T. Hughes <bradley.hughes@nokia.com> | 2009-06-24 15:18:05 (GMT) |
commit | 723dfce0f2af6d93d2c1b50f5e44ad3cf63e058c (patch) | |
tree | f8e1c8693aceea8f1d2fc03d9ad1555b0a441a27 /src/gui/styles | |
parent | f90d8f3fe7e39a20b93a2ddfe0704bc48f3bd5f9 (diff) | |
parent | dab9d7c67ed2eda150c8da9e41db75f7eeeecd0d (diff) | |
download | Qt-723dfce0f2af6d93d2c1b50f5e44ad3cf63e058c.zip Qt-723dfce0f2af6d93d2c1b50f5e44ad3cf63e058c.tar.gz Qt-723dfce0f2af6d93d2c1b50f5e44ad3cf63e058c.tar.bz2 |
Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt
Conflicts:
src/gui/kernel/qapplication_x11.cpp
Diffstat (limited to 'src/gui/styles')
-rw-r--r-- | src/gui/styles/qcommonstyle.cpp | 2 | ||||
-rw-r--r-- | src/gui/styles/qgtkstyle.cpp | 1 | ||||
-rw-r--r-- | src/gui/styles/qmacstyle_mac.mm | 577 | ||||
-rw-r--r-- | src/gui/styles/qmacstylepixmaps_mac_p.h | 1400 | ||||
-rw-r--r-- | src/gui/styles/qwindowsvistastyle.cpp | 5 | ||||
-rw-r--r-- | src/gui/styles/qwindowsxpstyle.cpp | 4 |
6 files changed, 168 insertions, 1821 deletions
diff --git a/src/gui/styles/qcommonstyle.cpp b/src/gui/styles/qcommonstyle.cpp index c5c6973..24ff792 100644 --- a/src/gui/styles/qcommonstyle.cpp +++ b/src/gui/styles/qcommonstyle.cpp @@ -770,6 +770,8 @@ void QCommonStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, Q p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::Highlight)); else if (vopt->features & QStyleOptionViewItemV2::Alternate) p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::AlternateBase)); + else if (!(vopt->state & QStyle::State_Enabled)) + p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::Base)); } break; case PE_PanelItemViewItem: diff --git a/src/gui/styles/qgtkstyle.cpp b/src/gui/styles/qgtkstyle.cpp index 8499811..852d3fd 100644 --- a/src/gui/styles/qgtkstyle.cpp +++ b/src/gui/styles/qgtkstyle.cpp @@ -150,7 +150,6 @@ bool QGtkStyleFilter::eventFilter(QObject *obj, QEvent *e) if (e->type() == QEvent::ApplicationPaletteChange) { // Only do this the first time since this will also // generate applicationPaletteChange events - extern QHash<QByteArray, QPalette> *qt_app_palettes_hash(); //qapplication.cpp if (!qt_app_palettes_hash() || qt_app_palettes_hash()->isEmpty()) { QGtk::applyCustomPaletteHash(); } diff --git a/src/gui/styles/qmacstyle_mac.mm b/src/gui/styles/qmacstyle_mac.mm index 262fbcb..b20db5b 100644 --- a/src/gui/styles/qmacstyle_mac.mm +++ b/src/gui/styles/qmacstyle_mac.mm @@ -50,6 +50,7 @@ #define QMAC_QAQUASTYLE_SIZE_CONSTRAIN //#define DEBUG_SIZE_CONSTRAINT +#include <private/qapplication_p.h> #include <private/qcombobox_p.h> #include <private/qmacstylepixmaps_mac_p.h> #include <private/qpaintengine_mac_p.h> @@ -103,7 +104,6 @@ QT_BEGIN_NAMESPACE extern QRegion qt_mac_convert_mac_region(RgnHandle); //qregion_mac.cpp -extern QHash<QByteArray, QFont> *qt_app_fonts_hash(); // qapplication.cpp // The following constants are used for adjusting the size // of push buttons so that they are drawn inside their bounds. @@ -506,8 +506,6 @@ public: void drawColorlessButton(const HIRect &macRect, HIThemeButtonDrawInfo *bdi, QPainter *p, const QStyleOption *opt) const; - void drawPantherTab(const QStyleOptionTab *tab, QPainter *p, const QWidget *w = 0) const; - QSize pushButtonSizeFromContents(const QStyleOptionButton *btn) const; HIRect pushButtonContentBounds(const QStyleOptionButton *btn, @@ -581,11 +579,7 @@ QPixmap *qt_mac_backgroundPattern = 0; // stores the standard widget background. *****************************************************************************/ static inline int qt_mac_hitheme_tab_version() { -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4) - return 1; -#endif - return 0; + return 1; } static inline HIRect qt_hirectForQRect(const QRect &convertRect, const QRect &rect = QRect()) @@ -1471,8 +1465,7 @@ void QMacStylePrivate::getSliderInfo(QStyle::ComplexControl cc, const QStyleOpti } // Tiger broke reverse scroll bars so put them back and "fake it" - if (isScrollbar && (tdi->attributes & kThemeTrackRightToLeft) - && QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4) { + if (isScrollbar && (tdi->attributes & kThemeTrackRightToLeft)) { tdi->attributes &= ~kThemeTrackRightToLeft; tdi->value = tdi->max - slider->sliderPosition; } @@ -1555,166 +1548,6 @@ void QMacStylePrivate::startAnimationTimer() timerID = startTimer(animateSpeed(AquaListViewItemOpen)); } -enum { TabNormalLeft, TabNormalMid, TabNormalRight, TabSelectedActiveLeft, - TabSelectedActiveMid, TabSelectedActiveRight, TabSelectedInactiveLeft, - TabSelectedInactiveMid, TabSelectedInactiveRight, TabSelectedActiveGraphiteLeft, - TabSelectedActiveGraphiteMid, TabSelectedActiveGraphiteRight, - TabPressedLeft, TabPressedMid, TabPressedRight }; - -static const char * const * const PantherTabXpms[] = { - qt_mac_tabnrm_left, - qt_mac_tabnrm_mid, - qt_mac_tabnrm_right, - qt_mac_tabselected_active_left, - qt_mac_tabselected_active_mid, - qt_mac_tabselected_active_right, - qt_mac_tabselected_inactive_left, - qt_mac_tabselected_inactive_mid, - qt_mac_tabselected_inactive_right, - qt_mac_tab_selected_active_graph_left, - qt_mac_tab_selected_active_graph_mid, - qt_mac_tab_selected_active_graph_right, - qt_mac_tab_press_left, - qt_mac_tab_press_mid, - qt_mac_tab_press_right}; - -void QMacStylePrivate::drawPantherTab(const QStyleOptionTab *tabOpt, QPainter *p, - const QWidget *) const -{ - QString tabKey = QLatin1String("$qt_mac_style_tab_"); - int pantherTabStart; - int pantherTabMid; - int pantherTabEnd; - - ThemeTabDirection ttd = getTabDirection(tabOpt->shape); - - if (tabOpt->state & QStyle::State_Selected) { - if (!(tabOpt->state & QStyle::State_Active)) { - pantherTabStart = TabSelectedInactiveLeft; - } else { - // Draw into a pixmap to determine which version we use, Aqua or Graphite. - QPixmap tabPix(20, 20); - QPainter pixPainter(&tabPix); - HIThemeTabDrawInfo tdi; - tdi.version = 0; - tdi.style = kThemeTabFront; - tdi.direction = kThemeTabNorth; - tdi.size = kHIThemeTabSizeNormal; - tdi.adornment = kHIThemeTabAdornmentNone; - HIRect inRect = CGRectMake(0.0f, 0.0f, 20.0f, 20.0f); - HIThemeDrawTab(&inRect, &tdi, QMacCGContext(&pixPainter), kHIThemeOrientationNormal, 0); - pixPainter.end(); - const QRgb GraphiteColor = 0xffa7b0ba; - QRgb pmColor = tabPix.toImage().pixel(10, 10); - if (qAbs(qRed(pmColor) - qRed(GraphiteColor)) < 3 && - qAbs(qGreen(pmColor) - qGreen(GraphiteColor)) < 3 - && qAbs(qBlue(pmColor) - qBlue(GraphiteColor)) < 3) - pantherTabStart = TabSelectedActiveGraphiteLeft; - else - pantherTabStart = TabSelectedActiveLeft; - } - } else if (tabOpt->state & QStyle::State_Sunken) { - pantherTabStart = TabPressedLeft; - } else { - pantherTabStart = TabNormalLeft; - } - - - bool doLine; - bool verticalTabs = ttd == kThemeTabWest || ttd == kThemeTabEast; - - QStyleOptionTab::TabPosition tp = tabOpt->position; - if (ttd == kThemeTabWest - || ((ttd == kThemeTabNorth || ttd == kThemeTabSouth) - && tabOpt->direction == Qt::RightToLeft)) { - if (tp == QStyleOptionTab::Beginning) - tp = QStyleOptionTab::End; - else if (tp == QStyleOptionTab::End) - tp = QStyleOptionTab::Beginning; - } - - switch (tp) { - default: // Stupid GCC, being overly pedantic - case QStyleOptionTab::Beginning: - doLine = false; - pantherTabMid = pantherTabEnd = pantherTabStart + 1; - break; - case QStyleOptionTab::Middle: - doLine = true; - pantherTabMid = pantherTabEnd = ++pantherTabStart; - break; - case QStyleOptionTab::End: - doLine = true; - pantherTabMid = ++pantherTabStart; - pantherTabEnd = pantherTabMid + 1; - break; - case QStyleOptionTab::OnlyOneTab: - doLine = false; - pantherTabMid = pantherTabStart + 1; - pantherTabEnd = pantherTabMid + 1; - break; - } - - QPixmap pmStart; - if (!QPixmapCache::find(tabKey + QString::number(pantherTabStart), pmStart)) { - pmStart = QPixmap(PantherTabXpms[pantherTabStart]); - QPixmapCache::insert(tabKey + QString::number(pantherTabStart), pmStart); - } - - QPixmap pmMid; - if (!QPixmapCache::find(tabKey + QString::number(pantherTabMid), pmMid)) { - pmMid = QPixmap(PantherTabXpms[pantherTabMid]); - QPixmapCache::insert(tabKey + QString::number(pantherTabMid), pmMid); - } - - QPixmap pmEnd; - if (!QPixmapCache::find(tabKey + QString::number(pantherTabEnd), pmEnd)) { - pmEnd = QPixmap(PantherTabXpms[pantherTabEnd]); - QPixmapCache::insert(tabKey + QString::number(pantherTabEnd), pmEnd); - } - QRect tr = tabOpt->rect; - if (verticalTabs) { - p->save(); - int newX, newY, newRot; - if (tabOpt->shape == QTabBar::RoundedEast || tabOpt->shape == QTabBar::TriangularEast) { - newX = tr.width(); - newY = tr.y(); - newRot = 90; - } else { - newX = 0; - newY = tr.y() + tr.height(); - newRot = -90; - } - tr.setRect(0, 0, tr.height(), tr.width()); - QMatrix m; - if (ttd == kThemeTabEast) { - // It's lame but Apple inverts these on the East side. - m.scale(-1, 1); - m.translate(-tabOpt->rect.width(), 0); - } - m.translate(newX, newY); - m.rotate(newRot); - p->setMatrix(m, true); - } - - int x = tr.x(); - int y = tr.y(); - int endX = x + tr.width() - pmEnd.width(); - - p->drawPixmap(x, y, pmStart.width(), tr.height(), pmStart); - if (doLine) { - QPen oldPen = p->pen(); - p->setPen(QColor(0, 0, 0, 0x35)); - p->drawLine(x, y + (verticalTabs ? 0 : 1), x, tr.height() - 2); - } - - for (x = x + pmStart.width(); x < endX; x += pmMid.width()) - p->drawPixmap(x, y, pmMid.width(), tr.height(), pmMid); - p->drawPixmap(endX, y, pmEnd.width(), tr.height(), pmEnd); - if (verticalTabs) - p->restore(); -} - bool QMacStylePrivate::addWidget(QWidget *w) { //already knew of it @@ -2027,22 +1860,10 @@ QMacStyle::~QMacStyle() QPixmap QMacStylePrivate::generateBackgroundPattern() const { QPixmap px(4, 4); -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4) { - QMacCGContext cg(&px); - HIThemeSetFill(kThemeBrushDialogBackgroundActive, 0, cg, kHIThemeOrientationNormal); - const CGRect cgRect = CGRectMake(0, 0, px.width(), px.height()); - CGContextFillRect(cg, cgRect); - } else -#endif - { -#ifndef QT_MAC_NO_QUICKDRAW - QMacSavedPortInfo port(&px); - SetThemeBackground(kThemeBrushDialogBackgroundActive, px.depth(), true); - const Rect qdRect = { 0, 0, px.width(), px.height() }; - EraseRect(&qdRect); -#endif - } + QMacCGContext cg(&px); + HIThemeSetFill(kThemeBrushDialogBackgroundActive, 0, cg, kHIThemeOrientationNormal); + const CGRect cgRect = CGRectMake(0, 0, px.width(), px.height()); + CGContextFillRect(cg, cgRect); return px; } @@ -2052,14 +1873,13 @@ QPixmap QMacStylePrivate::generateBackgroundPattern() const */ void qt_mac_fill_background(QPainter *painter, const QRegion &rgn, const QPoint &offset, const QBrush &brush) { -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) QPoint dummy; const QPaintDevice *target = painter->device(); const QPaintDevice *redirected = QPainter::redirected(target, &dummy); const bool usePainter = redirected && redirected != target; const QRegion translated = rgn.translated(offset); - if (!usePainter && QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4 && qt_mac_backgroundPattern + if (!usePainter && qt_mac_backgroundPattern && qt_mac_backgroundPattern->cacheKey() == brush.texture().cacheKey()) { painter->setClipRegion(translated); @@ -2078,9 +1898,7 @@ void qt_mac_fill_background(QPainter *painter, const QRegion &rgn, const QPoint } CGContextRestoreGState(cg); - } else -#endif - { + } else { const QRect rect(translated.boundingRect()); painter->setClipRegion(translated); painter->drawTiledPixmap(rect, brush.texture(), rect.topLeft()); @@ -2150,18 +1968,6 @@ void QMacStyle::polish(QWidget* w) } } - // Adjust the lineedit of the editable combo box - if (QSysInfo::MacintoshVersion == QSysInfo::MV_10_3) { - if (QLineEdit *lineEdit = qobject_cast<QLineEdit *>(w)) { - if (qobject_cast<QComboBox *>(lineEdit->parentWidget()) - && !lineEdit->testAttribute(Qt::WA_SetFont)) { - QFont font = lineEdit->font(); - font.setPointSize(font.pointSize() - 1); - lineEdit->setFont(font); - } - } - } - if (QTabBar *tb = qobject_cast<QTabBar*>(w)) { if (tb->documentMode()) { w->setAttribute(Qt::WA_Hover); @@ -2396,12 +2202,6 @@ int QMacStyle::pixelMetric(PixelMetric metric, const QStyleOption *opt, const QW GetThemeMetric(kThemeMetricScrollBarWidth, &ret); break; case QAquaSizeMini: -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3) && 0 - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_3) { - GetThemeMetric(kThemeMetricMiniScrollBarWidth, &ret); - break; - } -#endif case QAquaSizeSmall: GetThemeMetric(kThemeMetricSmallScrollBarWidth, &ret); break; @@ -3318,27 +3118,14 @@ void QMacStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPai if (const QStyleOptionTabWidgetFrame *twf = qstyleoption_cast<const QStyleOptionTabWidgetFrame *>(opt)) { HIRect hirect = qt_hirectForQRect(twf->rect); -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4) { - HIThemeTabPaneDrawInfo tpdi; - tpdi.version = qt_mac_hitheme_tab_version(); - tpdi.state = tds; - tpdi.direction = getTabDirection(twf->shape); - tpdi.size = kHIThemeTabSizeNormal; - if (tpdi.version == 1) { - tpdi.kind = kHIThemeTabKindNormal; - tpdi.adornment = kHIThemeTabPaneAdornmentNormal; - } - HIThemeDrawTabPane(&hirect, &tpdi, cg, kHIThemeOrientationNormal); - } else -#endif - { - HIThemeGroupBoxDrawInfo gdi; - gdi.version = qt_mac_hitheme_version; - gdi.state = tds; - gdi.kind = kHIThemeGroupBoxKindSecondary; - HIThemeDrawGroupBox(&hirect, &gdi, cg, kHIThemeOrientationNormal); - } + HIThemeTabPaneDrawInfo tpdi; + tpdi.version = qt_mac_hitheme_tab_version(); + tpdi.state = tds; + tpdi.direction = getTabDirection(twf->shape); + tpdi.size = kHIThemeTabSizeNormal; + tpdi.kind = kHIThemeTabKindNormal; + tpdi.adornment = kHIThemeTabPaneAdornmentNormal; + HIThemeDrawTabPane(&hirect, &tpdi, cg, kHIThemeOrientationNormal); } break; case PE_PanelScrollAreaCorner: { @@ -3362,7 +3149,6 @@ void QMacStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPai QWindowsStyle::drawPrimitive(pe, opt, p, w); break; } - // Use the Leopard style only if the status bar is the status bar for a // QMainWindow with a unifed toolbar. if (w == 0 || w->parent() == 0 || qobject_cast<QMainWindow *>(w->parent()) == 0 || @@ -3790,104 +3576,104 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter return; } } - -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) - if (QSysInfo::MacintoshVersion > QSysInfo::MV_10_3) { - HIThemeTabDrawInfo tdi; - tdi.version = 1; - tdi.style = kThemeTabNonFront; - tdi.direction = getTabDirection(tabOpt->shape); - switch (d->aquaSizeConstrain(opt, w)) { - default: - case QAquaSizeUnknown: - case QAquaSizeLarge: - tdi.size = kHIThemeTabSizeNormal; - break; - case QAquaSizeSmall: - tdi.size = kHIThemeTabSizeSmall; + HIThemeTabDrawInfo tdi; + tdi.version = 1; + tdi.style = kThemeTabNonFront; + tdi.direction = getTabDirection(tabOpt->shape); + switch (d->aquaSizeConstrain(opt, w)) { + default: + case QAquaSizeUnknown: + case QAquaSizeLarge: + tdi.size = kHIThemeTabSizeNormal; + break; + case QAquaSizeSmall: + tdi.size = kHIThemeTabSizeSmall; + break; + case QAquaSizeMini: + tdi.size = kHIThemeTabSizeMini; + break; + } + bool verticalTabs = tdi.direction == kThemeTabWest || tdi.direction == kThemeTabEast; + QRect tabRect = tabOpt->rect; + + bool selected = tabOpt->state & State_Selected; + if (selected) { + if (!(tabOpt->state & State_Active)) + tdi.style = kThemeTabFrontUnavailable; + else if (!(tabOpt->state & State_Enabled)) + tdi.style = kThemeTabFrontInactive; + else + tdi.style = kThemeTabFront; + } else if (!(tabOpt->state & State_Active)) { + tdi.style = kThemeTabNonFrontUnavailable; + } else if (!(tabOpt->state & State_Enabled)) { + tdi.style = kThemeTabNonFrontInactive; + } else if (tabOpt->state & State_Sunken) { + tdi.style = kThemeTabFrontInactive; // (should be kThemeTabNonFrontPressed) + } + if (tabOpt->state & State_HasFocus) + tdi.adornment = kHIThemeTabAdornmentFocus; + else + tdi.adornment = kHIThemeTabAdornmentNone; + tdi.kind = kHIThemeTabKindNormal; + if (!verticalTabs) + tabRect.setY(tabRect.y() - 1); + else + tabRect.setX(tabRect.x() - 1); + QStyleOptionTab::TabPosition tp = tabOpt->position; + QStyleOptionTab::SelectedPosition sp = tabOpt->selectedPosition; + if (tabOpt->direction == Qt::RightToLeft && !verticalTabs) { + if (sp == QStyleOptionTab::NextIsSelected) + sp = QStyleOptionTab::PreviousIsSelected; + else if (sp == QStyleOptionTab::PreviousIsSelected) + sp = QStyleOptionTab::NextIsSelected; + switch (tp) { + case QStyleOptionTab::Beginning: + tp = QStyleOptionTab::End; break; - case QAquaSizeMini: - tdi.size = kHIThemeTabSizeMini; + case QStyleOptionTab::End: + tp = QStyleOptionTab::Beginning; break; - } - bool verticalTabs = tdi.direction == kThemeTabWest || tdi.direction == kThemeTabEast; - QRect tabRect = tabOpt->rect; - - if ((!verticalTabs && tabRect.height() > 21 || verticalTabs && tabRect.width() > 21)) { - d->drawPantherTab(tabOpt, p, w); + default: break; } + } + switch (tp) { + case QStyleOptionTab::Beginning: + tdi.position = kHIThemeTabPositionFirst; + if (sp != QStyleOptionTab::NextIsSelected) + tdi.adornment |= kHIThemeTabAdornmentTrailingSeparator; + break; + case QStyleOptionTab::Middle: + tdi.position = kHIThemeTabPositionMiddle; + if (selected) + tdi.adornment |= kHIThemeTabAdornmentLeadingSeparator; + if (sp != QStyleOptionTab::NextIsSelected) // Also when we're selected. + tdi.adornment |= kHIThemeTabAdornmentTrailingSeparator; + break; + case QStyleOptionTab::End: + tdi.position = kHIThemeTabPositionLast; + if (selected) + tdi.adornment |= kHIThemeTabAdornmentLeadingSeparator; + break; + case QStyleOptionTab::OnlyOneTab: + tdi.position = kHIThemeTabPositionOnly; + break; + } - bool selected = tabOpt->state & State_Selected; - if (selected) { - if (!(tabOpt->state & State_Active)) - tdi.style = kThemeTabFrontUnavailable; - else if (!(tabOpt->state & State_Enabled)) - tdi.style = kThemeTabFrontInactive; - else - tdi.style = kThemeTabFront; - } else if (!(tabOpt->state & State_Active)) { - tdi.style = kThemeTabNonFrontUnavailable; - } else if (!(tabOpt->state & State_Enabled)) { - tdi.style = kThemeTabNonFrontInactive; - } else if (tabOpt->state & State_Sunken) { - tdi.style = kThemeTabFrontInactive; // (should be kThemeTabNonFrontPressed) - } - if (tabOpt->state & State_HasFocus) - tdi.adornment = kHIThemeTabAdornmentFocus; - else - tdi.adornment = kHIThemeTabAdornmentNone; - tdi.kind = kHIThemeTabKindNormal; - if (!verticalTabs) - tabRect.setY(tabRect.y() - 1); - else - tabRect.setX(tabRect.x() - 1); - QStyleOptionTab::TabPosition tp = tabOpt->position; - QStyleOptionTab::SelectedPosition sp = tabOpt->selectedPosition; - if (tabOpt->direction == Qt::RightToLeft && !verticalTabs) { - if (sp == QStyleOptionTab::NextIsSelected) - sp = QStyleOptionTab::PreviousIsSelected; - else if (sp == QStyleOptionTab::PreviousIsSelected) - sp = QStyleOptionTab::NextIsSelected; - switch (tp) { - case QStyleOptionTab::Beginning: - tp = QStyleOptionTab::End; - break; - case QStyleOptionTab::End: - tp = QStyleOptionTab::Beginning; - break; - default: - break; - } - } - switch (tp) { - case QStyleOptionTab::Beginning: - tdi.position = kHIThemeTabPositionFirst; - if (sp != QStyleOptionTab::NextIsSelected) - tdi.adornment |= kHIThemeTabAdornmentTrailingSeparator; - break; - case QStyleOptionTab::Middle: - tdi.position = kHIThemeTabPositionMiddle; - if (selected) - tdi.adornment |= kHIThemeTabAdornmentLeadingSeparator; - if (sp != QStyleOptionTab::NextIsSelected) // Also when we're selected. - tdi.adornment |= kHIThemeTabAdornmentTrailingSeparator; - break; - case QStyleOptionTab::End: - tdi.position = kHIThemeTabPositionLast; - if (selected) - tdi.adornment |= kHIThemeTabAdornmentLeadingSeparator; - break; - case QStyleOptionTab::OnlyOneTab: - tdi.position = kHIThemeTabPositionOnly; - break; + // HITheme doesn't stretch its tabs. Therefore we have to cheat and do the job ourselves. + if ((!verticalTabs && tabRect.height() > 21 || verticalTabs && tabRect.width() > 21)) { + HIRect hirect = CGRectMake(0, 0, 23, 23); + QPixmap pm(23, 23); + pm.fill(Qt::transparent); + { + QMacCGContext pmcg(&pm); + HIThemeDrawTab(&hirect, &tdi, pmcg, kHIThemeOrientationNormal, 0); } + QStyleHelper::drawBorderPixmap(pm, p, tabRect, 7, 7, 7, 7); + } else { HIRect hirect = qt_hirectForQRect(tabRect); HIThemeDrawTab(&hirect, &tdi, cg, kHIThemeOrientationNormal, 0); - } else -#endif - { - d->drawPantherTab(tabOpt, p, w); } } break; @@ -4812,10 +4598,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex // similar when I have an upside down scroll bar // because on Tiger I only "fake" the reverse stuff. bool reverseHorizontal = (slider->direction == Qt::RightToLeft - && slider->orientation == Qt::Horizontal - && (!slider->upsideDown - || (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4 - && slider->upsideDown))); + && slider->orientation == Qt::Horizontal); if ((reverseHorizontal && slider->activeSubControls == SC_ScrollBarAddLine) || (!reverseHorizontal @@ -5196,12 +4979,6 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex bkind = kThemeBevelButton; break; case QAquaSizeMini: -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3) && 0 - if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_3) { - bkind = kThemeMiniBevelButton; - break; - } -#endif case QAquaSizeSmall: bkind = kThemeSmallBevelButton; break; @@ -5450,11 +5227,7 @@ QRect QMacStyle::subControlRect(ComplexControl cc, const QStyleOptionComplex *op cpc = sc == SC_ScrollBarSubLine ? kControlUpButtonPart : kControlDownButtonPart; if (slider->direction == Qt::RightToLeft - && slider->orientation == Qt::Horizontal - && (!slider->upsideDown - || (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4 - && slider->upsideDown)) - ) { + && slider->orientation == Qt::Horizontal) { if (cpc == kControlDownButtonPart) cpc = kControlUpButtonPart; else if (cpc == kControlUpButtonPart) @@ -5772,11 +5545,6 @@ QSize QMacStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt, break; case QStyle::CT_TabBarTab: if (const QStyleOptionTabV3 *tab = qstyleoption_cast<const QStyleOptionTabV3 *>(opt)) { - bool newStyleTabs = -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) - QSysInfo::MacintoshVersion >= QSysInfo::MV_10_4 ? true : -#endif - false; const QAquaWidgetSize AquaSize = d->aquaSizeConstrain(opt, widget); const bool differentFont = (widget && widget->testAttribute(Qt::WA_SetFont)) || !QApplication::desktopSettingsAware(); @@ -5784,86 +5552,61 @@ QSize QMacStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt, bool vertTabs = ttd == kThemeTabWest || ttd == kThemeTabEast; if (vertTabs) sz.transpose(); - if (newStyleTabs) { - int defaultTabHeight; - int defaultExtraSpace = proxy()->pixelMetric(PM_TabBarTabHSpace, tab, widget); // Remove spurious gcc warning (AFAIK) - QFontMetrics fm = opt->fontMetrics; - switch (AquaSize) { - case QAquaSizeUnknown: - case QAquaSizeLarge: - if (tab->documentMode) - defaultTabHeight = 23; - else - defaultTabHeight = 21; - break; - case QAquaSizeSmall: - defaultTabHeight = 18; - break; - case QAquaSizeMini: - defaultTabHeight = 16; - break; - } - - bool setWidth = false; - if (differentFont || !tab->icon.isNull()) { - sz.rheight() = qMax(defaultTabHeight, sz.height()); - } else { - QSize textSize = fm.size(Qt::TextShowMnemonic, tab->text); - sz.rheight() = qMax(defaultTabHeight, textSize.height()); - sz.rwidth() = textSize.width() + defaultExtraSpace; - setWidth = true; - } + int defaultTabHeight; + int defaultExtraSpace = proxy()->pixelMetric(PM_TabBarTabHSpace, tab, widget); // Remove spurious gcc warning (AFAIK) + QFontMetrics fm = opt->fontMetrics; + switch (AquaSize) { + case QAquaSizeUnknown: + case QAquaSizeLarge: + if (tab->documentMode) + defaultTabHeight = 23; + else + defaultTabHeight = 21; + break; + case QAquaSizeSmall: + defaultTabHeight = 18; + break; + case QAquaSizeMini: + defaultTabHeight = 16; + break; + } + bool setWidth = false; + if (differentFont || !tab->icon.isNull()) { + sz.rheight() = qMax(defaultTabHeight, sz.height()); + } else { + QSize textSize = fm.size(Qt::TextShowMnemonic, tab->text); + sz.rheight() = qMax(defaultTabHeight, textSize.height()); + sz.rwidth() = textSize.width() + defaultExtraSpace; + setWidth = true; + } - if (vertTabs) - sz.transpose(); + if (vertTabs) + sz.transpose(); - int maxWidgetHeight = qMax(tab->leftButtonSize.height(), tab->rightButtonSize.height()); - int maxWidgetWidth = qMax(tab->leftButtonSize.width(), tab->rightButtonSize.width()); + int maxWidgetHeight = qMax(tab->leftButtonSize.height(), tab->rightButtonSize.height()); + int maxWidgetWidth = qMax(tab->leftButtonSize.width(), tab->rightButtonSize.width()); - int widgetWidth = 0; - int widgetHeight = 0; - int padding = 0; - if (tab->leftButtonSize.isValid()) { - padding += 8; - widgetWidth += tab->leftButtonSize.width(); - widgetHeight += tab->leftButtonSize.height(); - } - if (tab->rightButtonSize.isValid()) { - padding += 8; - widgetWidth += tab->rightButtonSize.width(); - widgetHeight += tab->rightButtonSize.height(); - } + int widgetWidth = 0; + int widgetHeight = 0; + int padding = 0; + if (tab->leftButtonSize.isValid()) { + padding += 8; + widgetWidth += tab->leftButtonSize.width(); + widgetHeight += tab->leftButtonSize.height(); + } + if (tab->rightButtonSize.isValid()) { + padding += 8; + widgetWidth += tab->rightButtonSize.width(); + widgetHeight += tab->rightButtonSize.height(); + } - if (vertTabs) { - sz.setHeight(sz.height() + widgetHeight + padding); - sz.setWidth(qMax(sz.width(), maxWidgetWidth)); - } else { - if (setWidth) - sz.setWidth(sz.width() + widgetWidth + padding); - sz.setHeight(qMax(sz.height(), maxWidgetHeight)); - } + if (vertTabs) { + sz.setHeight(sz.height() + widgetHeight + padding); + sz.setWidth(qMax(sz.width(), maxWidgetWidth)); } else { - SInt32 tabh = sz.height(); - SInt32 overlap = 0; - switch (AquaSize) { - default: - case QAquaSizeUnknown: - case QAquaSizeLarge: - GetThemeMetric(kThemeLargeTabHeight, &tabh); - GetThemeMetric(kThemeMetricTabFrameOverlap, &overlap); - break; - case QAquaSizeMini: - GetThemeMetric(kThemeMetricMiniTabHeight, &tabh); - GetThemeMetric(kThemeMetricMiniTabFrameOverlap, &overlap); - break; - case QAquaSizeSmall: - GetThemeMetric(kThemeSmallTabHeight, &tabh); - GetThemeMetric(kThemeMetricSmallTabFrameOverlap, &overlap); - break; - } - tabh += overlap; - if (sz.height() < tabh) - sz.rheight() = tabh; + if (setWidth) + sz.setWidth(sz.width() + widgetWidth + padding); + sz.setHeight(qMax(sz.height(), maxWidgetHeight)); } } break; @@ -6152,11 +5895,9 @@ QIcon QMacStyle::standardIconImplementation(StandardPixmap standardIcon, const Q case SP_TrashIcon: iconType = kTrashIcon; break; -#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4) case SP_ComputerIcon: iconType = kComputerIcon; break; -#endif case SP_DriveFDIcon: iconType = kGenericFloppyIcon; break; diff --git a/src/gui/styles/qmacstylepixmaps_mac_p.h b/src/gui/styles/qmacstylepixmaps_mac_p.h index 0382acc..eacd6bd 100644 --- a/src/gui/styles/qmacstylepixmaps_mac_p.h +++ b/src/gui/styles/qmacstylepixmaps_mac_p.h @@ -50,1406 +50,6 @@ // We mean it. // -static const char *const qt_mac_tabnrm_left[]={ -"6 22 71 2", -"#a c #5f5f5f", -"## c #6d6d6d", -".c c #737373", -".d c #757575", -".b c #7c7c7c", -".n c #7d7d7d", -".r c #828282", -".f c #838383", -"#. c #878787", -".7 c #8c8c8c", -".v c #8e8e8e", -".4 c #939393", -".1 c #969696", -".j c #979797", -".a c #9a9a9a", -".6 c #9b9b9b", -".A c #a0a0a0", -".Z c #a6a6a6", -".C c #aaaaaa", -".3 c #aeaeae", -".E c #afafaf", -".J c #b3b3b3", -".8 c #b7b7b7", -".o c #b8b8b8", -".g c #b9b9b9", -".P c #bcbcbc", -".R c #bfbfbf", -".T c #c2c2c2", -".s c #c4c4c4", -"#e c #c6c6c6", -".V c #c7c7c7", -".w c #c9c9c9", -".B c #cacaca", -"#d c #cbcbcb", -".z c #cecece", -".F c #cfcfcf", -".5 c #d1d1d1", -"#c c #d3d3d3", -".K c #d4d4d4", -".G c #d5d5d5", -".Q c #d6d6d6", -".S c #d8d8d8", -".U c #dadada", -".2 c #dbdbdb", -".L c #dcdcdc", -".H c #dedede", -".I c #dfdfdf", -".M c #e0e0e0", -".X c #e1e1e1", -".D c #e2e2e2", -"#b c #e3e3e3", -".O c #e4e4e4", -".N c #e6e6e6", -".9 c #e7e7e7", -".e c #e8e8e8", -".# c #e9e9e9", -".t c #ebebeb", -"Qt c #ececec", -".p c #ededed", -".x c #eeeeee", -".y c #efefef", -".u c #f1f1f1", -".k c #f2f2f2", -".q c #f3f3f3", -".W c #f6f6f6", -".l c #f7f7f7", -".m c #f8f8f8", -".Y c #f9f9f9", -".h c #fcfcfc", -".i c #fdfdfd", -".0 c #ffffff", -"Qt.#.a.b.c.d", -".e.f.gQt.h.i", -".j.a.k.l.m.m", -".n.o.p.k.q.q", -".r.s.t.u.u.u", -".v.w.t.x.y.y", -".a.z.#.p.x.x", -".A.B.#.t.x.p", -".C.B.D.t.x.x", -".E.F.G.H.I.I", -".J.K.L.M.N.O", -".P.Q.D.#.e.#", -".R.S.O.p.x.p", -".T.U.#.u.u.k", -".V.I.t.q.W.W", -".P.X.k.W.Y.Y", -".Z.M.u.Y.0.0", -".1.2.l.0.0.0", -".3.4.m.0.0.0", -".5.6.7.8.9.0", -".X.5.3#.###a", -".O#b.L#c#d#e"}; - -static const char *const qt_mac_tabnrm_mid[]={ -"6 22 18 1", -"n c #585858", -". c #777777", -"p c #c2c2c2", -"o c #c3c3c3", -"g c #dedede", -"h c #e5e5e5", -"i c #e8e8e8", -"f c #ededed", -"e c #eeeeee", -"d c #efefef", -"c c #f1f1f1", -"b c #f3f3f3", -"j c #f6f6f6", -"a c #f8f8f8", -"k c #f9f9f9", -"# c #fdfdfd", -"l c #fefefe", -"m c #ffffff", -"......", -"######", -"aaaaaa", -"bbbbbb", -"cccccc", -"dddddd", -"eeeeee", -"ffffff", -"eeeeee", -"gggggg", -"hhhhhh", -"iiiiii", -"eeeeee", -"cccccc", -"jjjjjj", -"kkkkkk", -"llllll", -"mmmmmm", -"mmmmmm", -"mmmmmm", -"nnnnnn", -"oppooo"}; - -static const char *const qt_mac_tabnrm_right[]={ -"6 22 70 2", -".9 c #5f5f5f", -"#. c #6d6d6d", -".# c #747474", -"Qt c #757575", -".a c #7c7c7c", -".p c #7d7d7d", -".t c #828282", -".h c #838383", -"## c #888888", -".6 c #8c8c8c", -".x c #8e8e8e", -".3 c #929292", -".2 c #969696", -".l c #979797", -".b c #9a9a9a", -".7 c #9b9b9b", -".A c #a0a0a0", -".0 c #a6a6a6", -".C c #aaaaaa", -"#a c #aeaeae", -".H c #afafaf", -".N c #b3b3b3", -".5 c #b7b7b7", -".o c #b8b8b8", -".g c #b9b9b9", -".Q c #bcbcbc", -".S c #bfbfbf", -".U c #c2c2c2", -".s c #c4c4c4", -"#b c #c6c6c6", -".W c #c7c7c7", -".w c #c9c9c9", -".z c #cacaca", -".y c #cecece", -".G c #cfcfcf", -".8 c #d1d1d1", -"#c c #d3d3d3", -".M c #d4d4d4", -".F c #d5d5d5", -".P c #d6d6d6", -".R c #d8d8d8", -".T c #dadada", -".1 c #dbdbdb", -".L c #dcdcdc", -".E c #dedede", -".D c #dfdfdf", -".K c #e0e0e0", -".Y c #e1e1e1", -".B c #e2e2e2", -".I c #e4e4e4", -"#d c #e5e5e5", -".J c #e6e6e6", -".4 c #e7e7e7", -".O c #e8e8e8", -".c c #e9e9e9", -".r c #ebebeb", -".d c #ececec", -".n c #ededed", -".v c #eeeeee", -".u c #efefef", -".q c #f1f1f1", -".k c #f2f2f2", -".m c #f3f3f3", -".V c #f6f6f6", -".j c #f7f7f7", -".i c #f8f8f8", -".X c #f9f9f9", -".f c #fcfcfc", -".e c #fdfdfd", -".Z c #ffffff", -"Qt.#.a.b.c.d", -".e.f.d.g.h.c", -".i.i.j.k.b.l", -".m.m.k.n.o.p", -".q.q.q.r.s.t", -".u.u.v.r.w.x", -".v.v.n.c.y.b", -".n.v.r.c.z.A", -".v.v.r.B.z.C", -".D.D.E.F.G.H", -".I.J.K.L.M.N", -".c.O.c.B.P.Q", -".n.v.n.I.R.S", -".k.q.q.c.T.U", -".V.V.m.r.D.W", -".X.X.V.k.Y.Q", -".Z.Z.X.q.K.0", -".Z.Z.Z.j.1.2", -".Z.Z.Z.i.3.H", -".Z.4.5.6.7.8", -".9#.###a.8.B", -"#b.z#c.L.I#d"}; - -static const char *const qt_mac_tabselected_active_left[]={ -"6 22 130 2", -".d c #000069", -".C c #0042b4", -".I c #0157bb", -".w c #0c28a0", -".l c #101094", -".O c #1163c4", -".c c #1a1a6e", -".U c #1e6ec9", -".r c #214eb7", -".x c #256cc9", -".0 c #2877ce", -".6 c #347fd1", -".D c #3981d2", -"#a c #3a81d2", -"#g c #418ad7", -".J c #4288d4", -".q c #45459b", -".V c #458cd5", -".g c #46469f", -".P c #4a8dd7", -".1 c #4a90db", -"#m c #4b91db", -"#s c #4e91dc", -"#y c #4f8dcd", -".7 c #5195df", -".b c #525280", -"#E c #5984b2", -"#b c #5b9be1", -"#R c #5c7e9f", -".2 c #5d9de6", -"#5 c #5f5f5f", -"#Y c #627c8d", -"#h c #65a4e7", -".3 c #65a6e8", -".8 c #67a6eb", -"#n c #69a6e8", -"#c c #6cabed", -"#4 c #6d6d6d", -".4 c #6dacee", -".5 c #6eabee", -"#K c #6f87a1", -"#L c #70aff1", -".9 c #70aff2", -"#t c #71aced", -"#z c #72afee", -"#F c #72afef", -".f c #757592", -"#i c #75b3f4", -"#d c #75b4f3", -"#Z c #77a6b3", -"#. c #77b1f4", -"## c #7ab4f4", -".W c #7cb0e7", -"#o c #7cb8f9", -"#f c #80bdf9", -"#e c #81bbf9", -"#j c #81bbfc", -"#u c #86c1ff", -"#3 c #878787", -"#k c #89c2fd", -"#A c #89c3ff", -".Q c #8bb9e8", -"#l c #8bc4ff", -"#p c #8bc6ff", -"#G c #8dc7ff", -".K c #8ebae8", -"#S c #8ecbff", -"#q c #91c8ff", -"#M c #92ccff", -"#v c #93ccff", -".k c #9494b0", -"#r c #94caff", -".E c #96bde8", -".X c #96c3ee", -"#w c #96cfff", -"#B c #97cfff", -".Y c #99c4ee", -"#x c #99d0ff", -".a c #9a9aa4", -"#X c #9b9b9b", -".s c #9bbee8", -".R c #9bc4ee", -".T c #9cc5ee", -".Z c #9dc7ef", -"#C c #9dd3ff", -".y c #9ec3e8", -".L c #9ec3ed", -".M c #9ec5ed", -"#H c #9ed6ff", -".S c #9fc5ee", -"#D c #a1d7ff", -".N c #a3c8ed", -"#N c #a3daff", -".F c #a5c8ed", -".G c #a7c9ed", -"#J c #a7ddff", -"#I c #a7deff", -".H c #a8caee", -"#T c #a8e0ff", -"#0 c #a8e2e6", -".z c #a9caed", -"#O c #abe3ff", -".A c #adcbed", -"#P c #ade3ff", -"#Q c #aeaeae", -".m c #afbbe7", -".B c #afccee", -"#U c #b0e9ff", -".t c #b3d1ed", -"#V c #b5ebff", -".u c #bad4ee", -".v c #bbd4ef", -".h c #bfc2e8", -"#1 c #bffdff", -"a# c #c6c6c6", -"a. c #cbcbcb", -".n c #cbddf2", -".o c #cce0f3", -".p c #cfe1f4", -"#W c #d1d1d1", -"#9 c #d3d3d3", -"#8 c #dcdcdc", -"#2 c #e1e1e1", -"#7 c #e3e3e3", -"#6 c #e4e4e4", -".i c #e6e9f6", -".e c #e8e8e8", -".# c #e9e9e9", -".j c #e9edf8", -"Qt c #ececec", -"Qt.#.a.b.c.d", -".e.f.g.h.i.j", -".k.l.m.n.o.p", -".q.r.s.t.u.v", -".w.x.y.z.A.B", -".C.D.E.F.G.H", -".I.J.K.L.M.N", -".O.P.Q.R.S.T", -".U.V.W.X.Y.Z", -".0.1.2.3.4.5", -".6.7.8.9#.##", -"#a#b#c#d#e#f", -"#g#h#i#j#k#l", -"#m#n#o#p#q#r", -"#s#t#u#v#w#x", -"#y#z#A#B#C#D", -"#E#F#G#H#I#J", -"#K#L#M#N#O#P", -"#Q#R#S#T#U#V", -"#W#X#Y#Z#0#1", -"#2#W#Q#3#4#5", -"#6#7#8#9a.a#"}; - -static const char *const qt_mac_tabselected_active_mid[]={ -"6 22 23 1", -". c #00006d", -"s c #585858", -"h c #70adef", -"i c #7bb5f5", -"j c #83bcf9", -"k c #8bc3ff", -"l c #93c9ff", -"m c #9ad1ff", -"f c #9ec5ef", -"g c #9ec7f0", -"n c #a0d6ff", -"e c #a2c7ed", -"d c #a8caee", -"o c #a8deff", -"p c #ade2ff", -"c c #afceee", -"q c #b6ecff", -"b c #bbd5f0", -"r c #c1feff", -"u c #c2c2c2", -"t c #c3c3c3", -"a c #cfe1f3", -"# c #e9edf8", -"......", -"######", -"aaaaaa", -"bbbbbb", -"cccccc", -"dddddd", -"eeeeee", -"ffffff", -"gggggg", -"hhhhhh", -"iiiiii", -"jjjjjj", -"kkkkkk", -"llllll", -"mmmmmm", -"nnnnnn", -"oooooo", -"pppppp", -"qqqqqq", -"rrrrrr", -"ssssss", -"ttttuu"}; - -static const char *const qt_mac_tabselected_active_right[]={ -"6 22 128 2", -"Qt c #000069", -".G c #0042b4", -".M c #0157bb", -".A c #0c28a0", -".n c #101094", -".S c #1163c4", -".# c #1b1b6e", -".Y c #1e6ec9", -".t c #214eb7", -".z c #256cc9", -".4 c #2877ce", -"#. c #347fd1", -".F c #3981d2", -"#e c #3a81d2", -"#k c #418ad7", -".L c #4288d4", -".u c #45459b", -".X c #458cd5", -".h c #46469f", -".R c #4a8dd7", -".3 c #4a90db", -"#q c #4b91db", -"#w c #4e91dc", -"#C c #4f8dcd", -".9 c #5195df", -".a c #525280", -"#I c #5984b2", -"#T c #5b7d9f", -"#d c #5b9be1", -".2 c #5d9de6", -"#1 c #5f5f5f", -"#Y c #627c8d", -"#j c #65a4e7", -".1 c #65a6e8", -".8 c #67a6eb", -"#p c #69a6e8", -"#c c #6cabed", -"#2 c #6d6d6d", -".0 c #6dacee", -".Z c #6eabee", -"#O c #6f87a1", -"#N c #70aff1", -".7 c #70aff2", -"#v c #71aced", -"#B c #72afee", -"#H c #72afef", -".i c #757592", -"#i c #75b3f4", -"#b c #75b4f3", -"#X c #77a6b3", -".6 c #77b1f4", -".5 c #7ab4f4", -".W c #7cb0e7", -"#o c #7cb8f9", -"## c #80bdf9", -"#a c #81bbf9", -"#h c #81bbfc", -"#u c #86c1ff", -"#3 c #888888", -"#g c #89c2fd", -"#A c #89c3ff", -".Q c #8bb9e8", -"#f c #8bc4ff", -"#n c #8bc6ff", -"#G c #8dc7ff", -".K c #8ebae8", -"#S c #8ecbff", -"#m c #91c8ff", -"#M c #92ccff", -"#t c #93ccff", -".o c #9494b0", -"#l c #94caff", -".E c #96bde8", -".V c #96c3ee", -"#s c #96cfff", -"#z c #97cfff", -".U c #99c4ee", -"#r c #99d0ff", -".b c #9a9aa4", -"#Z c #9b9b9b", -".s c #9bbee8", -".P c #9bc4ee", -".N c #9cc5ee", -".T c #9dc7ef", -"#y c #9dd3ff", -".y c #9ec3e8", -".J c #9ec3ed", -".I c #9ec5ed", -"#F c #9ed6ff", -".O c #9fc5ee", -"#x c #a1d7ff", -".H c #a3c8ed", -"#L c #a3daff", -".D c #a5c8ed", -".C c #a7c9ed", -"#D c #a7ddff", -"#E c #a7deff", -".B c #a8caee", -"#R c #a8e0ff", -"#W c #a8e2e6", -".x c #a9caed", -"#K c #abe3ff", -".w c #adcbed", -"#J c #ade3ff", -"#U c #aeaeae", -".m c #afbbe7", -".v c #afccee", -"#Q c #b0e9ff", -".r c #b3d1ed", -"#P c #b5ebff", -".q c #bad4ee", -".p c #bbd4ef", -".g c #bfc2e8", -"#V c #bffdff", -"#5 c #c6c6c6", -"#6 c #cacaca", -".l c #cbddf2", -".k c #cce0f3", -".j c #cfe1f4", -"#0 c #d1d1d1", -"#7 c #d3d3d3", -"#8 c #dcdcdc", -"#4 c #e2e2e2", -"#9 c #e4e4e4", -".f c #e6e9f6", -".c c #e9e9e9", -".e c #e9edf8", -".d c #ececec", -"Qt.#.a.b.c.d", -".e.f.g.h.i.c", -".j.k.l.m.n.o", -".p.q.r.s.t.u", -".v.w.x.y.z.A", -".B.C.D.E.F.G", -".H.I.J.K.L.M", -".N.O.P.Q.R.S", -".T.U.V.W.X.Y", -".Z.0.1.2.3.4", -".5.6.7.8.9#.", -"###a#b#c#d#e", -"#f#g#h#i#j#k", -"#l#m#n#o#p#q", -"#r#s#t#u#v#w", -"#x#y#z#A#B#C", -"#D#E#F#G#H#I", -"#J#K#L#M#N#O", -"#P#Q#R#S#T#U", -"#V#W#X#Y#Z#0", -"#1#2#3#U#0#4", -"#5#6#7#8#9#9"}; - -static const char *const qt_mac_tabselected_inactive_left[]={ -"6 22 64 1", -"9 c #656565", -"8 c #737373", -"c c #767676", -"b c #808080", -"n c #818181", -"q c #828282", -"e c #888888", -"7 c #8b8b8b", -"u c #8d8d8d", -"3 c #939393", -"k c #979797", -"0 c #989898", -"j c #9b9b9b", -"A c #9d9d9d", -"a c #9e9e9e", -"4 c #9f9f9f", -"Y c #a3a3a3", -"C c #a6a6a6", -"E c #aaaaaa", -"J c #aeaeae", -"6 c #b0b0b0", -"2 c #b1b1b1", -"o c #b2b2b2", -"f c #b3b3b3", -"O c #b6b6b6", -"Q c #b9b9b9", -"S c #bbbbbb", -"r c #bdbdbd", -"U c #c0c0c0", -"v c #c2c2c2", -"B c #c3c3c3", -"y c #c6c6c6", -"F c #c7c7c7", -"K c #cccccc", -"G c #cdcdcd", -"R c #cfcfcf", -"T c #d1d1d1", -"1 c #d2d2d2", -"L c #d3d3d3", -"H c #d5d5d5", -"I c #d6d6d6", -"W c #d7d7d7", -"D c #d8d8d8", -"N c #dadada", -"M c #dcdcdc", -"5 c #dddddd", -"P c #dedede", -"z c #dfdfdf", -"s c #e0e0e0", -"g c #e1e1e1", -"p c #e2e2e2", -"w c #e3e3e3", -"x c #e4e4e4", -"t c #e6e6e6", -"l c #e7e7e7", -"d c #e8e8e8", -"# c #e9e9e9", -"V c #eaeaea", -"m c #ebebeb", -". c #ececec", -"X c #ededed", -"h c #f0f0f0", -"i c #f1f1f1", -"Z c #f2f2f2", -".#abcc", -"defghi", -"jklm..", -"nopldd", -"qrsttt", -"uvswxx", -"kyzpww", -"ABzswp", -"CBDsww", -"EFGHII", -"JKLIMN", -"OGDzPz", -"QRNpwp", -"STzttl", -"UIsdVV", -"OWlVXX", -"YItXZZ", -"01mZZZ", -"23.ZZZ", -"T4uo5Z", -"gT6789", -"xwMLKF"}; - -static const char *const qt_mac_tabselected_inactive_mid[]={ -"6 22 17 1", -"m c #5f5f5f", -". c #787878", -"o c #c3c3c3", -"n c #c4c4c4", -"g c #d5d5d5", -"h c #dbdbdb", -"i c #dedede", -"f c #e2e2e2", -"e c #e3e3e3", -"d c #e4e4e4", -"c c #e6e6e6", -"b c #e8e8e8", -"j c #eaeaea", -"a c #ececec", -"k c #ededed", -"# c #f1f1f1", -"l c #f2f2f2", -"......", -"######", -"aaaaaa", -"bbbbbb", -"cccccc", -"dddddd", -"eeeeee", -"ffffff", -"eeeeee", -"gggggg", -"hhhhhh", -"iiiiii", -"eeeeee", -"cccccc", -"jjjjjj", -"kkkkkk", -"llllll", -"llllll", -"llllll", -"llllll", -"mmmmmm", -"nnnnno"}; - -static const char *const qt_mac_tabselected_inactive_right[]={ -"6 22 65 2", -".6 c #656565", -".7 c #737373", -"Qt c #767676", -".# c #808080", -".p c #818181", -".t c #828282", -".h c #888888", -".8 c #8c8c8c", -".x c #8d8d8d", -".2 c #929292", -".k c #979797", -".1 c #989898", -".l c #9b9b9b", -".B c #9d9d9d", -".a c #9e9e9e", -".5 c #9f9f9f", -".Z c #a3a3a3", -".D c #a6a6a6", -".I c #aaaaaa", -".N c #aeaeae", -".9 c #b0b0b0", -".3 c #b1b1b1", -".o c #b2b2b2", -".g c #b3b3b3", -".P c #b6b6b6", -".R c #b9b9b9", -".T c #bbbbbb", -".s c #bdbdbd", -".V c #c0c0c0", -".w c #c2c2c2", -".A c #c3c3c3", -".z c #c6c6c6", -".H c #c7c7c7", -"#. c #cbcbcb", -".M c #cccccc", -".G c #cdcdcd", -".Q c #cfcfcf", -".S c #d1d1d1", -".0 c #d2d2d2", -".L c #d3d3d3", -".F c #d5d5d5", -".E c #d6d6d6", -".X c #d7d7d7", -".C c #d8d8d8", -".J c #dadada", -".K c #dcdcdc", -".4 c #dddddd", -".O c #dedede", -".y c #dfdfdf", -".r c #e0e0e0", -".f c #e1e1e1", -".n c #e2e2e2", -".v c #e3e3e3", -".u c #e4e4e4", -".q c #e6e6e6", -".j c #e7e7e7", -".m c #e8e8e8", -".b c #e9e9e9", -".U c #eaeaea", -".i c #ebebeb", -".c c #ececec", -".W c #ededed", -".e c #f0f0f0", -".d c #f1f1f1", -".Y c #f2f2f2", -"QtQt.#.a.b.c", -".d.e.f.g.h.b", -".c.c.i.j.k.l", -".m.m.j.n.o.p", -".q.q.q.r.s.t", -".u.u.v.r.w.x", -".v.v.n.y.z.k", -".n.v.r.y.A.B", -".v.v.r.C.A.D", -".E.E.F.G.H.I", -".J.K.E.L.M.N", -".y.O.y.C.G.P", -".n.v.n.J.Q.R", -".j.q.q.y.S.T", -".U.U.m.r.E.V", -".W.W.U.j.X.P", -".Y.Y.W.q.E.Z", -".Y.Y.Y.i.0.1", -".Y.Y.Y.c.2.3", -".Y.4.o.x.5.S", -".6.7.8.9.S.n", -".H#..L.K.u.u"}; - -static const char * const qt_mac_tab_selected_active_graph_left[]={ -"6 22 126 2", -".d c #15283d", -".c c #283348", -".w c #374459", -".l c #435364", -".B c #465568", -".q c #4d5367", -".b c #525763", -".H c #536271", -".N c #5d6a79", -"#1 c #5f5f5f", -".T c #647181", -"#N c #656e77", -".r c #677282", -"#B c #687380", -"#U c #697077", -".Z c #6c7885", -".5 c #6c7988", -"#0 c #6d6d6d", -"#H c #6f767f", -".x c #727e8a", -"## c #757f8d", -".f c #76767d", -"#v c #76838f", -"#e c #778292", -"#k c #7b8694", -".U c #7b8794", -".C c #7b8795", -".O c #7c8893", -".I c #7d8896", -".g c #7e8895", -".0 c #7e8b99", -"#q c #818c98", -".6 c #85909e", -"#Z c #878787", -"#a c #8a96a3", -"#f c #8d99a7", -".1 c #8e99a6", -"#V c #929ca5", -"#l c #939daa", -".k c #949499", -".7 c #96a0ad", -".2 c #98a3af", -"#r c #99a5b0", -".a c #9a9a9b", -"#I c #9aa4b1", -"#T c #9b9b9b", -".3 c #9ba6b1", -"#b c #9ba6b3", -".8 c #9ca7b4", -".4 c #9da6b1", -"#w c #9da7b5", -"#C c #9ea9b5", -".V c #a0a9b4", -"#g c #a0abb8", -"#. c #a3acb8", -".9 c #a4adba", -"#c c #a6afbc", -"#m c #a8b1bd", -"#d c #a9b3bf", -".J c #abb3bc", -".P c #adb4bb", -"#h c #adb8c3", -"#M c #aeaeae", -"#j c #aeb8c4", -".W c #b0b8c2", -"#i c #b0bac6", -".D c #b3bac3", -"#x c #b3bcc8", -"#n c #b3bdc9", -".Q c #b4bac2", -"#D c #b5bfc9", -".y c #b6bdc5", -"#o c #b6becb", -"#s c #b7c2ce", -".K c #b8bdc6", -".X c #b8bfc8", -"#p c #b8c1ce", -".S c #b9bec7", -".R c #b9bfc8", -".Y c #b9c1c7", -".M c #b9c1c8", -"#J c #bac5cf", -".L c #bbbfc8", -"#O c #bbc7d4", -".s c #bcc3ca", -"#t c #bcc5d1", -"#u c #bcc6d2", -".E c #bdc3ca", -"#y c #bdc7d2", -".G c #bec3cb", -".F c #bec5cb", -".z c #c2c7ce", -"#E c #c2cad6", -".A c #c3c9d0", -"#z c #c3ccd7", -"#A c #c3ced7", -".m c #c5c9d0", -"#7 c #c6c6c6", -"#K c #c7d2dd", -".t c #c8ced3", -"#F c #c8d3de", -"#G c #c9d3df", -"#6 c #cbcbcb", -".u c #cbd1d6", -".v c #ccd2d7", -".h c #ced2d6", -"#W c #ced8e4", -"#L c #d0dae3", -"#S c #d1d1d1", -"#P c #d1dbe6", -"#5 c #d3d3d3", -".n c #d5dadc", -"#Q c #d5deea", -".o c #d7dbdf", -"#R c #d7e1ec", -".p c #dadde0", -"#4 c #dcdcdc", -".i c #e0e2e6", -"#Y c #e1e1e1", -"#3 c #e3e3e3", -"#2 c #e4e4e4", -".j c #e6e8ea", -".e c #e8e8e8", -".# c #e9e9e9", -"#X c #e9f4ff", -"Qt c #ececec", -"Qt.#.a.b.c.d", -".e.f.g.h.i.j", -".k.l.m.n.o.p", -".q.r.s.t.u.v", -".w.x.y.z.A.A", -".B.C.D.E.F.G", -".H.I.J.K.L.M", -".N.O.P.Q.R.S", -".T.U.V.W.X.Y", -".Z.0.1.2.3.4", -".5.6.7.8.9#.", -"###a#b#c#d#d", -"#e#f#g#h#i#j", -"#k#l#m#n#o#p", -"#q#r#h#s#t#u", -"#v#w#x#y#z#A", -"#B#C#D#E#F#G", -"#H#I#J#K#L#L", -"#M#N#O#P#Q#R", -"#S#T#U#V#W#X", -"#Y#S#M#Z#0#1", -"#2#3#4#5#6#7"}; - -static const char * const qt_mac_tab_selected_active_graph_mid[]={ -"6 22 41 1", -". c #15273d", -"# c #16283e", -"a c #17293e", -"b c #192a3f", -"c c #1a2b40", -"K c #585858", -"p c #9ea8b4", -"q c #a4adb9", -"r c #aab4bf", -"s c #afb9c6", -"o c #b6bcc6", -"n c #b8bec6", -"t c #b8c2ce", -"m c #bbc2c8", -"u c #bbc5d0", -"l c #bec4cb", -"v c #bfcad4", -"L c #c2c2c2", -"k c #c2c9ce", -"M c #c3c3c3", -"w c #c7d1dd", -"i c #cad0d5", -"j c #cbd0d5", -"x c #ccd5e1", -"y c #cdd6e2", -"z c #ced6e2", -"A c #d5dfeb", -"B c #d6e0ec", -"C c #d7e1ed", -"e c #d8dbe0", -"f c #d8dce0", -"g c #d9dce0", -"D c #d9e2ee", -"h c #dadce0", -"E c #dae2ef", -"d c #e7e9eb", -"J c #e9f2ff", -"I c #eaf3ff", -"H c #ebf5ff", -"G c #ecf6ff", -"F c #edf6ff", -"..#abc", -"dddddd", -"eeefgh", -"iiiiij", -"kkkkkk", -"llllll", -"mmmmmm", -"nnnnnn", -"oooooo", -"pppppp", -"qqqqqq", -"rrrrrr", -"ssssss", -"tttttt", -"uuuuuu", -"vvvvvv", -"wwwwww", -"xxxxyz", -"AABCDE", -"FFGHIJ", -"KKKKKK", -"LLLLMM"}; - -static const char * const qt_mac_tab_selected_active_graph_right[]={ -"6 22 124 2", -"Qt c #15283d", -".# c #293448", -".z c #374459", -".n c #435364", -".F c #465568", -".u c #4d5367", -".a c #525763", -".L c #536271", -".R c #5d6a79", -"#X c #5f5f5f", -"#P c #646d77", -".X c #647181", -".t c #677282", -"#F c #687380", -"#U c #697077", -".3 c #6c7885", -".9 c #6c7988", -"#Y c #6d6d6d", -"#K c #6f767f", -".y c #727e8a", -"#c c #757f8d", -".i c #76767d", -"#z c #76838f", -"#i c #778292", -"#o c #7b8694", -".W c #7b8794", -".E c #7b8795", -".Q c #7c8893", -".K c #7d8896", -".h c #7e8895", -".2 c #7e8b99", -"#t c #818c98", -".8 c #85909e", -"#Z c #888888", -"#b c #8a96a3", -"#h c #8d99a7", -".1 c #8e99a6", -"#T c #929ca5", -"#n c #939daa", -".o c #949499", -".7 c #96a0ad", -".0 c #98a3af", -"#s c #99a5b0", -".b c #9a9a9b", -"#J c #9aa4b1", -"#V c #9b9b9b", -".Z c #9ba6b1", -"#a c #9ba6b3", -".6 c #9ca7b4", -".Y c #9da6b1", -"#y c #9da7b5", -"#E c #9ea9b5", -".V c #a0a9b4", -"#g c #a0abb8", -".4 c #a3acb8", -".5 c #a4adba", -"## c #a6afbc", -"#m c #a8b1bd", -"#. c #a9b3bf", -".J c #abb3bc", -".P c #adb4bb", -"#f c #adb8c3", -"#Q c #aeaeae", -"#d c #aeb8c4", -".U c #b0b8c2", -"#e c #b0bac6", -".D c #b3bac3", -"#x c #b3bcc8", -"#l c #b3bdc9", -".O c #b4bac2", -"#D c #b5bfc9", -".x c #b6bdc5", -"#k c #b6becb", -"#r c #b7c2ce", -".I c #b8bdc6", -".T c #b8bfc8", -"#j c #b8c1ce", -".M c #b9bec7", -".N c #b9bfc8", -".S c #b9c1c7", -".G c #b9c1c8", -"#I c #bac5cf", -".H c #bbbfc8", -"#O c #bbc7d4", -".s c #bcc3ca", -"#q c #bcc5d1", -"#p c #bcc6d2", -".C c #bdc3ca", -"#w c #bdc7d2", -".A c #bec3cb", -".B c #bec5cb", -".w c #c2c7ce", -"#C c #c2cad6", -".v c #c3c9d0", -"#v c #c3ccd7", -"#u c #c3ced7", -".m c #c5c9d0", -"#1 c #c6c6c6", -"#H c #c7d2dd", -".r c #c8ced3", -"#B c #c8d3de", -"#A c #c9d3df", -"#2 c #cacaca", -".q c #cbd1d6", -".p c #ccd2d7", -".g c #ced2d6", -"#S c #ced8e4", -"#G c #d0dae3", -"#W c #d1d1d1", -"#N c #d1dbe6", -"#3 c #d3d3d3", -".l c #d5dadc", -"#M c #d5deea", -".k c #d7dbdf", -"#L c #d7e1ec", -".j c #dadde0", -"#4 c #dcdcdc", -".f c #e0e2e6", -"#0 c #e2e2e2", -"#5 c #e4e4e4", -".e c #e6e8ea", -".c c #e9e9e9", -"#R c #e9f4ff", -".d c #ececec", -"Qt.#.a.b.c.d", -".e.f.g.h.i.c", -".j.k.l.m.n.o", -".p.q.r.s.t.u", -".v.v.w.x.y.z", -".A.B.C.D.E.F", -".G.H.I.J.K.L", -".M.N.O.P.Q.R", -".S.T.U.V.W.X", -".Y.Z.0.1.2.3", -".4.5.6.7.8.9", -"#.#.###a#b#c", -"#d#e#f#g#h#i", -"#j#k#l#m#n#o", -"#p#q#r#f#s#t", -"#u#v#w#x#y#z", -"#A#B#C#D#E#F", -"#G#G#H#I#J#K", -"#L#M#N#O#P#Q", -"#R#S#T#U#V#W", -"#X#Y#Z#Q#W#0", -"#1#2#3#4#5#5"}; - -static const char * const qt_mac_tab_press_left[]={ -"6 22 65 2", -".8 c #5c5c5c", -".c c #696969", -".d c #6a6a6a", -".b c #767676", -".f c #7e7e7e", -".t c #808080", -".4 c #828282", -".7 c #838383", -".2 c #888888", -".k c #8b8b8b", -".0 c #8c8c8c", -".z c #909090", -".j c #919191", -".a c #959595", -".Y c #989898", -".B c #999999", -".D c #9e9e9e", -".I c #a1a1a1", -".n c #a6a6a6", -".g c #a7a7a7", -".6 c #a8a8a8", -".O c #aaaaaa", -".1 c #ababab", -".R c #acacac", -".T c #afafaf", -".q c #b1b1b1", -".V c #b3b3b3", -".u c #b5b5b5", -".A c #b6b6b6", -".x c #bababa", -".E c #bbbbbb", -"#. c #bebebe", -".J c #bfbfbf", -".F c #c0c0c0", -".P c #c1c1c1", -".S c #c3c3c3", -".U c #c5c5c5", -".K c #c6c6c6", -".G c #c8c8c8", -".H c #c9c9c9", -".L c #cacaca", -".X c #cbcbcb", -".C c #cccccc", -".3 c #cdcdcd", -".N c #cecece", -".M c #cfcfcf", -".5 c #d0d0d0", -".Q c #d1d1d1", -".y c #d2d2d2", -".r c #d4d4d4", -".h c #d5d5d5", -".o c #d6d6d6", -".v c #d7d7d7", -".w c #d8d8d8", -".s c #d9d9d9", -".l c #dadada", -".p c #dbdbdb", -".9 c #dcdcdc", -".W c #dedede", -".m c #dfdfdf", -".e c #e0e0e0", -".# c #e1e1e1", -".i c #e3e3e3", -"Qt c #e4e4e4", -".Z c #e6e6e6", -"Qt.#.a.b.c.d", -".e.f.g.h.iQt", -".j.k.l.m.e.e", -".b.n.o.l.p.p", -".b.q.r.s.s.s", -".t.u.r.v.w.w", -".k.x.y.o.v.v", -".z.A.y.r.v.o", -".B.A.C.r.v.v", -".D.E.F.G.H.H", -".I.J.K.L.M.N", -".O.P.C.y.Q.y", -".R.S.N.o.v.o", -".T.U.y.s.s.l", -".V.H.r.p.W.W", -".O.X.l.W.#.#", -".Y.L.s.#.Z.Z", -".0.K.m.Z.Z.Z", -".1.2.e.Z.Z.Z", -".3.Y.4.n.5.Z", -".s.H.6.7.d.8", -".9.l.r.L.S#."}; - -static const char * const qt_mac_tab_press_mid[]={ -"7 22 19 1", -"o c #555555", -". c #6b6b6b", -"p c #bbbbbb", -"q c #bcbcbc", -"g c #c8c8c8", -"h c #cecece", -"i c #d1d1d1", -"f c #d6d6d6", -"e c #d7d7d7", -"d c #d8d8d8", -"c c #d9d9d9", -"j c #dadada", -"b c #dbdbdb", -"k c #dedede", -"a c #e0e0e0", -"l c #e1e1e1", -"# c #e4e4e4", -"m c #e5e5e5", -"n c #e6e6e6", -".......", -"#######", -"aaaaaaa", -"bbbbbbb", -"ccccccc", -"ddddddd", -"eeeeeee", -"fffffff", -"eeeeeee", -"ggggggg", -"hhhhhhh", -"iiiiiii", -"eeeeeee", -"jjjjjjj", -"kkkkkkk", -"lllllll", -"mmmmmmm", -"nnnnnnn", -"nnnnnnn", -"nnnnnnn", -"ooooooo", -"ppppqqq"}; - -static const char * const qt_mac_tab_press_right[]={ -"6 22 64 1", -"5 c #5c5c5c", -". c #6a6a6a", -"# c #767676", -"g c #7e7e7e", -"v c #808080", -"3 c #828282", -"6 c #848484", -"0 c #888888", -"k c #8b8b8b", -"Z c #8c8c8c", -"z c #909090", -"l c #919191", -"a c #959595", -"Y c #989898", -"B c #999999", -"G c #9e9e9e", -"M c #a1a1a1", -"o c #a6a6a6", -"f c #a7a7a7", -"7 c #a8a8a8", -"P c #aaaaaa", -"1 c #ababab", -"R c #acacac", -"T c #afafaf", -"r c #b1b1b1", -"V c #b3b3b3", -"u c #b5b5b5", -"y c #b6b6b6", -"x c #bababa", -"F c #bbbbbb", -"8 c #bebebe", -"L c #bfbfbf", -"E c #c0c0c0", -"O c #c1c1c1", -"9 c #c2c2c2", -"Q c #c3c3c3", -"S c #c5c5c5", -"K c #c6c6c6", -"D c #c8c8c8", -"C c #c9c9c9", -"J c #cacaca", -"W c #cbcbcb", -"A c #cccccc", -"4 c #cdcdcd", -"H c #cecece", -"I c #cfcfcf", -"2 c #d0d0d0", -"N c #d1d1d1", -"w c #d2d2d2", -"q c #d4d4d4", -"e c #d5d5d5", -"n c #d6d6d6", -"t c #d7d7d7", -"s c #d8d8d8", -"p c #d9d9d9", -"j c #dadada", -"m c #dbdbdb", -"U c #dedede", -"i c #dfdfdf", -"h c #e0e0e0", -"b c #e1e1e1", -"d c #e3e3e3", -"c c #e4e4e4", -"X c #e6e6e6", -"..#abc", -"cdefgb", -"hhijkl", -"mmjno#", -"pppqr#", -"sstquv", -"ttnwxk", -"ntqwyz", -"ttqAyB", -"CCDEFG", -"HIJKLM", -"wNwAOP", -"ntnHQR", -"jppwST", -"UUmqCV", -"bbUjWP", -"XXbpJY", -"XXXiKZ", -"XXXh01", -"X2o3Y4", -"5.67Cj", -"89Jqmm"}; - static const char * const qt_mac_toolbar_ext[]={ "14 9 4 1", "# c #858585", diff --git a/src/gui/styles/qwindowsvistastyle.cpp b/src/gui/styles/qwindowsvistastyle.cpp index 283c37a..7a75a7d 100644 --- a/src/gui/styles/qwindowsvistastyle.cpp +++ b/src/gui/styles/qwindowsvistastyle.cpp @@ -1047,7 +1047,8 @@ void QWindowsVistaStyle::drawControl(ControlElement element, const QStyleOption QRect ir = subElementRect(SE_PushButtonContents, option, 0); QStyleOptionButton newBtn = *btn; newBtn.rect = QStyle::visualRect(option->direction, option->rect, - QRect(ir.right() - mbiw - 2, (option->rect.height()/2) - (mbih/2), + QRect(ir.right() - mbiw - 2, + option->rect.top() + (option->rect.height()/2) - (mbih/2), mbiw + 1, mbih + 1)); proxy()->drawPrimitive(PE_IndicatorArrowDown, &newBtn, painter, widget); } @@ -1655,7 +1656,7 @@ void QWindowsVistaStyle::drawComplexControl(ComplexControl control, const QStyle if (sub & SC_ComboBoxArrow) { QRect subRect = proxy()->subControlRect(CC_ComboBox, option, SC_ComboBoxArrow, widget); XPThemeData theme(widget, painter, QLatin1String("COMBOBOX")); - theme.rect = proxy()->subControlRect(CC_ComboBox, option, SC_ComboBoxArrow, widget); + theme.rect = subRect; partId = option->direction == Qt::RightToLeft ? CP_DROPDOWNBUTTONLEFT : CP_DROPDOWNBUTTONRIGHT; if (!(cmb->state & State_Enabled)) diff --git a/src/gui/styles/qwindowsxpstyle.cpp b/src/gui/styles/qwindowsxpstyle.cpp index 09e5b93..b0eae1f 100644 --- a/src/gui/styles/qwindowsxpstyle.cpp +++ b/src/gui/styles/qwindowsxpstyle.cpp @@ -3358,6 +3358,10 @@ int QWindowsXPStyle::pixelMetric(PixelMetric pm, const QStyleOption *option, con res = 0; break; + case PM_ButtonDefaultIndicator: + res = 0; + break; + default: res = QWindowsStyle::pixelMetric(pm, option, widget); } |