diff options
author | panoskorovesis <panoskorovesis@outlook.com> | 2021-08-05 09:50:02 +0300 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2021-08-11 09:20:23 +0200 |
commit | 33243f20831f6efac14047f38d3e7d987aa632e0 (patch) | |
tree | e3a3ef4c16d9efd5797ab04bed2cbdb09f8ff657 /vcl | |
parent | 1f875634f8edaf40dcf083024f03e6a623e48599 (diff) |
Add Handler for Gradient Write
The handler separates MetaGradientAction::Write from metaact.hxx
Write implementation is now in SvmWriter.hxx
Change-Id: I31ae5f5331f780e095caaf200ea289332233fb52
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120259
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/filter/svm/SvmWriter.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/vcl/source/filter/svm/SvmWriter.cxx b/vcl/source/filter/svm/SvmWriter.cxx index 879909267071..3296221d6f11 100644 --- a/vcl/source/filter/svm/SvmWriter.cxx +++ b/vcl/source/filter/svm/SvmWriter.cxx @@ -263,6 +263,13 @@ void SvmWriter::MetaActionHandler(MetaAction* pAction, ImplMetaWriteData* pData) } break; + case MetaActionType::GRADIENT: + { + auto* pMetaAction = static_cast<MetaGradientAction*>(pAction); + GradientHandler(pMetaAction); + } + break; + case MetaActionType::OVERLINECOLOR: { auto* pMetaAction = static_cast<MetaOverlineColorAction*>(pAction); @@ -734,6 +741,15 @@ void SvmWriter::MaskScalePartHandler(MetaMaskScalePartAction* pAction) } } +void SvmWriter::GradientHandler(MetaGradientAction* pAction) +{ + mrStream.WriteUInt16(static_cast<sal_uInt16>(pAction->GetType())); + VersionCompatWrite aCompat(mrStream, 1); + TypeSerializer aSerializer(mrStream); + aSerializer.writeRectangle(pAction->GetRect()); + aSerializer.writeGradient(pAction->GetGradient()); +} + void SvmWriter::OverlineColorHandler(MetaOverlineColorAction* pAction) { mrStream.WriteUInt16(static_cast<sal_uInt16>(pAction->GetType())); |