OdgGenerator.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 __ODGGENERATOR_HXX__
26 #define __ODGGENERATOR_HXX__
27 
28 #include <libwpd/libwpd.h>
29 #include <libwpg/libwpg.h>
30 
31 #include "OdfDocumentHandler.hxx"
32 
33 class OdgGeneratorPrivate;
34 
40 class OdgGenerator : public libwpg::WPGPaintInterface
41 {
42 public:
43  OdgGenerator(OdfDocumentHandler *pHandler, const OdfStreamType streamType);
44  ~OdgGenerator();
45 
46  void startGraphics(const ::WPXPropertyList &propList);
47  void endGraphics();
48  void startLayer(const ::WPXPropertyList &propList);
49  void endLayer();
50  void startEmbeddedGraphics(const ::WPXPropertyList &propList);
51  void endEmbeddedGraphics();
52 
53  void setStyle(const ::WPXPropertyList &propList, const ::WPXPropertyListVector &gradient);
54 
55  void drawRectangle(const ::WPXPropertyList &propList);
56  void drawEllipse(const ::WPXPropertyList &propList);
57  void drawPolyline(const ::WPXPropertyListVector &vertices);
58  void drawPolygon(const ::WPXPropertyListVector &vertices);
59  void drawPath(const ::WPXPropertyListVector &path);
60  void drawGraphicObject(const ::WPXPropertyList &propList, const ::WPXBinaryData &binaryData);
61 
62  void startTextObject(const ::WPXPropertyList &propList, const ::WPXPropertyListVector &path);
63  void endTextObject();
64  void startTextLine(const ::WPXPropertyList &propList);
65  void endTextLine();
66  void startTextSpan(const ::WPXPropertyList &propList);
67  void endTextSpan();
68  void insertText(const ::WPXString &str);
69 
70 private:
71  OdgGenerator(OdgGenerator const &);
73 
74  OdgGeneratorPrivate *mpImpl;
75 };
76 
77 #endif // __ODGGENERATOR_HXX__
78 
79 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
void startTextSpan(const ::WPXPropertyList &propList)
void endTextObject()
void endTextSpan()
A generator for vector drawings.
Definition: OdgGenerator.hxx:40
void drawPath(const ::WPXPropertyListVector &path)
void endTextLine()
void insertText(const ::WPXString &str)
void drawPolyline(const ::WPXPropertyListVector &vertices)
OdgGenerator(OdfDocumentHandler *pHandler, const OdfStreamType streamType)
void startLayer(const ::WPXPropertyList &propList)
XML writer.
Definition: OdfDocumentHandler.hxx:42
void endLayer()
void startGraphics(const ::WPXPropertyList &propList)
void endEmbeddedGraphics()
void drawEllipse(const ::WPXPropertyList &propList)
OdfStreamType
Type of ODF content a generator should produce.
Definition: OdfDocumentHandler.hxx:33
void endGraphics()
void drawGraphicObject(const ::WPXPropertyList &propList, const ::WPXBinaryData &binaryData)
OdgGenerator & operator=(OdgGenerator const &)
void startEmbeddedGraphics(const ::WPXPropertyList &propList)
void drawPolygon(const ::WPXPropertyListVector &vertices)
void drawRectangle(const ::WPXPropertyList &propList)
void startTextLine(const ::WPXPropertyList &propList)
OdgGeneratorPrivate * mpImpl
Definition: OdgGenerator.hxx:74
void startTextObject(const ::WPXPropertyList &propList, const ::WPXPropertyListVector &path)
void setStyle(const ::WPXPropertyList &propList, const ::WPXPropertyListVector &gradient)

Generated for libodfgen by doxygen 1.8.13