OdpGenerator.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 /* libodfgen
3  * Version: MPL 2.0 / LGPLv2.1+
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * Major Contributor(s):
10  * Copyright (C) 2006 Ariya Hidayat (ariya@kde.org)
11  *
12  * For minor contributions see the git repository.
13  *
14  * Alternatively, the contents of this file may be used under the terms
15  * of the GNU Lesser General Public License Version 2.1 or later
16  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
17  * applicable instead of those above.
18  *
19  * For further information visit http://libwpd.sourceforge.net
20  */
21 
22 /* "This product is not manufactured, approved, or supported by
23  * Corel Corporation or Corel Corporation Limited."
24  */
25 #ifndef LIBODFGEN_ODPGENERATOR_HXX_INCLUDED
26 #define LIBODFGEN_ODPGENERATOR_HXX_INCLUDED
27 
28 #include <librevenge/librevenge.h>
29 
30 #include "libodfgen-api.hxx"
31 #include "OdfDocumentHandler.hxx"
32 
33 class OdfGenerator;
34 class OdpGeneratorPrivate;
35 
41 class ODFGENAPI OdpGenerator : public librevenge::RVNGPresentationInterface
42 {
43 public:
45  ~OdpGenerator() override;
46  void addDocumentHandler(OdfDocumentHandler *pHandler, const OdfStreamType streamType);
47  librevenge::RVNGStringVector getObjectNames() const;
48  bool getObjectContent(librevenge::RVNGString const &objectName, OdfDocumentHandler *pHandler);
49 
50  void startDocument(const ::librevenge::RVNGPropertyList &propList) override;
51  void endDocument() override;
52  void setDocumentMetaData(const ::librevenge::RVNGPropertyList &propList) override;
53  void defineEmbeddedFont(const librevenge::RVNGPropertyList &propList) override;
54  void startSlide(const ::librevenge::RVNGPropertyList &propList) override;
55  void endSlide() override;
56  void startMasterSlide(const ::librevenge::RVNGPropertyList &propList) override;
57  void endMasterSlide() override;
58  void setSlideTransition(const ::librevenge::RVNGPropertyList &propList) override;
59  void startLayer(const ::librevenge::RVNGPropertyList &propList) override;
60  void endLayer() override;
61  void startEmbeddedGraphics(const ::librevenge::RVNGPropertyList &propList) override;
62  void endEmbeddedGraphics() override;
63  void openGroup(const ::librevenge::RVNGPropertyList &propList) override;
64  void closeGroup() override;
65 
66  void setStyle(const ::librevenge::RVNGPropertyList &propList) override;
67 
68  void drawRectangle(const ::librevenge::RVNGPropertyList &propList) override;
69  void drawEllipse(const ::librevenge::RVNGPropertyList &propList) override;
70  void drawPolyline(const ::librevenge::RVNGPropertyList &propList) override;
71  void drawPolygon(const ::librevenge::RVNGPropertyList &propList) override;
72  void drawPath(const ::librevenge::RVNGPropertyList &propList) override;
73  void drawGraphicObject(const ::librevenge::RVNGPropertyList &propList) override;
74  void drawConnector(const ::librevenge::RVNGPropertyList &propList) override;
75 
76  void startTextObject(const ::librevenge::RVNGPropertyList &propList) override;
77  void endTextObject() override;
78  void defineParagraphStyle(const librevenge::RVNGPropertyList &propList) override;
79  void openParagraph(const ::librevenge::RVNGPropertyList &propList) override;
80  void closeParagraph() override;
81  void defineCharacterStyle(const librevenge::RVNGPropertyList &propList) override;
82  void openSpan(const ::librevenge::RVNGPropertyList &propList) override;
83  void closeSpan() override;
84 
85  void openLink(const librevenge::RVNGPropertyList &propList) override;
86  void closeLink() override;
87 
88  void insertText(const ::librevenge::RVNGString &str) override;
89  void insertTab() override;
90  void insertSpace() override;
91  void insertLineBreak() override;
92  void insertField(const ::librevenge::RVNGPropertyList &propList) override;
93 
94  void openOrderedListLevel(const ::librevenge::RVNGPropertyList &propList) override;
95  void openUnorderedListLevel(const ::librevenge::RVNGPropertyList &propList) override;
96  void closeOrderedListLevel() override;
97  void closeUnorderedListLevel() override;
98  void openListElement(const ::librevenge::RVNGPropertyList &propList) override;
99  void closeListElement() override;
100 
101  void startTableObject(const ::librevenge::RVNGPropertyList &propList) override;
102  void openTableRow(const ::librevenge::RVNGPropertyList &propList) override;
103  void closeTableRow() override;
104  void openTableCell(const ::librevenge::RVNGPropertyList &propList) override;
105  void closeTableCell() override;
106  void insertCoveredTableCell(const ::librevenge::RVNGPropertyList &propList) override;
107  void endTableObject() override;
108 
109  void startComment(const ::librevenge::RVNGPropertyList &propList) override;
110  void endComment() override;
111 
112  void startNotes(const ::librevenge::RVNGPropertyList &propList) override;
113  void endNotes() override;
114 
115  void defineChartStyle(const ::librevenge::RVNGPropertyList &propList) override;
116  void openChart(const ::librevenge::RVNGPropertyList &propList) override;
117  void closeChart() override;
118  void openChartTextObject(const ::librevenge::RVNGPropertyList &propList) override;
119  void closeChartTextObject() override;
120  void openChartPlotArea(const ::librevenge::RVNGPropertyList &propList) override;
121  void closeChartPlotArea() override;
122  void insertChartAxis(const ::librevenge::RVNGPropertyList &propList) override;
123  void openChartSeries(const ::librevenge::RVNGPropertyList &propList) override;
124  void closeChartSeries() override;
125 
126  void openAnimationSequence(const ::librevenge::RVNGPropertyList &propList) override;
127  void closeAnimationSequence() override;
128  void openAnimationGroup(const ::librevenge::RVNGPropertyList &propList) override;
129  void closeAnimationGroup() override;
130  void openAnimationIteration(const ::librevenge::RVNGPropertyList &propList) override;
131  void closeAnimationIteration() override;
132  void insertMotionAnimation(const ::librevenge::RVNGPropertyList &propList) override;
133  void insertColorAnimation(const ::librevenge::RVNGPropertyList &propList) override;
134  void insertAnimation(const ::librevenge::RVNGPropertyList &propList) override;
135  void insertEffect(const ::librevenge::RVNGPropertyList &propList) override;
136 
143  void registerEmbeddedImageHandler(const librevenge::RVNGString &mimeType, OdfEmbeddedImage imageHandler);
150  void registerEmbeddedObjectHandler(const librevenge::RVNGString &mimeType, OdfEmbeddedObject objectHandler);
151 
153  void initStateWith(OdfGenerator const &orig);
154 private:
155  // disable copying
158 
159  OdpGeneratorPrivate *mpImpl;
160 };
161 
162 #endif // LIBODFGEN_ODPGENERATOR_HXX_INCLUDED
163 
164 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
OdfStreamType
Type of ODF content a generator should produce.
Definition: OdfDocumentHandler.hxx:35
bool(* OdfEmbeddedObject)(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
Handler for embedded objects.
Definition: OdfDocumentHandler.hxx:45
bool(* OdfEmbeddedImage)(const librevenge::RVNGBinaryData &input, librevenge::RVNGBinaryData &output)
Handler for embedded images.
Definition: OdfDocumentHandler.hxx:56
XML writer.
Definition: OdfDocumentHandler.hxx:66
A generator for presentations.
Definition: OdpGenerator.hxx:42
void insertCoveredTableCell(const ::librevenge::RVNGPropertyList &propList) override
void defineCharacterStyle(const librevenge::RVNGPropertyList &propList) override
void registerEmbeddedObjectHandler(const librevenge::RVNGString &mimeType, OdfEmbeddedObject objectHandler)
Registers a handler for embedded objects.
void insertMotionAnimation(const ::librevenge::RVNGPropertyList &propList) override
void registerEmbeddedImageHandler(const librevenge::RVNGString &mimeType, OdfEmbeddedImage imageHandler)
Registers a handler for embedded images.
void startTableObject(const ::librevenge::RVNGPropertyList &propList) override
void openAnimationGroup(const ::librevenge::RVNGPropertyList &propList) override
void drawPath(const ::librevenge::RVNGPropertyList &propList) override
OdpGenerator(OdpGenerator const &)
void closeAnimationIteration() override
void endMasterSlide() override
void endNotes() override
void openSpan(const ::librevenge::RVNGPropertyList &propList) override
void insertField(const ::librevenge::RVNGPropertyList &propList) override
void endSlide() override
librevenge::RVNGStringVector getObjectNames() const
void openOrderedListLevel(const ::librevenge::RVNGPropertyList &propList) override
void endComment() override
void closeChartPlotArea() override
void insertAnimation(const ::librevenge::RVNGPropertyList &propList) override
void insertChartAxis(const ::librevenge::RVNGPropertyList &propList) override
OdpGenerator & operator=(OdpGenerator const &)
void closeTableCell() override
void closeAnimationSequence() override
void openAnimationSequence(const ::librevenge::RVNGPropertyList &propList) override
void initStateWith(OdfGenerator const &orig)
retrieve data from another odfgenerator ( the list and the embedded handler)
void closeParagraph() override
void closeGroup() override
void insertLineBreak() override
void startLayer(const ::librevenge::RVNGPropertyList &propList) override
void insertColorAnimation(const ::librevenge::RVNGPropertyList &propList) override
void openTableCell(const ::librevenge::RVNGPropertyList &propList) override
void drawGraphicObject(const ::librevenge::RVNGPropertyList &propList) override
void setDocumentMetaData(const ::librevenge::RVNGPropertyList &propList) override
void startComment(const ::librevenge::RVNGPropertyList &propList) override
void endDocument() override
void openChartPlotArea(const ::librevenge::RVNGPropertyList &propList) override
void closeSpan() override
void closeChart() override
void endTableObject() override
void openLink(const librevenge::RVNGPropertyList &propList) override
void closeTableRow() override
~OdpGenerator() override
void closeListElement() override
void startMasterSlide(const ::librevenge::RVNGPropertyList &propList) override
void endEmbeddedGraphics() override
void defineChartStyle(const ::librevenge::RVNGPropertyList &propList) override
void endLayer() override
void startSlide(const ::librevenge::RVNGPropertyList &propList) override
void openUnorderedListLevel(const ::librevenge::RVNGPropertyList &propList) override
void closeChartSeries() override
void startDocument(const ::librevenge::RVNGPropertyList &propList) override
void defineParagraphStyle(const librevenge::RVNGPropertyList &propList) override
void closeUnorderedListLevel() override
void openListElement(const ::librevenge::RVNGPropertyList &propList) override
void insertEffect(const ::librevenge::RVNGPropertyList &propList) override
void closeLink() override
void setStyle(const ::librevenge::RVNGPropertyList &propList) override
void insertTab() override
void closeOrderedListLevel() override
void startEmbeddedGraphics(const ::librevenge::RVNGPropertyList &propList) override
OdpGeneratorPrivate * mpImpl
Definition: OdpGenerator.hxx:159
void drawPolygon(const ::librevenge::RVNGPropertyList &propList) override
void addDocumentHandler(OdfDocumentHandler *pHandler, const OdfStreamType streamType)
void setSlideTransition(const ::librevenge::RVNGPropertyList &propList) override
void openChartSeries(const ::librevenge::RVNGPropertyList &propList) override
void openChart(const ::librevenge::RVNGPropertyList &propList) override
void drawPolyline(const ::librevenge::RVNGPropertyList &propList) override
void drawRectangle(const ::librevenge::RVNGPropertyList &propList) override
void closeAnimationGroup() override
void insertSpace() override
void drawConnector(const ::librevenge::RVNGPropertyList &propList) override
void startNotes(const ::librevenge::RVNGPropertyList &propList) override
void openChartTextObject(const ::librevenge::RVNGPropertyList &propList) override
void startTextObject(const ::librevenge::RVNGPropertyList &propList) override
void drawEllipse(const ::librevenge::RVNGPropertyList &propList) override
void openParagraph(const ::librevenge::RVNGPropertyList &propList) override
void endTextObject() override
void openAnimationIteration(const ::librevenge::RVNGPropertyList &propList) override
bool getObjectContent(librevenge::RVNGString const &objectName, OdfDocumentHandler *pHandler)
void defineEmbeddedFont(const librevenge::RVNGPropertyList &propList) override
void openTableRow(const ::librevenge::RVNGPropertyList &propList) override
void openGroup(const ::librevenge::RVNGPropertyList &propList) override
void closeChartTextObject() override
void insertText(const ::librevenge::RVNGString &str) override
#define ODFGENAPI
Definition: libodfgen-api.hxx:36

Generated for libodfgen by doxygen 1.9.1