diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2022-12-06 17:33:44 +0900 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2023-01-01 23:35:17 +0000 |
commit | 312100003fc7cae358038aaec853584782c698f8 (patch) | |
tree | 50c9dbedad29c04539c44880bd238c9015f1dabe /writerfilter/inc | |
parent | d5a71bc6a28f8a3d726b2ac4688c7cef9d77ddf0 (diff) |
sw: read theme from OOXML file and set it to the draw page
This change extends writerfilter to use oox::ThemeFragmentHandler
to read the theme properties, and sets that to the one and only
draw page of a Writer document.
This change also removes ThemeTable and replaces it with the
ThemeHandler, which takes theme font data from svx::Theme
instead.
In addition, a test has been writen, which loads a document with
a theme, and asserts the draw page has the theme and the theme
properties currently supported.
Change-Id: Iff0048cd21ea030ac55287707852acc463ec3cb0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143699
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'writerfilter/inc')
-rw-r--r-- | writerfilter/inc/ooxml/OOXMLDocument.hxx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/writerfilter/inc/ooxml/OOXMLDocument.hxx b/writerfilter/inc/ooxml/OOXMLDocument.hxx index 1179be43c8ac..6b47ab752177 100644 --- a/writerfilter/inc/ooxml/OOXMLDocument.hxx +++ b/writerfilter/inc/ooxml/OOXMLDocument.hxx @@ -31,6 +31,7 @@ #include <com/sun/star/frame/XModel.hpp> #include <com/sun/star/drawing/XDrawPage.hpp> #include <oox/shape/ShapeContextHandler.hxx> +#include <oox/drawingml/theme.hxx> /** @file OOXMLDocument.hxx @@ -214,6 +215,8 @@ public: virtual const OUString & getTarget() const = 0; virtual rtl::Reference<oox::shape::ShapeContextHandler> getShapeContext( ) = 0; virtual void setShapeContext( rtl::Reference<oox::shape::ShapeContextHandler> xContext ) = 0; + virtual const oox::drawingml::ThemePtr & getTheme() const = 0; + /// Push context of drawingML shapes, so nested shapes are handled separately. virtual void pushShapeContext() = 0; /// Pop context of a previously pushed drawingML shape. |