From 372992cb47d29725b551e6b96410b634aa6dfeb3 Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Sun, 26 Jun 2022 20:50:27 +0300 Subject: [PATCH] pass gradient as pointer to QGradientData::generateGradientColorTable() Signed-off-by: Ivailo Monev --- src/gui/painting/qdrawhelper.cpp | 6 +++--- src/gui/painting/qdrawhelper_p.h | 2 +- src/gui/painting/qpaintengine_raster.cpp | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp index 21f996c9d..e5afe1ce9 100644 --- a/src/gui/painting/qdrawhelper.cpp +++ b/src/gui/painting/qdrawhelper.cpp @@ -50,13 +50,13 @@ static inline QRgb qConvertRgb16To32(uint c) | ((((c) << 8) & 0xf80000) | (((c) << 3) & 0x70000)); } -void QGradientData::generateGradientColorTable(const QGradient& gradient, int opacity) +void QGradientData::generateGradientColorTable(const QGradient* gradient, int opacity) { - QGradientStops stops = gradient.stops(); + QGradientStops stops = gradient->stops(); int stopCount = stops.count(); Q_ASSERT(stopCount > 0); - bool colorInterpolation = (gradient.interpolationMode() == QGradient::ColorInterpolation); + bool colorInterpolation = (gradient->interpolationMode() == QGradient::ColorInterpolation); if (stopCount == 2) { uint first_color = ARGB_COMBINE_ALPHA(stops[0].second.rgba(), opacity); diff --git a/src/gui/painting/qdrawhelper_p.h b/src/gui/painting/qdrawhelper_p.h index a24f3c075..0ec12336a 100644 --- a/src/gui/painting/qdrawhelper_p.h +++ b/src/gui/painting/qdrawhelper_p.h @@ -196,7 +196,7 @@ struct QGradientData uint colorTable[GRADIENT_STOPTABLE_SIZE]; bool alphaColor; - void generateGradientColorTable(const QGradient& g, int opacity); + void generateGradientColorTable(const QGradient* g, int opacity); }; struct QTextureData diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index 065b83898..2cb1b41ae 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -2656,7 +2656,7 @@ void QSpanData::setup(const QBrush &brush, int alpha, QPainter::CompositionMode type = LinearGradient; const QLinearGradient *g = static_cast(brush.gradient()); gradient.alphaColor = !brush.isOpaque() || alpha != 256; - gradient.generateGradientColorTable(*g, alpha); + gradient.generateGradientColorTable(g, alpha); gradient.spread = g->spread(); QLinearGradientData &linearData = gradient.linear; @@ -2672,7 +2672,7 @@ void QSpanData::setup(const QBrush &brush, int alpha, QPainter::CompositionMode type = RadialGradient; const QRadialGradient *g = static_cast(brush.gradient()); gradient.alphaColor = !brush.isOpaque() || alpha != 256; - gradient.generateGradientColorTable(*g, alpha); + gradient.generateGradientColorTable(g, alpha); gradient.spread = g->spread(); QRadialGradientData &radialData = gradient.radial; -- 2.11.0