10 #ifndef __VSDSTYLES_H__ 11 #define __VSDSTYLES_H__ 15 #include <boost/optional.hpp> 29 const boost::optional<unsigned char> &p,
const boost::optional<unsigned char> &sm,
30 const boost::optional<unsigned char> &em,
const boost::optional<unsigned char> &c,
31 const boost::optional<double> &r,
const boost::optional<long> &qlc,
32 const boost::optional<long> &qlm) :
56 boost::optional<unsigned char>
cap;
68 unsigned char em,
unsigned char c,
double r,
long qlc,
long qlm) :
86 if (!!style.qsLineColour && style.qsLineColour.get() >= 0)
106 fgColour(), bgColour(),
pattern(), fgTransparency(), bgTransparency(), shadowFgColour(),
107 shadowPattern(), shadowOffsetX(), shadowOffsetY(), qsFillColour(), qsShadowColour(),
110 const boost::optional<unsigned char> &p,
const boost::optional<double> &fga,
111 const boost::optional<double> &bga,
const boost::optional<Colour> &sfgc,
112 const boost::optional<unsigned char> &shp,
const boost::optional<double> &shX,
113 const boost::optional<double> &shY,
const boost::optional<long> &qsFc,
114 const boost::optional<long> &qsSc,
const boost::optional<long> &qsFm) :
115 fgColour(fgc), bgColour(bgc),
pattern(p), fgTransparency(fga), bgTransparency(bga),
116 shadowFgColour(sfgc), shadowPattern(shp), shadowOffsetX(shX), shadowOffsetY(shY),
117 qsFillColour(qsFc), qsShadowColour(qsSc), qsFillMatrix(qsFm) {}
154 : fgColour(), bgColour(0xff, 0xff, 0xff, 0),
pattern(0), fgTransparency(0),
155 bgTransparency(0), shadowFgColour(), shadowPattern(0), shadowOffsetX(0),
156 shadowOffsetY(0), qsFillColour(-1), qsShadowColour(-1), qsFillMatrix(-1) {}
158 double fga,
double bga,
const Colour &sfgc,
unsigned char shp,
159 double shX,
double shY,
long qsFc,
long qsSc,
long qsFm)
160 : fgColour(fgc), bgColour(bgc),
pattern(p), fgTransparency(fga), bgTransparency(bga),
161 shadowFgColour(sfgc), shadowPattern(shp), shadowOffsetX(shX), shadowOffsetY(shY),
162 qsFillColour(qsFc), qsShadowColour(qsSc), qsFillMatrix(qsFm) {}
180 if (!!style.qsFillColour && style.qsFillColour.get() >= 0)
181 ASSIGN_OPTIONAL(theme->getThemeColour(style.qsFillColour.get()), fgColour);
183 if (!!style.qsFillColour && style.qsFillColour.get() >= 0)
184 ASSIGN_OPTIONAL(theme->getThemeColour(style.qsFillColour.get()), bgColour);
186 if (!!style.qsShadowColour && style.qsShadowColour.get() >= 0)
187 ASSIGN_OPTIONAL(theme->getThemeColour(style.qsShadowColour.get()), shadowFgColour);
211 : charCount(0), font(),
colour(), size(), bold(), italic(),
212 underline(), doubleunderline(), strikeout(), doublestrikeout(),
213 allcaps(), initcaps(), smallcaps(), superscript(), subscript(),
216 const boost::optional<Colour> &c,
const boost::optional<double> &s,
217 const boost::optional<bool> &b,
const boost::optional<bool> &i,
218 const boost::optional<bool> &u,
const boost::optional<bool> &du,
219 const boost::optional<bool> &so,
const boost::optional<bool> &dso,
220 const boost::optional<bool> &ac,
const boost::optional<bool> &ic,
221 const boost::optional<bool> &sc,
const boost::optional<bool> &super,
222 const boost::optional<bool> &sub,
const boost::optional<double> &sw) :
223 charCount(cc), font(ft),
colour(c), size(s), bold(b), italic(i),
224 underline(u), doubleunderline(du), strikeout(so), doublestrikeout(dso),
225 allcaps(ac), initcaps(ic), smallcaps(sc), superscript(super),
226 subscript(sub), scaleWidth(sw) {}
270 : charCount(0), font(),
colour(), size(12.0/72.0), bold(false),
271 italic(false), underline(false), doubleunderline(false),
272 strikeout(false), doublestrikeout(false), allcaps(false),
273 initcaps(false), smallcaps(false), superscript(false),
274 subscript(false), scaleWidth(1.0) {}
276 bool b,
bool i,
bool u,
bool du,
bool so,
bool dso,
bool ac,
277 bool ic,
bool sc,
bool super,
bool sub,
double sw) :
278 charCount(cc), font(ft),
colour(c), size(s), bold(b), italic(i),
279 underline(u), doubleunderline(du), strikeout(so), doublestrikeout(dso),
280 allcaps(ac), initcaps(ic), smallcaps(sc), superscript(super),
281 subscript(sub), scaleWidth(sw) {}
325 charCount(0), indFirst(), indLeft(), indRight(), spLine(), spBefore(), spAfter(), align(), bullet(),
326 bulletStr(), bulletFont(), bulletFontSize(0.0), textPosAfterBullet(0.0), flags() {}
328 const boost::optional<double> &ir,
const boost::optional<double> &sl,
329 const boost::optional<double> &sb,
const boost::optional<double> &sa,
330 const boost::optional<unsigned char> &a,
const boost::optional<unsigned char> &b,
331 const boost::optional<VSDName> &bs,
const boost::optional<VSDName> &bf,
332 const boost::optional<double> bfs,
const boost::optional<double> &tpab,
333 const boost::optional<unsigned> &f) :
334 charCount(cc), indFirst(ifst), indLeft(il), indRight(ir), spLine(sl), spBefore(sb), spAfter(sa),
335 align(a), bullet(b), bulletStr(bs), bulletFont(bf), bulletFontSize(bfs),
336 textPosAfterBullet(tpab), flags(f) {}
364 boost::optional<unsigned char>
align;
376 charCount(0), indFirst(0.0), indLeft(0.0), indRight(0.0), spLine(-1.2), spBefore(0.0), spAfter(0.0), align(1),
377 bullet(0), bulletStr(), bulletFont(), bulletFontSize(0.0), textPosAfterBullet(0.0), flags(0) {}
378 VSDParaStyle(
unsigned cc,
double ifst,
double il,
double ir,
double sl,
double sb,
379 double sa,
unsigned char a,
unsigned b,
const VSDName &bs,
380 const VSDName &bf,
double bfs,
double tpab,
unsigned f) :
381 charCount(cc), indFirst(ifst), indLeft(il), indRight(ir), spLine(sl), spBefore(sb), spAfter(sa), align(a),
382 bullet(b), bulletStr(bs), bulletFont(bf), bulletFontSize(bfs), textPosAfterBullet(tpab), flags(f) {}
422 leftMargin(), rightMargin(), topMargin(), bottomMargin(), verticalAlign(), isTextBkgndFilled(),
423 textBkgndColour(), defaultTabStop(), textDirection() {}
425 const boost::optional<double> &tm,
const boost::optional<double> &bm,
426 const boost::optional<unsigned char> &va,
const boost::optional<bool> &isBgFilled,
427 const boost::optional<Colour> &bgClr,
const boost::optional<double> &defTab,
428 const boost::optional<unsigned char> &td) :
429 leftMargin(lm), rightMargin(rm), topMargin(tm), bottomMargin(bm), verticalAlign(va),
430 isTextBkgndFilled(isBgFilled), textBkgndColour(bgClr), defaultTabStop(defTab), textDirection(td) {}
461 leftMargin(0.0), rightMargin(0.0), topMargin(0.0), bottomMargin(0.0), verticalAlign(1),
462 isTextBkgndFilled(false), textBkgndColour(0xff,0xff,0xff,0), defaultTabStop(0.5), textDirection(0) {}
464 bool isBgFilled,
Colour bgClr,
double defTab,
unsigned char td) :
465 leftMargin(lm), rightMargin(rm), topMargin(tm), bottomMargin(bm), verticalAlign(va),
466 isTextBkgndFilled(isBgFilled), textBkgndColour(bgClr), defaultTabStop(defTab), textDirection(td) {}
507 void addLineStyleMaster(
unsigned lineStyleIndex,
unsigned lineStyleMaster);
508 void addFillStyleMaster(
unsigned fillStyleIndex,
unsigned fillStyleMaster);
509 void addTextStyleMaster(
unsigned textStyleIndex,
unsigned textStyleMaster);
532 #endif // __VSDSTYLES_H__ boost::optional< VSDName > bulletFont
Definition: VSDStyles.h:367
VSDOptionalTextBlockStyle(const boost::optional< double > &lm, const boost::optional< double > &rm, const boost::optional< double > &tm, const boost::optional< double > &bm, const boost::optional< unsigned char > &va, const boost::optional< bool > &isBgFilled, const boost::optional< Colour > &bgClr, const boost::optional< double > &defTab, const boost::optional< unsigned char > &td)
Definition: VSDStyles.h:424
Definition: VSDStyles.h:494
boost::optional< unsigned char > textDirection
Definition: VSDStyles.h:455
long qsShadowColour
Definition: VSDStyles.h:204
boost::optional< double > shadowOffsetX
Definition: VSDStyles.h:144
Colour colour
Definition: VSDStyles.h:306
VSDTextBlockStyle(double lm, double rm, double tm, double bm, unsigned char va, bool isBgFilled, Colour bgClr, double defTab, unsigned char td)
Definition: VSDStyles.h:463
double fgTransparency
Definition: VSDStyles.h:197
std::map< unsigned, unsigned > m_textStyleMasters
Definition: VSDStyles.h:526
VSDParaStyle()
Definition: VSDStyles.h:375
Definition: VSDStyles.h:103
VSDOptionalCharStyle(unsigned cc, const boost::optional< VSDName > &ft, const boost::optional< Colour > &c, const boost::optional< double > &s, const boost::optional< bool > &b, const boost::optional< bool > &i, const boost::optional< bool > &u, const boost::optional< bool > &du, const boost::optional< bool > &so, const boost::optional< bool > &dso, const boost::optional< bool > &ac, const boost::optional< bool > &ic, const boost::optional< bool > &sc, const boost::optional< bool > &super, const boost::optional< bool > &sub, const boost::optional< double > &sw)
Definition: VSDStyles.h:215
double leftMargin
Definition: VSDStyles.h:483
boost::optional< double > defaultTabStop
Definition: VSDStyles.h:454
VSDOptionalParaStyle(unsigned cc, const boost::optional< double > &ifst, const boost::optional< double > &il, const boost::optional< double > &ir, const boost::optional< double > &sl, const boost::optional< double > &sb, const boost::optional< double > &sa, const boost::optional< unsigned char > &a, const boost::optional< unsigned char > &b, const boost::optional< VSDName > &bs, const boost::optional< VSDName > &bf, const boost::optional< double > bfs, const boost::optional< double > &tpab, const boost::optional< unsigned > &f)
Definition: VSDStyles.h:327
boost::optional< VSDName > font
Definition: VSDStyles.h:250
bool subscript
Definition: VSDStyles.h:318
~VSDTextBlockStyle()
Definition: VSDStyles.h:468
VSDOptionalFillStyle(const boost::optional< Colour > &fgc, const boost::optional< Colour > &bgc, const boost::optional< unsigned char > &p, const boost::optional< double > &fga, const boost::optional< double > &bga, const boost::optional< Colour > &sfgc, const boost::optional< unsigned char > &shp, const boost::optional< double > &shX, const boost::optional< double > &shY, const boost::optional< long > &qsFc, const boost::optional< long > &qsSc, const boost::optional< long > &qsFm)
Definition: VSDStyles.h:109
bool initcaps
Definition: VSDStyles.h:315
double spLine
Definition: VSDStyles.h:407
Definition: VSDStyles.h:62
boost::optional< unsigned char > bullet
Definition: VSDStyles.h:365
std::map< unsigned, VSDOptionalLineStyle > m_lineStyles
Definition: VSDStyles.h:519
~VSDFillStyle()
Definition: VSDStyles.h:164
VSDFillStyle(const Colour &fgc, const Colour &bgc, unsigned char p, double fga, double bga, const Colour &sfgc, unsigned char shp, double shX, double shY, long qsFc, long qsSc, long qsFm)
Definition: VSDStyles.h:157
boost::optional< double > indFirst
Definition: VSDStyles.h:358
unsigned char cap
Definition: VSDStyles.h:97
Definition: VSDTypes.h:70
~VSDOptionalLineStyle()
Definition: VSDStyles.h:36
boost::optional< bool > underline
Definition: VSDStyles.h:255
double indRight
Definition: VSDStyles.h:406
unsigned char align
Definition: VSDStyles.h:410
unsigned char pattern
Definition: VSDStyles.h:196
boost::optional< bool > strikeout
Definition: VSDStyles.h:257
Definition: VSDStyles.h:458
double shadowOffsetX
Definition: VSDStyles.h:201
boost::optional< double > rightMargin
Definition: VSDStyles.h:448
Definition: VSDStyles.h:419
boost::optional< bool > subscript
Definition: VSDStyles.h:263
boost::optional< double > size
Definition: VSDStyles.h:252
double textPosAfterBullet
Definition: VSDStyles.h:415
boost::optional< unsigned char > cap
Definition: VSDStyles.h:56
bool doublestrikeout
Definition: VSDStyles.h:313
boost::optional< double > scaleWidth
Definition: VSDStyles.h:264
~VSDCharStyle()
Definition: VSDStyles.h:283
VSDOptionalLineStyle()
Definition: VSDStyles.h:25
bool doubleunderline
Definition: VSDStyles.h:311
VSDName font
Definition: VSDStyles.h:305
unsigned char verticalAlign
Definition: VSDStyles.h:487
unsigned charCount
Definition: VSDStyles.h:249
std::map< unsigned, unsigned > m_lineStyleMasters
Definition: VSDStyles.h:524
double bulletFontSize
Definition: VSDStyles.h:414
boost::optional< long > qsLineMatrix
Definition: VSDStyles.h:59
Definition: VSDStyles.h:23
unsigned charCount
Definition: VSDStyles.h:357
boost::optional< unsigned char > startMarker
Definition: VSDStyles.h:54
boost::optional< bool > allcaps
Definition: VSDStyles.h:259
VSDParaStyle(unsigned cc, double ifst, double il, double ir, double sl, double sb, double sa, unsigned char a, unsigned b, const VSDName &bs, const VSDName &bf, double bfs, double tpab, unsigned f)
Definition: VSDStyles.h:378
boost::optional< bool > doubleunderline
Definition: VSDStyles.h:256
unsigned char textDirection
Definition: VSDStyles.h:491
bool allcaps
Definition: VSDStyles.h:314
unsigned char endMarker
Definition: VSDStyles.h:96
double spBefore
Definition: VSDStyles.h:408
bool bold
Definition: VSDStyles.h:308
double scaleWidth
Definition: VSDStyles.h:319
boost::optional< double > indRight
Definition: VSDStyles.h:360
std::map< unsigned, unsigned > m_fillStyleMasters
Definition: VSDStyles.h:525
bool superscript
Definition: VSDStyles.h:317
std::map< unsigned, VSDOptionalParaStyle > m_paraStyles
Definition: VSDStyles.h:523
boost::optional< double > leftMargin
Definition: VSDStyles.h:447
Definition: VSDStyles.h:322
unsigned char bullet
Definition: VSDStyles.h:411
double indFirst
Definition: VSDStyles.h:404
Definition: VSDStyles.h:267
VSDOptionalParaStyle()
Definition: VSDStyles.h:324
VSDOptionalTextBlockStyle()
Definition: VSDStyles.h:421
boost::optional< unsigned char > pattern
Definition: VSDStyles.h:139
boost::optional< double > bgTransparency
Definition: VSDStyles.h:141
unsigned charCount
Definition: VSDStyles.h:403
boost::optional< Colour > colour
Definition: VSDStyles.h:52
boost::optional< bool > italic
Definition: VSDStyles.h:254
~VSDLineStyle()
Definition: VSDStyles.h:72
VSDCharStyle(unsigned cc, const VSDName &ft, const Colour &c, double s, bool b, bool i, bool u, bool du, bool so, bool dso, bool ac, bool ic, bool sc, bool super, bool sub, double sw)
Definition: VSDStyles.h:275
boost::optional< double > bulletFontSize
Definition: VSDStyles.h:368
boost::optional< double > indLeft
Definition: VSDStyles.h:359
Colour shadowFgColour
Definition: VSDStyles.h:199
boost::optional< bool > bold
Definition: VSDStyles.h:253
boost::optional< double > spAfter
Definition: VSDStyles.h:363
Colour textBkgndColour
Definition: VSDStyles.h:489
VSDLineStyle()
Definition: VSDStyles.h:64
VSDFillStyle()
Definition: VSDStyles.h:153
boost::optional< unsigned char > verticalAlign
Definition: VSDStyles.h:451
boost::optional< long > qsShadowColour
Definition: VSDStyles.h:147
boost::optional< bool > isTextBkgndFilled
Definition: VSDStyles.h:452
boost::optional< bool > doublestrikeout
Definition: VSDStyles.h:258
boost::optional< double > spBefore
Definition: VSDStyles.h:362
bool italic
Definition: VSDStyles.h:309
unsigned char startMarker
Definition: VSDStyles.h:95
boost::optional< double > topMargin
Definition: VSDStyles.h:449
long qsLineMatrix
Definition: VSDStyles.h:100
unsigned flags
Definition: VSDStyles.h:416
boost::optional< long > qsFillColour
Definition: VSDStyles.h:146
double rounding
Definition: VSDStyles.h:98
boost::optional< double > width
Definition: VSDStyles.h:51
bool smallcaps
Definition: VSDStyles.h:316
VSDTextBlockStyle()
Definition: VSDStyles.h:460
boost::optional< double > spLine
Definition: VSDStyles.h:361
unsigned char shadowPattern
Definition: VSDStyles.h:200
boost::optional< bool > smallcaps
Definition: VSDStyles.h:261
double bottomMargin
Definition: VSDStyles.h:486
Definition: VSDStyles.h:151
Colour fgColour
Definition: VSDStyles.h:194
~VSDOptionalParaStyle()
Definition: VSDStyles.h:338
Definition: VSDStyles.h:208
boost::optional< Colour > textBkgndColour
Definition: VSDStyles.h:453
VSDOptionalLineStyle & operator=(const VSDOptionalLineStyle &style)=default
boost::optional< unsigned char > align
Definition: VSDStyles.h:364
boost::optional< double > rounding
Definition: VSDStyles.h:57
Definition: libvisio_utils.h:48
boost::optional< double > shadowOffsetY
Definition: VSDStyles.h:145
double size
Definition: VSDStyles.h:307
Definition: VSDStyles.h:373
std::map< unsigned, VSDOptionalCharStyle > m_charStyles
Definition: VSDStyles.h:522
~VSDOptionalFillStyle()
Definition: VSDStyles.h:119
~VSDOptionalCharStyle()
Definition: VSDStyles.h:228
boost::optional< bool > initcaps
Definition: VSDStyles.h:260
Colour colour
Definition: VSDStyles.h:93
double width
Definition: VSDStyles.h:92
boost::optional< long > qsLineColour
Definition: VSDStyles.h:58
boost::optional< Colour > fgColour
Definition: VSDStyles.h:137
#define ASSIGN_OPTIONAL(t, u)
Definition: VSDTypes.h:17
long qsFillColour
Definition: VSDStyles.h:203
bool underline
Definition: VSDStyles.h:310
boost::optional< unsigned > flags
Definition: VSDStyles.h:370
bool strikeout
Definition: VSDStyles.h:312
std::map< unsigned, VSDOptionalFillStyle > m_fillStyles
Definition: VSDStyles.h:520
boost::optional< Colour > shadowFgColour
Definition: VSDStyles.h:142
double indLeft
Definition: VSDStyles.h:405
double defaultTabStop
Definition: VSDStyles.h:490
boost::optional< VSDName > bulletStr
Definition: VSDStyles.h:366
boost::optional< Colour > colour
Definition: VSDStyles.h:251
~VSDOptionalTextBlockStyle()
Definition: VSDStyles.h:432
VSDName bulletFont
Definition: VSDStyles.h:413
boost::optional< unsigned char > shadowPattern
Definition: VSDStyles.h:143
unsigned charCount
Definition: VSDStyles.h:304
double shadowOffsetY
Definition: VSDStyles.h:202
boost::optional< double > bottomMargin
Definition: VSDStyles.h:450
Definition: VSDXTheme.h:76
Definition: VSDTypes.h:170
boost::optional< Colour > bgColour
Definition: VSDStyles.h:138
VSDOptionalLineStyle(const boost::optional< double > &w, const boost::optional< Colour > &col, const boost::optional< unsigned char > &p, const boost::optional< unsigned char > &sm, const boost::optional< unsigned char > &em, const boost::optional< unsigned char > &c, const boost::optional< double > &r, const boost::optional< long > &qlc, const boost::optional< long > &qlm)
Definition: VSDStyles.h:28
boost::optional< double > fgTransparency
Definition: VSDStyles.h:140
Colour bgColour
Definition: VSDStyles.h:195
VSDOptionalFillStyle()
Definition: VSDStyles.h:105
unsigned char pattern
Definition: VSDStyles.h:94
VSDCharStyle()
Definition: VSDStyles.h:269
~VSDParaStyle()
Definition: VSDStyles.h:384
double rightMargin
Definition: VSDStyles.h:484
double spAfter
Definition: VSDStyles.h:409
long qsFillMatrix
Definition: VSDStyles.h:205
boost::optional< double > textPosAfterBullet
Definition: VSDStyles.h:369
double topMargin
Definition: VSDStyles.h:485
long qsLineColour
Definition: VSDStyles.h:99
double bgTransparency
Definition: VSDStyles.h:198
std::map< unsigned, VSDOptionalTextBlockStyle > m_textBlockStyles
Definition: VSDStyles.h:521
boost::optional< unsigned char > pattern
Definition: VSDStyles.h:53
VSDLineStyle(double w, Colour col, unsigned char p, unsigned char sm, unsigned char em, unsigned char c, double r, long qlc, long qlm)
Definition: VSDStyles.h:67
VSDName bulletStr
Definition: VSDStyles.h:412
bool isTextBkgndFilled
Definition: VSDStyles.h:488
VSDOptionalCharStyle()
Definition: VSDStyles.h:210
boost::optional< unsigned char > endMarker
Definition: VSDStyles.h:55
boost::optional< bool > superscript
Definition: VSDStyles.h:262
boost::optional< long > qsFillMatrix
Definition: VSDStyles.h:148