diff options
author | panoskorovesis <panoskorovesis@outlook.com> | 2021-07-15 11:17:08 +0300 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2021-07-27 08:02:55 +0200 |
commit | ffd64889f3cad4fc64d733f5ad08a5c072de7ec6 (patch) | |
tree | 10afe9922ead197da5a1653a888b13920419efef /vcl | |
parent | 0ea2f9a1b33b446069935913c2b3c846d79b52de (diff) |
Add Handler for FloatTransparent Read
The handler separates MetaFloatTransparentAction::Read from metaact.hxx
Read implementation is now in SvmReader.hxx
Change-Id: Ie19d33570daec5a5ec34ba015cf83bffb18d250b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119171
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/filter/svm/SvmReader.cxx | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/vcl/source/filter/svm/SvmReader.cxx b/vcl/source/filter/svm/SvmReader.cxx index 1e234669610a..daed6b7cca72 100644 --- a/vcl/source/filter/svm/SvmReader.cxx +++ b/vcl/source/filter/svm/SvmReader.cxx @@ -302,7 +302,7 @@ rtl::Reference<MetaAction> SvmReader::MetaActionHandler(ImplMetaReadData* pData) return TransparentHandler(); break; case MetaActionType::FLOATTRANSPARENT: - pAction = new MetaFloatTransparentAction; + return FloatTransparentHandler(pData); break; case MetaActionType::EPS: pAction = new MetaEPSAction; @@ -1312,4 +1312,28 @@ rtl::Reference<MetaAction> SvmReader::TransparentHandler() return pAction; } + +rtl::Reference<MetaAction> SvmReader::FloatTransparentHandler(ImplMetaReadData* pData) +{ + auto pAction = new MetaFloatTransparentAction(); + + VersionCompatRead aCompat(mrStream); + GDIMetaFile aMtf; + SvmReader aReader(mrStream); + aReader.Read(aMtf, pData); + TypeSerializer aSerializer(mrStream); + Point aPoint; + aSerializer.readPoint(aPoint); + Size aSize; + aSerializer.readSize(aSize); + Gradient aGradient; + aSerializer.readGradient(aGradient); + + pAction->SetGDIMetaFile(aMtf); + pAction->SetPoint(aPoint); + pAction->SetSize(aSize); + pAction->SetGradient(aGradient); + + return pAction; +} /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |