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:1071
std::map< int, std::list< EBOOKOutputElement * > > m_headerElements
Definition: EBOOKOutputElements.h:80
void addCloseSpan()
Definition: EBOOKOutputElements.cpp:1011
Definition: EBOOKOutputElements.h:23
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1100
void addCloseOrderedListLevel()
Definition: EBOOKOutputElements.cpp:987
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1041
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1158
void addOpenSection(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1152
void addCloseListElement()
Definition: EBOOKOutputElements.cpp:981
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1114
void addOpenPageSpan(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1132
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1094
void addCloseLink()
Definition: EBOOKOutputElements.cpp:975
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1047
void write(librevenge::RVNGTextInterface *iface) const
Definition: EBOOKOutputElements.cpp:936
void addInsertLineBreak()
Definition: EBOOKOutputElements.cpp:1053
void addCloseTableCell()
Definition: EBOOKOutputElements.cpp:1023
void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id)
Definition: EBOOKOutputElements.cpp:1106
void addCloseParagraph()
Definition: EBOOKOutputElements.cpp:999
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1170
void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id)
Definition: EBOOKOutputElements.cpp:1083
void addClosePageSpan()
Definition: EBOOKOutputElements.cpp:993
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1146
Definition: EBOOKHTMLToken.h:259
void addCloseEndnote()
Definition: EBOOKOutputElements.cpp:943
EBOOKOutputElements()
Definition: EBOOKOutputElements.cpp:911
virtual ~EBOOKOutputElements()
Definition: EBOOKOutputElements.cpp:917
std::list< EBOOKOutputElement * > * m_elements
Definition: EBOOKOutputElements.h:82
void addCloseUnorderedListLevel()
Definition: EBOOKOutputElements.cpp:1035
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1120
void addCloseSection()
Definition: EBOOKOutputElements.cpp:1005
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1164
void addCloseFootnote()
Definition: EBOOKOutputElements.cpp:956
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1126
std::list< EBOOKOutputElement * > m_bodyElements
Definition: EBOOKOutputElements.h:79
bool empty() const
Definition: EBOOKOutputElements.h:72
Definition: EBOOKHTMLToken.h:84
void addCloseFrame()
Definition: EBOOKOutputElements.cpp:962
void addInsertSpace()
Definition: EBOOKOutputElements.cpp:1059
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1182
EBOOKOutputElements & operator=(const EBOOKOutputElements &)
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1077
Definition: CHMParser.cpp:20
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: EBOOKOutputElements.cpp:1176
void addCloseTable()
Definition: EBOOKOutputElements.cpp:1017
void addInsertTab()
Definition: EBOOKOutputElements.cpp:1065
void addCloseFooter()
Definition: EBOOKOutputElements.cpp:949
void append(const EBOOKOutputElements &elements)
void addStartDocument(const librevenge::RVNGPropertyList &propList)
void addCloseTableRow()
Definition: EBOOKOutputElements.cpp:1029
std::map< int, std::list< EBOOKOutputElement * > > m_footerElements
Definition: EBOOKOutputElements.h:81
void addCloseHeader()
Definition: EBOOKOutputElements.cpp:968
Definition: EBOOKHTMLToken.h:75

Generated for libe-book by doxygen 1.8.8