diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-04-19 02:59:39 +0200 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-04-19 03:03:24 +0200 |
commit | 914b4fb5a3c159bfd7cd8be2639185144f11d7ed (patch) | |
tree | 26963139e7ad1e2b10aaf11005b8bbe093c497b1 /oox/source/shape | |
parent | 6f969d256fdbbc0b93d7baeec089afbbea94fc0e (diff) |
import chart MSO 2007 streams correctly for docx files, tdf#82216
Change-Id: Icda809faf315dac5953d38781b2b401d51f7a40a
Diffstat (limited to 'oox/source/shape')
-rw-r--r-- | oox/source/shape/ShapeContextHandler.cxx | 13 | ||||
-rw-r--r-- | oox/source/shape/ShapeContextHandler.hxx | 7 |
2 files changed, 20 insertions, 0 deletions
diff --git a/oox/source/shape/ShapeContextHandler.cxx b/oox/source/shape/ShapeContextHandler.cxx index e4910ad037d0..39cc970f0be1 100644 --- a/oox/source/shape/ShapeContextHandler.cxx +++ b/oox/source/shape/ShapeContextHandler.cxx @@ -620,6 +620,19 @@ void SAL_CALL ShapeContextHandler::setPosition(const awt::Point& rPosition) thro maPosition = rPosition; } +void SAL_CALL ShapeContextHandler::setDocumentProperties(const uno::Reference<document::XDocumentProperties>& xDocProps) + throw (css::uno::RuntimeException, std::exception) +{ + mxDocumentProperties = xDocProps; + mxFilterBase->checkDocumentProperties(mxDocumentProperties); +} + +uno::Reference<document::XDocumentProperties> SAL_CALL ShapeContextHandler::getDocumentProperties() + throw (css::uno::RuntimeException, std::exception) +{ + return mxDocumentProperties; +} + OUString ShapeContextHandler::getImplementationName() throw (css::uno::RuntimeException, std::exception) { diff --git a/oox/source/shape/ShapeContextHandler.hxx b/oox/source/shape/ShapeContextHandler.hxx index 7697e2a6c4a8..ad57ad933416 100644 --- a/oox/source/shape/ShapeContextHandler.hxx +++ b/oox/source/shape/ShapeContextHandler.hxx @@ -30,6 +30,7 @@ #include "oox/core/xmlfilterbase.hxx" #include "ShapeFilterBase.hxx" #include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/document/XDocumentProperties.hpp> namespace oox { namespace shape { @@ -138,6 +139,11 @@ public: virtual css::awt::Point SAL_CALL getPosition() throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE; virtual void SAL_CALL setPosition(const css::awt::Point& rPosition) throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE; + virtual void SAL_CALL setDocumentProperties(const css::uno::Reference<css::document::XDocumentProperties>& xDocProps) + throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE; + virtual css::uno::Reference<css::document::XDocumentProperties> SAL_CALL getDocumentProperties() + throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE; + private: ShapeContextHandler(ShapeContextHandler &) SAL_DELETED_FUNCTION; void operator =(ShapeContextHandler &) SAL_DELETED_FUNCTION; @@ -159,6 +165,7 @@ private: css::uno::Reference<css::drawing::XShape> mxSavedShape; css::uno::Reference<XFastContextHandler> mxWpgContext; css::uno::Reference<XFastContextHandler> mxChartShapeContext; + css::uno::Reference<css::document::XDocumentProperties> mxDocumentProperties; core::XmlFilterRef mxFilterBase; drawingml::ThemePtr mpThemePtr; |