diff options
author | Grzegorz Araminowicz <grzegorz.araminowicz@collabora.com> | 2019-03-08 12:45:24 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2019-03-11 17:38:07 +0100 |
commit | dba1f992d0757b9c353dd41d55dd89ecafd70603 (patch) | |
tree | e52e80a41f8a56e41782bc78c22b281be6b664a1 /include/oox/drawingml | |
parent | 4c4ccdf724dedebce23cc9abd7b74bee43f184d7 (diff) |
PPTX import: save SmartArt markup into InteropGrabBag
it will allow to preserve SmartArt when saving PPTX files
Change-Id: I9bb66c59d202b4ce426864599014d042d4aa04b0
Reviewed-on: https://gerrit.libreoffice.org/68916
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'include/oox/drawingml')
-rw-r--r-- | include/oox/drawingml/shape.hxx | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/include/oox/drawingml/shape.hxx b/include/oox/drawingml/shape.hxx index 0e3263179fa6..4b25aa49e223 100644 --- a/include/oox/drawingml/shape.hxx +++ b/include/oox/drawingml/shape.hxx @@ -229,6 +229,15 @@ public: protected: + enum FrameType + { + FRAMETYPE_GENERIC, ///< Generic shape, no special type. + FRAMETYPE_OLEOBJECT, ///< OLE object embedded in a shape. + FRAMETYPE_CHART, ///< Chart embedded in a shape. + FRAMETYPE_DIAGRAM, ///< Complex diagram drawing shape. + FRAMETYPE_TABLE ///< A table embedded in a shape. + }; + css::uno::Reference< css::drawing::XShape > const & createAndInsert( ::oox::core::XmlFilterBase& rFilterBase, @@ -250,7 +259,8 @@ protected: ShapeIdMap* pShapeMap, const basegfx::B2DHomMatrix& aTransformation ); - void keepDiagramCompatibilityInfo( ::oox::core::XmlFilterBase const & rFilterBase ); + void keepDiagramCompatibilityInfo(); + void convertSmartArtToMetafile( ::oox::core::XmlFilterBase const& rFilterBase ); css::uno::Reference< css::drawing::XShape > renderDiagramToGraphic( ::oox::core::XmlFilterBase const & rFilterBase ); @@ -310,20 +320,13 @@ protected: ::std::vector<OUString> maExtDrawings; Color maFontRefColorForNodes; + FrameType meFrameType; ///< Type for graphic frame shapes. + private: - enum FrameType - { - FRAMETYPE_GENERIC, ///< Generic shape, no special type. - FRAMETYPE_OLEOBJECT, ///< OLE object embedded in a shape. - FRAMETYPE_CHART, ///< Chart embedded in a shape. - FRAMETYPE_DIAGRAM, ///< Complex diagram drawing shape. - FRAMETYPE_TABLE ///< A table embedded in a shape. - }; typedef std::shared_ptr< ::oox::vml::OleObjectInfo > OleObjectInfoRef; typedef std::shared_ptr< ChartShapeInfo > ChartShapeInfoRef; - FrameType meFrameType; ///< Type for graphic frame shapes. OleObjectInfoRef mxOleObjectInfo; ///< Additional data for OLE objects. ChartShapeInfoRef mxChartShapeInfo; ///< Additional data for chart shapes. |