10 #ifndef __VSDPARSER_H__
11 #define __VSDPARSER_H__
18 #include <librevenge/librevenge.h>
49 explicit VSDParser(librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *painter, librevenge::RVNGInputStream *container = 0);
58 void readEllipse(librevenge::RVNGInputStream *input);
59 virtual void readLine(librevenge::RVNGInputStream *input);
61 virtual void readGeomList(librevenge::RVNGInputStream *input);
63 void readMoveTo(librevenge::RVNGInputStream *input);
64 void readLineTo(librevenge::RVNGInputStream *input);
65 void readArcTo(librevenge::RVNGInputStream *input);
66 void readNURBSTo(librevenge::RVNGInputStream *input);
71 void readXForm1D(librevenge::RVNGInputStream *input);
73 void readShapeId(librevenge::RVNGInputStream *input);
74 virtual void readShapeList(librevenge::RVNGInputStream *input);
77 virtual void readShape(librevenge::RVNGInputStream *input);
78 void readColours(librevenge::RVNGInputStream *input);
79 void readFont(librevenge::RVNGInputStream *input);
80 void readFontIX(librevenge::RVNGInputStream *input);
81 virtual void readCharList(librevenge::RVNGInputStream *input);
82 virtual void readParaList(librevenge::RVNGInputStream *input);
83 virtual void readPropList(librevenge::RVNGInputStream *input);
84 virtual void readPage(librevenge::RVNGInputStream *input);
85 virtual void readText(librevenge::RVNGInputStream *input);
86 virtual void readCharIX(librevenge::RVNGInputStream *input);
87 virtual void readParaIX(librevenge::RVNGInputStream *input);
88 virtual void readTextBlock(librevenge::RVNGInputStream *input);
90 virtual void readTabsData(librevenge::RVNGInputStream *input);
93 virtual void readName(librevenge::RVNGInputStream *input);
95 virtual void readNameList2(librevenge::RVNGInputStream *input);
96 virtual void readName2(librevenge::RVNGInputStream *input);
98 virtual void readFieldList(librevenge::RVNGInputStream *input);
99 virtual void readTextField(librevenge::RVNGInputStream *input);
109 void readOLEList(librevenge::RVNGInputStream *input);
110 void readOLEData(librevenge::RVNGInputStream *input);
112 virtual void readNameIDX(librevenge::RVNGInputStream *input);
115 void readMisc(librevenge::RVNGInputStream *input);
117 virtual void readLayerList(librevenge::RVNGInputStream *input);
118 virtual void readLayer(librevenge::RVNGInputStream *input);
119 virtual void readLayerMem(librevenge::RVNGInputStream *input);
122 bool parseDocument(librevenge::RVNGInputStream *input,
unsigned shift);
127 void handleStreams(librevenge::RVNGInputStream *input,
unsigned ptrType,
unsigned shift,
unsigned level);
129 void handleChunks(librevenge::RVNGInputStream *input,
unsigned level);
130 void handleChunk(librevenge::RVNGInputStream *input);
131 void handleBlob(librevenge::RVNGInputStream *input,
unsigned shift,
unsigned level);
134 virtual void readPointerInfo(librevenge::RVNGInputStream *input,
unsigned ptrType,
unsigned shift,
unsigned &listSize,
int &pointerCount);
141 virtual unsigned getUInt(librevenge::RVNGInputStream *input);
142 virtual int getInt(librevenge::RVNGInputStream *input);
190 #endif // __VSDPARSER_H__
virtual void readParaIX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1905
librevenge::RVNGInputStream * m_input
Definition: VSDParser.h:144
void readPageSheet(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1810
virtual ~VSDParser()
Definition: VSDParser.cpp:33
Definition: VSDStencils.h:26
virtual void readNameIDX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:790
unsigned m_currentLevel
Definition: VSDParser.h:150
librevenge::RVNGInputStream * m_container
Definition: VSDParser.h:146
void readLineTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1076
void readFont(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1709
void readSplineStart(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1636
virtual void readPointer(librevenge::RVNGInputStream *input, Pointer &ptr)
Definition: VSDParser.cpp:195
virtual void readFillAndShadow(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1990
virtual void readNameIDX123(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:810
bool m_isShapeStarted
Definition: VSDParser.h:166
void handleStream(const Pointer &ptr, unsigned idx, unsigned level)
Definition: VSDParser.cpp:286
void readOLEList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:757
void readGeometry(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1054
bool m_isBackgroundPage
Definition: VSDParser.h:165
VSDShapeList m_shapeList
Definition: VSDParser.h:149
virtual void readText(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1816
void readPolylineTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1458
unsigned Offset
Definition: VSDParser.h:40
void handleChunk(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:439
unsigned m_currentLayerListLevel
Definition: VSDParser.h:160
Definition: VSDTypes.h:73
Definition: VSDParser.h:33
void readPageProps(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1214
ChunkHeader m_header
Definition: VSDParser.h:147
void parseMetaData()
Definition: VSDParser.cpp:150
double m_shadowOffsetX
Definition: VSDParser.h:168
std::vector< Colour > m_colours
Definition: VSDParser.h:163
Colour _colourFromIndex(unsigned idx)
Definition: VSDParser.cpp:2161
librevenge::RVNGDrawingInterface * m_painter
Definition: VSDParser.h:145
bool parseDocument(librevenge::RVNGInputStream *input, unsigned shift)
Definition: VSDParser.cpp:176
VSDName m_currentPageName
Definition: VSDParser.h:177
unsigned m_currentShapeLevel
Definition: VSDParser.h:157
virtual void readNameList2(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1668
void handleChunks(librevenge::RVNGInputStream *input, unsigned level)
Definition: VSDParser.cpp:421
void readInfiniteLine(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1557
void readColours(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1690
virtual void readPage(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1047
void readNURBSTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1299
std::map< unsigned, VSDName > m_fonts
Definition: VSDParser.h:174
virtual void readShapeList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1164
Definition: VSDStencils.h:78
void _flushShape()
Definition: VSDParser.cpp:615
Definition: VSDParser.h:46
void readStencilShape(librevenge::RVNGInputStream *input)
Definition: VSDCollector.h:20
std::map< unsigned, VSDTabStop > * m_currentTabSet
Definition: VSDParser.h:179
unsigned Length
Definition: VSDParser.h:41
VSDStencil * m_currentStencil
Definition: VSDParser.h:153
virtual void readCharIX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1838
void handleStreams(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned level)
Definition: VSDParser.cpp:215
void readSplineKnot(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1651
virtual void readParaList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:947
unsigned m_currentShapeID
Definition: VSDParser.h:158
VSDGeometryList * m_currentGeometryList
Definition: VSDParser.h:171
void readFontIX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1726
virtual void readShape(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1242
void handleBlob(librevenge::RVNGInputStream *input, unsigned shift, unsigned level)
Definition: VSDParser.cpp:405
virtual void readLayer(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1007
unsigned ListSize
Definition: VSDParser.h:43
double m_shadowOffsetY
Definition: VSDParser.h:169
void _handleLevelChange(unsigned level)
Definition: VSDParser.cpp:692
void readEllipse(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:826
void readArcTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1087
bool m_isStencilStarted
Definition: VSDParser.h:155
void readTxtXForm(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1135
std::map< unsigned, std::map< unsigned, VSDName > > m_namesMapMap
Definition: VSDParser.h:176
virtual void readLayerList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:989
void readOLEData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:761
virtual void readLine(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:845
void _nameFromId(VSDName &name, unsigned id, unsigned level)
Definition: VSDParser.cpp:37
void readForeignData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:743
virtual void readLayerMem(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1030
Definition: VSDStencils.h:62
virtual void readPointerInfo(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned &listSize, int &pointerCount)
Definition: VSDParser.cpp:204
virtual void readTextBlock(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:869
virtual bool getChunkHeader(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:49
void readXForm1D(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1120
virtual void readName2(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:2068
void readMisc(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:2152
void readXFormData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1100
virtual void readTabsDataList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:971
void readNameList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1663
unsigned m_currentGeomListCount
Definition: VSDParser.h:172
virtual void readStyleSheet(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1798
VSDStencils m_stencils
Definition: VSDParser.h:152
unsigned Type
Definition: VSDParser.h:39
virtual unsigned getUInt(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:2168
bool extractStencils()
Definition: VSDParser.cpp:189
void readShapeId(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1156
Definition: VSDShapeList.h:19
VSDShape m_shape
Definition: VSDParser.h:154
Pointer(const Pointer &ptr)
Definition: VSDParser.h:37
void readEllipticalArcTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:723
VSDParser & operator=(const VSDParser &)
unsigned short Format
Definition: VSDParser.h:42
virtual void readFieldList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1673
void readForeignDataType(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1186
virtual void readName(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:2057
bool m_extractStencils
Definition: VSDParser.h:162
virtual void readTabsData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:776
Definition: VSDTypes.h:179
bool parseMain()
Definition: VSDParser.cpp:105
VSDCollector * m_collector
Definition: VSDParser.h:148
virtual void readPropList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:967
Pointer()
Definition: VSDParser.h:35
virtual int getInt(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:2173
virtual void readTextField(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:2083
virtual void readCharList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:927
virtual void readGeomList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:899
void readMoveTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1065
Definition: VSDGeometryList.h:47
bool m_isInStyles
Definition: VSDParser.h:156
void readShapeData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1571
std::map< unsigned, VSDName > m_names
Definition: VSDParser.h:175