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
23 class EPUBTextElements
24 {
25 // disable copying
26 EPUBTextElements(const EPUBTextElements &);
27 EPUBTextElements &operator=(const EPUBTextElements &);
28
29 public:
30 EPUBTextElements();
31 ~EPUBTextElements();
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();
45 void addCloseOrderedListLevel();
46 void addCloseParagraph();
47 void addCloseSpan();
48 void addCloseTable();
49 void addCloseTableCell();
50 void addCloseTableRow();
51 void addCloseUnorderedListLevel();
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: */
libepubgen::EPUBTextElements::addOpenLink
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:875
libepubgen::EPUBTextElements::addInsertEquation
void addInsertEquation(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:815
libepubgen::EPUBTextElements::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:895
libepubgen::EPUBTextElements::operator=
EPUBTextElements & operator=(const EPUBTextElements &)
libepubgen::EPUBTextElements::addInsertBinaryObject
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:805
libepubgen::EPUBTextElements::addOpenFrame
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:870
libepubgen::EPUBTextElements::addInsertLineBreak
void addInsertLineBreak()
Definition: EPUBTextElements.cpp:825
libepubgen
Definition: EPUBBinarySink.cpp:12
libepubgen::EPUBTextElements::addOpenComment
void addOpenComment(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:845
libepubgen::EPUBTextElements::addCloseTable
void addCloseTable()
Definition: EPUBTextElements.cpp:785
libepubgen::EPUBTextElements::addOpenOrderedListLevel
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:885
libepubgen::EPUBTextElements::empty
bool empty() const
Definition: EPUBTextElements.h:76
libepubgen::EPUBTextElements::addInsertCoveredTableCell
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:810
libepubgen::EPUBTextElements::addCloseHeader
void addCloseHeader()
Definition: EPUBTextElements.cpp:755
libepubgen::EPUBTextElements::addCloseSpan
void addCloseSpan()
Definition: EPUBTextElements.cpp:780
libepubgen::EPUBTextElements::write
void write(librevenge::RVNGTextInterface *iface) const
Definition: EPUBTextElements.cpp:724
libepubgen::EPUBTextElements::addOpenListElement
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:880
libepubgen::EPUBTextElements::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition: EPUBTextElements.cpp:840
libepubgen::EPUBTextElements::addOpenFooter
void addOpenFooter(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:855
libepubgen::EPUBTextElements::addCloseFooter
void addCloseFooter()
Definition: EPUBTextElements.cpp:740
libepubgen::EPUBTextElements::addCloseEndnote
void addCloseEndnote()
Definition: EPUBTextElements.cpp:735
libepubgen::EPUBTextElements::addCloseOrderedListLevel
void addCloseOrderedListLevel()
Definition: EPUBTextElements.cpp:770
libepubgen::EPUBTextElements::addCloseComment
void addCloseComment()
Definition: EPUBTextElements.cpp:730
libepubgen::EPUBTextElements::addCloseTableRow
void addCloseTableRow()
Definition: EPUBTextElements.cpp:795
libepubgen::EPUBTextElements::EPUBTextElements
EPUBTextElements()
Definition: EPUBTextElements.cpp:715
libepubgen::EPUBTextElements
Definition: EPUBTextElements.h:23
libepubgen::EPUBTextElements::addCloseUnorderedListLevel
void addCloseUnorderedListLevel()
Definition: EPUBTextElements.cpp:800
libepubgen::EPUBTextElements::addCloseParagraph
void addCloseParagraph()
Definition: EPUBTextElements.cpp:775
libepubgen::EPUBTextElements::addCloseFootnote
void addCloseFootnote()
Definition: EPUBTextElements.cpp:745
libepubgen::EPUBTextElements::addCloseLink
void addCloseLink()
Definition: EPUBTextElements.cpp:760
libepubgen::EPUBTextElements::append
void append(const EPUBTextElements &elements)
libepubgen::EPUBTextElements::addOpenEndnote
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:850
libepubgen::EPUBTextElements::addInsertSpace
void addInsertSpace()
Definition: EPUBTextElements.cpp:830
libepubgen::EPUBTextElements::addCloseListElement
void addCloseListElement()
Definition: EPUBTextElements.cpp:765
libepubgen::EPUBTextElements::addInsertTab
void addInsertTab()
Definition: EPUBTextElements.cpp:835
libepubgen::EPUBTextElements::addOpenTableCell
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:905
libepubgen::EPUBTextElements::addOpenTable
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:900
libepubgen::EPUBTextElements::addOpenFootnote
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:860
libepubgen::EPUBTextElements::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:890
libepubgen::EPUBTextElements::addCloseFrame
void addCloseFrame()
Definition: EPUBTextElements.cpp:750
libepubgen::EPUBTextElements::addCloseTableCell
void addCloseTableCell()
Definition: EPUBTextElements.cpp:790
libepubgen::EPUBTextElements::addOpenTableRow
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:910
libepubgen::EPUBTextElements::m_elements
std::deque< std::unique_ptr< EPUBTextElement > > m_elements
Definition: EPUBTextElements.h:82
libepubgen::EPUBTextElements::addOpenUnorderedListLevel
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:915
libepubgen::EPUBTextElements::addInsertField
void addInsertField(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:820
libepubgen::EPUBTextElements::addOpenHeader
void addOpenHeader(const librevenge::RVNGPropertyList &propList)
Definition: EPUBTextElements.cpp:865
libepubgen::EPUBTextElements::~EPUBTextElements
~EPUBTextElements()
Definition: EPUBTextElements.cpp:720