summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorpanoskorovesis <panoskorovesis@outlook.com>2021-07-15 11:29:04 +0300
committerTomaž Vajngerl <quikee@gmail.com>2021-07-27 08:03:45 +0200
commitf8847233c5b935d7ad1ea82bd464868d2bc3f69e (patch)
tree6028aaa08d5f410c45119a6703cf62eeccdce981 /vcl
parentffd64889f3cad4fc64d733f5ad08a5c072de7ec6 (diff)
Add Handler for EPS Read
The handler separates MetaEPSAction::Read from metaact.hxx Read implementation is now in SvmReader.hxx Change-Id: I9a56e447865643bbd6e02f9b9da3be715172fe35 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119192 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/filter/svm/SvmReader.cxx25
1 files changed, 24 insertions, 1 deletions
diff --git a/vcl/source/filter/svm/SvmReader.cxx b/vcl/source/filter/svm/SvmReader.cxx
index daed6b7cca72..44c6705007b3 100644
--- a/vcl/source/filter/svm/SvmReader.cxx
+++ b/vcl/source/filter/svm/SvmReader.cxx
@@ -305,7 +305,7 @@ rtl::Reference<MetaAction> SvmReader::MetaActionHandler(ImplMetaReadData* pData)
return FloatTransparentHandler(pData);
break;
case MetaActionType::EPS:
- pAction = new MetaEPSAction;
+ return EPSHandler();
break;
case MetaActionType::REFPOINT:
pAction = new MetaRefPointAction;
@@ -1336,4 +1336,27 @@ rtl::Reference<MetaAction> SvmReader::FloatTransparentHandler(ImplMetaReadData*
return pAction;
}
+
+rtl::Reference<MetaAction> SvmReader::EPSHandler()
+{
+ auto pAction = new MetaEPSAction();
+
+ VersionCompatRead aCompat(mrStream);
+ TypeSerializer aSerializer(mrStream);
+ GfxLink aGfxLink;
+ aSerializer.readGfxLink(aGfxLink);
+ Point aPoint;
+ aSerializer.readPoint(aPoint);
+ Size aSize;
+ aSerializer.readSize(aSize);
+ GDIMetaFile aSubst;
+ Read(aSubst);
+
+ pAction->SetLink(aGfxLink);
+ pAction->SetPoint(aPoint);
+ pAction->SetSize(aSize);
+ pAction->SetSubstitute(aSubst);
+
+ return pAction;
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */