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 <map>
14 #include <list>
15 #include <vector>
16 #include <libwpd/libwpd.h>
17 #include <libwpg/libwpg.h>
18 
19 namespace libcdr
20 {
21 
22 class CDROutputElement;
23 
25 {
26 public:
28  CDROutputElementList(const CDROutputElementList &elementList);
30  virtual ~CDROutputElementList();
31  void append(const CDROutputElementList &elementList);
32  void draw(libwpg::WPGPaintInterface *painter) const;
33  void addStyle(const WPXPropertyList &propList, const WPXPropertyListVector &propListVec);
34  void addPath(const WPXPropertyListVector &propListVec);
35  void addGraphicObject(const WPXPropertyList &propList, const ::WPXBinaryData &binaryData);
36  void addStartTextObject(const WPXPropertyList &propList, const WPXPropertyListVector &propListVec);
37  void addStartTextLine(const WPXPropertyList &propList);
38  void addStartTextSpan(const WPXPropertyList &propList);
39  void addInsertText(const WPXString &text);
40  void addEndTextSpan();
41  void addEndTextLine();
42  void addEndTextObject();
43  void addStartGroup(const WPXPropertyList &propList);
44  void addEndGroup();
45  bool empty() const
46  {
47  return m_elements.empty();
48  }
49 private:
50  std::vector<CDROutputElement *> m_elements;
51 };
52 
53 
54 } // namespace libcdr
55 
56 #endif // __CDROUTPUTELEMENTLIST_H__
57 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */

Generated for libcdr by doxygen 1.8.3.1