From f044f68e9f1f496a9d28803457b89c689eb92c20 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Wed, 9 Jun 2021 14:14:15 +0200 Subject: Add shortcut for QImage::applyColorTransform on indexed images This also helps preserve bitmaps. Pick-to: 6.2 Change-Id: I8aa1ea63dc7dfb948a9c8821f0fe1ddd07f1bc3a Reviewed-by: Eirik Aavitsland --- src/gui/image/qimage.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/gui/image') diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp index cb5afcbf90..d6c29ec736 100644 --- a/src/gui/image/qimage.cpp +++ b/src/gui/image/qimage.cpp @@ -5013,6 +5013,13 @@ QColorSpace QImage::colorSpace() const */ void QImage::applyColorTransform(const QColorTransform &transform) { + if (!d) + return; + if (pixelFormat().colorModel() == QPixelFormat::Indexed) { + for (int i = 0; i < d->colortable.size(); ++i) + d->colortable[i] = transform.map(d->colortable[i]); + return; + } QImage::Format oldFormat = format(); if (depth() > 32) { if (format() != QImage::Format_RGBX64 && format() != QImage::Format_RGBA64 -- cgit v1.2.3