VSDXMLParserBase.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 __VSDXMLPARSERBASE_H__
11 #define __VSDXMLPARSERBASE_H__
12
13 #include <map>
14 #include <memory>
15 #include <stack>
16 #include <string>
17 #include <boost/optional.hpp>
18 #include "VSDXMLHelper.h"
19 #include "VSDCharacterList.h"
20 #include "VSDParagraphList.h"
21 #include "VSDShapeList.h"
22 #include "VSDStencils.h"
23
24 namespace libvisio
25 {
26
27 class VSDCollector;
28 class XMLErrorWatcher;
29
30 class VSDXMLParserBase
31 {
32 public:
33 explicit VSDXMLParserBase();
34 virtual ~VSDXMLParserBase();
35 virtual bool parseMain() = 0;
36 virtual bool extractStencils() = 0;
37
38 protected:
39 // Protected data
40 VSDCollector *m_collector;
41 VSDStencils m_stencils;
42 std::unique_ptr<VSDStencil> m_currentStencil;
43 VSDShape m_shape;
44 bool m_isStencilStarted;
45 unsigned m_currentStencilID;
46
47 bool m_extractStencils;
48 bool m_isInStyles;
49 unsigned m_currentLevel;
50 unsigned m_currentShapeLevel;
51 std::map<unsigned, Colour> m_colours;
52 VSDFieldList m_fieldList;
53 VSDShapeList m_shapeList;
54 librevenge::RVNGBinaryData m_currentBinaryData;
55 std::stack<VSDShape> m_shapeStack;
56 std::stack<unsigned> m_shapeLevelStack;
57 bool m_isShapeStarted;
58 bool m_isPageStarted;
59 VSDGeometryList *m_currentGeometryList;
60 unsigned m_currentGeometryListIndex;
61
62 std::map<unsigned, VSDName> m_fonts;
63
64 std::map<unsigned, VSDTabStop> *m_currentTabSet;
65
66 XMLErrorWatcher *m_watcher;
67
68 // Helper functions
69
70 int readByteData(unsigned char &value, xmlTextReaderPtr reader);
71 int readByteData(boost::optional<unsigned char> &value, xmlTextReaderPtr reader);
72 int readUnsignedData(boost::optional<unsigned> &value, xmlTextReaderPtr reader);
73 int readLongData(boost::optional<long> &value, xmlTextReaderPtr reader);
74 int readLongData(long &value, xmlTextReaderPtr reader);
75 int readDoubleData(boost::optional<double> &value, xmlTextReaderPtr reader);
76 int readDoubleData(double &value, xmlTextReaderPtr reader);
77 int readBoolData(boost::optional<bool> &value, xmlTextReaderPtr reader);
78 int readBoolData(bool &value, xmlTextReaderPtr reader);
79 int readExtendedColourData(Colour &value, long &idx, xmlTextReaderPtr reader);
80 int readExtendedColourData(Colour &value, xmlTextReaderPtr reader);
81 int readExtendedColourData(boost::optional<Colour> &value, xmlTextReaderPtr reader);
82 int readNURBSData(boost::optional<NURBSData> &data, xmlTextReaderPtr reader);
83 int readPolylineData(boost::optional<PolylineData> &data, xmlTextReaderPtr reader);
84 int readStringData(VSDName &text, xmlTextReaderPtr reader);
85 void readTriggerId(unsigned &id, xmlTextReaderPtr reader);
86
87 virtual xmlChar *readStringData(xmlTextReaderPtr reader) = 0;
88 unsigned getIX(xmlTextReaderPtr reader);
89 virtual void _handleLevelChange(unsigned level);
90 void _flushShape();
91
92 virtual int getElementToken(xmlTextReaderPtr reader) = 0;
93 virtual int getElementDepth(xmlTextReaderPtr reader) = 0;
94
95 // Functions reading the DiagramML document content
96
97 void readEllipticalArcTo(xmlTextReaderPtr reader);
98 void readEllipse(xmlTextReaderPtr reader);
99 void readGeometry(xmlTextReaderPtr reader);
100 void readMoveTo(xmlTextReaderPtr reader);
101 void readLineTo(xmlTextReaderPtr reader);
102 void readArcTo(xmlTextReaderPtr reader);
103 void readNURBSTo(xmlTextReaderPtr reader);
104 void readPolylineTo(xmlTextReaderPtr reader);
105 void readInfiniteLine(xmlTextReaderPtr reader);
106 void readRelCubBezTo(xmlTextReaderPtr reader);
107 void readRelEllipticalArcTo(xmlTextReaderPtr reader);
108 void readRelLineTo(xmlTextReaderPtr reader);
109 void readRelMoveTo(xmlTextReaderPtr reader);
110 void readRelQuadBezTo(xmlTextReaderPtr reader);
111 void readForeignData(xmlTextReaderPtr reader);
112 virtual void getBinaryData(xmlTextReaderPtr reader) = 0;
113 void readShape(xmlTextReaderPtr reader);
114 void readColours(xmlTextReaderPtr reader);
115 void readPage(xmlTextReaderPtr reader);
116 void readText(xmlTextReaderPtr reader);
117 void readCharIX(xmlTextReaderPtr reader);
118 void readParaIX(xmlTextReaderPtr reader);
119 void readLayerIX(xmlTextReaderPtr reader);
120 void readLayerMember(xmlTextReaderPtr reader);
121
122 void readStyleSheet(xmlTextReaderPtr reader);
123 void readPageSheet(xmlTextReaderPtr reader);
124
125 void readSplineStart(xmlTextReaderPtr reader);
126 void readSplineKnot(xmlTextReaderPtr reader);
127
128 void readStencil(xmlTextReaderPtr reader);
129
130 void handlePagesStart(xmlTextReaderPtr reader);
131 void handlePagesEnd(xmlTextReaderPtr reader);
132 void handlePageStart(xmlTextReaderPtr reader);
133 void handlePageEnd(xmlTextReaderPtr reader);
134 void handleMastersStart(xmlTextReaderPtr reader);
135 void handleMastersEnd(xmlTextReaderPtr reader);
136 void handleMasterStart(xmlTextReaderPtr reader);
137 void handleMasterEnd(xmlTextReaderPtr reader);
138 void skipPages(xmlTextReaderPtr reader);
139 void skipMasters(xmlTextReaderPtr reader);
140
141 private:
142 VSDXMLParserBase(const VSDXMLParserBase &);
143 VSDXMLParserBase &operator=(const VSDXMLParserBase &);
144
145 void initColours();
146 };
147
148 } // namespace libvisio
149
150 #endif // __VSDXMLPARSERBASE_H__
151 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
XML_TEXTPOSAFTERBULLET
const int XML_TEXTPOSAFTERBULLET
Definition: tokens.h:186
libvisio::NURBSData::points
std::vector< std::pair< double, double > > points
Definition: VSDTypes.h:101
libvisio::VSDXMLParserBase::m_currentBinaryData
librevenge::RVNGBinaryData m_currentBinaryData
Definition: VSDXMLParserBase.h:54
XML_PARA
const int XML_PARA
Definition: tokens.h:122
libvisio::VSDStencil::getStencilShape
const VSDShape * getStencilShape(unsigned id) const
Definition: VSDStencils.cpp:135
libvisio::VSDXMLParserBase::readColours
void readColours(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1028
libvisio::VSDXMLParserBase::parseMain
virtual bool parseMain()=0
libvisio::VSDXMLParserBase::m_shapeLevelStack
std::stack< unsigned > m_shapeLevelStack
Definition: VSDXMLParserBase.h:56
libvisio::VSDXMLParserBase::readCharIX
void readCharIX(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1173
libvisio::VSDXMLParserBase::readByteData
int readByteData(unsigned char &value, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2164
libvisio::VSDXMLParserBase::readPageSheet
void readPageSheet(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1568
VSDCharacterList.h
XML_ARCTO
const int XML_ARCTO
Definition: tokens.h:8
XML_B
const int XML_B
Definition: tokens.h:9
libvisio::VSDShape::m_xform
XForm m_xform
Definition: VSDStencils.h:55
libvisio::VSDShape::m_foreign
std::unique_ptr< ForeignData > m_foreign
Definition: VSDStencils.h:39
XML_STRIKETHRU
const int XML_STRIKETHRU
Definition: tokens.h:169
libvisio::VSDXMLParserBase::readRelEllipticalArcTo
void readRelEllipticalArcTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:640
libvisio::VSDXMLParserBase::readForeignData
void readForeignData(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1707
XML_X
const int XML_X
Definition: tokens.h:204
libvisio::VSDXMLParserBase::extractStencils
virtual bool extractStencils()=0
XML_INDFIRST
const int XML_INDFIRST
Definition: tokens.h:82
libvisio::VSDLayer::m_printable
bool m_printable
Definition: VSDLayerList.h:30
libvisio::VSDLayer::m_colour
boost::optional< Colour > m_colour
Definition: VSDLayerList.h:28
XML_RELMOVETO
const int XML_RELMOVETO
Definition: tokens.h:144
VSDShapeList.h
libvisio::VSDXMLParserBase::getElementToken
virtual int getElementToken(xmlTextReaderPtr reader)=0
libvisio::VSDXMLParserBase::readInfiniteLine
void readInfiniteLine(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:582
libvisio::VSDXMLParserBase::m_currentShapeLevel
unsigned m_currentShapeLevel
Definition: VSDXMLParserBase.h:50
libvisio::VSDXMLParserBase::m_currentStencilID
unsigned m_currentStencilID
Definition: VSDXMLParserBase.h:45
libvisio::PolylineData::points
std::vector< std::pair< double, double > > points
Definition: VSDTypes.h:118
XML_BULLETSTR
const int XML_BULLETSTR
Definition: tokens.h:19
libvisio::VSDShape::m_geometries
std::map< unsigned, VSDGeometryList > m_geometries
Definition: VSDStencils.h:36
libvisio::VSDXMLParserBase::readExtendedColourData
int readExtendedColourData(Colour &value, long &idx, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2181
libvisio::VSDXMLParserBase::readPolylineTo
void readPolylineTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:528
libvisio::VSDShape::m_textFormat
TextFormat m_textFormat
Definition: VSDStencils.h:52
libvisio::VSDXMLParserBase::~VSDXMLParserBase
virtual ~VSDXMLParserBase()
Definition: VSDXMLParserBase.cpp:42
libvisio::VSDXMLParserBase::handleMasterEnd
void handleMasterEnd(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1915
VSDStylesCollector.h
libvisio::VSDCollector
Definition: VSDCollector.h:20
libvisio::NURBSData::yType
unsigned char yType
Definition: VSDTypes.h:98
libvisio::VSDXMLParserBase::m_isPageStarted
bool m_isPageStarted
Definition: VSDXMLParserBase.h:58
libvisio::VSDXMLParserBase::skipPages
void skipPages(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1950
libvisio::VSDXMLParserBase::m_extractStencils
bool m_extractStencils
Definition: VSDXMLParserBase.h:47
libvisio::VSDXMLParserBase::getIX
unsigned getIX(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2230
libvisio::VSDXMLParserBase::handlePagesEnd
void handlePagesEnd(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1856
libvisio::VSDXMLParserBase::m_fieldList
VSDFieldList m_fieldList
Definition: VSDXMLParserBase.h:52
XML_A
const int XML_A
Definition: tokens.h:4
VSDContentCollector.h
XML_NOFILL
const int XML_NOFILL
Definition: tokens.h:110
XML_GEOM
const int XML_GEOM
Definition: tokens.h:68
VSD_DEBUG_MSG
#define VSD_DEBUG_MSG(M)
Definition: libvisio_utils.h:42
libvisio::VSDXMLParserBase::readLongData
int readLongData(boost::optional< long > &value, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2116
XML_STYLE
const int XML_STYLE
Definition: tokens.h:170
XML_FONTSCALE
const int XML_FONTSCALE
Definition: tokens.h:61
libvisio::VSDStencils
Definition: VSDStencils.h:78
libvisio::VSDXMLParserBase::readTriggerId
void readTriggerId(unsigned &id, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2239
XML_TEXT
const int XML_TEXT
Definition: tokens.h:181
libvisio::VSDXMLParserBase::readShape
void readShape(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:930
libvisio::xmlStringToDouble
double xmlStringToDouble(const xmlChar *s)
Definition: libvisio_xml.cpp:175
libvisio::VSDShape::m_misc
VSDMisc m_misc
Definition: VSDStencils.h:58
XML_PP
const int XML_PP
Definition: tokens.h:271
libvisio::PolylineData::xType
unsigned char xType
Definition: VSDTypes.h:116
XML_RELELLIPTICALARCTO
const int XML_RELELLIPTICALARCTO
Definition: tokens.h:142
XML_ROW
const int XML_ROW
Definition: tokens.h:149
libvisio::VSDXMLParserBase::_handleLevelChange
virtual void _handleLevelChange(unsigned level)
Definition: VSDXMLParserBase.cpp:1842
XML_PRINT
const int XML_PRINT
Definition: tokens.h:129
XML_FONT
const int XML_FONT
Definition: tokens.h:60
libvisio::VSDXMLParserBase::readEllipticalArcTo
void readEllipticalArcTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:325
libvisio::xmlStringToBool
bool xmlStringToBool(const xmlChar *s)
Definition: libvisio_xml.cpp:193
libvisio::VSDXMLParserBase::m_isStencilStarted
bool m_isStencilStarted
Definition: VSDXMLParserBase.h:44
libvisio::VSDXMLParserBase::readNURBSData
int readNURBSData(boost::optional< NURBSData > &data, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1964
libvisio::VSDStencil
Definition: VSDStencils.h:62
VSDXMLHelper.h
XML_RELLINETO
const int XML_RELLINETO
Definition: tokens.h:143
libvisio::XmlParserException
Definition: libvisio_utils.h:91
XML_RELQUADBEZTO
const int XML_RELQUADBEZTO
Definition: tokens.h:145
XML_CP
const int XML_CP
Definition: tokens.h:258
VSDXMLTokenMap.h
libvisio::VSDOptionalParaStyle
Definition: VSDStyles.h:322
XML_COLOR
const int XML_COLOR
Definition: tokens.h:27
libvisio::VSDStencil::m_firstShapeId
unsigned m_firstShapeId
Definition: VSDStencils.h:75
XML_SPAFTER
const int XML_SPAFTER
Definition: tokens.h:164
libvisio::Colour
Definition: VSDTypes.h:70
XML_LINETO
const int XML_LINETO
Definition: tokens.h:99
XML_E
const int XML_E
Definition: tokens.h:39
libvisio::VSDXMLParserBase::m_fonts
std::map< unsigned, VSDName > m_fonts
Definition: VSDXMLParserBase.h:62
libvisio::VSDXMLParserBase::readRelMoveTo
void readRelMoveTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:822
libvisio::VSDXMLParserBase::initColours
void initColours()
Definition: VSDXMLParserBase.cpp:999
libvisio::NURBSData::weights
std::vector< double > weights
Definition: VSDTypes.h:100
libvisio::VSDFieldList
Definition: VSDFieldList.h:87
XML_D
const int XML_D
Definition: tokens.h:33
libvisio::VSDXMLParserBase::readText
void readText(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1080
XML_ELLIPTICALARCTO
const int XML_ELLIPTICALARCTO
Definition: tokens.h:43
libvisio::VSDXMLParserBase::readParaIX
void readParaIX(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1406
libvisio::VSDXMLParserBase::readRelLineTo
void readRelLineTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:772
libvisio::VSDXMLParserBase::readGeometry
void readGeometry(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:48
libvisio::VSDXMLParserBase::handleMastersEnd
void handleMastersEnd(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1897
libvisio::VSDXMLParserBase::readSplineKnot
void readSplineKnot(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1640
XML_SIZE
const int XML_SIZE
Definition: tokens.h:162
libvisio::VSDXMLParserBase::readEllipse
void readEllipse(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:391
libvisio::xmlStringToColour
Colour xmlStringToColour(const xmlChar *s)
Definition: libvisio_xml.cpp:115
libvisio::XMLErrorWatcher
Definition: libvisio_xml.h:24
XML_ELLIPSE
const int XML_ELLIPSE
Definition: tokens.h:42
libvisio::VSDName::m_format
TextFormat m_format
Definition: VSDTypes.h:189
XML_PAGES
const int XML_PAGES
Definition: tokens.h:121
XML_INDRIGHT
const int XML_INDRIGHT
Definition: tokens.h:84
libvisio::VSDXMLParserBase::skipMasters
void skipMasters(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1936
XML_POLYLINETO
const int XML_POLYLINETO
Definition: tokens.h:126
libvisio::VSDXMLParserBase::m_watcher
XMLErrorWatcher * m_watcher
Definition: VSDXMLParserBase.h:66
XML_POS
const int XML_POS
Definition: tokens.h:127
libvisio::VSDOptionalCharStyle
Definition: VSDStyles.h:208
libvisio::VSDXMLParserBase::handlePagesStart
void handlePagesStart(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1848
libvisio::VSDXMLParserBase::readMoveTo
void readMoveTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:171
XML_CASE
const int XML_CASE
Definition: tokens.h:23
libvisio::VSDXMLParserBase::readSplineStart
void readSplineStart(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1574
XML_NOLINE
const int XML_NOLINE
Definition: tokens.h:111
libvisio::VSDXMLParserBase::readPage
void readPage(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1060
libvisio::VSDXMLParserBase::m_isShapeStarted
bool m_isShapeStarted
Definition: VSDXMLParserBase.h:57
XML_TP
const int XML_TP
Definition: tokens.h:272
libvisio::VSDGeometryList
Definition: VSDGeometryList.h:47
libvisio::VSDXMLParserBase::readRelQuadBezTo
void readRelQuadBezTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:872
XML_C
const int XML_C
Definition: tokens.h:20
XML_SPLINEKNOT
const int XML_SPLINEKNOT
Definition: tokens.h:167
libvisio::VSDXMLParserBase::readUnsignedData
int readUnsignedData(boost::optional< unsigned > &value, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2155
libvisio::VSDXMLParserBase::m_shape
VSDShape m_shape
Definition: VSDXMLParserBase.h:43
XML_LAYER
const int XML_LAYER
Definition: tokens.h:90
XML_BULLET
const int XML_BULLET
Definition: tokens.h:16
XML_VISIBLE
const int XML_VISIBLE
Definition: tokens.h:202
libvisio::VSDXMLParserBase::readLayerMember
void readLayerMember(xmlTextReaderPtr reader)
libvisio::VSD_TEXT_UTF8
Definition: VSDTypes.h:166
XML_MOVETO
const int XML_MOVETO
Definition: tokens.h:108
XML_SPBEFORE
const int XML_SPBEFORE
Definition: tokens.h:165
libvisio::VSDShape::m_tabSets
std::map< unsigned, VSDTabSet > m_tabSets
Definition: VSDStencils.h:49
XML_DBLUNDERLINE
const int XML_DBLUNDERLINE
Definition: tokens.h:35
libvisio::PolylineData
Definition: VSDTypes.h:114
libvisio::VSDXMLParserBase::readPolylineData
int readPolylineData(boost::optional< PolylineData > &data, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2017
libvisio::VSDLayer
Definition: VSDLayerList.h:21
XML_INDLEFT
const int XML_INDLEFT
Definition: tokens.h:83
libvisio::VSDXMLParserBase::VSDXMLParserBase
VSDXMLParserBase()
Definition: VSDXMLParserBase.cpp:29
libvisio::VSDXMLParserBase
Definition: VSDXMLParserBase.h:30
libvisio::VSDShapeList
Definition: VSDShapeList.h:19
libvisio::VSDXMLParserBase::handleMasterStart
void handleMasterStart(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1906
XML_CHAR
const int XML_CHAR
Definition: tokens.h:25
libvisio::VSDXMLParserBase::handlePageEnd
void handlePageEnd(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1870
libvisio::VSDXMLParserBase::readBoolData
int readBoolData(boost::optional< bool > &value, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2142
libvisio::VSDXMLParserBase::m_currentGeometryList
VSDGeometryList * m_currentGeometryList
Definition: VSDXMLParserBase.h:59
libvisio::VSDShape::m_txtxform
std::unique_ptr< XForm > m_txtxform
Definition: VSDStencils.h:56
libvisio::NURBSData::xType
unsigned char xType
Definition: VSDTypes.h:97
libvisio::PolylineData::yType
unsigned char yType
Definition: VSDTypes.h:117
VSDStencils.h
libvisio::VSDXMLParserBase::operator=
VSDXMLParserBase & operator=(const VSDXMLParserBase &)
XML_SPLINESTART
const int XML_SPLINESTART
Definition: tokens.h:168
libvisio::VSDXMLParserBase::m_currentTabSet
std::map< unsigned, VSDTabStop > * m_currentTabSet
Definition: VSDXMLParserBase.h:64
XML_SPLINE
const int XML_SPLINE
Definition: tokens.h:166
libvisio::VSDXMLParserBase::readLayerIX
void readLayerIX(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1355
libvisio::VSDXMLParserBase::m_shapeList
VSDShapeList m_shapeList
Definition: VSDXMLParserBase.h:53
XML_FLAGS
const int XML_FLAGS
Definition: tokens.h:57
libvisio::VSDXMLParserBase::readStringData
int readStringData(VSDName &text, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2074
libvisio::VSDLayer::m_visible
bool m_visible
Definition: VSDLayerList.h:29
XML_Y
const int XML_Y
Definition: tokens.h:207
XML_COLORS
const int XML_COLORS
Definition: tokens.h:30
libvisio::NURBSData::knots
std::vector< double > knots
Definition: VSDTypes.h:99
libvisio::VSDXMLParserBase::m_stencils
VSDStencils m_stencils
Definition: VSDXMLParserBase.h:41
libvisio::VSDName::m_data
librevenge::RVNGBinaryData m_data
Definition: VSDTypes.h:188
libvisio::VSDXMLParserBase::handleMastersStart
void handleMastersStart(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1883
libvisio::VSDShape
Definition: VSDStencils.h:27
XML_MASTERS
const int XML_MASTERS
Definition: tokens.h:106
libvisio::VSDXMLParserBase::m_colours
std::map< unsigned, Colour > m_colours
Definition: VSDXMLParserBase.h:51
XML_BULLETFONTSIZE
const int XML_BULLETFONTSIZE
Definition: tokens.h:18
libvisio::VSDXMLParserBase::m_currentLevel
unsigned m_currentLevel
Definition: VSDXMLParserBase.h:49
VSDParagraphList.h
libvisio::VSDXMLParserBase::m_shapeStack
std::stack< VSDShape > m_shapeStack
Definition: VSDXMLParserBase.h:55
libvisio::VSDXMLParserBase::readDoubleData
int readDoubleData(boost::optional< double > &value, xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:2090
libvisio::VSDXMLParserBase::m_collector
VSDCollector * m_collector
Definition: VSDXMLParserBase.h:40
libvisio::VSDShape::m_text
librevenge::RVNGBinaryData m_text
Definition: VSDStencils.h:50
libvisio::VSDXMLParserBase::readStyleSheet
void readStyleSheet(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1552
libvisio::VSDName
Definition: VSDTypes.h:170
XML_HIGHLIGHT
const int XML_HIGHLIGHT
Definition: tokens.h:76
libvisio::VSDXMLParserBase::readRelCubBezTo
void readRelCubBezTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:706
XML_INFINITELINE
const int XML_INFINITELINE
Definition: tokens.h:85
libvisio::VSDXMLParserBase::readStencil
void readStencil(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1694
XML_HORZALIGN
const int XML_HORZALIGN
Definition: tokens.h:77
libvisio::NURBSData::degree
unsigned degree
Definition: VSDTypes.h:96
XML_OVERLINE
const int XML_OVERLINE
Definition: tokens.h:114
XML_NURBSTO
const int XML_NURBSTO
Definition: tokens.h:109
MINUS_ONE
#define MINUS_ONE
Definition: VSDTypes.h:18
XML_NOSHOW
const int XML_NOSHOW
Definition: tokens.h:112
libvisio::VSDXMLParserBase::getBinaryData
virtual void getBinaryData(xmlTextReaderPtr reader)=0
libvisio::VSDXMLParserBase::readNURBSTo
void readNURBSTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:457
XML_TOKEN_INVALID
const int XML_TOKEN_INVALID
Definition: tokens.h:306
libvisio::NURBSData::lastKnot
double lastKnot
Definition: VSDTypes.h:95
libvisio_xml.h
XML_RELCUBBEZTO
const int XML_RELCUBBEZTO
Definition: tokens.h:141
libvisio::VSDXMLParserBase::_flushShape
void _flushShape()
Definition: VSDXMLParserBase.cpp:1745
libvisio_utils.h
XML_BULLETFONT
const int XML_BULLETFONT
Definition: tokens.h:17
libvisio::VSDXMLParserBase::m_isInStyles
bool m_isInStyles
Definition: VSDXMLParserBase.h:48
libvisio::VSDShape::m_charList
VSDCharacterList m_charList
Definition: VSDStencils.h:46
libvisio::VSDShape::m_paraList
VSDParagraphList m_paraList
Definition: VSDStencils.h:48
XML_DOUBLESTRIKETHROUGH
const int XML_DOUBLESTRIKETHROUGH
Definition: tokens.h:37
libvisio::NURBSData
Definition: VSDTypes.h:93
libvisio::VSDXMLParserBase::readLineTo
void readLineTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:221
libvisio
Definition: libvisio_utils.h:48
libvisio::VSDXMLParserBase::m_currentStencil
std::unique_ptr< VSDStencil > m_currentStencil
Definition: VSDXMLParserBase.h:42
libvisio::VSDXMLParserBase::m_currentGeometryListIndex
unsigned m_currentGeometryListIndex
Definition: VSDXMLParserBase.h:60
XML_SECTION
const int XML_SECTION
Definition: tokens.h:152
XML_COLORENTRY
const int XML_COLORENTRY
Definition: tokens.h:28
libvisio::VSDXMLParserBase::readArcTo
void readArcTo(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:271
libvisio::VSDXMLParserBase::getElementDepth
virtual int getElementDepth(xmlTextReaderPtr reader)=0
VSDXMLParserBase.h
libvisio::VSDXMLParserBase::handlePageStart
void handlePageStart(xmlTextReaderPtr reader)
Definition: VSDXMLParserBase.cpp:1863
libvisio::xmlStringToLong
long xmlStringToLong(const xmlChar *s)
Definition: libvisio_xml.cpp:151