From 267c2c2a93eb3aa09b01f0fe383ee01a6fcdbec2 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 4 Apr 2017 10:32:06 +0200 Subject: QFusionStyle::drawPrimitive(): Use color in cache key of PE_PanelButtonCommand Previously, only bool isDefault was used, which did not discriminate changes in ButtonColor. Use the color name instead. Task-number: QTBUG-59850 Change-Id: I1e006f98371a5f2039dcca1207addc0396e7c1e5 Reviewed-by: J-P Nurmi --- src/widgets/styles/qfusionstyle.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/widgets/styles') diff --git a/src/widgets/styles/qfusionstyle.cpp b/src/widgets/styles/qfusionstyle.cpp index 98d45587f0..19b1cc2c57 100644 --- a/src/widgets/styles/qfusionstyle.cpp +++ b/src/widgets/styles/qfusionstyle.cpp @@ -908,8 +908,6 @@ void QFusionStyle::drawPrimitive(PrimitiveElement elem, return; } - BEGIN_STYLE_PIXMAPCACHE(QString::fromLatin1("pushbutton-%1").arg(isDefault)) - r = rect.adjusted(0, 1, -1, 0); bool isEnabled = option->state & State_Enabled; bool hasFocus = (option->state & State_HasFocus && option->state & State_KeyboardFocusChange); @@ -923,6 +921,9 @@ void QFusionStyle::drawPrimitive(PrimitiveElement elem, if (isDefault) buttonColor = mergedColors(buttonColor, highlightedOutline.lighter(130), 90); + BEGIN_STYLE_PIXMAPCACHE(QStringLiteral("pushbutton-") + buttonColor.name(QColor::HexArgb)) + r = rect.adjusted(0, 1, -1, 0); + p->setRenderHint(QPainter::Antialiasing, true); p->translate(0.5, -0.5); -- cgit v1.2.3 From 8146fd5f8ccb144207811cbbc21ec12fc487ec4c Mon Sep 17 00:00:00 2001 From: Stephan Binner Date: Tue, 4 Apr 2017 09:46:05 +0200 Subject: Fix several unused warnings for misc disabled features Change-Id: Id42daf684abeeb888155d65eca143150d9c5f5a7 Reviewed-by: Paul Olav Tvete --- src/widgets/styles/qcommonstyle.cpp | 16 ++++++++++++++++ src/widgets/styles/qfusionstyle.cpp | 4 ++++ src/widgets/styles/qpixmapstyle.cpp | 17 +++++++++++++++++ src/widgets/styles/qstylehelper.cpp | 2 ++ src/widgets/styles/qwindowsstyle.cpp | 2 ++ 5 files changed, 41 insertions(+) (limited to 'src/widgets/styles') diff --git a/src/widgets/styles/qcommonstyle.cpp b/src/widgets/styles/qcommonstyle.cpp index cdb80d7581..fcd8f436fe 100644 --- a/src/widgets/styles/qcommonstyle.cpp +++ b/src/widgets/styles/qcommonstyle.cpp @@ -416,6 +416,8 @@ void QCommonStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, Q proxy()->drawItemPixmap(p, opt->rect, Qt::AlignCenter, pixmap); break; } +#else + Q_UNUSED(d); #endif // QT_NO_TABBAR case PE_FrameTabWidget: case PE_FrameWindow: @@ -2315,6 +2317,9 @@ void QCommonStyle::drawControl(ControlElement element, const QStyleOption *opt, default: break; } +#if !QT_CONFIG(tabbar) && !QT_CONFIG(itemviews) + Q_UNUSED(d); +#endif } /*! @@ -3058,6 +3063,9 @@ QRect QCommonStyle::subElementRect(SubElement sr, const QStyleOption *opt, break; } return r; +#if !QT_CONFIG(tabwidget) && !QT_CONFIG(itemviews) + Q_UNUSED(d); +#endif } #ifndef QT_NO_DIAL @@ -4357,6 +4365,9 @@ QRect QCommonStyle::subControlRect(ComplexControl cc, const QStyleOptionComplex default: qWarning("QCommonStyle::subControlRect: Case %d not handled", cc); } +#if !QT_CONFIG(slider) && !QT_CONFIG(spinbox) && !QT_CONFIG(toolbutton) && !QT_CONFIG(groupbox) + Q_UNUSED(widget); +#endif return ret; } @@ -5275,6 +5286,7 @@ static inline QString clearText16IconPath() } #endif // !QT_NO_IMAGEFORMAT_PNG +#if defined(Q_OS_WIN) || QT_CONFIG(imageformat_png) static QIcon clearTextIcon(bool rtl) { const QString directionalThemeName = rtl @@ -5298,6 +5310,7 @@ static QIcon clearTextIcon(bool rtl) #endif // !QT_NO_IMAGEFORMAT_PNG return icon; } +#endif /*! \reimp */ QPixmap QCommonStyle::standardPixmap(StandardPixmap sp, const QStyleOption *option, @@ -5642,6 +5655,9 @@ QPixmap QCommonStyle::standardPixmap(StandardPixmap sp, const QStyleOption *opti } #endif //QT_NO_IMAGEFORMAT_XPM +#if !QT_CONFIG(imageformat_png) && !QT_CONFIG(imageformat_xpm) && !QT_CONFIG(imageformat_png) + Q_UNUSED(rtl); +#endif return QPixmap(); } diff --git a/src/widgets/styles/qfusionstyle.cpp b/src/widgets/styles/qfusionstyle.cpp index 19b1cc2c57..1fed4f4b9f 100644 --- a/src/widgets/styles/qfusionstyle.cpp +++ b/src/widgets/styles/qfusionstyle.cpp @@ -1954,9 +1954,13 @@ void QFusionStyle::drawComplexControl(ComplexControl control, const QStyleOption Q_D (const QFusionStyle); +#if QT_CONFIG(spinbox) || QT_CONFIG(slider) QColor buttonColor = d->buttonColor(option->palette); +#endif +#if QT_CONFIG(slider) QColor gradientStartColor = buttonColor.lighter(118); QColor gradientStopColor = buttonColor; +#endif QColor outline = d->outline(option->palette); QColor alphaCornerColor; diff --git a/src/widgets/styles/qpixmapstyle.cpp b/src/widgets/styles/qpixmapstyle.cpp index 19f4cc3617..de99b6ce7b 100644 --- a/src/widgets/styles/qpixmapstyle.cpp +++ b/src/widgets/styles/qpixmapstyle.cpp @@ -204,6 +204,9 @@ void QPixmapStyle::polish(QWidget *widget) #if QT_CONFIG(scrollbar) if (qobject_cast(widget)) widget->setAttribute(Qt::WA_OpaquePaintEvent, false); +#endif +#if !QT_CONFIG(progressbar) && !QT_CONFIG(combobox) + Q_UNUSED(d); #endif QCommonStyle::polish(widget); } @@ -929,6 +932,10 @@ void QPixmapStyle::drawSlider(const QStyleOptionComplex *option, painter->drawPixmap(handle, d->pixmaps.value(pix).pixmap); } } +#else + Q_UNUSED(option); + Q_UNUSED(painter); + Q_UNUSED(widget); #endif // QT_CONFIG(slider) } @@ -968,6 +975,10 @@ void QPixmapStyle::drawScrollBar(const QStyleOptionComplex *option, ? SB_Horizontal : SB_Vertical; drawCachedPixmap(control, rect, painter); } +#else + Q_UNUSED(option); + Q_UNUSED(painter); + Q_UNUSED(widget); #endif // QT_CONFIG(slider) } @@ -1044,6 +1055,9 @@ QSize QPixmapStyle::sliderSizeFromContents(const QStyleOption *option, else return QSize(desc.size.width(), result.height()); #else // QT_CONFIG(slider) + Q_UNUSED(option); + Q_UNUSED(contentsSize); + Q_UNUSED(widget); return QSize(); #endif // QT_CONFIG(slider) } @@ -1160,6 +1174,9 @@ QRect QPixmapStyle::scrollBarSubControlRect(const QStyleOptionComplex *option, } } } +#else + Q_UNUSED(option); + Q_UNUSED(sc); #endif // QT_CONFIG(slider) return QRect(); } diff --git a/src/widgets/styles/qstylehelper.cpp b/src/widgets/styles/qstylehelper.cpp index 9b381c383b..ffb898df57 100644 --- a/src/widgets/styles/qstylehelper.cpp +++ b/src/widgets/styles/qstylehelper.cpp @@ -415,6 +415,8 @@ QColor backgroundColor(const QPalette &pal, const QWidget* widget) if (qobject_cast(widget) && widget->parent() && qobject_cast(widget->parent()->parent())) return widget->parentWidget()->parentWidget()->palette().color(QPalette::Base); +#else + Q_UNUSED(widget); #endif return pal.color(QPalette::Base); } diff --git a/src/widgets/styles/qwindowsstyle.cpp b/src/widgets/styles/qwindowsstyle.cpp index 0ce8dde74c..b537931f49 100644 --- a/src/widgets/styles/qwindowsstyle.cpp +++ b/src/widgets/styles/qwindowsstyle.cpp @@ -1734,6 +1734,8 @@ void QWindowsStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPai step = (animation->animationStep() / 3) % chunkCount; else d->startAnimation(new QProgressStyleAnimation(d->animationFps, opt->styleObject)); +#else + Q_UNUSED(d); #endif int chunksInRow = 5; int myY = pbBits.rect.y(); -- cgit v1.2.3 From ecceaec8581886e5215ab10c8f5c702e315cb397 Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Mon, 3 Apr 2017 20:53:17 +0100 Subject: GCC 7: fix -Werror=implicit-fallthrough More fallthrough-are-errors fixed. Change-Id: I9a6cb6efe988400ed3f9cb95d1e426dac317e6c4 Reviewed-by: Allan Sandfeld Jensen Reviewed-by: Marc Mutz --- src/widgets/styles/qcommonstyle.cpp | 7 +++++++ src/widgets/styles/qfusionstyle.cpp | 6 ++++++ src/widgets/styles/qstylesheetstyle.cpp | 4 ++-- 3 files changed, 15 insertions(+), 2 deletions(-) (limited to 'src/widgets/styles') diff --git a/src/widgets/styles/qcommonstyle.cpp b/src/widgets/styles/qcommonstyle.cpp index 7971bd0b8b..69c9230b4b 100644 --- a/src/widgets/styles/qcommonstyle.cpp +++ b/src/widgets/styles/qcommonstyle.cpp @@ -3008,6 +3008,7 @@ QRect QCommonStyle::subElementRect(SubElement sr, const QStyleOption *opt, r = subElementRect(SE_CheckBoxIndicator, opt, widget); break; } + Q_FALLTHROUGH(); case SE_ItemViewItemDecoration: case SE_ItemViewItemText: case SE_ItemViewItemFocusRect: @@ -4180,11 +4181,13 @@ QRect QCommonStyle::subControlRect(ComplexControl cc, const QStyleOptionComplex case SC_TitleBarContextHelpButton: if (tb->titleBarFlags & Qt::WindowContextHelpButtonHint) offset += delta; + Q_FALLTHROUGH(); case SC_TitleBarMinButton: if (!isMinimized && (tb->titleBarFlags & Qt::WindowMinimizeButtonHint)) offset += delta; else if (sc == SC_TitleBarMinButton) break; + Q_FALLTHROUGH(); case SC_TitleBarNormalButton: if (isMinimized && (tb->titleBarFlags & Qt::WindowMinimizeButtonHint)) offset += delta; @@ -4192,21 +4195,25 @@ QRect QCommonStyle::subControlRect(ComplexControl cc, const QStyleOptionComplex offset += delta; else if (sc == SC_TitleBarNormalButton) break; + Q_FALLTHROUGH(); case SC_TitleBarMaxButton: if (!isMaximized && (tb->titleBarFlags & Qt::WindowMaximizeButtonHint)) offset += delta; else if (sc == SC_TitleBarMaxButton) break; + Q_FALLTHROUGH(); case SC_TitleBarShadeButton: if (!isMinimized && (tb->titleBarFlags & Qt::WindowShadeButtonHint)) offset += delta; else if (sc == SC_TitleBarShadeButton) break; + Q_FALLTHROUGH(); case SC_TitleBarUnshadeButton: if (isMinimized && (tb->titleBarFlags & Qt::WindowShadeButtonHint)) offset += delta; else if (sc == SC_TitleBarUnshadeButton) break; + Q_FALLTHROUGH(); case SC_TitleBarCloseButton: if (tb->titleBarFlags & Qt::WindowSystemMenuHint) offset += delta; diff --git a/src/widgets/styles/qfusionstyle.cpp b/src/widgets/styles/qfusionstyle.cpp index f1cd48556c..6f61bff403 100644 --- a/src/widgets/styles/qfusionstyle.cpp +++ b/src/widgets/styles/qfusionstyle.cpp @@ -3556,11 +3556,13 @@ QRect QFusionStyle::subControlRect(ComplexControl control, const QStyleOptionCom case SC_TitleBarContextHelpButton: if (tb->titleBarFlags & Qt::WindowContextHelpButtonHint) offset += delta; + Q_FALLTHROUGH(); case SC_TitleBarMinButton: if (!isMinimized && (tb->titleBarFlags & Qt::WindowMinimizeButtonHint)) offset += delta; else if (sc == SC_TitleBarMinButton) break; + Q_FALLTHROUGH(); case SC_TitleBarNormalButton: if (isMinimized && (tb->titleBarFlags & Qt::WindowMinimizeButtonHint)) offset += delta; @@ -3568,21 +3570,25 @@ QRect QFusionStyle::subControlRect(ComplexControl control, const QStyleOptionCom offset += delta; else if (sc == SC_TitleBarNormalButton) break; + Q_FALLTHROUGH(); case SC_TitleBarMaxButton: if (!isMaximized && (tb->titleBarFlags & Qt::WindowMaximizeButtonHint)) offset += delta; else if (sc == SC_TitleBarMaxButton) break; + Q_FALLTHROUGH(); case SC_TitleBarShadeButton: if (!isMinimized && (tb->titleBarFlags & Qt::WindowShadeButtonHint)) offset += delta; else if (sc == SC_TitleBarShadeButton) break; + Q_FALLTHROUGH(); case SC_TitleBarUnshadeButton: if (isMinimized && (tb->titleBarFlags & Qt::WindowShadeButtonHint)) offset += delta; else if (sc == SC_TitleBarUnshadeButton) break; + Q_FALLTHROUGH(); case SC_TitleBarCloseButton: if (tb->titleBarFlags & Qt::WindowSystemMenuHint) offset += delta; diff --git a/src/widgets/styles/qstylesheetstyle.cpp b/src/widgets/styles/qstylesheetstyle.cpp index 9be19b2679..6b0909ceb1 100644 --- a/src/widgets/styles/qstylesheetstyle.cpp +++ b/src/widgets/styles/qstylesheetstyle.cpp @@ -4371,7 +4371,7 @@ void QStyleSheetStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *op break; } #endif - //fall tghought + Q_FALLTHROUGH(); case PE_PanelMenu: case PE_PanelStatusBar: if(rule.hasDrawable()) { @@ -4928,7 +4928,7 @@ QSize QStyleSheetStyle::sizeFromContents(ContentsType ct, const QStyleOption *op case CT_ToolButton: if (rule.hasBox() || !rule.hasNativeBorder() || !rule.baseStyleCanDraw()) sz += QSize(3, 3); // ### broken QToolButton - //fall thought + Q_FALLTHROUGH(); case CT_ComboBox: case CT_PushButton: if (rule.hasBox() || !rule.hasNativeBorder()) { -- cgit v1.2.3