include/vcl/filter/SvmReader.hxx | 1 + include/vcl/metaact.hxx | 1 + vcl/source/filter/svm/SvmReader.cxx | 16 +++++++++++++++- 3 files changed, 17 insertions(+), 1 deletion(-)
New commits: commit 7c320f2836f01f92129551f7fee4df9583d3aef5 Author: panoskorovesis <[email protected]> AuthorDate: Mon Jul 5 09:42:09 2021 +0300 Commit: Tomaž Vajngerl <[email protected]> CommitDate: Thu Jul 8 08:52:23 2021 +0200 Add Handler for MetaRect Read The handler separates the read method from metaact.hxx Read implementation is now in SvmReader.hxx Change-Id: I824a06d9018b473fd2398802d69b4952d33c4ada Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118396 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <[email protected]> diff --git a/include/vcl/filter/SvmReader.hxx b/include/vcl/filter/SvmReader.hxx index c8ece1c5043c..0537eedb0b90 100644 --- a/include/vcl/filter/SvmReader.hxx +++ b/include/vcl/filter/SvmReader.hxx @@ -39,6 +39,7 @@ public: rtl::Reference<MetaAction> MetaActionHandler(ImplMetaReadData* pData); rtl::Reference<MetaAction> LineColorHandler(); rtl::Reference<MetaAction> FillColorHandler(); + rtl::Reference<MetaAction> RectHandler(); }; /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/metaact.hxx b/include/vcl/metaact.hxx index 657a06c9227a..cf18190c230f 100644 --- a/include/vcl/metaact.hxx +++ b/include/vcl/metaact.hxx @@ -216,6 +216,7 @@ public: virtual void Scale( double fScaleX, double fScaleY ) override; const tools::Rectangle& GetRect() const { return maRect; } + void SetRect(tools::Rectangle& rRect) { maRect = rRect; } }; class UNLESS_MERGELIBS(VCL_DLLPUBLIC) MetaRoundRectAction final : public MetaAction diff --git a/vcl/source/filter/svm/SvmReader.cxx b/vcl/source/filter/svm/SvmReader.cxx index e30984148517..7bc892102d20 100644 --- a/vcl/source/filter/svm/SvmReader.cxx +++ b/vcl/source/filter/svm/SvmReader.cxx @@ -168,7 +168,7 @@ rtl::Reference<MetaAction> SvmReader::MetaActionHandler(ImplMetaReadData* pData) pAction = new MetaLineAction; break; case MetaActionType::RECT: - pAction = new MetaRectAction; + return RectHandler(); break; case MetaActionType::ROUNDRECT: pAction = new MetaRoundRectAction; @@ -370,4 +370,18 @@ rtl::Reference<MetaAction> SvmReader::FillColorHandler() return pAction; } + +rtl::Reference<MetaAction> SvmReader::RectHandler() +{ + auto pAction = new MetaRectAction(); + + VersionCompatRead aCompat(mrStream); + TypeSerializer aSerializer(mrStream); + + tools::Rectangle aRectangle; + aSerializer.readRectangle(aRectangle); + pAction->SetRect(aRectangle); + + return pAction; +} /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
