ABWOutputElements.h
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2/*
3 * This file is part of the libabw project.
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
10#ifndef ABWOUTPUTELEMENTS_H
11#define ABWOUTPUTELEMENTS_H
12
13#include <list>
14#include <map>
15#include <memory>
16
17#include <librevenge/librevenge.h>
18
19namespace libabw
20{
21
22class ABWOutputElement;
23
25{
26public:
27 typedef std::list<std::unique_ptr<ABWOutputElement>> OutputElements_t;
28 typedef std::map<int, OutputElements_t> OutputElementsMap_t;
29
31 virtual ~ABWOutputElements();
32 void splice(ABWOutputElements &elements);
33 void write(librevenge::RVNGTextInterface *iface) const;
34 void addCloseEndnote();
35 void addCloseFooter();
36 void addCloseFootnote();
37 void addCloseFrame();
38 void addCloseHeader();
39 void addCloseLink();
42 void addClosePageSpan();
43 void addCloseParagraph();
44 void addCloseSection();
45 void addCloseSpan();
46 void addCloseTable();
47 void addCloseTableCell();
48 void addCloseTableRow();
49 void addCloseTextBox();
51 void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList);
52 void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList);
53 void addInsertField(const librevenge::RVNGPropertyList &propList);
54 void addInsertLineBreak();
55 void addInsertSpace();
56 void addInsertTab();
57 void addInsertText(const librevenge::RVNGString &text);
58 void addOpenEndnote(const librevenge::RVNGPropertyList &propList);
59 void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id);
60 void addOpenFootnote(const librevenge::RVNGPropertyList &propList);
61 void addOpenFrame(const librevenge::RVNGPropertyList &propList);
62 void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id);
63 void addOpenLink(const librevenge::RVNGPropertyList &propList);
64 void addOpenListElement(const librevenge::RVNGPropertyList &propList);
65 void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList);
66 void addOpenPageSpan(const librevenge::RVNGPropertyList &propList,
67 int footer, int footerLeft, int footerFirst, int footerLast,
68 int header, int headerLeft, int headerFirst, int headerLast);
69 void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
70 void addOpenSection(const librevenge::RVNGPropertyList &propList);
71 void addOpenSpan(const librevenge::RVNGPropertyList &propList);
72 void addOpenTable(const librevenge::RVNGPropertyList &propList);
73 void addOpenTableCell(const librevenge::RVNGPropertyList &propList);
74 void addOpenTableRow(const librevenge::RVNGPropertyList &propList);
75 void addOpenTextBox(const librevenge::RVNGPropertyList &propList);
76 void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
77 void addStartDocument(const librevenge::RVNGPropertyList &propList);
78 bool empty() const
79 {
80 return m_bodyElements.empty();
81 }
82private:
86 std::map<int, OutputElements_t > m_headerElements;
87 std::map<int, OutputElements_t > m_footerElements;
89};
90
91
92} // namespace libabw
93
94#endif /* ABWOUTPUTELEMENTS_H */
95/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Definition: ABWOutputElements.h:25
void addInsertTab()
Definition: ABWOutputElements.cpp:1049
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1061
void addCloseLink()
Definition: ABWOutputElements.cpp:947
void addOpenSection(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1131
void addOpenTextBox(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1161
void addCloseSpan()
Definition: ABWOutputElements.cpp:983
void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id)
Definition: ABWOutputElements.cpp:1090
void addOpenPageSpan(const librevenge::RVNGPropertyList &propList, int footer, int footerLeft, int footerFirst, int footerLast, int header, int headerLeft, int headerFirst, int headerLast)
Definition: ABWOutputElements.cpp:1116
void addCloseParagraph()
Definition: ABWOutputElements.cpp:971
void addCloseUnorderedListLevel()
Definition: ABWOutputElements.cpp:1013
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1019
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1084
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1104
void addCloseTableRow()
Definition: ABWOutputElements.cpp:1001
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1031
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1143
std::map< int, OutputElements_t > m_headerElements
Definition: ABWOutputElements.h:86
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1125
void addClosePageSpan()
Definition: ABWOutputElements.cpp:965
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1078
void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id)
Definition: ABWOutputElements.cpp:1067
void addCloseListElement()
Definition: ABWOutputElements.cpp:953
void addCloseTableCell()
Definition: ABWOutputElements.cpp:995
void addCloseOrderedListLevel()
Definition: ABWOutputElements.cpp:959
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1137
void addInsertField(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1025
void write(librevenge::RVNGTextInterface *iface) const
Definition: ABWOutputElements.cpp:908
OutputElements_t m_bodyElements
Definition: ABWOutputElements.h:85
ABWOutputElements()
Definition: ABWOutputElements.cpp:893
void addCloseFooter()
Definition: ABWOutputElements.cpp:921
bool empty() const
Definition: ABWOutputElements.h:78
OutputElements_t * m_elements
Definition: ABWOutputElements.h:88
virtual ~ABWOutputElements()
Definition: ABWOutputElements.cpp:899
void splice(ABWOutputElements &elements)
Definition: ABWOutputElements.cpp:903
void addCloseFootnote()
Definition: ABWOutputElements.cpp:928
ABWOutputElements & operator=(const ABWOutputElements &)
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1155
void addInsertLineBreak()
Definition: ABWOutputElements.cpp:1037
std::map< int, OutputElements_t > m_footerElements
Definition: ABWOutputElements.h:87
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1098
void addCloseEndnote()
Definition: ABWOutputElements.cpp:915
void addInsertText(const librevenge::RVNGString &text)
Definition: ABWOutputElements.cpp:1055
void addStartDocument(const librevenge::RVNGPropertyList &propList)
void addCloseSection()
Definition: ABWOutputElements.cpp:977
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1167
ABWOutputElements(const ABWOutputElements &)
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1149
void addCloseTextBox()
Definition: ABWOutputElements.cpp:1007
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: ABWOutputElements.cpp:1110
std::map< int, OutputElements_t > OutputElementsMap_t
Definition: ABWOutputElements.h:28
void addInsertSpace()
Definition: ABWOutputElements.cpp:1043
void addCloseFrame()
Definition: ABWOutputElements.cpp:934
std::list< std::unique_ptr< ABWOutputElement > > OutputElements_t
Definition: ABWOutputElements.h:27
void addCloseHeader()
Definition: ABWOutputElements.cpp:940
void addCloseTable()
Definition: ABWOutputElements.cpp:989
Definition: AbiDocument.cpp:17

Generated for libwpd by doxygen 1.9.6