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
24 class VSDOutputElementList
25{
26 public:
27 VSDOutputElementList();
28 VSDOutputElementList(const VSDOutputElementList &elementList);
29 VSDOutputElementList &operator=(const VSDOutputElementList &elementList);
30 ~VSDOutputElementList();
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);
39 void addCloseUnorderedListLevel();
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::VSDOutputElementList
Definition VSDOutputElementList.h:25
libvisio::VSDOutputElementList::addInsertLineBreak
void addInsertLineBreak()
Definition VSDOutputElementList.cpp:569
libvisio::VSDOutputElementList::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition VSDOutputElementList.cpp:564
libvisio::VSDOutputElementList::addOpenUnorderedListLevel
void addOpenUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:609
libvisio::VSDOutputElementList::addGraphicObject
void addGraphicObject(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:544
libvisio::VSDOutputElementList::~VSDOutputElementList
~VSDOutputElementList()
Definition VSDOutputElementList.cpp:524
libvisio::VSDOutputElementList::VSDOutputElementList
VSDOutputElementList()
Definition VSDOutputElementList.cpp:493
libvisio::VSDOutputElementList::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:554
libvisio::VSDOutputElementList::addStartTextObject
void addStartTextObject(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:549
libvisio::VSDOutputElementList::addStartLayer
void addStartLayer(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:594
libvisio::VSDOutputElementList::addEndTextObject
void addEndTextObject()
Definition VSDOutputElementList.cpp:589
libvisio::VSDOutputElementList::operator=
VSDOutputElementList & operator=(const VSDOutputElementList &elementList)
Definition VSDOutputElementList.cpp:505
libvisio::VSDOutputElementList::addEndLayer
void addEndLayer()
Definition VSDOutputElementList.cpp:599
libvisio::VSDOutputElementList::addOpenListElement
void addOpenListElement(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:604
libvisio::VSDOutputElementList::addCloseListElement
void addCloseListElement()
Definition VSDOutputElementList.cpp:614
libvisio::VSDOutputElementList::addPath
void addPath(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:539
libvisio::VSDOutputElementList::addCloseUnorderedListLevel
void addCloseUnorderedListLevel()
Definition VSDOutputElementList.cpp:619
libvisio::VSDOutputElementList::addCloseParagraph
void addCloseParagraph()
Definition VSDOutputElementList.cpp:584
libvisio::VSDOutputElementList::draw
void draw(librevenge::RVNGDrawingInterface *painter) const
Definition VSDOutputElementList.cpp:528
libvisio::VSDOutputElementList::addInsertTab
void addInsertTab()
Definition VSDOutputElementList.cpp:574
libvisio::VSDOutputElementList::addCloseSpan
void addCloseSpan()
Definition VSDOutputElementList.cpp:579
libvisio::VSDOutputElementList::empty
bool empty() const
Definition VSDOutputElementList.h:51
libvisio::VSDOutputElementList::append
void append(const VSDOutputElementList &elementList)
Definition VSDOutputElementList.cpp:518
libvisio::VSDOutputElementList::m_elements
std::vector< std::unique_ptr< VSDOutputElement > > m_elements
Definition VSDOutputElementList.h:56
libvisio::VSDOutputElementList::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:559
libvisio::VSDOutputElementList::addStyle
void addStyle(const librevenge::RVNGPropertyList &propList)
Definition VSDOutputElementList.cpp:534
libvisio
Definition libvisio_utils.h:49