EPUBTextElements.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 libepubgen 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 INCLUDED_EPUBTEXTELEMENTS_H
11 #define INCLUDED_EPUBTEXTELEMENTS_H
12 
13 #include <deque>
14 #include <memory>
15 
16 #include <librevenge/librevenge.h>
17 
18 namespace libepubgen
19 {
20 
21 class EPUBTextElement;
22 
24 {
25  // disable copying
28 
29 public:
32 
33  void append(const EPUBTextElements &elements);
34 
35  void write(librevenge::RVNGTextInterface *iface) const;
36 
37  void addCloseComment();
38  void addCloseEndnote();
39  void addCloseFooter();
40  void addCloseFootnote();
41  void addCloseFrame();
42  void addCloseHeader();
43  void addCloseLink();
44  void addCloseListElement();
46  void addCloseParagraph();
47  void addCloseSpan();
48  void addCloseTable();
49  void addCloseTableCell();
50  void addCloseTableRow();
52  void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList);
53  void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList);
54  void addInsertEquation(const librevenge::RVNGPropertyList &propList);
55  void addInsertField(const librevenge::RVNGPropertyList &propList);
56  void addInsertLineBreak();
57  void addInsertSpace();
58  void addInsertTab();
59  void addInsertText(const librevenge::RVNGString &text);
60  void addOpenComment(const librevenge::RVNGPropertyList &propList);
61  void addOpenEndnote(const librevenge::RVNGPropertyList &propList);
62  void addOpenFooter(const librevenge::RVNGPropertyList &propList);
63  void addOpenFootnote(const librevenge::RVNGPropertyList &propList);
64  void addOpenFrame(const librevenge::RVNGPropertyList &propList);
65  void addOpenHeader(const librevenge::RVNGPropertyList &propList);
66  void addOpenLink(const librevenge::RVNGPropertyList &propList);
67  void addOpenListElement(const librevenge::RVNGPropertyList &propList);
68  void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList);
69  void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
70  void addOpenSpan(const librevenge::RVNGPropertyList &propList);
71  void addOpenTable(const librevenge::RVNGPropertyList &propList);
72  void addOpenTableCell(const librevenge::RVNGPropertyList &propList);
73  void addOpenTableRow(const librevenge::RVNGPropertyList &propList);
74  void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
75 
76  bool empty() const
77  {
78  return m_elements.empty();
79  }
80 
81 private:
82  std::deque<std::unique_ptr<EPUBTextElement>> m_elements;
83 };
84 
85 }
86 
87 #endif // INCLUDED_EPUBTEXTELEMENTS_H
88 
89 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:875
void addInsertEquation(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:815
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:895
EPUBTextElements & operator=(const EPUBTextElements &)
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:805
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:870
void addInsertLineBreak()
Definition: EPUBTextElements.cpp:825
Definition: EPUBBinaryContent.cpp:14
void addOpenComment(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:845
void addCloseTable()
Definition: EPUBTextElements.cpp:785
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:885
bool empty() const
Definition: EPUBTextElements.h:76
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:810
void addCloseHeader()
Definition: EPUBTextElements.cpp:755
void addCloseSpan()
Definition: EPUBTextElements.cpp:780
void write(librevenge::RVNGTextInterface *iface) const
Definition: EPUBTextElements.cpp:724
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:880
void addInsertText(const librevenge::RVNGString &text)
Definition: EPUBTextElements.cpp:840
void addOpenFooter(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:855
void addCloseFooter()
Definition: EPUBTextElements.cpp:740
void addCloseEndnote()
Definition: EPUBTextElements.cpp:735
void addCloseOrderedListLevel()
Definition: EPUBTextElements.cpp:770
void addCloseComment()
Definition: EPUBTextElements.cpp:730
void addCloseTableRow()
Definition: EPUBTextElements.cpp:795
EPUBTextElements()
Definition: EPUBTextElements.cpp:715
Definition: EPUBTextElements.h:23
void addCloseUnorderedListLevel()
Definition: EPUBTextElements.cpp:800
void addCloseParagraph()
Definition: EPUBTextElements.cpp:775
void addCloseFootnote()
Definition: EPUBTextElements.cpp:745
void addCloseLink()
Definition: EPUBTextElements.cpp:760
void append(const EPUBTextElements &elements)
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:850
void addInsertSpace()
Definition: EPUBTextElements.cpp:830
void addCloseListElement()
Definition: EPUBTextElements.cpp:765
void addInsertTab()
Definition: EPUBTextElements.cpp:835
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:905
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:900
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:860
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:890
void addCloseFrame()
Definition: EPUBTextElements.cpp:750
void addCloseTableCell()
Definition: EPUBTextElements.cpp:790
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:910
std::deque< std::unique_ptr< EPUBTextElement > > m_elements
Definition: EPUBTextElements.h:82
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:915
void addInsertField(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:820
void addOpenHeader(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:865
~EPUBTextElements()
Definition: EPUBTextElements.cpp:720

Generated for libepubgen by doxygen 1.8.14