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);
41 void addShapesInSpreadsheet(const IWORKOutputElements &elements);
42 void write(IWORKDocumentInterface *iface) const;
43 void clear();
44 bool empty() const;
45
46 void addCloseComment();
47 void addCloseEndnote();
48 void addCloseFooter();
49 void addCloseFootnote();
50 void addCloseFrame();
51 void addCloseGroup();
52 void addCloseHeader();
53 void addCloseLink();
54 void addCloseListElement();
55 void addCloseOrderedListLevel();
56 void addCloseParagraph();
57 void addCloseSection();
58 void addCloseSpan();
59 void addCloseTable();
60 void addCloseTableCell();
61 void addCloseTableRow();
62 void addCloseUnorderedListLevel();
63 void addDefineSheetNumberingStyle(const librevenge::RVNGPropertyList &propList);
64 void addDrawGraphicObject(const librevenge::RVNGPropertyList &propList);
65 void addDrawPath(const librevenge::RVNGPropertyList &propList);
66 void addDrawPolyline(const librevenge::RVNGPropertyList &propList);
67 void addEndLayer();
68 void addEndNotes();
69 void addEndTextObject();
70 void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList);
71 void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList);
72 void addInsertField(const librevenge::RVNGPropertyList &propList);
73 void addInsertLineBreak();
74 void addInsertSpace();
75 void addInsertTab();
76 void addInsertText(const librevenge::RVNGString &text);
77 void addOpenComment(const librevenge::RVNGPropertyList &propList);
78 void addOpenEndnote(const librevenge::RVNGPropertyList &propList);
79 void addOpenFormulaCell(const librevenge::RVNGPropertyList &propList, const IWORKFormula &formula, const boost::optional<unsigned> &formulaHC, const IWORKTableNameMapPtr_t &tableNameMap);
80 void addOpenFooter(const librevenge::RVNGPropertyList &propList);
81 void addOpenFootnote(const librevenge::RVNGPropertyList &propList);
82 void addOpenFrame(const librevenge::RVNGPropertyList &propList);
83 void addOpenGroup(const librevenge::RVNGPropertyList &propList);
84 void addOpenHeader(const librevenge::RVNGPropertyList &propList);
85 void addOpenLink(const librevenge::RVNGPropertyList &propList);
86 void addOpenListElement(const librevenge::RVNGPropertyList &propList);
87 void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList);
88 void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
89 void addOpenSection(const librevenge::RVNGPropertyList &propList);
90 void addOpenSpan(const librevenge::RVNGPropertyList &propList);
91 void addOpenTable(const librevenge::RVNGPropertyList &propList);
92 void addOpenTableCell(const librevenge::RVNGPropertyList &propList);
93 void addOpenTableRow(const librevenge::RVNGPropertyList &propList);
94 void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
95 void addSetStyle(const librevenge::RVNGPropertyList &propList);
96 void addStartLayer(const librevenge::RVNGPropertyList &propList);
97 void addStartNotes(const librevenge::RVNGPropertyList &propList);
98 void addStartTextObject(const librevenge::RVNGPropertyList &propList);
99
100 private:
101 ElementList_t m_elements;
102};
103
104}
105
106#endif /* IWORKOUTPUTELEMENTS_H_INCLUDED */
107
108/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
IWORKEnum.h
IWORKTypes_fwd.h
libetonyek::IWORKDocumentInterface
Definition IWORKDocumentInterface.h:19
libetonyek::IWORKFormula
Definition IWORKFormula.h:27
libetonyek::IWORKOutputElement
Definition IWORKOutputElements.cpp:23
libetonyek::IWORKOutputElements::addCloseSpan
void addCloseSpan()
Definition IWORKOutputElements.cpp:981
libetonyek::IWORKOutputElements::addCloseFootnote
void addCloseFootnote()
Definition IWORKOutputElements.cpp:936
libetonyek::IWORKOutputElements::addInsertBinaryObject
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1041
libetonyek::IWORKOutputElements::addOpenTableCell
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1151
libetonyek::IWORKOutputElements::addOpenGroup
void addOpenGroup(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1106
libetonyek::IWORKOutputElements::addOpenFormulaCell
void addOpenFormulaCell(const librevenge::RVNGPropertyList &propList, const IWORKFormula &formula, const boost::optional< unsigned > &formulaHC, const IWORKTableNameMapPtr_t &tableNameMap)
Definition IWORKOutputElements.cpp:1086
libetonyek::IWORKOutputElements::addEndLayer
void addEndLayer()
Definition IWORKOutputElements.cpp:1026
libetonyek::IWORKOutputElements::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1141
libetonyek::IWORKOutputElements::addCloseComment
void addCloseComment()
Definition IWORKOutputElements.cpp:921
libetonyek::IWORKOutputElements::addCloseHeader
void addCloseHeader()
Definition IWORKOutputElements.cpp:951
libetonyek::IWORKOutputElements::addOpenTable
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1146
libetonyek::IWORKOutputElements::IWORKOutputElements
IWORKOutputElements()
Definition IWORKOutputElements.cpp:883
libetonyek::IWORKOutputElements::addDrawPath
void addDrawPath(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1016
libetonyek::IWORKOutputElements::addCloseSection
void addCloseSection()
Definition IWORKOutputElements.cpp:976
libetonyek::IWORKOutputElements::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition IWORKOutputElements.cpp:1071
libetonyek::IWORKOutputElements::addShapesInSpreadsheet
void addShapesInSpreadsheet(const IWORKOutputElements &elements)
add shapes data in spreadsheet. Assume that the current elements are OpenSheet(......
Definition IWORKOutputElements.cpp:893
libetonyek::IWORKOutputElements::addOpenFrame
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1101
libetonyek::IWORKOutputElements::addCloseUnorderedListLevel
void addCloseUnorderedListLevel()
Definition IWORKOutputElements.cpp:1001
libetonyek::IWORKOutputElements::addSetStyle
void addSetStyle(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1166
libetonyek::IWORKOutputElements::addInsertLineBreak
void addInsertLineBreak()
Definition IWORKOutputElements.cpp:1056
libetonyek::IWORKOutputElements::addCloseTableCell
void addCloseTableCell()
Definition IWORKOutputElements.cpp:991
libetonyek::IWORKOutputElements::clear
void clear()
Definition IWORKOutputElements.cpp:911
libetonyek::IWORKOutputElements::addDefineSheetNumberingStyle
void addDefineSheetNumberingStyle(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1006
libetonyek::IWORKOutputElements::addCloseParagraph
void addCloseParagraph()
Definition IWORKOutputElements.cpp:971
libetonyek::IWORKOutputElements::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1131
libetonyek::IWORKOutputElements::addCloseLink
void addCloseLink()
Definition IWORKOutputElements.cpp:956
libetonyek::IWORKOutputElements::addOpenTableRow
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1156
libetonyek::IWORKOutputElements::addOpenHeader
void addOpenHeader(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1111
libetonyek::IWORKOutputElements::m_elements
ElementList_t m_elements
Definition IWORKOutputElements.h:101
libetonyek::IWORKOutputElements::addCloseListElement
void addCloseListElement()
Definition IWORKOutputElements.cpp:961
libetonyek::IWORKOutputElements::addInsertField
void addInsertField(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1051
libetonyek::IWORKOutputElements::empty
bool empty() const
Definition IWORKOutputElements.cpp:916
libetonyek::IWORKOutputElements::addOpenLink
void addOpenLink(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1116
libetonyek::IWORKOutputElements::addOpenComment
void addOpenComment(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1076
libetonyek::IWORKOutputElements::addStartTextObject
void addStartTextObject(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1181
libetonyek::IWORKOutputElements::addOpenListElement
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1121
libetonyek::IWORKOutputElements::addCloseEndnote
void addCloseEndnote()
Definition IWORKOutputElements.cpp:926
libetonyek::IWORKOutputElements::ElementList_t
std::deque< std::shared_ptr< IWORKOutputElement > > ElementList_t
Definition IWORKOutputElements.h:34
libetonyek::IWORKOutputElements::addEndNotes
void addEndNotes()
Definition IWORKOutputElements.cpp:1031
libetonyek::IWORKOutputElements::addInsertTab
void addInsertTab()
Definition IWORKOutputElements.cpp:1066
libetonyek::IWORKOutputElements::addOpenFooter
void addOpenFooter(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1091
libetonyek::IWORKOutputElements::addCloseTable
void addCloseTable()
Definition IWORKOutputElements.cpp:986
libetonyek::IWORKOutputElements::write
void write(IWORKDocumentInterface *iface) const
Definition IWORKOutputElements.cpp:904
libetonyek::IWORKOutputElements::addCloseTableRow
void addCloseTableRow()
Definition IWORKOutputElements.cpp:996
libetonyek::IWORKOutputElements::addOpenEndnote
void addOpenEndnote(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1081
libetonyek::IWORKOutputElements::addOpenUnorderedListLevel
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1161
libetonyek::IWORKOutputElements::append
void append(const IWORKOutputElements &elements)
Definition IWORKOutputElements.cpp:888
libetonyek::IWORKOutputElements::addInsertCoveredTableCell
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1046
libetonyek::IWORKOutputElements::addDrawGraphicObject
void addDrawGraphicObject(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1011
libetonyek::IWORKOutputElements::addCloseFrame
void addCloseFrame()
Definition IWORKOutputElements.cpp:941
libetonyek::IWORKOutputElements::addStartLayer
void addStartLayer(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1171
libetonyek::IWORKOutputElements::addCloseOrderedListLevel
void addCloseOrderedListLevel()
Definition IWORKOutputElements.cpp:966
libetonyek::IWORKOutputElements::addOpenFootnote
void addOpenFootnote(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1096
libetonyek::IWORKOutputElements::addCloseGroup
void addCloseGroup()
Definition IWORKOutputElements.cpp:946
libetonyek::IWORKOutputElements::addInsertSpace
void addInsertSpace()
Definition IWORKOutputElements.cpp:1061
libetonyek::IWORKOutputElements::addOpenOrderedListLevel
void addOpenOrderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1126
libetonyek::IWORKOutputElements::addEndTextObject
void addEndTextObject()
Definition IWORKOutputElements.cpp:1036
libetonyek::IWORKOutputElements::addStartNotes
void addStartNotes(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1176
libetonyek::IWORKOutputElements::addCloseFooter
void addCloseFooter()
Definition IWORKOutputElements.cpp:931
libetonyek::IWORKOutputElements::addDrawPolyline
void addDrawPolyline(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1021
libetonyek::IWORKOutputElements::addOpenSection
void addOpenSection(const librevenge::RVNGPropertyList &propList)
Definition IWORKOutputElements.cpp:1136
libetonyek::IWORKToken::text
@ text
Definition IWORKToken.h:472
libetonyek::IWORKToken::formula
@ formula
Definition IWORKToken.h:228
libetonyek
Definition IWORKBezierElement.cpp:21
libetonyek::IWORKTableNameMapPtr_t
std::shared_ptr< IWORKTableNameMap_t > IWORKTableNameMapPtr_t
Definition IWORKTypes_fwd.h:36