EBOOKOutputElements.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 libe-book 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 EBOOKOUTPUTELEMENTS_H
11 #define EBOOKOUTPUTELEMENTS_H
12 
13 #include <list>
14 #include <map>
15 
16 #include <librevenge/librevenge.h>
17 
18 namespace libebook
19 {
20 
21 class EBOOKOutputElement;
22 
24 {
25 public:
27  virtual ~EBOOKOutputElements();
28  void append(const EBOOKOutputElements &elements);
29  void write(librevenge::RVNGTextInterface *iface) const;
30  void addCloseEndnote();
31  void addCloseFooter();
32  void addCloseFootnote();
33  void addCloseFrame();
34  void addCloseHeader();
35  void addCloseLink();
36  void addCloseListElement();
38  void addClosePageSpan();
39  void addCloseParagraph();
40  void addCloseSection();
41  void addCloseSpan();
42  void addCloseTable();
43  void addCloseTableCell();
44  void addCloseTableRow();
46  void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList);
47  void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList);
48  void addInsertLineBreak();
49  void addInsertSpace();
50  void addInsertTab();
51  void addInsertText(const librevenge::RVNGString &text);
52  void addOpenEndnote(const librevenge::RVNGPropertyList &propList);
53  void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id);
54  void addOpenFootnote(const librevenge::RVNGPropertyList &propList);
55  void addOpenFrame(const librevenge::RVNGPropertyList &propList);
56  void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id);
57  void addOpenLink(const librevenge::RVNGPropertyList &propList);
58  void addOpenListElement(const librevenge::RVNGPropertyList &propList);
59  void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList);
60  void addOpenPageSpan(const librevenge::RVNGPropertyList &propList);
61  void addOpenPageSpan(const librevenge::RVNGPropertyList &propList,
62  int footer, int footerLeft, int footerFirst, int footerLast,
63  int header, int headerLeft, int headerFirst, int headerLast);
64  void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
65  void addOpenSection(const librevenge::RVNGPropertyList &propList);
66  void addOpenSpan(const librevenge::RVNGPropertyList &propList);
67  void addOpenTable(const librevenge::RVNGPropertyList &propList);
68  void addOpenTableCell(const librevenge::RVNGPropertyList &propList);
69  void addOpenTableRow(const librevenge::RVNGPropertyList &propList);
70  void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
71  void addStartDocument(const librevenge::RVNGPropertyList &propList);
72  bool empty() const
73  {
74  return m_bodyElements.empty();
75  }
76 private:
79  std::list<EBOOKOutputElement *> m_bodyElements;
80  std::map<int, std::list<EBOOKOutputElement *> > m_headerElements;
81  std::map<int, std::list<EBOOKOutputElement *> > m_footerElements;
82  std::list<EBOOKOutputElement *> *m_elements;
83 };
84 
85 }
86 
87 #endif /* EBOOKOUTPUTELEMENTS_H */
88 
89 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
void addInsertText(const librevenge::RVNGString &text)
Definition: EBOOKOutputElements.cpp:1070
std::map< int, std::list< EBOOKOutputElement * > > m_headerElements
Definition: EBOOKOutputElements.h:80
void addCloseSpan()
Definition: EBOOKOutputElements.cpp:1010
Definition: EBOOKOutputElements.h:23
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1099
void addCloseOrderedListLevel()
Definition: EBOOKOutputElements.cpp:986
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1040
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1157
void addOpenSection(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1151
void addCloseListElement()
Definition: EBOOKOutputElements.cpp:980
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1113
void addOpenPageSpan(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1131
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1093
void addCloseLink()
Definition: EBOOKOutputElements.cpp:974
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1046
void addInsertLineBreak()
Definition: EBOOKOutputElements.cpp:1052
void addCloseTableCell()
Definition: EBOOKOutputElements.cpp:1022
void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id)
Definition: EBOOKOutputElements.cpp:1105
void addCloseParagraph()
Definition: EBOOKOutputElements.cpp:998
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1169
void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id)
Definition: EBOOKOutputElements.cpp:1082
void addClosePageSpan()
Definition: EBOOKOutputElements.cpp:992
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1145
void addCloseEndnote()
Definition: EBOOKOutputElements.cpp:942
EBOOKOutputElements()
Definition: EBOOKOutputElements.cpp:910
virtual ~EBOOKOutputElements()
Definition: EBOOKOutputElements.cpp:916
std::list< EBOOKOutputElement * > * m_elements
Definition: EBOOKOutputElements.h:82
void addCloseUnorderedListLevel()
Definition: EBOOKOutputElements.cpp:1034
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1119
void addCloseSection()
Definition: EBOOKOutputElements.cpp:1004
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1163
void addCloseFootnote()
Definition: EBOOKOutputElements.cpp:955
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1125
std::list< EBOOKOutputElement * > m_bodyElements
Definition: EBOOKOutputElements.h:79
Definition: EBOOKHTMLToken.h:82
void addCloseFrame()
Definition: EBOOKOutputElements.cpp:961
void addInsertSpace()
Definition: EBOOKOutputElements.cpp:1058
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1181
EBOOKOutputElements & operator=(const EBOOKOutputElements &)
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1076
Definition: BBeBCollector.cpp:18
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1175
void addCloseTable()
Definition: EBOOKOutputElements.cpp:1016
bool empty() const
Definition: EBOOKOutputElements.h:72
void addInsertTab()
Definition: EBOOKOutputElements.cpp:1064
void addCloseFooter()
Definition: EBOOKOutputElements.cpp:948
qi::rule< Iterator, AttrValue_t, qi::space_type > text
Definition: TealDocParser.cpp:232
void append(const EBOOKOutputElements &elements)
void addStartDocument(const librevenge::RVNGPropertyList &propList)
void addCloseTableRow()
Definition: EBOOKOutputElements.cpp:1028
std::map< int, std::list< EBOOKOutputElement * > > m_footerElements
Definition: EBOOKOutputElements.h:81
void write(librevenge::RVNGTextInterface *iface) const
Definition: EBOOKOutputElements.cpp:935
void addCloseHeader()
Definition: EBOOKOutputElements.cpp:967
Definition: EBOOKHTMLToken.h:73

Generated for libe-book by doxygen 1.8.14