10 #ifndef __VSDPARSER_H__
11 #define __VSDPARSER_H__
18 #include <librevenge/librevenge.h>
48 explicit VSDParser(librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *painter);
57 void readEllipse(librevenge::RVNGInputStream *input);
58 virtual void readLine(librevenge::RVNGInputStream *input);
60 virtual void readGeomList(librevenge::RVNGInputStream *input);
62 void readMoveTo(librevenge::RVNGInputStream *input);
63 void readLineTo(librevenge::RVNGInputStream *input);
64 void readArcTo(librevenge::RVNGInputStream *input);
65 void readNURBSTo(librevenge::RVNGInputStream *input);
71 void readShapeId(librevenge::RVNGInputStream *input);
72 virtual void readShapeList(librevenge::RVNGInputStream *input);
75 virtual void readShape(librevenge::RVNGInputStream *input);
76 void readColours(librevenge::RVNGInputStream *input);
77 void readFont(librevenge::RVNGInputStream *input);
78 void readFontIX(librevenge::RVNGInputStream *input);
79 virtual void readCharList(librevenge::RVNGInputStream *input);
80 virtual void readParaList(librevenge::RVNGInputStream *input);
81 virtual void readPropList(librevenge::RVNGInputStream *input);
82 virtual void readPage(librevenge::RVNGInputStream *input);
83 virtual void readText(librevenge::RVNGInputStream *input);
84 virtual void readCharIX(librevenge::RVNGInputStream *input);
85 virtual void readParaIX(librevenge::RVNGInputStream *input);
86 virtual void readTextBlock(librevenge::RVNGInputStream *input);
89 virtual void readName(librevenge::RVNGInputStream *input);
91 virtual void readNameList2(librevenge::RVNGInputStream *input);
92 virtual void readName2(librevenge::RVNGInputStream *input);
94 virtual void readFieldList(librevenge::RVNGInputStream *input);
95 virtual void readTextField(librevenge::RVNGInputStream *input);
105 void readOLEList(librevenge::RVNGInputStream *input);
106 void readOLEData(librevenge::RVNGInputStream *input);
108 virtual void readNameIDX(librevenge::RVNGInputStream *input);
111 void readMisc(librevenge::RVNGInputStream *input);
114 bool parseDocument(librevenge::RVNGInputStream *input,
unsigned shift);
117 void handleStreams(librevenge::RVNGInputStream *input,
unsigned ptrType,
unsigned shift,
unsigned level);
119 void handleChunks(librevenge::RVNGInputStream *input,
unsigned level);
120 void handleChunk(librevenge::RVNGInputStream *input);
121 void handleBlob(librevenge::RVNGInputStream *input,
unsigned shift,
unsigned level);
124 virtual void readPointerInfo(librevenge::RVNGInputStream *input,
unsigned ptrType,
unsigned shift,
unsigned &listSize,
int &pointerCount);
131 virtual unsigned getUInt(librevenge::RVNGInputStream *input);
132 virtual int getInt(librevenge::RVNGInputStream *input);
175 #endif // __VSDPARSER_H__
virtual void readParaIX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1733
librevenge::RVNGInputStream * m_input
Definition: VSDParser.h:134
void readPageSheet(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1638
virtual ~VSDParser()
Definition: VSDParser.cpp:32
Definition: VSDStencils.h:26
virtual void readNameIDX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:714
unsigned m_currentLevel
Definition: VSDParser.h:139
void readLineTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:924
void readFont(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1537
void readSplineStart(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1464
virtual void readPointer(librevenge::RVNGInputStream *input, Pointer &ptr)
Definition: VSDParser.cpp:165
virtual void readFillAndShadow(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1770
virtual void readNameIDX123(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:735
bool m_isShapeStarted
Definition: VSDParser.h:153
void handleStream(const Pointer &ptr, unsigned idx, unsigned level)
Definition: VSDParser.cpp:253
void readOLEList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:695
void readGeometry(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:902
bool m_isBackgroundPage
Definition: VSDParser.h:152
VSDShapeList m_shapeList
Definition: VSDParser.h:138
virtual void readText(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1644
void readPolylineTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1286
unsigned Offset
Definition: VSDParser.h:39
void handleChunk(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:406
Definition: VSDTypes.h:57
Definition: VSDParser.h:32
void readPageProps(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1047
ChunkHeader m_header
Definition: VSDParser.h:136
double m_shadowOffsetX
Definition: VSDParser.h:155
std::vector< Colour > m_colours
Definition: VSDParser.h:150
Colour _colourFromIndex(unsigned idx)
Definition: VSDParser.cpp:1941
librevenge::RVNGDrawingInterface * m_painter
Definition: VSDParser.h:135
bool parseDocument(librevenge::RVNGInputStream *input, unsigned shift)
Definition: VSDParser.cpp:146
VSDName m_currentPageName
Definition: VSDParser.h:164
unsigned m_currentShapeLevel
Definition: VSDParser.h:146
virtual void readNameList2(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1496
void handleChunks(librevenge::RVNGInputStream *input, unsigned level)
Definition: VSDParser.cpp:388
void readInfiniteLine(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1385
void readColours(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1518
virtual void readPage(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:895
void readNURBSTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1127
std::map< unsigned, VSDName > m_fonts
Definition: VSDParser.h:161
virtual void readShapeList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:997
Definition: VSDStencils.h:75
void _flushShape()
Definition: VSDParser.cpp:562
Definition: VSDParser.h:45
void readStencilShape(librevenge::RVNGInputStream *input)
Definition: VSDCollector.h:20
unsigned Length
Definition: VSDParser.h:40
VSDStencil * m_currentStencil
Definition: VSDParser.h:142
virtual void readCharIX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1666
void handleStreams(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned level)
Definition: VSDParser.cpp:185
void readSplineKnot(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1479
virtual void readParaList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:871
unsigned m_currentShapeID
Definition: VSDParser.h:147
VSDGeometryList * m_currentGeometryList
Definition: VSDParser.h:158
void readFontIX(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1554
virtual void readShape(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1071
void handleBlob(librevenge::RVNGInputStream *input, unsigned shift, unsigned level)
Definition: VSDParser.cpp:372
unsigned ListSize
Definition: VSDParser.h:42
double m_shadowOffsetY
Definition: VSDParser.h:156
void _handleLevelChange(unsigned level)
Definition: VSDParser.cpp:633
void readEllipse(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:751
void readArcTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:935
bool m_isStencilStarted
Definition: VSDParser.h:144
void readTxtXForm(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:968
std::map< unsigned, std::map< unsigned, VSDName > > m_namesMapMap
Definition: VSDParser.h:163
void readOLEData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:699
virtual void readLine(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:770
void _nameFromId(VSDName &name, unsigned id, unsigned level)
Definition: VSDParser.cpp:36
void readForeignData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:681
Definition: VSDStencils.h:59
virtual void readPointerInfo(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned &listSize, int &pointerCount)
Definition: VSDParser.cpp:174
virtual void readTextBlock(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:792
virtual bool getChunkHeader(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:48
virtual void readName2(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1848
void readMisc(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1932
void readXFormData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:948
void readNameList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1491
unsigned m_currentGeomListCount
Definition: VSDParser.h:159
virtual void readStyleSheet(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1626
VSDStencils m_stencils
Definition: VSDParser.h:141
unsigned Type
Definition: VSDParser.h:38
virtual unsigned getUInt(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1948
bool extractStencils()
Definition: VSDParser.cpp:159
void readShapeId(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:989
Definition: VSDShapeList.h:19
VSDShape m_shape
Definition: VSDParser.h:143
Pointer(const Pointer &ptr)
Definition: VSDParser.h:36
void readEllipticalArcTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:661
VSDParser & operator=(const VSDParser &)
unsigned short Format
Definition: VSDParser.h:41
virtual void readFieldList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1501
void readForeignDataType(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1019
virtual void readName(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1837
bool m_extractStencils
Definition: VSDParser.h:149
Definition: VSDTypes.h:163
bool parseMain()
Definition: VSDParser.cpp:104
VSDCollector * m_collector
Definition: VSDParser.h:137
virtual void readPropList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:891
Pointer()
Definition: VSDParser.h:34
virtual int getInt(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1953
virtual void readTextField(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1863
virtual void readCharList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:850
virtual void readGeomList(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:822
void readMoveTo(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:913
Definition: VSDGeometryList.h:47
bool m_isInStyles
Definition: VSDParser.h:145
void readShapeData(librevenge::RVNGInputStream *input)
Definition: VSDParser.cpp:1399
std::map< unsigned, VSDName > m_names
Definition: VSDParser.h:162