IWORKOutputElements.h Source File documentation

IWORKOutputElements.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 libetonyek 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 IWORKOUTPUTELEMENTS_H_INCLUDED
11 #define IWORKOUTPUTELEMENTS_H_INCLUDED
12
13 #include <deque>
14 #include <memory>
15 #include <unordered_map>
16
17 #include <boost/optional.hpp>
18
19 #include <librevenge/librevenge.h>
20
21 #include "IWORKEnum.h"
22 #include "IWORKTypes_fwd.h"
23
24 namespace libetonyek
25 {
26
27 class IWORKDocumentInterface;
28 class IWORKFormula;
29 class IWORKOutputElement;
30
31
32 class IWORKOutputElements
33 {
34 typedef std::deque<std::shared_ptr<IWORKOutputElement> > ElementList_t;
35
36 public:
37 IWORKOutputElements();
38
39 void append(const IWORKOutputElements &elements);
40 void write(IWORKDocumentInterface *iface) const;
41 void clear();
42 bool empty() const;
43
44 void addCloseComment();
45 void addCloseEndnote();
46 void addCloseFooter();
47 void addCloseFootnote();
48 void addCloseFrame();
49 void addCloseGroup();
50 void addCloseHeader();
51 void addCloseLink();
52 void addCloseListElement();
53 void addCloseOrderedListLevel();
54 void addCloseParagraph();
55 void addCloseSection();
56 void addCloseSpan();
57 void addCloseTable();
58 void addCloseTableCell();
59 void addCloseTableRow();
60 void addCloseUnorderedListLevel();
61 void addDrawGraphicObject(const librevenge::RVNGPropertyList &propList);
62 void addDrawPath(const librevenge::RVNGPropertyList &propList);
63 void addDrawPolyline(const librevenge::RVNGPropertyList &propList);
64 void addEndLayer();
65 void addEndNotes();
66 void addEndTextObject();
67 void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList);
68 void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList);
69 void addInsertField(const librevenge::RVNGPropertyList &propList);
70 void addInsertLineBreak();
71 void addInsertSpace();
72 void addInsertTab();
73 void addInsertText(const librevenge::RVNGString &text);
74 void addOpenComment(const librevenge::RVNGPropertyList &propList);
75 void addOpenEndnote(const librevenge::RVNGPropertyList &propList);
76 void addOpenFormulaCell(const librevenge::RVNGPropertyList &propList, const IWORKFormula &formula, const boost::optional<unsigned> &formulaHC, const IWORKTableNameMapPtr_t &tableNameMap);
77 void addOpenFooter(const librevenge::RVNGPropertyList &propList);
78 void addOpenFootnote(const librevenge::RVNGPropertyList &propList);
79 void addOpenFrame(const librevenge::RVNGPropertyList &propList);
80 void addOpenGroup(const librevenge::RVNGPropertyList &propList);
81 void addOpenHeader(const librevenge::RVNGPropertyList &propList);
82 void addOpenLink(const librevenge::RVNGPropertyList &propList);
83 void addOpenListElement(const librevenge::RVNGPropertyList &propList);
84 void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList);
85 void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
86 void addOpenSection(const librevenge::RVNGPropertyList &propList);
87 void addOpenSpan(const librevenge::RVNGPropertyList &propList);
88 void addOpenTable(const librevenge::RVNGPropertyList &propList);
89 void addOpenTableCell(const librevenge::RVNGPropertyList &propList);
90 void addOpenTableRow(const librevenge::RVNGPropertyList &propList);
91 void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
92 void addSetStyle(const librevenge::RVNGPropertyList &propList);
93 void addStartLayer(const librevenge::RVNGPropertyList &propList);
94 void addStartNotes(const librevenge::RVNGPropertyList &propList);
95 void addStartTextObject(const librevenge::RVNGPropertyList &propList);
96
97 private:
98 ElementList_t m_elements;
99 };
100
101 }
102
103 #endif /* IWORKOUTPUTELEMENTS_H_INCLUDED */
104
105 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libetonyek::IWORKOutputElements::addCloseSpan
void addCloseSpan()
Definition: IWORKOutputElements.cpp:953
libetonyek::IWORKOutputElements::addOpenOrderedListLevel
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1093
libetonyek::IWORKOutputElement::IWORKOutputElement
IWORKOutputElement()
Definition: IWORKOutputElements.cpp:29
libetonyek::IWORKOutputElements::addOpenTableCell
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1118
libetonyek::IWORKDocumentInterface
Definition: IWORKDocumentInterface.h:18
libetonyek
Definition: IWORKBezierElement.cpp:20
libetonyek::IWORKToken::formula
@ formula
Definition: IWORKToken.h:224
libetonyek::IWORKOutputElements::addCloseUnorderedListLevel
void addCloseUnorderedListLevel()
Definition: IWORKOutputElements.cpp:973
libetonyek::IWORKOutputElement::operator=
IWORKOutputElement & operator=(const IWORKOutputElement &)
m_tableNameMap
const IWORKTableNameMapPtr_t & m_tableNameMap
Definition: IWORKOutputElements.cpp:334
libetonyek::IWORKOutputElements::addCloseFootnote
void addCloseFootnote()
Definition: IWORKOutputElements.cpp:908
libetonyek::IWORKTableNameMapPtr_t
std::shared_ptr< IWORKTableNameMap_t > IWORKTableNameMapPtr_t
Definition: IWORKTypes_fwd.h:34
IWORKEnum.h
libetonyek::IWORKOutputElements::m_elements
ElementList_t m_elements
Definition: IWORKOutputElements.h:98
libetonyek::IWORKOutputElements::addDrawPolyline
void addDrawPolyline(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:988
libetonyek::IWORKOutputElements::addOpenSection
void addOpenSection(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1103
libetonyek::IWORKOutputElements::addInsertField
void addInsertField(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1018
libetonyek::IWORKOutputElements::addCloseLink
void addCloseLink()
Definition: IWORKOutputElements.cpp:928
libetonyek::IWORKOutputElements::addCloseListElement
void addCloseListElement()
Definition: IWORKOutputElements.cpp:933
libetonyek::IWORKOutputElements::addCloseFooter
void addCloseFooter()
Definition: IWORKOutputElements.cpp:903
libetonyek::IWORKOutputElements::addDrawGraphicObject
void addDrawGraphicObject(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:978
libetonyek::IWORKOutputElements::addCloseTable
void addCloseTable()
Definition: IWORKOutputElements.cpp:958
IWORKTypes_fwd.h
libetonyek::IWORKOutputElements::addCloseOrderedListLevel
void addCloseOrderedListLevel()
Definition: IWORKOutputElements.cpp:938
libetonyek::IWORKOutputElements::addOpenHeader
void addOpenHeader(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1078
m_formulaHC
const boost::optional< unsigned > m_formulaHC
Definition: IWORKOutputElements.cpp:333
libetonyek::IWORKOutputElements::addOpenComment
void addOpenComment(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1043
libetonyek::IWORKOutputElements::clear
void clear()
Definition: IWORKOutputElements.cpp:883
libetonyek::IWORKFormula::write
void write(const boost::optional< unsigned > &hc, librevenge::RVNGPropertyListVector &formula, const IWORKTableNameMapPtr_t &tableNameMap) const
libetonyek::IWORKOutputElements::addSetStyle
void addSetStyle(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1133
libetonyek::IWORKOutputElements::addInsertTab
void addInsertTab()
Definition: IWORKOutputElements.cpp:1033
libetonyek::IWORKOutputElements::addCloseFrame
void addCloseFrame()
Definition: IWORKOutputElements.cpp:913
libetonyek::IWORKOutputElements::addCloseHeader
void addCloseHeader()
Definition: IWORKOutputElements.cpp:923
libetonyek::IWORKOutputElements::write
void write(IWORKDocumentInterface *iface) const
Definition: IWORKOutputElements.cpp:876
libetonyek::IWORKOutputElements::addCloseTableRow
void addCloseTableRow()
Definition: IWORKOutputElements.cpp:968
libetonyek::IWORKOutputElements::addCloseTableCell
void addCloseTableCell()
Definition: IWORKOutputElements.cpp:963
libetonyek::IWORKOutputElements::addInsertCoveredTableCell
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1013
libetonyek::IWORKOutputElements::addInsertBinaryObject
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1008
libetonyek::IWORKOutputElements::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1098
libetonyek::IWORKOutputElements::addDrawPath
void addDrawPath(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:983
libetonyek::IWORKOutputElements::addOpenFootnote
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1063
libetonyek::IWORKOutputElements::IWORKOutputElements
IWORKOutputElements()
Definition: IWORKOutputElements.cpp:866
libetonyek::IWORKOutputElements::addOpenLink
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1083
m_formula
const IWORKFormula m_formula
Definition: IWORKOutputElements.cpp:332
libetonyek::IWORKOutputElements::addOpenTable
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1113
libetonyek::IWORKOutputElements::addStartTextObject
void addStartTextObject(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1148
libetonyek::IWORKOutputElements::empty
bool empty() const
Definition: IWORKOutputElements.cpp:888
libetonyek::IWORKOutputElements::ElementList_t
std::deque< std::shared_ptr< IWORKOutputElement > > ElementList_t
Definition: IWORKOutputElements.h:34
IWORKDocumentInterface.h
libetonyek::IWORKOutputElements::addOpenEndnote
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1048
libetonyek::IWORKOutputElement::write
virtual void write(IWORKDocumentInterface *iface) const =0
libetonyek::IWORKOutputElements::addOpenTableRow
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1123
libetonyek::IWORKOutputElements::addOpenUnorderedListLevel
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1128
libetonyek::IWORKOutputElements::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition: IWORKOutputElements.cpp:1038
m_propList
librevenge::RVNGPropertyList m_propList
Definition: IWORKOutputElements.cpp:181
libetonyek::IWORKOutputElements::append
void append(const IWORKOutputElements &elements)
Definition: IWORKOutputElements.cpp:871
m_elements
deque< IWORKShadow > & m_elements
Definition: IWORKPropertyMapElement.cpp:659
libetonyek::IWORKOutputElements::addCloseComment
void addCloseComment()
Definition: IWORKOutputElements.cpp:893
libetonyek::IWORKOutputElements::addOpenFooter
void addOpenFooter(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1058
libetonyek::IWORKOutputElements::addCloseGroup
void addCloseGroup()
Definition: IWORKOutputElements.cpp:918
IWORKOutputElements.h
libetonyek::IWORKOutputElements::addStartNotes
void addStartNotes(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1143
libetonyek::IWORKOutputElements::addInsertLineBreak
void addInsertLineBreak()
Definition: IWORKOutputElements.cpp:1023
libetonyek::IWORKOutputElements::addInsertSpace
void addInsertSpace()
Definition: IWORKOutputElements.cpp:1028
libetonyek::IWORKOutputElements::addEndNotes
void addEndNotes()
Definition: IWORKOutputElements.cpp:998
libetonyek::IWORKOutputElements::addCloseParagraph
void addCloseParagraph()
Definition: IWORKOutputElements.cpp:943
m_text
librevenge::RVNGString m_text
Definition: IWORKOutputElements.cpp:295
libetonyek::IWORKOutputElements::addCloseSection
void addCloseSection()
Definition: IWORKOutputElements.cpp:948
libetonyek::IWORKOutputElements::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1108
libetonyek::IWORKOutputElements::addOpenListElement
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1088
libetonyek::IWORKOutputElements::addOpenGroup
void addOpenGroup(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1073
libetonyek::IWORKOutputElements::addOpenFrame
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1068
libetonyek::IWORKOutputElements::addEndLayer
void addEndLayer()
Definition: IWORKOutputElements.cpp:993
libetonyek::IWORKOutputElements::addStartLayer
void addStartLayer(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1138
libetonyek::IWORKOutputElements::addOpenFormulaCell
void addOpenFormulaCell(const librevenge::RVNGPropertyList &propList, const IWORKFormula &formula, const boost::optional< unsigned > &formulaHC, const IWORKTableNameMapPtr_t &tableNameMap)
Definition: IWORKOutputElements.cpp:1053
IWORKFormula.h
libetonyek::IWORKOutputElements::addCloseEndnote
void addCloseEndnote()
Definition: IWORKOutputElements.cpp:898
libetonyek::IWORKOutputElement::~IWORKOutputElement
virtual ~IWORKOutputElement()
Definition: IWORKOutputElements.cpp:30
libetonyek::IWORKOutputElements::addEndTextObject
void addEndTextObject()
Definition: IWORKOutputElements.cpp:1003
libetonyek::IWORKFormula
Definition: IWORKFormula.h:24
libetonyek::IWORKOutputElements
Definition: IWORKOutputElements.h:32
libetonyek::IWORKToken::text
@ text
Definition: IWORKToken.h:465
libetonyek::IWORKOutputElement
Definition: IWORKOutputElements.cpp:22