VSDOutputElementList.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 libvisio 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 __VSDOUTPUTELEMENTLIST_H__
11 #define __VSDOUTPUTELEMENTLIST_H__
12 
13 #include <map>
14 #include <memory>
15 #include <list>
16 #include <vector>
17 #include <librevenge/librevenge.h>
18 
19 namespace libvisio
20 {
21 
22 class VSDOutputElement;
23 
25 {
26 public:
28  VSDOutputElementList(const VSDOutputElementList &elementList);
31  void append(const VSDOutputElementList &elementList);
32  void draw(librevenge::RVNGDrawingInterface *painter) const;
33  void addStyle(const librevenge::RVNGPropertyList &propList);
34  void addPath(const librevenge::RVNGPropertyList &propList);
35  void addGraphicObject(const librevenge::RVNGPropertyList &propList);
36  void addStartTextObject(const librevenge::RVNGPropertyList &propList);
37  void addEndTextObject();
38  void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
40  void addOpenListElement(const librevenge::RVNGPropertyList &propList);
41  void addCloseListElement();
42  void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
43  void addCloseParagraph();
44  void addOpenSpan(const librevenge::RVNGPropertyList &propList);
45  void addCloseSpan();
46  void addInsertText(const librevenge::RVNGString &text);
47  void addInsertLineBreak();
48  void addInsertTab();
49  void addStartLayer(const librevenge::RVNGPropertyList &propList);
50  void addEndLayer();
51  bool empty() const
52  {
53  return m_elements.empty();
54  }
55 private:
56  std::vector<std::unique_ptr<VSDOutputElement>> m_elements;
57 };
58 
59 
60 } // namespace libvisio
61 
62 #endif // __VSDOUTPUTELEMENTLIST_H__
63 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libvisio::VSDCloseParagraphOutputElement::~VSDCloseParagraphOutputElement
~VSDCloseParagraphOutputElement() override
Definition: VSDOutputElementList.cpp:244
libvisio::VSDOpenSpanOutputElement::~VSDOpenSpanOutputElement
~VSDOpenSpanOutputElement() override
Definition: VSDOutputElementList.cpp:175
libvisio::VSDOutputElementList::addInsertLineBreak
void addInsertLineBreak()
Definition: VSDOutputElementList.cpp:584
libvisio::VSDStartLayerOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:392
libvisio::VSDOutputElementList::operator=
VSDOutputElementList & operator=(const VSDOutputElementList &elementList)
Definition: VSDOutputElementList.cpp:520
libvisio::VSDInsertTextOutputElement::VSDInsertTextOutputElement
VSDInsertTextOutputElement(const librevenge::RVNGString &text)
Definition: VSDOutputElementList.cpp:418
libvisio::VSDOutputElement
Definition: VSDOutputElementList.cpp:59
libvisio::VSDOpenUnorderedListLevelOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:492
libvisio::VSDOutputElementList::addEndLayer
void addEndLayer()
Definition: VSDOutputElementList.cpp:614
libvisio::VSDOpenListElementOutputElement::~VSDOpenListElementOutputElement
~VSDOpenListElementOutputElement() override
Definition: VSDOutputElementList.cpp:269
libvisio::VSDStartLayerOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:149
libvisio::VSDInsertTextOutputElement
Definition: VSDOutputElementList.cpp:187
libvisio::VSDOutputElementList::append
void append(const VSDOutputElementList &elementList)
Definition: VSDOutputElementList.cpp:533
libvisio::VSDStartTextObjectOutputElement
Definition: VSDOutputElementList.cpp:114
libvisio::VSDOpenSpanOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:382
libvisio::VSDPathOutputElement
Definition: VSDOutputElementList.cpp:84
libvisio::VSDOutputElementList::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:569
libvisio::VSDInsertTextOutputElement::~VSDInsertTextOutputElement
~VSDInsertTextOutputElement() override
Definition: VSDOutputElementList.cpp:190
libvisio::VSDOutputElementList::addCloseUnorderedListLevel
void addCloseUnorderedListLevel()
Definition: VSDOutputElementList.cpp:634
libvisio::VSDEndTextObjectOutputElement
Definition: VSDOutputElementList.cpp:254
libvisio::VSDCloseListElementOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:286
libvisio::VSDPathOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:89
libvisio::VSDOutputElementList::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition: VSDOutputElementList.cpp:579
libvisio::VSDStartTextObjectOutputElement::VSDStartTextObjectOutputElement
VSDStartTextObjectOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:370
libvisio::VSDCloseSpanOutputElement::VSDCloseSpanOutputElement
VSDCloseSpanOutputElement()
Definition: VSDOutputElementList.cpp:443
libvisio::VSDOpenUnorderedListLevelOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:304
libvisio::VSDEndLayerOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:401
libvisio::VSDCloseParagraphOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:454
libvisio::VSDGraphicObjectOutputElement::VSDGraphicObjectOutputElement
VSDGraphicObjectOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:360
libvisio::VSDCloseParagraphOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:246
libvisio::VSDOpenUnorderedListLevelOutputElement::VSDOpenUnorderedListLevelOutputElement
VSDOpenUnorderedListLevelOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:489
libvisio::VSDCloseListElementOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:482
libvisio::VSDOutputElementList::addCloseSpan
void addCloseSpan()
Definition: VSDOutputElementList.cpp:594
libvisio::VSDCloseListElementOutputElement::~VSDCloseListElementOutputElement
~VSDCloseListElementOutputElement() override
Definition: VSDOutputElementList.cpp:284
libvisio::VSDInsertTextOutputElement::m_text
librevenge::RVNGString m_text
Definition: VSDOutputElementList.cpp:197
libvisio::VSDOutputElementList::addOpenUnorderedListLevel
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:624
libvisio::VSDPathOutputElement::VSDPathOutputElement
VSDPathOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:350
libvisio::VSDCloseUnorderedListLevelOutputElement::~VSDCloseUnorderedListLevelOutputElement
~VSDCloseUnorderedListLevelOutputElement() override
Definition: VSDOutputElementList.cpp:312
libvisio::VSDInsertTabOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:437
libvisio::VSDInsertTabOutputElement::~VSDInsertTabOutputElement
~VSDInsertTabOutputElement() override
Definition: VSDOutputElementList.cpp:218
libvisio::VSDEndTextObjectOutputElement::VSDEndTextObjectOutputElement
VSDEndTextObjectOutputElement()
Definition: VSDOutputElementList.cpp:461
libvisio::VSDInsertLineBreakOutputElement
Definition: VSDOutputElementList.cpp:202
libvisio::VSDPathOutputElement::~VSDPathOutputElement
~VSDPathOutputElement() override
Definition: VSDOutputElementList.cpp:87
libvisio::VSDOutputElementList::addStyle
void addStyle(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:549
libvisio::VSDStyleOutputElement
Definition: VSDOutputElementList.cpp:69
libvisio::VSDOutputElementList::addCloseListElement
void addCloseListElement()
Definition: VSDOutputElementList.cpp:629
libvisio::VSDEndTextObjectOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:259
libvisio::VSDOpenListElementOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:271
libvisio::VSDCloseParagraphOutputElement::VSDCloseParagraphOutputElement
VSDCloseParagraphOutputElement()
Definition: VSDOutputElementList.cpp:452
libvisio::VSDStyleOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:343
libvisio::VSDCloseSpanOutputElement
Definition: VSDOutputElementList.cpp:228
libvisio::VSDOutputElementList::addGraphicObject
void addGraphicObject(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:559
libvisio::VSDEndTextObjectOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:463
libvisio::VSDStyleOutputElement::~VSDStyleOutputElement
~VSDStyleOutputElement() override
Definition: VSDOutputElementList.cpp:72
libvisio::VSDOutputElementList::~VSDOutputElementList
~VSDOutputElementList()
Definition: VSDOutputElementList.cpp:539
libvisio::VSDOutputElementList::addOpenListElement
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:619
libvisio::VSDCloseUnorderedListLevelOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:314
libvisio::VSDStartLayerOutputElement
Definition: VSDOutputElementList.cpp:144
libvisio::VSDOpenListElementOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:473
libvisio::VSDStartLayerOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:154
libvisio::VSDInsertTextOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:421
libvisio::VSDOpenParagraphOutputElement
Definition: VSDOutputElementList.cpp:129
libvisio::VSDOpenSpanOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:177
libvisio::VSDEndTextObjectOutputElement::~VSDEndTextObjectOutputElement
~VSDEndTextObjectOutputElement() override
Definition: VSDOutputElementList.cpp:257
libvisio::VSDStyleOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:74
libvisio::VSDOutputElementList::addCloseParagraph
void addCloseParagraph()
Definition: VSDOutputElementList.cpp:599
libvisio::VSDOpenListElementOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:276
libvisio::VSDStyleOutputElement::VSDStyleOutputElement
VSDStyleOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:340
libvisio::VSDCloseSpanOutputElement::~VSDCloseSpanOutputElement
~VSDCloseSpanOutputElement() override
Definition: VSDOutputElementList.cpp:231
libvisio::VSDInsertTabOutputElement::VSDInsertTabOutputElement
VSDInsertTabOutputElement()
Definition: VSDOutputElementList.cpp:435
libvisio::VSDEndLayerOutputElement::VSDEndLayerOutputElement
VSDEndLayerOutputElement()
Definition: VSDOutputElementList.cpp:399
libvisio::VSDInsertTextOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:192
libvisio::VSDOpenListElementOutputElement
Definition: VSDOutputElementList.cpp:266
libvisio::VSDGraphicObjectOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:363
libvisio::VSDOutputElementList::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:574
libvisio::VSDOutputElement::draw
virtual void draw(librevenge::RVNGDrawingInterface *painter)=0
libvisio::VSDInsertTabOutputElement
Definition: VSDOutputElementList.cpp:215
libvisio::VSDEndLayerOutputElement::~VSDEndLayerOutputElement
~VSDEndLayerOutputElement() override
Definition: VSDOutputElementList.cpp:162
libvisio::VSDStartTextObjectOutputElement::~VSDStartTextObjectOutputElement
~VSDStartTextObjectOutputElement() override
Definition: VSDOutputElementList.cpp:117
libvisio::VSDOutputElement::~VSDOutputElement
virtual ~VSDOutputElement()
Definition: VSDOutputElementList.cpp:62
libvisio::VSDCloseSpanOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:233
libvisio::VSDEndLayerOutputElement
Definition: VSDOutputElementList.cpp:159
libvisio::VSDCloseListElementOutputElement::VSDCloseListElementOutputElement
VSDCloseListElementOutputElement()
Definition: VSDOutputElementList.cpp:480
libvisio::VSDOpenParagraphOutputElement::~VSDOpenParagraphOutputElement
~VSDOpenParagraphOutputElement() override
Definition: VSDOutputElementList.cpp:132
libvisio::VSDPathOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:94
libvisio::VSDOutputElementList::empty
bool empty() const
Definition: VSDOutputElementList.h:51
libvisio::VSDStyleOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:79
libvisio::VSDOutputElementList::addPath
void addPath(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:554
libvisio::VSDOutputElementList::m_elements
std::vector< std::unique_ptr< VSDOutputElement > > m_elements
Definition: VSDOutputElementList.h:56
libvisio::VSDOutputElement::clone
virtual VSDOutputElement * clone()=0
libvisio::VSDOpenParagraphOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:411
libvisio::VSDCloseUnorderedListLevelOutputElement::VSDCloseUnorderedListLevelOutputElement
VSDCloseUnorderedListLevelOutputElement()
Definition: VSDOutputElementList.cpp:499
libvisio::VSDOutputElementList::draw
void draw(librevenge::RVNGDrawingInterface *painter) const
Definition: VSDOutputElementList.cpp:543
libvisio::VSDCloseParagraphOutputElement
Definition: VSDOutputElementList.cpp:241
libvisio::VSDOutputElementList::addEndTextObject
void addEndTextObject()
Definition: VSDOutputElementList.cpp:604
VSDOutputElementList.h
libvisio::VSDGraphicObjectOutputElement::~VSDGraphicObjectOutputElement
~VSDGraphicObjectOutputElement() override
Definition: VSDOutputElementList.cpp:102
libvisio::VSDInsertLineBreakOutputElement::~VSDInsertLineBreakOutputElement
~VSDInsertLineBreakOutputElement() override
Definition: VSDOutputElementList.cpp:205
libvisio::VSDOutputElementList::addInsertTab
void addInsertTab()
Definition: VSDOutputElementList.cpp:589
libvisio::VSDOutputElement::VSDOutputElement
VSDOutputElement()
Definition: VSDOutputElementList.cpp:61
libvisio::VSDStartTextObjectOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:124
libvisio::VSDOutputElementList
Definition: VSDOutputElementList.h:25
libvisio::VSDCloseListElementOutputElement
Definition: VSDOutputElementList.cpp:281
libvisio::VSDOutputElementList::VSDOutputElementList
VSDOutputElementList()
Definition: VSDOutputElementList.cpp:508
libvisio::VSDOpenUnorderedListLevelOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:299
libvisio::VSDInsertTabOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:220
libvisio::VSDGraphicObjectOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:104
libvisio::VSDOpenSpanOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:182
libvisio::VSDCloseUnorderedListLevelOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:501
libvisio::VSDOpenParagraphOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:139
libvisio::VSDOpenSpanOutputElement::VSDOpenSpanOutputElement
VSDOpenSpanOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:379
libvisio::VSDStartLayerOutputElement::VSDStartLayerOutputElement
VSDStartLayerOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:389
libvisio::VSDOutputElementList::addStartLayer
void addStartLayer(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:609
libvisio::VSDGraphicObjectOutputElement::m_propList
librevenge::RVNGPropertyList m_propList
Definition: VSDOutputElementList.cpp:109
libvisio::VSDInsertLineBreakOutputElement::VSDInsertLineBreakOutputElement
VSDInsertLineBreakOutputElement()
Definition: VSDOutputElementList.cpp:427
libvisio::VSDCloseSpanOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:445
libvisio::VSDOpenParagraphOutputElement::VSDOpenParagraphOutputElement
VSDOpenParagraphOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:408
libvisio::VSDInsertLineBreakOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:429
libvisio::VSDOpenSpanOutputElement
Definition: VSDOutputElementList.cpp:172
libvisio::VSDOpenParagraphOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:134
libvisio::VSDEndLayerOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:164
libvisio::VSDStartTextObjectOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:119
libvisio::VSDInsertLineBreakOutputElement::clone
VSDOutputElement * clone() override
Definition: VSDOutputElementList.cpp:207
libvisio::VSDPathOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:353
libvisio::VSDOpenUnorderedListLevelOutputElement
Definition: VSDOutputElementList.cpp:294
libvisio::VSDOutputElementList::addStartTextObject
void addStartTextObject(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:564
libvisio::VSDOpenUnorderedListLevelOutputElement::~VSDOpenUnorderedListLevelOutputElement
~VSDOpenUnorderedListLevelOutputElement() override
Definition: VSDOutputElementList.cpp:297
libvisio::VSDStartLayerOutputElement::~VSDStartLayerOutputElement
~VSDStartLayerOutputElement() override
Definition: VSDOutputElementList.cpp:147
libvisio
Definition: libvisio_utils.h:49
libvisio::VSDStartTextObjectOutputElement::draw
void draw(librevenge::RVNGDrawingInterface *painter) override
Definition: VSDOutputElementList.cpp:373
libvisio::VSDGraphicObjectOutputElement
Definition: VSDOutputElementList.cpp:99
libvisio::VSDOpenListElementOutputElement::VSDOpenListElementOutputElement
VSDOpenListElementOutputElement(const librevenge::RVNGPropertyList &propList)
Definition: VSDOutputElementList.cpp:470
libvisio::VSDCloseUnorderedListLevelOutputElement
Definition: VSDOutputElementList.cpp:309

Generated for libvisio by doxygen 1.8.20