VSDStylesCollector.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 VSDSTYLESCOLLECTOR_H
11 #define VSDSTYLESCOLLECTOR_H
12
13 #include <map>
14 #include <vector>
15 #include <list>
16 #include "VSDCollector.h"
17 #include "VSDParser.h"
18 #include "libvisio_utils.h"
19 #include "VSDStyles.h"
20
21 namespace libvisio
22 {
23
24 class VSDStylesCollector : public VSDCollector
25 {
26 public:
27 VSDStylesCollector(
28 std::vector<std::map<unsigned, XForm> > &groupXFormsSequence,
29 std::vector<std::map<unsigned, unsigned> > &groupMembershipsSequence,
30 std::vector<std::list<unsigned> > &documentPageShapeOrders
31 );
32 virtual ~VSDStylesCollector() {}
33
34 void collectEllipticalArcTo(unsigned id, unsigned level, double x3, double y3, double x2, double y2, double angle, double ecc);
35 void collectForeignData(unsigned level, const librevenge::RVNGBinaryData &binaryData);
36 void collectOLEList(unsigned id, unsigned level)
37 {
38 collectUnhandledChunk(id, level);
39 }
40 void collectOLEData(unsigned id, unsigned level, const librevenge::RVNGBinaryData &oleData);
41 void collectEllipse(unsigned id, unsigned level, double cx, double cy, double xleft, double yleft, double xtop, double ytop);
42 void collectLine(unsigned level, const boost::optional<double> &strokeWidth, const boost::optional<Colour> &c, const boost::optional<unsigned char> &linePattern,
43 const boost::optional<unsigned char> &startMarker, const boost::optional<unsigned char> &endMarker,
44 const boost::optional<unsigned char> &lineCap, const boost::optional<double> &rounding);
45 void collectFillAndShadow(unsigned level, const boost::optional<Colour> &colourFG, const boost::optional<Colour> &colourBG,
46 const boost::optional<unsigned char> &fillPattern, const boost::optional<double> &fillFGTransparency,
47 const boost::optional<double> &fillBGTransparency, const boost::optional<unsigned char> &shadowPattern,
48 const boost::optional<Colour> &shfgc, const boost::optional<double> &shadowOffsetX, const boost::optional<double> &shadowOffsetY);
49 void collectFillAndShadow(unsigned level, const boost::optional<Colour> &colourFG, const boost::optional<Colour> &colourBG,
50 const boost::optional<unsigned char> &fillPattern, const boost::optional<double> &fillFGTransparency,
51 const boost::optional<double> &fillBGTransparency, const boost::optional<unsigned char> &shadowPattern,
52 const boost::optional<Colour> &shfgc);
53 void collectThemeReference(unsigned level, const boost::optional<long> &lineColour, const boost::optional<long> &fillColour,
54 const boost::optional<long> &shadowColour, const boost::optional<long> &fontColour);
55 void collectGeometry(unsigned id, unsigned level, bool noFill, bool noLine, bool noShow);
56 void collectMoveTo(unsigned id, unsigned level, double x, double y);
57 void collectLineTo(unsigned id, unsigned level, double x, double y);
58 void collectArcTo(unsigned id, unsigned level, double x2, double y2, double bow);
59 void collectNURBSTo(unsigned id, unsigned level, double x2, double y2, unsigned char xType, unsigned char yType, unsigned degree,
60 const std::vector<std::pair<double, double> > &ctrlPnts, const std::vector<double> &kntVec, const std::vector<double> &weights);
61 void collectNURBSTo(unsigned id, unsigned level, double x2, double y2, double knot, double knotPrev, double weight, double weightPrev, unsigned dataID);
62 void collectNURBSTo(unsigned id, unsigned level, double x2, double y2, double knot, double knotPrev, double weight, double weightPrev, const NURBSData &data);
63 void collectPolylineTo(unsigned id, unsigned level, double x, double y, unsigned char xType, unsigned char yType, const std::vector<std::pair<double, double> > &points);
64 void collectPolylineTo(unsigned id, unsigned level, double x, double y, unsigned dataID);
65 void collectPolylineTo(unsigned id, unsigned level, double x, double y, const PolylineData &data);
66 void collectShapeData(unsigned id, unsigned level, unsigned char xType, unsigned char yType, unsigned degree, double lastKnot,
67 std::vector<std::pair<double, double> > controlPoints, std::vector<double> knotVector, std::vector<double> weights);
68 void collectShapeData(unsigned id, unsigned level, unsigned char xType, unsigned char yType, std::vector<std::pair<double, double> > points);
69 void collectXFormData(unsigned level, const XForm &xform);
70 void collectTxtXForm(unsigned level, const XForm &txtxform);
71 void collectShapesOrder(unsigned id, unsigned level, const std::vector<unsigned> &shapeIds);
72 void collectForeignDataType(unsigned level, unsigned foreignType, unsigned foreignFormat, double offsetX, double offsetY, double width, double height);
73 void collectPageProps(unsigned id, unsigned level, double pageWidth, double pageHeight, double shadowOffsetX, double shadowOffsetY, double scale);
74 void collectPage(unsigned id, unsigned level, unsigned backgroundPageID, bool isBackgroundPage, const VSDName &pageName);
75 void collectShape(unsigned id, unsigned level, unsigned parent, unsigned masterPage, unsigned masterShape, unsigned lineStyle, unsigned fillStyle, unsigned textStyle);
76 void collectSplineStart(unsigned id, unsigned level, double x, double y, double secondKnot, double firstKnot, double lastKnot, unsigned degree);
77 void collectSplineKnot(unsigned id, unsigned level, double x, double y, double knot);
78 void collectSplineEnd();
79 void collectInfiniteLine(unsigned id, unsigned level, double x1, double y1, double x2, double y2);
80 void collectRelCubBezTo(unsigned id, unsigned level, double x, double y, double a, double b, double c, double d);
81 void collectRelEllipticalArcTo(unsigned id, unsigned level, double x, double y, double a, double b, double c, double d);
82 void collectRelLineTo(unsigned id, unsigned level, double x, double y);
83 void collectRelMoveTo(unsigned id, unsigned level, double x, double y);
84 void collectRelQuadBezTo(unsigned id, unsigned level, double x, double y, double a, double b);
85 void collectUnhandledChunk(unsigned id, unsigned level);
86
87 void collectText(unsigned level, const librevenge::RVNGBinaryData &textStream, TextFormat format);
88 void collectCharIX(unsigned id, unsigned level, unsigned charCount, const boost::optional<VSDName> &font,
89 const boost::optional<Colour> &fontColour, const boost::optional<double> &fontSize, const boost::optional<bool> &bold,
90 const boost::optional<bool> &italic, const boost::optional<bool> &underline, const boost::optional<bool> &doubleunderline,
91 const boost::optional<bool> &strikeout, const boost::optional<bool> &doublestrikeout, const boost::optional<bool> &allcaps,
92 const boost::optional<bool> &initcaps, const boost::optional<bool> &smallcaps, const boost::optional<bool> &superscript,
93 const boost::optional<bool> &subscript);
94 void collectDefaultCharStyle(unsigned charCount, const boost::optional<VSDName> &font, const boost::optional<Colour> &fontColour,
95 const boost::optional<double> &fontSize, const boost::optional<bool> &bold, const boost::optional<bool> &italic,
96 const boost::optional<bool> &underline, const boost::optional<bool> &doubleunderline, const boost::optional<bool> &strikeout,
97 const boost::optional<bool> &doublestrikeout, const boost::optional<bool> &allcaps, const boost::optional<bool> &initcaps,
98 const boost::optional<bool> &smallcaps, const boost::optional<bool> &superscript, const boost::optional<bool> &subscript);
99 void collectParaIX(unsigned id, unsigned level, unsigned charCount, const boost::optional<double> &indFirst,
100 const boost::optional<double> &indLeft, const boost::optional<double> &indRight, const boost::optional<double> &spLine,
101 const boost::optional<double> &spBefore, const boost::optional<double> &spAfter, const boost::optional<unsigned char> &align,
102 const boost::optional<unsigned char> &bullet, const boost::optional<VSDName> &bulletStr, const boost::optional<VSDName> &bulletFont,
103 const boost::optional<double> &bulletFontSize, const boost::optional<double> &textPosAfterBullet,
104 const boost::optional<unsigned> &flags);
105 void collectDefaultParaStyle(unsigned charCount, const boost::optional<double> &indFirst, const boost::optional<double> &indLeft,
106 const boost::optional<double> &indRight, const boost::optional<double> &spLine, const boost::optional<double> &spBefore,
107 const boost::optional<double> &spAfter, const boost::optional<unsigned char> &align,
108 const boost::optional<unsigned char> &bullet, const boost::optional<VSDName> &bulletStr,
109 const boost::optional<VSDName> &bulletFont, const boost::optional<double> &bulletFontSize,
110 const boost::optional<double> &textPosAfterBullet, const boost::optional<unsigned> &flags);
111 void collectTextBlock(unsigned level, const boost::optional<double> &leftMargin, const boost::optional<double> &rightMargin,
112 const boost::optional<double> &topMargin, const boost::optional<double> &bottomMargin,
113 const boost::optional<unsigned char> &verticalAlign, const boost::optional<bool> &isBgFilled,
114 const boost::optional<Colour> &bgColour, const boost::optional<double> &defaultTabStop,
115 const boost::optional<unsigned char> &textDirection);
116 void collectNameList(unsigned id, unsigned level)
117 {
118 collectUnhandledChunk(id, level);
119 }
120 void collectName(unsigned id, unsigned level, const librevenge::RVNGBinaryData &name, TextFormat format);
121 void collectPageSheet(unsigned id, unsigned level);
122 void collectMisc(unsigned level, const VSDMisc &misc);
123 void collectLayer(unsigned id, unsigned level, const VSDLayer &layer);
124 void collectLayerMem(unsigned level, const VSDName &layerMem);
125 void collectTabsDataList(unsigned level, const std::map<unsigned, VSDTabSet> &tabSets);
126
127 // Style collectors
128 void collectStyleSheet(unsigned id, unsigned level,unsigned parentLineStyle, unsigned parentFillStyle, unsigned parentTextStyle);
129 void collectLineStyle(unsigned level, const boost::optional<double> &strokeWidth, const boost::optional<Colour> &c, const boost::optional<unsigned char> &linePattern,
130 const boost::optional<unsigned char> &startMarker, const boost::optional<unsigned char> &endMarker,
131 const boost::optional<unsigned char> &lineCap, const boost::optional<double> &rounding);
132 void collectFillStyle(unsigned level, const boost::optional<Colour> &colourFG, const boost::optional<Colour> &colourBG,
133 const boost::optional<unsigned char> &fillPattern, const boost::optional<double> &fillFGTransparency,
134 const boost::optional<double> &fillBGTransparency, const boost::optional<unsigned char> &shadowPattern,
135 const boost::optional<Colour> &shfgc, const boost::optional<double> &shadowOffsetX, const boost::optional<double> &shadowOffsetY);
136 void collectFillStyle(unsigned level, const boost::optional<Colour> &colourFG, const boost::optional<Colour> &colourBG,
137 const boost::optional<unsigned char> &fillPattern, const boost::optional<double> &fillFGTransparency,
138 const boost::optional<double> &fillBGTransparency, const boost::optional<unsigned char> &shadowPattern,
139 const boost::optional<Colour> &shfgc);
140 void collectCharIXStyle(unsigned id, unsigned level, unsigned charCount, const boost::optional<VSDName> &font,
141 const boost::optional<Colour> &fontColour, const boost::optional<double> &fontSize, const boost::optional<bool> &bold,
142 const boost::optional<bool> &italic, const boost::optional<bool> &underline, const boost::optional<bool> &doubleunderline,
143 const boost::optional<bool> &strikeout, const boost::optional<bool> &doublestrikeout, const boost::optional<bool> &allcaps,
144 const boost::optional<bool> &initcaps, const boost::optional<bool> &smallcaps, const boost::optional<bool> &superscript,
145 const boost::optional<bool> &subscript);
146 void collectParaIXStyle(unsigned id, unsigned level, unsigned charCount, const boost::optional<double> &indFirst,
147 const boost::optional<double> &indLeft, const boost::optional<double> &indRight, const boost::optional<double> &spLine,
148 const boost::optional<double> &spBefore, const boost::optional<double> &spAfter, const boost::optional<unsigned char> &align,
149 const boost::optional<unsigned char> &bullet, const boost::optional<VSDName> &bulletStr,
150 const boost::optional<VSDName> &bulletFont, const boost::optional<double> &bulletFontSize,
151 const boost::optional<double> &textPosAfterBullet, const boost::optional<unsigned> &flags);
152 void collectTextBlockStyle(unsigned level, const boost::optional<double> &leftMargin, const boost::optional<double> &rightMargin,
153 const boost::optional<double> &topMargin, const boost::optional<double> &bottomMargin,
154 const boost::optional<unsigned char> &verticalAlign, const boost::optional<bool> &isBgFilled,
155 const boost::optional<Colour> &bgColour, const boost::optional<double> &defaultTabStop,
156 const boost::optional<unsigned char> &textDirection);
157 void collectStyleThemeReference(unsigned level, const boost::optional<long> &lineColour, const boost::optional<long> &fillColour,
158 const boost::optional<long> &shadowColour, const boost::optional<long> &fontColour);
159
160 // Field list
161 void collectFieldList(unsigned id, unsigned level);
162 void collectTextField(unsigned id, unsigned level, int nameId, int formatStringId);
163 void collectNumericField(unsigned id, unsigned level, unsigned short format, double number, int formatStringId);
164
165 virtual void collectMetaData(const librevenge::RVNGPropertyList &) { }
166
167 // Temporary hack
168 void startPage(unsigned pageID);
169 void endPage();
170 void endPages() {}
171
172 const VSDStyles &getStyleSheets() const
173 {
174 return m_styles;
175 }
176
177
178 private:
179 VSDStylesCollector(const VSDStylesCollector &);
180 VSDStylesCollector &operator=(const VSDStylesCollector &);
181
182 void _handleLevelChange(unsigned level);
183 void _flushShapeList();
184
185 unsigned m_currentLevel;
186 bool m_isShapeStarted;
187
188 double m_shadowOffsetX;
189 double m_shadowOffsetY;
190
191 unsigned m_currentShapeId;
192 std::map<unsigned, XForm> m_groupXForms;
193 std::map<unsigned, unsigned> m_groupMemberships;
194 std::vector<std::map<unsigned, XForm> > &m_groupXFormsSequence;
195 std::vector<std::map<unsigned, unsigned> > &m_groupMembershipsSequence;
196 std::list<unsigned> m_pageShapeOrder;
197 std::vector<std::list<unsigned> > &m_documentPageShapeOrders;
198 std::map<unsigned, std::list<unsigned> > m_groupShapeOrder;
199 std::list<unsigned> m_shapeList;
200
201 unsigned m_currentStyleSheet;
202 VSDStyles m_styles;
203
204 unsigned m_currentShapeLevel;
205 };
206
207 }
208
209 #endif /* VSDSTYLESCOLLECTOR_H */
210 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libvisio::VSDStyles
Definition: VSDStyles.h:499
libvisio::VSDStylesCollector::collectPage
void collectPage(unsigned id, unsigned level, unsigned backgroundPageID, bool isBackgroundPage, const VSDName &pageName)
Definition: VSDStylesCollector.cpp:231
libvisio::VSDStylesCollector::collectTextBlockStyle
void collectTextBlockStyle(unsigned level, const boost::optional< double > &leftMargin, const boost::optional< double > &rightMargin, const boost::optional< double > &topMargin, const boost::optional< double > &bottomMargin, const boost::optional< unsigned char > &verticalAlign, const boost::optional< bool > &isBgFilled, const boost::optional< Colour > &bgColour, const boost::optional< double > &defaultTabStop, const boost::optional< unsigned char > &textDirection)
Definition: VSDStylesCollector.cpp:391
libvisio::VSDStylesCollector::collectArcTo
void collectArcTo(unsigned id, unsigned level, double x2, double y2, double bow)
Definition: VSDStylesCollector.cpp:99
libvisio::VSDStylesCollector::m_currentStyleSheet
unsigned m_currentStyleSheet
Definition: VSDStylesCollector.h:201
libvisio::VSDStylesCollector::m_shapeList
std::list< unsigned > m_shapeList
Definition: VSDStylesCollector.h:199
libvisio::VSDStylesCollector::collectTextField
void collectTextField(unsigned id, unsigned level, int nameId, int formatStringId)
Definition: VSDStylesCollector.cpp:411
libvisio::VSDStylesCollector::collectLayer
void collectLayer(unsigned id, unsigned level, const VSDLayer &layer)
Definition: VSDStylesCollector.cpp:257
libvisio::VSDStylesCollector::m_groupXFormsSequence
std::vector< std::map< unsigned, XForm > > & m_groupXFormsSequence
Definition: VSDStylesCollector.h:194
libvisio::VSDStylesCollector::m_shadowOffsetX
double m_shadowOffsetX
Definition: VSDStylesCollector.h:188
libvisio::VSDStylesCollector::collectMetaData
virtual void collectMetaData(const librevenge::RVNGPropertyList &)
Definition: VSDStylesCollector.h:165
libvisio::VSDStylesCollector::collectName
void collectName(unsigned id, unsigned level, const librevenge::RVNGBinaryData &name, TextFormat format)
Definition: VSDStylesCollector.cpp:326
libvisio::NURBSData
Definition: VSDTypes.h:96
libvisio::VSDStylesCollector
Definition: VSDStylesCollector.h:24
libvisio_utils.h
libvisio::VSDStylesCollector::collectSplineEnd
void collectSplineEnd()
Definition: VSDStylesCollector.cpp:151
libvisio::VSDStylesCollector::m_shadowOffsetY
double m_shadowOffsetY
Definition: VSDStylesCollector.h:189
libvisio::VSDStylesCollector::collectTxtXForm
void collectTxtXForm(unsigned level, const XForm &txtxform)
Definition: VSDStylesCollector.cpp:205
libvisio::VSDStylesCollector::collectDefaultParaStyle
void collectDefaultParaStyle(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 char > &bullet, const boost::optional< VSDName > &bulletStr, const boost::optional< VSDName > &bulletFont, const boost::optional< double > &bulletFontSize, const boost::optional< double > &textPosAfterBullet, const boost::optional< unsigned > &flags)
Definition: VSDStylesCollector.cpp:284
libvisio::VSDStylesCollector::collectParaIXStyle
void collectParaIXStyle(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 char > &bullet, const boost::optional< VSDName > &bulletStr, const boost::optional< VSDName > &bulletFont, const boost::optional< double > &bulletFontSize, const boost::optional< double > &textPosAfterBullet, const boost::optional< unsigned > &flags)
Definition: VSDStylesCollector.cpp:379
libvisio::VSDStylesCollector::collectLine
void collectLine(unsigned level, const boost::optional< double > &strokeWidth, const boost::optional< Colour > &c, const boost::optional< unsigned char > &linePattern, const boost::optional< unsigned char > &startMarker, const boost::optional< unsigned char > &endMarker, const boost::optional< unsigned char > &lineCap, const boost::optional< double > &rounding)
Definition: VSDStylesCollector.cpp:55
libvisio::VSDStylesCollector::startPage
void startPage(unsigned pageID)
Definition: VSDStylesCollector.cpp:421
libvisio::VSDStylesCollector::m_currentShapeId
unsigned m_currentShapeId
Definition: VSDStylesCollector.h:191
libvisio::VSDStylesCollector::m_documentPageShapeOrders
std::vector< std::list< unsigned > > & m_documentPageShapeOrders
Definition: VSDStylesCollector.h:197
libvisio::VSDStylesCollector::collectFieldList
void collectFieldList(unsigned id, unsigned level)
Definition: VSDStylesCollector.cpp:406
libvisio::VSDStylesCollector::collectSplineKnot
void collectSplineKnot(unsigned id, unsigned level, double x, double y, double knot)
Definition: VSDStylesCollector.cpp:146
libvisio::VSDMisc
Definition: VSDTypes.h:206
libvisio::VSDStylesCollector::collectPolylineTo
void collectPolylineTo(unsigned id, unsigned level, double x, double y, unsigned char xType, unsigned char yType, const std::vector< std::pair< double, double > > &points)
Definition: VSDStylesCollector.cpp:123
libvisio::VSDStylesCollector::m_currentLevel
unsigned m_currentLevel
Definition: VSDStylesCollector.h:185
libvisio::VSDStylesCollector::collectXFormData
void collectXFormData(unsigned level, const XForm &xform)
Definition: VSDStylesCollector.cpp:198
libvisio::VSDStylesCollector::collectFillStyle
void collectFillStyle(unsigned level, const boost::optional< Colour > &colourFG, const boost::optional< Colour > &colourBG, const boost::optional< unsigned char > &fillPattern, const boost::optional< double > &fillFGTransparency, const boost::optional< double > &fillBGTransparency, const boost::optional< unsigned char > &shadowPattern, const boost::optional< Colour > &shfgc, const boost::optional< double > &shadowOffsetX, const boost::optional< double > &shadowOffsetY)
Definition: VSDStylesCollector.cpp:350
libvisio::VSDStylesCollector::m_groupXForms
std::map< unsigned, XForm > m_groupXForms
Definition: VSDStylesCollector.h:192
libvisio::VSDStylesCollector::collectStyleThemeReference
void collectStyleThemeReference(unsigned level, const boost::optional< long > &lineColour, const boost::optional< long > &fillColour, const boost::optional< long > &shadowColour, const boost::optional< long > &fontColour)
Definition: VSDStylesCollector.cpp:400
libvisio::VSDStylesCollector::m_groupMembershipsSequence
std::vector< std::map< unsigned, unsigned > > & m_groupMembershipsSequence
Definition: VSDStylesCollector.h:195
libvisio::VSDStylesCollector::collectInfiniteLine
void collectInfiniteLine(unsigned id, unsigned level, double x1, double y1, double x2, double y2)
Definition: VSDStylesCollector.cpp:155
libvisio::VSDStylesCollector::collectSplineStart
void collectSplineStart(unsigned id, unsigned level, double x, double y, double secondKnot, double firstKnot, double lastKnot, unsigned degree)
Definition: VSDStylesCollector.cpp:140
libvisio::VSDStylesCollector::collectMoveTo
void collectMoveTo(unsigned id, unsigned level, double x, double y)
Definition: VSDStylesCollector.cpp:89
libvisio::VSDStylesCollector::collectGeometry
void collectGeometry(unsigned id, unsigned level, bool noFill, bool noLine, bool noShow)
Definition: VSDStylesCollector.cpp:84
libvisio::VSDStylesCollector::m_groupMemberships
std::map< unsigned, unsigned > m_groupMemberships
Definition: VSDStylesCollector.h:193
libvisio::VSDStylesCollector::collectLayerMem
void collectLayerMem(unsigned level, const VSDName &layerMem)
Definition: VSDStylesCollector.cpp:252
libvisio::VSDStylesCollector::collectRelCubBezTo
void collectRelCubBezTo(unsigned id, unsigned level, double x, double y, double a, double b, double c, double d)
Definition: VSDStylesCollector.cpp:160
libvisio::VSDStylesCollector::collectForeignData
void collectForeignData(unsigned level, const librevenge::RVNGBinaryData &binaryData)
Definition: VSDStylesCollector.cpp:39
libvisio::VSDStylesCollector::collectTextBlock
void collectTextBlock(unsigned level, const boost::optional< double > &leftMargin, const boost::optional< double > &rightMargin, const boost::optional< double > &topMargin, const boost::optional< double > &bottomMargin, const boost::optional< unsigned char > &verticalAlign, const boost::optional< bool > &isBgFilled, const boost::optional< Colour > &bgColour, const boost::optional< double > &defaultTabStop, const boost::optional< unsigned char > &textDirection)
Definition: VSDStylesCollector.cpp:318
libvisio::VSDCollector
Definition: VSDCollector.h:20
libvisio::VSDStylesCollector::_handleLevelChange
void _handleLevelChange(unsigned level)
Definition: VSDStylesCollector.cpp:453
libvisio::VSDStylesCollector::collectCharIX
void collectCharIX(unsigned id, unsigned level, unsigned charCount, const boost::optional< VSDName > &font, const boost::optional< Colour > &fontColour, const boost::optional< double > &fontSize, const boost::optional< bool > &bold, const boost::optional< bool > &italic, const boost::optional< bool > &underline, const boost::optional< bool > &doubleunderline, const boost::optional< bool > &strikeout, const boost::optional< bool > &doublestrikeout, const boost::optional< bool > &allcaps, const boost::optional< bool > &initcaps, const boost::optional< bool > &smallcaps, const boost::optional< bool > &superscript, const boost::optional< bool > &subscript)
Definition: VSDStylesCollector.cpp:294
libvisio::VSDStylesCollector::collectPageProps
void collectPageProps(unsigned id, unsigned level, double pageWidth, double pageHeight, double shadowOffsetX, double shadowOffsetY, double scale)
Definition: VSDStylesCollector.cpp:225
libvisio::VSDStylesCollector::_flushShapeList
void _flushShapeList()
Definition: VSDStylesCollector.cpp:463
libvisio::VSDStylesCollector::collectForeignDataType
void collectForeignDataType(unsigned level, unsigned foreignType, unsigned foreignFormat, double offsetX, double offsetY, double width, double height)
Definition: VSDStylesCollector.cpp:219
libvisio::VSDStylesCollector::collectDefaultCharStyle
void collectDefaultCharStyle(unsigned charCount, const boost::optional< VSDName > &font, const boost::optional< Colour > &fontColour, const boost::optional< double > &fontSize, const boost::optional< bool > &bold, const boost::optional< bool > &italic, const boost::optional< bool > &underline, const boost::optional< bool > &doubleunderline, const boost::optional< bool > &strikeout, const boost::optional< bool > &doublestrikeout, const boost::optional< bool > &allcaps, const boost::optional< bool > &initcaps, const boost::optional< bool > &smallcaps, const boost::optional< bool > &superscript, const boost::optional< bool > &subscript)
Definition: VSDStylesCollector.cpp:309
libvisio::VSDStylesCollector::~VSDStylesCollector
virtual ~VSDStylesCollector()
Definition: VSDStylesCollector.h:32
libvisio::VSDStylesCollector::m_styles
VSDStyles m_styles
Definition: VSDStylesCollector.h:202
libvisio::VSDStylesCollector::collectMisc
void collectMisc(unsigned level, const VSDMisc &misc)
Definition: VSDStylesCollector.cpp:247
libvisio::VSDStylesCollector::collectEllipse
void collectEllipse(unsigned id, unsigned level, double cx, double cy, double xleft, double yleft, double xtop, double ytop)
Definition: VSDStylesCollector.cpp:49
VSDParser.h
libvisio::VSDStylesCollector::collectNumericField
void collectNumericField(unsigned id, unsigned level, unsigned short format, double number, int formatStringId)
Definition: VSDStylesCollector.cpp:416
libvisio::VSDStylesCollector::VSDStylesCollector
VSDStylesCollector(std::vector< std::map< unsigned, XForm > > &groupXFormsSequence, std::vector< std::map< unsigned, unsigned > > &groupMembershipsSequence, std::vector< std::list< unsigned > > &documentPageShapeOrders)
Definition: VSDStylesCollector.cpp:14
libvisio::VSDStylesCollector::collectLineTo
void collectLineTo(unsigned id, unsigned level, double x, double y)
Definition: VSDStylesCollector.cpp:94
libvisio::VSDStylesCollector::collectNameList
void collectNameList(unsigned id, unsigned level)
Definition: VSDStylesCollector.h:116
libvisio::VSDStylesCollector::collectStyleSheet
void collectStyleSheet(unsigned id, unsigned level, unsigned parentLineStyle, unsigned parentFillStyle, unsigned parentTextStyle)
Definition: VSDStylesCollector.cpp:337
libvisio::VSDStylesCollector::collectText
void collectText(unsigned level, const librevenge::RVNGBinaryData &textStream, TextFormat format)
Definition: VSDStylesCollector.cpp:267
libvisio::VSDStylesCollector::collectShapeData
void collectShapeData(unsigned id, unsigned level, unsigned char xType, unsigned char yType, unsigned degree, double lastKnot, std::vector< std::pair< double, double > > controlPoints, std::vector< double > knotVector, std::vector< double > weights)
Definition: VSDStylesCollector.cpp:185
libvisio::VSDLayer
Definition: VSDLayerList.h:21
libvisio::TextFormat
TextFormat
Definition: VSDTypes.h:158
libvisio::VSDStylesCollector::collectOLEData
void collectOLEData(unsigned id, unsigned level, const librevenge::RVNGBinaryData &oleData)
Definition: VSDStylesCollector.cpp:44
libvisio::VSDStylesCollector::m_groupShapeOrder
std::map< unsigned, std::list< unsigned > > m_groupShapeOrder
Definition: VSDStylesCollector.h:198
libvisio::VSDStylesCollector::collectFillAndShadow
void collectFillAndShadow(unsigned level, const boost::optional< Colour > &colourFG, const boost::optional< Colour > &colourBG, const boost::optional< unsigned char > &fillPattern, const boost::optional< double > &fillFGTransparency, const boost::optional< double > &fillBGTransparency, const boost::optional< unsigned char > &shadowPattern, const boost::optional< Colour > &shfgc, const boost::optional< double > &shadowOffsetX, const boost::optional< double > &shadowOffsetY)
Definition: VSDStylesCollector.cpp:63
libvisio::VSDStylesCollector::collectLineStyle
void collectLineStyle(unsigned level, const boost::optional< double > &strokeWidth, const boost::optional< Colour > &c, const boost::optional< unsigned char > &linePattern, const boost::optional< unsigned char > &startMarker, const boost::optional< unsigned char > &endMarker, const boost::optional< unsigned char > &lineCap, const boost::optional< double > &rounding)
Definition: VSDStylesCollector.cpp:342
libvisio::VSDStylesCollector::m_pageShapeOrder
std::list< unsigned > m_pageShapeOrder
Definition: VSDStylesCollector.h:196
libvisio::VSDStylesCollector::collectRelEllipticalArcTo
void collectRelEllipticalArcTo(unsigned id, unsigned level, double x, double y, double a, double b, double c, double d)
Definition: VSDStylesCollector.cpp:165
libvisio::VSDStylesCollector::collectThemeReference
void collectThemeReference(unsigned level, const boost::optional< long > &lineColour, const boost::optional< long > &fillColour, const boost::optional< long > &shadowColour, const boost::optional< long > &fontColour)
Definition: VSDStylesCollector.cpp:78
libvisio::VSDStylesCollector::collectTabsDataList
void collectTabsDataList(unsigned level, const std::map< unsigned, VSDTabSet > &tabSets)
Definition: VSDStylesCollector.cpp:304
VSDStyles.h
libvisio
Definition: libvisio_utils.h:73
libvisio::VSDStylesCollector::operator=
VSDStylesCollector & operator=(const VSDStylesCollector &)
libvisio::VSDStylesCollector::collectRelLineTo
void collectRelLineTo(unsigned id, unsigned level, double x, double y)
Definition: VSDStylesCollector.cpp:170
libvisio::VSDStylesCollector::collectRelQuadBezTo
void collectRelQuadBezTo(unsigned id, unsigned level, double x, double y, double a, double b)
Definition: VSDStylesCollector.cpp:180
libvisio::VSDStylesCollector::collectPageSheet
void collectPageSheet(unsigned id, unsigned level)
Definition: VSDStylesCollector.cpp:331
libvisio::VSDStylesCollector::collectParaIX
void collectParaIX(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 char > &bullet, const boost::optional< VSDName > &bulletStr, const boost::optional< VSDName > &bulletFont, const boost::optional< double > &bulletFontSize, const boost::optional< double > &textPosAfterBullet, const boost::optional< unsigned > &flags)
Definition: VSDStylesCollector.cpp:272
libvisio::VSDStylesCollector::collectCharIXStyle
void collectCharIXStyle(unsigned id, unsigned level, unsigned charCount, const boost::optional< VSDName > &font, const boost::optional< Colour > &fontColour, const boost::optional< double > &fontSize, const boost::optional< bool > &bold, const boost::optional< bool > &italic, const boost::optional< bool > &underline, const boost::optional< bool > &doubleunderline, const boost::optional< bool > &strikeout, const boost::optional< bool > &doublestrikeout, const boost::optional< bool > &allcaps, const boost::optional< bool > &initcaps, const boost::optional< bool > &smallcaps, const boost::optional< bool > &superscript, const boost::optional< bool > &subscript)
Definition: VSDStylesCollector.cpp:367
libvisio::PolylineData
Definition: VSDTypes.h:123
libvisio::VSDStylesCollector::collectNURBSTo
void collectNURBSTo(unsigned id, unsigned level, double x2, double y2, unsigned char xType, unsigned char yType, unsigned degree, const std::vector< std::pair< double, double > > &ctrlPnts, const std::vector< double > &kntVec, const std::vector< double > &weights)
Definition: VSDStylesCollector.cpp:104
libvisio::VSDStylesCollector::m_isShapeStarted
bool m_isShapeStarted
Definition: VSDStylesCollector.h:186
libvisio::VSDStylesCollector::collectUnhandledChunk
void collectUnhandledChunk(unsigned id, unsigned level)
Definition: VSDStylesCollector.cpp:262
libvisio::VSDStylesCollector::endPages
void endPages()
Definition: VSDStylesCollector.h:170
libvisio::XForm
Definition: VSDTypes.h:23
libvisio::VSDStylesCollector::endPage
void endPage()
Definition: VSDStylesCollector.cpp:429
libvisio::VSDStylesCollector::collectOLEList
void collectOLEList(unsigned id, unsigned level)
Definition: VSDStylesCollector.h:36
VSDCollector.h
libvisio::VSDName
Definition: VSDTypes.h:179
libvisio::VSDStylesCollector::m_currentShapeLevel
unsigned m_currentShapeLevel
Definition: VSDStylesCollector.h:204
libvisio::VSDStylesCollector::collectShapesOrder
void collectShapesOrder(unsigned id, unsigned level, const std::vector< unsigned > &shapeIds)
Definition: VSDStylesCollector.cpp:210
libvisio::VSDStylesCollector::getStyleSheets
const VSDStyles & getStyleSheets() const
Definition: VSDStylesCollector.h:172
libvisio::VSDStylesCollector::collectShape
void collectShape(unsigned id, unsigned level, unsigned parent, unsigned masterPage, unsigned masterShape, unsigned lineStyle, unsigned fillStyle, unsigned textStyle)
Definition: VSDStylesCollector.cpp:236
libvisio::VSDStylesCollector::collectEllipticalArcTo
void collectEllipticalArcTo(unsigned id, unsigned level, double x3, double y3, double x2, double y2, double angle, double ecc)
Definition: VSDStylesCollector.cpp:33
libvisio::VSDStylesCollector::collectRelMoveTo
void collectRelMoveTo(unsigned id, unsigned level, double x, double y)
Definition: VSDStylesCollector.cpp:175