EBOOKOutputElements.h Source File documentation

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#include <memory>
16
17#include <librevenge/librevenge.h>
18
19namespace libebook
20{
21
22class EBOOKOutputElement;
23
24 class EBOOKOutputElements
25{
26public:
27 typedef std::list<std::unique_ptr<EBOOKOutputElement>> OutputElements_t;
28 typedef std::map<int, OutputElements_t> OutputElementsMap_t;
29
30 EBOOKOutputElements();
31 virtual ~EBOOKOutputElements();
32 void append(const EBOOKOutputElements &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();
40 void addCloseListElement();
41 void addCloseOrderedListLevel();
42 void addClosePageSpan();
43 void addCloseParagraph();
44 void addCloseSection();
45 void addCloseSpan();
46 void addCloseTable();
47 void addCloseTableCell();
48 void addCloseTableRow();
49 void addCloseUnorderedListLevel();
50 void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList);
51 void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList);
52 void addInsertLineBreak();
53 void addInsertSpace();
54 void addInsertTab();
55 void addInsertText(const librevenge::RVNGString &text);
56 void addOpenEndnote(const librevenge::RVNGPropertyList &propList);
57 void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id);
58 void addOpenFootnote(const librevenge::RVNGPropertyList &propList);
59 void addOpenFrame(const librevenge::RVNGPropertyList &propList);
60 void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id);
61 void addOpenLink(const librevenge::RVNGPropertyList &propList);
62 void addOpenListElement(const librevenge::RVNGPropertyList &propList);
63 void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList);
64 void addOpenPageSpan(const librevenge::RVNGPropertyList &propList);
65 void addOpenPageSpan(const librevenge::RVNGPropertyList &propList,
66 int footer, int footerLeft, int footerFirst, int footerLast,
67 int header, int headerLeft, int headerFirst, int headerLast);
68 void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
69 void addOpenSection(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 void addStartDocument(const librevenge::RVNGPropertyList &propList);
76 bool empty() const
77 {
78 return m_bodyElements.empty();
79 }
80private:
81 EBOOKOutputElements(const EBOOKOutputElements &);
82 EBOOKOutputElements &operator=(const EBOOKOutputElements &);
83 OutputElements_t m_bodyElements;
84 std::map<int, OutputElements_t> m_headerElements;
85 std::map<int, OutputElements_t> m_footerElements;
86 OutputElements_t *m_elements;
87};
88
89}
90
91#endif /* EBOOKOUTPUTELEMENTS_H */
92
93/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libebook::EBOOKOutputElement
Definition EBOOKOutputElements.cpp:31
libebook::EBOOKOutputElements::addCloseTableRow
void addCloseTableRow()
Definition EBOOKOutputElements.cpp:939
libebook::EBOOKOutputElements::addOpenTableRow
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1086
libebook::EBOOKOutputElements::addStartDocument
void addStartDocument(const librevenge::RVNGPropertyList &propList)
libebook::EBOOKOutputElements::addCloseTableCell
void addCloseTableCell()
Definition EBOOKOutputElements.cpp:933
libebook::EBOOKOutputElements::addCloseSpan
void addCloseSpan()
Definition EBOOKOutputElements.cpp:921
libebook::EBOOKOutputElements::~EBOOKOutputElements
virtual ~EBOOKOutputElements()
Definition EBOOKOutputElements.cpp:843
libebook::EBOOKOutputElements::addInsertTab
void addInsertTab()
Definition EBOOKOutputElements.cpp:975
libebook::EBOOKOutputElements::addOpenOrderedListLevel
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1036
libebook::EBOOKOutputElements::addClosePageSpan
void addClosePageSpan()
Definition EBOOKOutputElements.cpp:903
libebook::EBOOKOutputElements::addCloseTable
void addCloseTable()
Definition EBOOKOutputElements.cpp:927
libebook::EBOOKOutputElements::addOpenEndnote
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:987
libebook::EBOOKOutputElements::addOpenPageSpan
void addOpenPageSpan(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1042
libebook::EBOOKOutputElements::EBOOKOutputElements
EBOOKOutputElements()
Definition EBOOKOutputElements.cpp:837
libebook::EBOOKOutputElements::addOpenFootnote
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1004
libebook::EBOOKOutputElements::addCloseFooter
void addCloseFooter()
Definition EBOOKOutputElements.cpp:859
libebook::EBOOKOutputElements::append
void append(const EBOOKOutputElements &elements)
libebook::EBOOKOutputElements::m_elements
OutputElements_t * m_elements
Definition EBOOKOutputElements.h:86
libebook::EBOOKOutputElements::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1068
libebook::EBOOKOutputElements::addOpenListElement
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1030
libebook::EBOOKOutputElements::addCloseEndnote
void addCloseEndnote()
Definition EBOOKOutputElements.cpp:853
libebook::EBOOKOutputElements::addInsertSpace
void addInsertSpace()
Definition EBOOKOutputElements.cpp:969
libebook::EBOOKOutputElements::m_bodyElements
OutputElements_t m_bodyElements
Definition EBOOKOutputElements.h:83
libebook::EBOOKOutputElements::addOpenFrame
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1010
libebook::EBOOKOutputElements::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition EBOOKOutputElements.cpp:981
libebook::EBOOKOutputElements::OutputElementsMap_t
std::map< int, OutputElements_t > OutputElementsMap_t
Definition EBOOKOutputElements.h:28
libebook::EBOOKOutputElements::EBOOKOutputElements
EBOOKOutputElements(const EBOOKOutputElements &)
libebook::EBOOKOutputElements::addOpenLink
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1024
libebook::EBOOKOutputElements::addOpenFooter
void addOpenFooter(const librevenge::RVNGPropertyList &propList, int id)
Definition EBOOKOutputElements.cpp:993
libebook::EBOOKOutputElements::addCloseUnorderedListLevel
void addCloseUnorderedListLevel()
Definition EBOOKOutputElements.cpp:945
libebook::EBOOKOutputElements::empty
bool empty() const
Definition EBOOKOutputElements.h:76
libebook::EBOOKOutputElements::addCloseLink
void addCloseLink()
Definition EBOOKOutputElements.cpp:885
libebook::EBOOKOutputElements::addInsertLineBreak
void addInsertLineBreak()
Definition EBOOKOutputElements.cpp:963
libebook::EBOOKOutputElements::m_headerElements
std::map< int, OutputElements_t > m_headerElements
Definition EBOOKOutputElements.h:84
libebook::EBOOKOutputElements::addOpenTableCell
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1080
libebook::EBOOKOutputElements::addInsertCoveredTableCell
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:957
libebook::EBOOKOutputElements::addOpenSection
void addOpenSection(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1062
libebook::EBOOKOutputElements::addCloseHeader
void addCloseHeader()
Definition EBOOKOutputElements.cpp:878
libebook::EBOOKOutputElements::addOpenHeader
void addOpenHeader(const librevenge::RVNGPropertyList &propList, int id)
Definition EBOOKOutputElements.cpp:1016
libebook::EBOOKOutputElements::write
void write(librevenge::RVNGTextInterface *iface) const
Definition EBOOKOutputElements.cpp:847
libebook::EBOOKOutputElements::addCloseListElement
void addCloseListElement()
Definition EBOOKOutputElements.cpp:891
libebook::EBOOKOutputElements::addOpenUnorderedListLevel
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1092
libebook::EBOOKOutputElements::m_footerElements
std::map< int, OutputElements_t > m_footerElements
Definition EBOOKOutputElements.h:85
libebook::EBOOKOutputElements::addCloseParagraph
void addCloseParagraph()
Definition EBOOKOutputElements.cpp:909
libebook::EBOOKOutputElements::operator=
EBOOKOutputElements & operator=(const EBOOKOutputElements &)
libebook::EBOOKOutputElements::addOpenTable
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1074
libebook::EBOOKOutputElements::addCloseOrderedListLevel
void addCloseOrderedListLevel()
Definition EBOOKOutputElements.cpp:897
libebook::EBOOKOutputElements::addCloseFootnote
void addCloseFootnote()
Definition EBOOKOutputElements.cpp:866
libebook::EBOOKOutputElements::addCloseSection
void addCloseSection()
Definition EBOOKOutputElements.cpp:915
libebook::EBOOKOutputElements::addInsertBinaryObject
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:951
libebook::EBOOKOutputElements::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition EBOOKOutputElements.cpp:1056
libebook::EBOOKOutputElements::addCloseFrame
void addCloseFrame()
Definition EBOOKOutputElements.cpp:872
libebook::EBOOKOutputElements::OutputElements_t
std::list< std::unique_ptr< EBOOKOutputElement > > OutputElements_t
Definition EBOOKOutputElements.h:27
libebook::EBOOKHTMLToken::footer
@ footer
Definition EBOOKHTMLToken.h:73
libebook::EBOOKHTMLToken::header
@ header
Definition EBOOKHTMLToken.h:82
libebook::EBOOKHTMLToken::text
@ text
Definition EBOOKHTMLToken.h:257
libebook
Definition BBeBCollector.cpp:20