CDROutputElementList.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 libcdr 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 __CDROUTPUTELEMENTLIST_H__
11#define __CDROUTPUTELEMENTLIST_H__
12
13#include <memory>
14#include <vector>
15
16#include <librevenge/librevenge.h>
17
18 namespace libcdr
19{
20
21 class CDROutputElement;
22
23 class CDROutputElementList
24{
25 public:
26 CDROutputElementList();
27 ~CDROutputElementList();
28 void draw(librevenge::RVNGDrawingInterface *painter) const;
29 void addStyle(const librevenge::RVNGPropertyList &propList);
30 void addPath(const librevenge::RVNGPropertyList &propList);
31 void addGraphicObject(const librevenge::RVNGPropertyList &propList);
32 void addStartTextObject(const librevenge::RVNGPropertyList &propList);
33 void addOpenParagraph(const librevenge::RVNGPropertyList &propList);
34 void addOpenSpan(const librevenge::RVNGPropertyList &propList);
35 void addInsertText(const librevenge::RVNGString &text);
36 void addCloseSpan();
37 void addCloseParagraph();
38 void addEndTextObject();
39 void addStartGroup(const librevenge::RVNGPropertyList &propList);
40 void addEndGroup();
41 bool empty() const
42 {
43 return m_elements.empty();
44 }
45 private:
46 std::vector<std::shared_ptr<CDROutputElement>> m_elements;
47};
48
49
50} // namespace libcdr
51
52#endif // __CDROUTPUTELEMENTLIST_H__
53/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libcdr::CDROutputElementList
Definition: CDROutputElementList.h:24
libcdr::CDROutputElementList::addStyle
void addStyle(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:358
libcdr::CDROutputElementList::addGraphicObject
void addGraphicObject(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:368
libcdr::CDROutputElementList::addStartGroup
void addStartGroup(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:408
libcdr::CDROutputElementList::addStartTextObject
void addStartTextObject(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:373
libcdr::CDROutputElementList::addEndTextObject
void addEndTextObject()
Definition: CDROutputElementList.cpp:403
libcdr::CDROutputElementList::draw
void draw(librevenge::RVNGDrawingInterface *painter) const
Definition: CDROutputElementList.cpp:352
libcdr::CDROutputElementList::~CDROutputElementList
~CDROutputElementList()
Definition: CDROutputElementList.cpp:348
libcdr::CDROutputElementList::addInsertText
void addInsertText(const librevenge::RVNGString &text)
Definition: CDROutputElementList.cpp:388
libcdr::CDROutputElementList::addCloseSpan
void addCloseSpan()
Definition: CDROutputElementList.cpp:393
libcdr::CDROutputElementList::addCloseParagraph
void addCloseParagraph()
Definition: CDROutputElementList.cpp:398
libcdr::CDROutputElementList::m_elements
std::vector< std::shared_ptr< CDROutputElement > > m_elements
Definition: CDROutputElementList.h:46
libcdr::CDROutputElementList::addOpenParagraph
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:378
libcdr::CDROutputElementList::addEndGroup
void addEndGroup()
Definition: CDROutputElementList.cpp:413
libcdr::CDROutputElementList::addOpenSpan
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:383
libcdr::CDROutputElementList::empty
bool empty() const
Definition: CDROutputElementList.h:41
libcdr::CDROutputElementList::CDROutputElementList
CDROutputElementList()
Definition: CDROutputElementList.cpp:343
libcdr::CDROutputElementList::addPath
void addPath(const librevenge::RVNGPropertyList &propList)
Definition: CDROutputElementList.cpp:363
libcdr
Definition: CDRDocument.h:17