diff options
author | Patrick Jaap <patrick.jaap@tu-dresden.de> | 2017-08-08 10:43:46 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2017-08-16 21:21:59 +0200 |
commit | e67dbbf9d21552a583889628df909c2a21cbd785 (patch) | |
tree | 2bf02240326ea75c7b7f9518375808a21f6bcec4 /drawinglayer/source/tools/emfphelperdata.hxx | |
parent | 708eb7472349954de44ad0519b6680e668937d89 (diff) |
new EMF+ Parser: Basic implementation for Graphic Stacks
Some basic code for push/pop events of the graphic stacks.
Each draw/fill action is also transferred to the currend state.
The implementation follows the one from the old parser.
Change-Id: Ib6411046801023dfa72b16038a9e8ede4c628942
Reviewed-on: https://gerrit.libreoffice.org/40867
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'drawinglayer/source/tools/emfphelperdata.hxx')
-rw-r--r-- | drawinglayer/source/tools/emfphelperdata.hxx | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drawinglayer/source/tools/emfphelperdata.hxx b/drawinglayer/source/tools/emfphelperdata.hxx index 7a6d8b1f89ee..74e886b7daaa 100644 --- a/drawinglayer/source/tools/emfphelperdata.hxx +++ b/drawinglayer/source/tools/emfphelperdata.hxx @@ -26,6 +26,7 @@ #include <basegfx/point/b2dpoint.hxx> #include <basegfx/vector/b2dsize.hxx> #include <basegfx/color/bcolor.hxx> +#include <map> // predefines class SvStream; @@ -184,6 +185,8 @@ namespace emfplushelper // // typedef std::map<int, EmfPlusGraphicState> GraphicStateMap; + typedef std::map<int, wmfemfhelper::PropertyHolder> GraphicStateMap; + struct EmfPlusHelperData { private: @@ -215,8 +218,8 @@ namespace emfplushelper SvMemoryStream mMStream; /* emf+ graphic state stack */ -// GraphicStateMap mGSStack; -// GraphicStateMap mGSContainerStack; + GraphicStateMap mGSStack; + GraphicStateMap mGSContainerStack; /// data holders wmfemfhelper::TargetHolders& mrTargetHolders; @@ -229,6 +232,10 @@ namespace emfplushelper // internal mapper void mappingChanged(); + // stack actions + void GraphicStatePush(GraphicStateMap& map, sal_Int32 index); + void GraphicStatePop (GraphicStateMap& map, sal_Int32 index, wmfemfhelper::PropertyHolder& rState); + // primitive creators void EMFPPlusDrawPolygon(const ::basegfx::B2DPolyPolygon& polygon, sal_uInt32 penIndex); void EMFPPlusFillPolygon(const ::basegfx::B2DPolyPolygon& polygon, bool isColor, sal_uInt32 brushIndexOrColor); |