diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2023-06-23 21:58:22 +0900 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2023-06-28 03:16:44 +0200 |
commit | 37df3a34f0d878aa180f623fae6cf9c1c4f58062 (patch) | |
tree | 247ff2f4043df1aaef64054bf47aaa8aa5cfbb9c /oox | |
parent | efdf2505df7fe766465e4cd5b8bc429ca8d51f71 (diff) |
oox: map color transforms direct to create model::Transform
Change-Id: I82382f8d0936e90218fefe889ea5bfdd04c3e82b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153507
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153678
Diffstat (limited to 'oox')
-rw-r--r-- | oox/source/drawingml/color.cxx | 36 |
1 files changed, 23 insertions, 13 deletions
diff --git a/oox/source/drawingml/color.cxx b/oox/source/drawingml/color.cxx index d13e29839227..9a14fb413439 100644 --- a/oox/source/drawingml/color.cxx +++ b/oox/source/drawingml/color.cxx @@ -839,21 +839,31 @@ model::ComplexColor Color::createComplexColor(const GraphicHelper& /*rGraphicHel return aNewComplexColor; } - if (getLumMod() != 10000) - aNewComplexColor.addTransformation({model::TransformationType::LumMod, getLumMod()}); - - if (getLumOff() != 0) - aNewComplexColor.addTransformation({model::TransformationType::LumOff, getLumOff()}); - - if (getTintOrShade() > 0) - { - aNewComplexColor.addTransformation({model::TransformationType::Tint, getTintOrShade()}); - } - else if (getTintOrShade() < 0) + for(auto const& aTransform : maTransforms) { - sal_Int16 nShade = o3tl::narrowing<sal_Int16>(-getTintOrShade()); - aNewComplexColor.addTransformation({model::TransformationType::Shade, nShade}); + sal_Int16 nValue = sal_Int16(aTransform.mnValue / 10); + + switch(aTransform.mnToken) + { + case XML_lumMod: + if (nValue != 10'000) + aNewComplexColor.addTransformation({model::TransformationType::LumMod, nValue}); + break; + case XML_lumOff: + if (nValue != 0) + aNewComplexColor.addTransformation({model::TransformationType::LumOff, nValue}); + break; + case XML_tint: + if (nValue != 0) + aNewComplexColor.addTransformation({model::TransformationType::Tint, nValue}); + break; + case XML_shade: + if (nValue != 0) + aNewComplexColor.addTransformation({model::TransformationType::Shade, nValue}); + break; + } } + return aNewComplexColor; } |