- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

VSDParagraphList.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* libvisio
3 * Version: MPL 1.1 / GPLv2+ / LGPLv2+
4 *
5 * The contents of this file are subject to the Mozilla Public License Version
6 * 1.1 (the "License"); you may not use this file except in compliance with
7 * the License or as specified alternatively below. You may obtain a copy of
8 * the License at http://www.mozilla.org/MPL/
9 *
10 * Software distributed under the License is distributed on an "AS IS" basis,
11 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 * for the specific language governing rights and limitations under the
13 * License.
14 *
15 * Major Contributor(s):
16 * Copyright (C) 2011 Fridrich Strba <fridrich.strba@bluewin.ch>
17 * Copyright (C) 2011 Eilidh McAdam <tibbylickle@gmail.com>
18 *
19 *
20 * All Rights Reserved.
21 *
22 * For minor contributions see the git repository.
23 *
24 * Alternatively, the contents of this file may be used under the terms of
25 * either the GNU General Public License Version 2 or later (the "GPLv2+"), or
26 * the GNU Lesser General Public License Version 2 or later (the "LGPLv2+"),
27 * in which case the provisions of the GPLv2+ or the LGPLv2+ are applicable
28 * instead of those above.
29 */
30
31 #ifndef __VSDPARAGRAPHLIST_H__
32 #define __VSDPARAGRAPHLIST_H__
33
34 #include <vector>
35 #include <map>
36 #include "VSDStyles.h"
37
38 namespace libvisio
39 {
40
41 class VSDParagraphListElement;
42 class VSDCollector;
43
44 class VSDParagraphList
45 {
46 public:
47 VSDParagraphList();
48 VSDParagraphList(const VSDParagraphList &paraList);
49 ~VSDParagraphList();
50 VSDParagraphList &operator=(const VSDParagraphList &paraList);
51 void addParaIX(unsigned id, unsigned level, unsigned charCount, const boost::optional<double> &indFirst,
52 const boost::optional<double> &indLeft, const boost::optional<double> &indRight, const boost::optional<double> &spLine,
53 const boost::optional<double> &spBefore, const boost::optional<double> &spAfter, const boost::optional<unsigned char> &align,
54 const boost::optional<unsigned> &flags);
55 void addParaIX(unsigned id, unsigned level, const VSDOptionalParaStyle &style);
56 unsigned getCharCount(unsigned id) const;
57 void setCharCount(unsigned id, unsigned charCount);
58 void resetCharCount();
59 unsigned getLevel() const;
60
61 void setElementsOrder(const std::vector<unsigned> &m_elementsOrder);
62 void handle(VSDCollector *collector) const;
63 void clear();
64 bool empty() const
65 {
66 return (m_elements.empty());
67 }
68 private:
69 std::map<unsigned, VSDParagraphListElement *> m_elements;
70 std::vector<unsigned> m_elementsOrder;
71 };
72
73 } // namespace libvisio
74
75 #endif // __VSDPARAGRAPHLIST_H__
76 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libvisio::VSDParagraphList::m_elementsOrder
std::vector< unsigned > m_elementsOrder
Definition: VSDParagraphList.h:70
libvisio::VSDParagraphList::~VSDParagraphList
~VSDParagraphList()
Definition: VSDParagraphList.cpp:113
libvisio::VSDParagraphList::getLevel
unsigned getLevel() const
Definition: VSDParagraphList.cpp:169
libvisio::VSDParagraphList::empty
bool empty() const
Definition: VSDParagraphList.h:64
libvisio::VSDParagraphList::setElementsOrder
void setElementsOrder(const std::vector< unsigned > &m_elementsOrder)
Definition: VSDParagraphList.cpp:176
libvisio::VSDCollector
Definition: VSDCollector.h:41
libvisio::VSDParagraphList::clear
void clear()
Definition: VSDParagraphList.cpp:205
libvisio::VSDParagraphList::m_elements
std::map< unsigned, VSDParagraphListElement * > m_elements
Definition: VSDParagraphList.h:69
libvisio::VSDOptionalParaStyle
Definition: VSDStyles.h:288
libvisio::VSDParagraphList
Definition: VSDParagraphList.h:44
libvisio::VSDParagraphList::getCharCount
unsigned getCharCount(unsigned id) const
Definition: VSDParagraphList.cpp:146
libvisio::VSDParagraphList::resetCharCount
void resetCharCount()
Definition: VSDParagraphList.cpp:162
libvisio::VSDParagraphList::handle
void handle(VSDCollector *collector) const
Definition: VSDParagraphList.cpp:183
libvisio::VSDParagraphList::operator=
VSDParagraphList & operator=(const VSDParagraphList &paraList)
Definition: VSDParagraphList.cpp:103
VSDStyles.h
libvisio::VSDParagraphList::setCharCount
void setCharCount(unsigned id, unsigned charCount)
Definition: VSDParagraphList.cpp:155
libvisio::VSDParagraphList::addParaIX
void addParaIX(unsigned id, unsigned level, unsigned charCount, const boost::optional< double > &indFirst, const boost::optional< double > &indLeft, const boost::optional< double > &indRight, const boost::optional< double > &spLine, const boost::optional< double > &spBefore, const boost::optional< double > &spAfter, const boost::optional< unsigned char > &align, const boost::optional< unsigned > &flags)
Definition: VSDParagraphList.cpp:118
libvisio::VSDParagraphList::VSDParagraphList
VSDParagraphList()
Definition: VSDParagraphList.cpp:88