summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qcolorspace.cpp
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2022-03-16 12:21:40 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2022-05-26 09:06:45 +0200
commit734c9f2df26b12b89c8a4de4ae43a15726ff1886 (patch)
tree4be65958c6b790c63cd35371485c7338cec02ae0 /src/gui/painting/qcolorspace.cpp
parent34c21d040766d54d959ed835bdf5464f657b7693 (diff)
Expand QColorTransform
Add comparison operators and an isIdentity() method to detect (1-1) transforms. [ChangeLog][QtGui] Added QColorTransform::isIdentity() method. Added QImage::colorTransformed() transitive method. Change-Id: I5fbcd14e75f2179e43e94e8c5f42cd0a5600790b Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/gui/painting/qcolorspace.cpp')
-rw-r--r--src/gui/painting/qcolorspace.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gui/painting/qcolorspace.cpp b/src/gui/painting/qcolorspace.cpp
index e8ced30727..7fdfe34872 100644
--- a/src/gui/painting/qcolorspace.cpp
+++ b/src/gui/painting/qcolorspace.cpp
@@ -419,6 +419,8 @@ QColorTransform QColorSpacePrivate::transformationToColorSpace(const QColorSpace
ptr->colorSpaceIn = this;
ptr->colorSpaceOut = out;
ptr->colorMatrix = out->toXyz.inverted() * toXyz;
+ if (ptr->isIdentity())
+ return QColorTransform();
return combined;
}
@@ -981,6 +983,9 @@ QColorTransform QColorSpace::transformationToColorSpace(const QColorSpace &color
if (!isValid() || !colorspace.isValid())
return QColorTransform();
+ if (*this == colorspace)
+ return QColorTransform();
+
return d_ptr->transformationToColorSpace(colorspace.d_ptr.get());
}