From fa83803119296c2224cf1c7fb7474057a77aa51b Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 28 Jan 2014 16:53:32 +0100 Subject: [PATCH] QColorDialog: Streamline painting code of QColorLuminancePicker. Task-number: QTBUG-36078 Change-Id: Iea7dcb1fdae955615345aa835dc0b1a67840f39d Reviewed-by: Shawn Rutledge --- src/widgets/dialogs/qcolordialog.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/widgets/dialogs/qcolordialog.cpp b/src/widgets/dialogs/qcolordialog.cpp index bae49313ac..9323e84599 100644 --- a/src/widgets/dialogs/qcolordialog.cpp +++ b/src/widgets/dialogs/qcolordialog.cpp @@ -66,6 +66,8 @@ #include "qscreen.h" #include "qcursor.h" +#include + QT_BEGIN_NAMESPACE //////////// QWellArray BEGIN @@ -758,13 +760,9 @@ void QColorLuminancePicker::paintEvent(QPaintEvent *) int y; uint *pixel = (uint *) img.scanLine(0); for (y = 0; y < hi; y++) { - const uint *end = pixel + wi; - while (pixel < end) { - QColor c; - c.setHsv(hue, sat, y2val(y+coff)); - *pixel = c.rgb(); - ++pixel; - } + uint *end = pixel + wi; + std::fill(pixel, end, QColor::fromHsv(hue, sat, y2val(y + coff)).rgb()); + pixel = end; } pix = new QPixmap(QPixmap::fromImage(img)); }