1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
|
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
enum SvxCellHorJustifyEnum
{
SVX_HOR_JUSTIFY_STANDARD,
SVX_HOR_JUSTIFY_LEFT,
SVX_HOR_JUSTIFY_CENTER,
SVX_HOR_JUSTIFY_RIGHT,
SVX_HOR_JUSTIFY_BLOCK,
SVX_HOR_JUSTIFY_REPEAT
};
enum SvxCellVerJustifyEnum
{
SVX_VER_JUSTIFY_STANDARD,
SVX_VER_JUSTIFY_TOP,
SVX_VER_JUSTIFY_CENTER,
SVX_VER_JUSTIFY_BOTTOM
};
enum SvxCellOrientationEnum
{
SVX_ORIENTATION_STANDARD,
SVX_ORIENTATION_TOPBOTTOM,
SVX_ORIENTATION_BOTTOMTOP,
SVX_ORIENTATION_STACKED
};
enum SvxChooseControlEnum
{
SVX_SNAP_PUSHBUTTON,
SVX_SNAP_CHECKBOX,
SVX_SNAP_RADIOBUTTON,
SVX_SNAP_SPINBUTTON,
SVX_SNAP_FIXEDTEXT,
SVX_SNAP_GROUPBOX,
SVX_SNAP_LISTBOX,
SVX_SNAP_COMBOBOX,
SVX_SNAP_EDIT,
SVX_SNAP_HSCROLLBAR,
SVX_SNAP_VSCROLLBAR,
SVX_SNAP_PREVIEW,
SVX_SNAP_SELECT,
SVX_SNAP_URLBUTTON,
SVX_SNAP_IMAGECONTROL,
SVX_SNAP_PROGRESSBAR,
SVX_SNAP_HFIXEDLINE,
SVX_SNAP_VFIXEDLINE,
SVX_SNAP_DATEFIELD,
SVX_SNAP_TIMEFIELD,
SVX_SNAP_NUMERICFIELD,
SVX_SNAP_CURRENCYFIELD,
SVX_SNAP_FORMATTEDFIELD,
SVX_SNAP_PATTERNFIELD,
SVX_SNAP_FILECONTROL,
SVX_SNAP_TREECONTROL
};
item SvxChooseControlEnum SvxChooseControlItem;
enum SvxDrawAlignEnum
{
SVX_OBJECT_ALIGN_LEFT,
SVX_OBJECT_ALIGN_CENTER,
SVX_OBJECT_ALIGN_RIGHT,
SVX_OBJECT_ALIGN_UP,
SVX_OBJECT_ALIGN_MIDDLE,
SVX_OBJECT_ALIGN_DOWN
};
enum SvxAdjust
{
SVX_ADJUST_LEFT,
SVX_ADJUST_RIGHT,
SVX_ADJUST_BLOCK,
SVX_ADJUST_CENTER,
SVX_ADJUST_BLOCKLINE,
SVX_ADJUST_END
};
struct SvxAdjustStruct
{
SvxAdjust ParagraphAdjustment MID_PARA_ADJUST;
SvxAdjust LastLineAdjustment MID_LAST_LINE_ADJUST;
BOOL ExpandSingleWord MID_EXPAND_SINGLE;
};
item SvxAdjustStruct SvxAdjustItem;
enum SvxCaseMap
{
SVX_CASEMAP_NOT_MAPPED,
SVX_CASEMAP_VERSALIEN,
SVX_CASEMAP_GEMEINE,
SVX_CASEMAP_TITEL,
SVX_CASEMAP_KAPITAELCHEN,
SVX_CASEMAP_END
};
item SvxCaseMap SvxCaseMapItem;
enum CharSet
{
CHARSET_DONTKNOW,
CHARSET_ANSI,
CHARSET_MAC,
CHARSET_IBMPC_437,
CHARSET_IBMPC_850,
CHARSET_IBMPC_860,
CHARSET_IBMPC_861,
CHARSET_IBMPC_863,
CHARSET_IBMPC_865,
CHARSET_SYSTEM,
CHARSET_SYMBOL
};
enum FontFamily
{
FAMILY_DONTKNOW,
FAMILY_DECORATIVE,
FAMILY_MODERN,
FAMILY_ROMAN,
FAMILY_SCRIPT,
FAMILY_SWISS,
FAMILY_SYSTEM
};
enum FontPitch
{
PITCH_DONTKNOW,
PITCH_FIXED,
PITCH_VARIABLE
};
struct SvxFont
{
String StyleName MID_FONT_STYLE_NAME;
FontPitch Pitch MID_FONT_PITCH; // INT16
CharSet CharSet MID_FONT_CHAR_SET; // INT16
FontFamily Family MID_FONT_FAMILY; // INT16
String FamilyName MID_FONT_FAMILY_NAME;
};
item SvxFont SvxFontItem;
enum FontWeight
{
WEIGHT_DONTKNOW,
WEIGHT_THIN,
WEIGHT_ULTRALIGHT,
WEIGHT_LIGHT,
WEIGHT_SEMILIGHT,
WEIGHT_NORMAL,
WEIGHT_MEDIUM,
WEIGHT_SEMIBOLD,
WEIGHT_BOLD,
WEIGHT_ULTRABOLD,
WEIGHT_BLACK
};
item FontWeight SvxWeightItem;
enum FontUnderline
{
UNDERLINE_NONE,
UNDERLINE_SINGLE,
UNDERLINE_DOUBLE,
UNDERLINE_DOTTED
};
enum FontStrikeout
{
STRIKEOUT_NONE,
STRIKEOUT_SINGLE,
STRIKEOUT_DOUBLE
};
enum FontItalic
{
ITALIC_NONE,
ITALIC_OBLIQUE,
ITALIC_NORMAL
};
item FontItalic SvxPostureItem;
enum SvxShadowLocation
{
SVX_SHADOW_NONE,
SVX_SHADOW_TOPLEFT,
SVX_SHADOW_TOPRIGHT,
SVX_SHADOW_BOTTOMLEFT,
SVX_SHADOW_BOTTOMRIGHT,
SVX_SHADOW_END
};
item SvxShadowLocation SvxShadowLocationItem;
item INT16 SvxCharScaleWidthItem;
item INT16 SvxParaVertAlignItem;
item INT16 SvxCharReliefItem;
item BOOL SvxBlinkItem;
item BOOL SvxAutoKernItem;
item INT32 SvxColorItem;
item INT32 SvxBackgroundColorItem;
item BOOL SvxContourItem;
item INT16 SvxFormatBreakItem; // enum
item BOOL SvxFormatKeepItem;
item BOOL SvxFormatSplitItem;
item INT16 SvxKerningItem;
item INT16 SvxLanguageItem;
item BYTE SvxOrphansItem;
item BYTE SvxPaperBinItem;
item String SvxPostItAuthorItem;
item String SvxPostItDateItem;
item String SvxPostItTextItem;
item INT32 SvxPostItIdItem;
item FontItalic SvxPostureItem; // enum
item BOOL SvxPrintItem;
item UINT16 SvxPropSizeItem; // derived from UInt16Item
item BOOL SvxShadowedItem;
item SvxDrawAlignEnum SvxDrawAlignItem;
item BYTE SvxWidowsItem;
item BOOL SvxWordLineModeItem;
item SvxCellHorJustifyEnum SvxHorJustifyItem;
item SvxCellVerJustifyEnum SvxVerJustifyItem;
item SvxCellOrientationEnum SvxOrientationItem;
item BOOL SdrOnOffItem;
item INT16 SdrTextFitToSizeTypeItem; // enum
item String SfxStringListItem; // serialized into one concatenated string
item double SvxDoubleItem;
item String OfaRefItem;
item String SvxDashListItem;
item String SvxLineEndListItem;
item String SvxColorListItem;
item String SvxGradientListItem;
item String SvxHatchListItem;
item String SvxBitmapListItem;
item String SvxPatternListItem;
item String SfxLockBytesItem;
item String SvxFontListItem;
item String avmedia_MediaItem;
item INT32 XColorItem;
item INT16 SdrPercentItem;
item INT32 SdrMetricItem;
item BYTE SfxGlobalNameItem;
struct SvxCrossedOut
{
FontStrikeout Kind MID_CROSS_OUT;
};
item SvxCrossedOut SvxCrossedOutItem;
struct SvxTextLine
{
FontUnderline LineStyle MID_TL_STYLE;
BOOL HasColor MID_TL_HASCOLOR;
INT32 Color MID_TL_COLOR;
};
item SvxTextLine SvxTextLineItem;
struct SvxBrush
{
BOOL Transparent MID_GRAPHIC_TRANSPARENT;
INT32 BackColor MID_BACK_COLOR;
String URL MID_GRAPHIC_URL;
String Filtername MID_GRAPHIC_FILTER;
INT16 Position MID_GRAPHIC_POSITION;
};
item SvxBrush SvxBrushItem;
struct SvxEscapement
{
INT16 Escapement MID_ESC;
BYTE Height MID_ESC_HEIGHT;
BOOL Auto MID_AUTO_ESC;
};
item SvxEscapement SvxEscapementItem;
struct SvxFontHeight
{
float Height MID_FONTHEIGHT; // may be converted to INT32
INT16 Prop MID_FONTHEIGHT_PROP;
float Diff MID_FONTHEIGHT_DIFF; // may be converted to INT32
};
item SvxFontHeight SvxFontHeightItem;
struct SvxHyphenZone
{
BOOL Hyphen MID_IS_HYPHEN;
INT16 MinLead MID_HYPHEN_MIN_LEAD;
INT16 MinTrail MID_HYPHEN_MIN_TRAIL;
INT16 MaxHyphens MID_HYPHEN_MAX_HYPHENS;
};
item SvxHyphenZone SvxHyphenZoneItem;
struct SvxLine
{
INT32 LineFGColor MID_FG_COLOR;
INT32 LineOutWidth MID_OUTER_WIDTH;
INT32 LineInWidth MID_INNER_WIDTH;
INT32 LineDistance MID_DISTANCE;
};
item SvxLine SvxLineItem;
struct SvxLRSpace
{
INT32 LeftMargin MID_L_MARGIN; // % or direct
INT32 TextLeftMargin MID_TXT_LMARGIN;
INT32 RightMargin MID_R_MARGIN; // % or direct
INT16 LeftRelMargin MID_L_REL_MARGIN;
INT16 RightRelMargin MID_R_REL_MARGIN;
INT32 FirstLineIndent MID_FIRST_LINE_INDENT; // % or direct
INT32 FirstLineRelIdent MID_FIRST_LINE_REL_INDENT;
BOOL AutoFirst MID_FIRST_AUTO;
};
item SvxLRSpace SvxLRSpaceItem;
struct SvxLineSpacing
{
INT16 Mode MID_LINESPACE;
INT16 Height MID_HEIGHT;
};
item SvxLineSpacing SvxLineSpacingItem;
struct SvxPage
{
BOOL Landscape MID_PAGE_ORIENTATION;
INT16 Layout MID_PAGE_LAYOUT;
INT16 NumType MID_PAGE_NUMTYPE;
};
item SvxPage SvxPageItem;
struct SvxPagePosSize
{
INT32 XPos MID_X; // ???
INT32 YPos MID_Y; // ???
INT32 Width MID_WIDTH; // ???
INT32 Height MID_HEIGHT; // ???
};
item SvxPagePosSize SvxPagePosSizeItem;
struct SvxShadow
{
SvxShadowLocation Location MID_LOCATION;
INT16 Width MID_WIDTH;
BOOL IsTransparent MID_TRANSPARENT;
INT32 Color MID_BG_COLOR;
};
item SvxShadow SvxShadowItem;
struct SvxULSpace
{
INT32 TopMargin MID_UP_MARGIN; // % or direct
INT32 BottomMargin MID_LO_MARGIN; // % or direct
BOOL ContextMargin MID_CTX_MARGIN;
INT16 TopRelMargin MID_UP_REL_MARGIN;
INT16 BottomRelMargin MID_LO_REL_MARGIN;
};
item SvxULSpace SvxULSpaceItem
struct SvxLongLRSpace
{
INT32 Left MID_LEFT; // ???
INT32 Right MID_RIGHT; // ???
};
item SvxLongLRSpace SvxLongLRSpaceItem;
struct SvxLongULSpace
{
INT32 Upper MID_UPPER; // ???
INT32 Lower MID_LOWER; // ???
};
item SvxLongULSpace SvxLongULSpaceItem;
struct SvxHyperlink
{
String Text MID_HLINK_TEXT;
String URL MID_HLINK_URL;
String Target MID_HLINK_TARGET;
String Name MID_HLINK_NAME;
INT32 Type MID_HLINK_TYPE;
};
item SvxHyperlink SvxHyperlinkItem;
struct PageModel
{
BOOL Auto MID_AUTO;
String Name MID_NAME;
};
item PageModel SvxPageModelItem;
struct SvxProtect
{
BOOL Content MID_PROTECT_CONTENT;
BOOL Size MID_PROTECT_SIZE;
BOOL Position MID_PROTECT_POSITION;
};
item SvxProtect SvxProtectItem;
struct SvxRulerObject
{
INT32 StartX MID_START_X;
INT32 StartY MID_START_Y;
INT32 EndX MID_END_X;
INT32 EndY MID_END_Y;
BOOL Limited MID_LIMIT;
};
item SvxRulerObject SvxObjectItem;
item String LineBorder; // dummy for sequence
struct SvxBox
{
LineBorder LeftBorder MID_LEFT_BORDER;
INT32 LeftDistance LEFT_BORDER_DISTANCE;
LineBorder RightBorder MID_RIGHT_BORDER;
INT32 RightDistance RIGHT_BORDER_DISTANCE;
LineBorder TopBorder MID_TOP_BORDER;
INT32 TopDistance TOP_BORDER_DISTANCE;
LineBorder BottomBorder MID_BOTTOM_BORDER;
INT32 BottomDistance BOTTOM_BORDER_DISTANCE;
};
item SvxBox SvxBoxItem;
struct SvxBoxInfo
{
LineBorder Horizontal MID_HORIZONTAL;
LineBorder Vertical MID_VERTICAL;
INT16 Flags MID_FLAGS;
INT16 ValidFlags MID_VALIDFLAGS;
INT32 DefaultDistance MID_DISTANCE;
};
item SvxBoxInfo SvxBoxInfoItem;
item String SvxColumns; // dummy for sequence
struct SvxColumnDescription
{
SvxColumns Columns MID_COLUMNARRAY; // currently not implemented
INT32 Left MID_LEFT;
INT32 Right MID_RIGHT;
INT32 Actual MID_ACTUAL;
BOOL Orthogonal MID_ORTHO;
BOOL Table MID_TABLE;
};
item SvxColumnDescription SvxColumnItem;
struct SvxTabStop
{
String TabStops MID_TABSTOPS; // dummy, will be represented by array of structs
//INT32 StandardTabStop MID_STD_TAB;
};
item SvxTabStop SvxTabStopItem;
struct SvxCharRotate
{
INT16 Rotation MID_ROTATE;
BOOL FitToLine MID_FITTOLINE;
};
item SvxCharRotate SvxCharRotateItem;
item String SfxSetItem; // dummy
item INT16 SvxRotateModeItem; // enum
struct SvxMargin
{
INT32 LeftMargin MID_MARGIN_L_MARGIN;
INT32 RightMargin MID_MARGIN_R_MARGIN;
INT32 UpperMargin MID_MARGIN_UP_MARGIN;
INT32 LowerMargin MID_MARGIN_LO_MARGIN;
};
item SvxMargin SvxMarginItem;
struct SvxEmphasisMark
{
INT32 Emphasis MID_EMPHASIS;
};
item SvxEmphasisMark SvxEmphasisMarkItem;
item String SvxSmartTagItem; // dummy for sequence
item String Points; // dummy for sequence
struct ZoomSlider
{
INT16 CurrentZoom MID_ZOOMSLIDER_CURRENTZOOM;
Points SnappingPoints MID_ZOOMSLIDER_SNAPPINGPOINTS;
INT16 SvxMinZoom MID_ZOOMSLIDER_MINZOOM;
INT16 SvxMaxZoom MID_ZOOMSLIDER_MAXZOOM;
};
item ZoomSlider SvxZoomSliderItem;
item String SvxGalleryItem; // dummy for sequence
|