include/vcl/filter/SvmWriter.hxx    |    2 ++
 vcl/source/filter/svm/SvmWriter.cxx |   30 ++++++++++++++++++++++++++++++
 2 files changed, 32 insertions(+)

New commits:
commit b0d1f39266ec0a3bef63e66c8d97ba1d6652734b
Author:     panoskorovesis <panoskorove...@outlook.com>
AuthorDate: Thu Aug 5 10:07:27 2021 +0300
Commit:     Tomaž Vajngerl <qui...@gmail.com>
CommitDate: Thu Aug 12 02:22:46 2021 +0200

    Add Handler for ClipRegion Write
    
    The handler separates MetaClipRegionAction::Write from metaact.hxx
    Write implementation is now in SvmWriter.hxx
    
    Change-Id: If3f4682dbdef6a2a0bd11a51c4a4eb3a6ab8b0d1
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120307
    Tested-by: Jenkins
    Reviewed-by: Tomaž Vajngerl <qui...@gmail.com>

diff --git a/include/vcl/filter/SvmWriter.hxx b/include/vcl/filter/SvmWriter.hxx
index c98570ff491a..e7c2a0adfbfe 100644
--- a/include/vcl/filter/SvmWriter.hxx
+++ b/include/vcl/filter/SvmWriter.hxx
@@ -69,6 +69,7 @@ public:
     void GradientExHandler(MetaGradientExAction* pAction);
     void HatchHandler(MetaHatchAction* pAction);
     void WallpaperHandler(MetaWallpaperAction* pAction);
+    void ClipRegionHandler(MetaClipRegionAction* pAction);
     void OverlineColorHandler(MetaOverlineColorAction* pAction);
     void TextAlignHandler(MetaTextAlignAction* pAction);
     void MapModeHandler(MetaMapModeAction* pAction);
diff --git a/vcl/source/filter/svm/SvmWriter.cxx 
b/vcl/source/filter/svm/SvmWriter.cxx
index 765bcb10e354..b310824f1beb 100644
--- a/vcl/source/filter/svm/SvmWriter.cxx
+++ b/vcl/source/filter/svm/SvmWriter.cxx
@@ -291,6 +291,13 @@ void SvmWriter::MetaActionHandler(MetaAction* pAction, 
ImplMetaWriteData* pData)
         }
         break;
 
+        case MetaActionType::CLIPREGION:
+        {
+            auto* pMetaAction = static_cast<MetaClipRegionAction*>(pAction);
+            ClipRegionHandler(pMetaAction);
+        }
+        break;
+
         case MetaActionType::OVERLINECOLOR:
         {
             auto* pMetaAction = static_cast<MetaOverlineColorAction*>(pAction);
@@ -806,6 +813,14 @@ void SvmWriter::WallpaperHandler(MetaWallpaperAction* 
pAction)
     WriteWallpaper(mrStream, pAction->GetWallpaper());
 }
 
+void SvmWriter::ClipRegionHandler(MetaClipRegionAction* pAction)
+{
+    mrStream.WriteUInt16(static_cast<sal_uInt16>(pAction->GetType()));
+    VersionCompatWrite aCompat(mrStream, 1);
+    WriteRegion(mrStream, pAction->GetRegion());
+    mrStream.WriteBool(pAction->IsClipping());
+}
+
 void SvmWriter::OverlineColorHandler(MetaOverlineColorAction* pAction)
 {
     mrStream.WriteUInt16(static_cast<sal_uInt16>(pAction->GetType()));
commit f6032e23bbedebcbf32eeb56627d89489b52f024
Author:     panoskorovesis <panoskorove...@outlook.com>
AuthorDate: Thu Aug 5 10:05:26 2021 +0300
Commit:     Tomaž Vajngerl <qui...@gmail.com>
CommitDate: Thu Aug 12 02:22:29 2021 +0200

    Add Handler for Wallpaper Write
    
    The handler separates MetaWallpaperAction::Write from metaact.hxx
    Write implementation is now in SvmWriter.hxx
    
    Change-Id: Icfbb4ab5cf3d7ea803cb55405e82dc262f3958c9
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120306
    Tested-by: Jenkins
    Reviewed-by: Tomaž Vajngerl <qui...@gmail.com>

diff --git a/include/vcl/filter/SvmWriter.hxx b/include/vcl/filter/SvmWriter.hxx
index 5bd4ea67dde3..c98570ff491a 100644
--- a/include/vcl/filter/SvmWriter.hxx
+++ b/include/vcl/filter/SvmWriter.hxx
@@ -68,6 +68,7 @@ public:
     void GradientHandler(MetaGradientAction* pAction);
     void GradientExHandler(MetaGradientExAction* pAction);
     void HatchHandler(MetaHatchAction* pAction);
+    void WallpaperHandler(MetaWallpaperAction* pAction);
     void OverlineColorHandler(MetaOverlineColorAction* pAction);
     void TextAlignHandler(MetaTextAlignAction* pAction);
     void MapModeHandler(MetaMapModeAction* pAction);
diff --git a/vcl/source/filter/svm/SvmWriter.cxx 
b/vcl/source/filter/svm/SvmWriter.cxx
index 93f0c2b2baa6..765bcb10e354 100644
--- a/vcl/source/filter/svm/SvmWriter.cxx
+++ b/vcl/source/filter/svm/SvmWriter.cxx
@@ -284,6 +284,13 @@ void SvmWriter::MetaActionHandler(MetaAction* pAction, 
ImplMetaWriteData* pData)
         }
         break;
 
+        case MetaActionType::WALLPAPER:
+        {
+            auto* pMetaAction = static_cast<MetaWallpaperAction*>(pAction);
+            WallpaperHandler(pMetaAction);
+        }
+        break;
+
         case MetaActionType::OVERLINECOLOR:
         {
             auto* pMetaAction = static_cast<MetaOverlineColorAction*>(pAction);
@@ -791,6 +798,14 @@ void SvmWriter::HatchHandler(MetaHatchAction* pAction)
     WriteHatch(mrStream, pAction->GetHatch());
 }
 
+void SvmWriter::WallpaperHandler(MetaWallpaperAction* pAction)
+{
+    mrStream.WriteUInt16(static_cast<sal_uInt16>(pAction->GetType()));
+    VersionCompatWrite aCompat(mrStream, 1);
+
+    WriteWallpaper(mrStream, pAction->GetWallpaper());
+}
+
 void SvmWriter::OverlineColorHandler(MetaOverlineColorAction* pAction)
 {
     mrStream.WriteUInt16(static_cast<sal_uInt16>(pAction->GetType()));

Reply via email to