RVNGTextSpreadsheetGenerator.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 /* librevenge
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) 2002 William Lachance (wrlach@gmail.com)
11 * Copyright (C) 2002-2003 Marc Maurer (uwog@uwog.net)
12  *
13  * For minor contributions see the git repository.
14  *
15  * Alternatively, the contents of this file may be used under the terms
16  * of the GNU Lesser General Public License Version 2.1 or later
17  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
18  * applicable instead of those above.
19 */
20 
21 #ifndef RVNGTEXTSPREADSHEETGENERATOR_H
22 #define RVNGTEXTSPREADSHEETGENERATOR_H
23 
25 
26 #include <librevenge/librevenge.h>
28 
29 namespace librevenge
30 {
31 
32 struct RVNGTextSpreadsheetGeneratorImpl;
38 {
42  RVNGTextSpreadsheetGenerator &operator=(const RVNGTextSpreadsheetGenerator &other);
43 
44 public:
45  explicit RVNGTextSpreadsheetGenerator(RVNGStringVector &sheets, const bool isInfo=false);
46  ~RVNGTextSpreadsheetGenerator();
47 
48  void setDocumentMetaData(const RVNGPropertyList &propList);
49 
50  void startDocument(const RVNGPropertyList &propList);
51  void endDocument();
52 
53  void defineEmbeddedFont(const RVNGPropertyList &propList);
54 
55  // sheet
56  void defineSheetNumberingStyle(const RVNGPropertyList &propList);
57  void openSheet(const RVNGPropertyList &propList);
58  void closeSheet();
59  void openSheetRow(const RVNGPropertyList &propList);
60  void closeSheetRow();
61  void openSheetCell(const RVNGPropertyList &propList);
62  void closeSheetCell();
63 
64  // chart
65  void defineChartStyle(const RVNGPropertyList &propList);
66  void openChart(const RVNGPropertyList &propList);
67  void closeChart();
68  void openChartTextObject(const RVNGPropertyList &propList);
69  void closeChartTextObject();
70  void openChartPlotArea(const RVNGPropertyList &propList);
71  void closeChartPlotArea();
72  void insertChartAxis(const RVNGPropertyList &axis);
73  void openChartSerie(const librevenge::RVNGPropertyList &series);
74  void closeChartSerie();
75 
76  void definePageStyle(const RVNGPropertyList &propList);
77  void openPageSpan(const RVNGPropertyList &propList);
78  void closePageSpan();
79  void openHeader(const RVNGPropertyList &propList);
80  void closeHeader();
81  void openFooter(const RVNGPropertyList &propList);
82  void closeFooter();
83 
84  void defineSectionStyle(const RVNGPropertyList &propList);
85  void openSection(const RVNGPropertyList &propList);
86  void closeSection();
87 
88  void defineParagraphStyle(const RVNGPropertyList &propList);
89  void openParagraph(const RVNGPropertyList &propList);
90  void closeParagraph();
91 
92  void defineCharacterStyle(const RVNGPropertyList &propList);
93  void openSpan(const RVNGPropertyList &propList);
94  void closeSpan();
95 
96  void openLink(const RVNGPropertyList &propList);
97  void closeLink();
98 
99  void insertTab();
100  void insertSpace();
101  void insertText(const RVNGString &text);
102  void insertLineBreak();
103  void insertField(const RVNGPropertyList &propList);
104 
105  void openOrderedListLevel(const RVNGPropertyList &propList);
106  void openUnorderedListLevel(const RVNGPropertyList &propList);
107  void closeOrderedListLevel();
108  void closeUnorderedListLevel();
109  void openListElement(const RVNGPropertyList &propList);
110  void closeListElement();
111 
112  void openFootnote(const RVNGPropertyList &propList);
113  void closeFootnote();
114  void openEndnote(const RVNGPropertyList &propList);
115  void closeEndnote();
116  void openComment(const RVNGPropertyList &propList);
117  void closeComment();
118 
119  void openTextBox(const RVNGPropertyList &propList);
120  void closeTextBox();
121 
122  void openTable(const RVNGPropertyList &propList);
123  void openTableRow(const RVNGPropertyList &propList);
124  void closeTableRow();
125  void openTableCell(const RVNGPropertyList &propList);
126  void closeTableCell();
127  void insertCoveredTableCell(const RVNGPropertyList &propList);
128  void closeTable();
129 
130  void openFrame(const RVNGPropertyList &propList);
131  void closeFrame();
132 
133  void insertBinaryObject(const RVNGPropertyList &propList);
134 
135  // drawing function
136  void openGroup(const RVNGPropertyList &propList);
137  void closeGroup();
138 
139  void defineGraphicStyle(const RVNGPropertyList &propList);
140  void drawRectangle(const RVNGPropertyList &propList);
141  void drawEllipse(const RVNGPropertyList &propList);
142  void drawPolygon(const RVNGPropertyList &propList);
143  void drawPolyline(const RVNGPropertyList &propList);
144  void drawPath(const RVNGPropertyList &propList);
145  void drawConnector(const RVNGPropertyList &propList);
146 
147  void insertEquation(const RVNGPropertyList &propList);
148 private:
150 };
151 
152 }
153 
154 #endif /* RVNGTEXTSPREADSHEETGENERATOR_H */
155 
156 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
Pure virtual class containing all the callback functions that can be made by a spreadsheet parser...
Definition: RVNGSpreadsheetInterface.h:49
A text generator for spreadsheet documents.
Definition: RVNGTextSpreadsheetGenerator.h:37
Definition: RVNGTextSpreadsheetGenerator.cpp:34
#define REVENGE_GENERATORS_API
Definition: librevenge-generators-api.h:34
Definition: RVNGPropertyList.h:38
UTF-8 string.
Definition: RVNGString.h:33
RVNGTextSpreadsheetGeneratorImpl * m_impl
Definition: RVNGTextSpreadsheetGenerator.h:149
Definition: RVNGStringVector.h:32

Generated for librevenge by doxygen 1.8.7