fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / svx / source / customshapes / EnhancedCustomShapeGeometry.cxx
blob0c8e447a8537d0e9180de768364ab1f30461a6a2
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #include <limits>
22 #include "svx/EnhancedCustomShapeGeometry.hxx"
23 #include <com/sun/star/drawing/EnhancedCustomShapeGluePointType.hpp>
25 static const sal_Int32 MIN_INT32 = std::numeric_limits<sal_Int32>::min();
27 static const sal_Int32 mso_sptDefault0[] =
29 1, 0
31 static const sal_Int32 mso_sptDefault1400[] =
33 1, 1400
35 static const sal_Int32 mso_sptDefault1800[] =
37 1, 1800
39 static const sal_Int32 mso_sptDefault2500[] =
41 1, 2500
43 static const sal_Int32 mso_sptDefault2700[] =
45 1, 2700
47 static const sal_Int32 mso_sptDefault3600[] =
49 1, 3600
51 static const sal_Int32 mso_sptDefault3700[] =
53 1, 3700
55 static const sal_Int32 mso_sptDefault5400[] =
57 1, 5400
59 static const sal_Int32 mso_sptDefault7200[] =
61 1, 7200
63 static const sal_Int32 mso_sptDefault8100[] =
65 1, 8100
67 static const sal_Int32 mso_sptDefault9600[] =
69 1, 9600
71 static const sal_Int32 mso_sptDefault10800[] =
73 1, 10800
75 static const sal_Int32 mso_sptDefault12000[] =
77 1, 12000
79 static const sal_Int32 mso_sptDefault13500[] =
81 1, 13500
83 static const sal_Int32 mso_sptDefault16200[] =
85 1, 16200
87 static const sal_Int32 mso_sptDefault16200and5400[] =
89 2, 16200, 5400
92 static const SvxMSDffVertPair mso_sptArcVert[] =
94 { 0, 0 }, { 21600, 21600 }, { 3 MSO_I, 1 MSO_I }, { 7 MSO_I, 5 MSO_I }, { 10800, 10800 },
95 { 0, 0 }, { 21600, 21600 }, { 3 MSO_I, 1 MSO_I }, { 7 MSO_I, 5 MSO_I }
97 static const sal_uInt16 mso_sptArcSegm[] =
99 0xa504, 0xab00, 0x0001, 0x6001, 0x8000,
100 0xa504, 0xaa00, 0x8000
102 static const SvxMSDffCalculationData mso_sptArcCalc[] =
104 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
105 { 0x2000, { 0x400, 10800, 0 } },
106 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
107 { 0x2000, { 0x402, 10800, 0 } },
108 { 0x4009, { 10800, DFF_Prop_adjust2Value, 0 } },
109 { 0x2000, { 0x404, 10800, 0 } },
110 { 0x400a, { 10800, DFF_Prop_adjust2Value, 0 } },
111 { 0x2000, { 0x406, 10800, 0 } }
113 static const sal_Int32 mso_sptArcDefault[] =
115 2, 270, 0
117 static const SvxMSDffVertPair mso_sptStandardGluePoints[] =
119 { 10800, 0 }, { 0, 10800 }, { 10800, 21600 }, { 21600, 10800 }
121 static const SvxMSDffHandle mso_sptArcHandle[] =
123 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
124 10800, 0x100, 10800, 10800, 10800, 10800, MIN_INT32, 0x7fffffff },
125 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
126 10800, 0x101, 10800, 10800, 10800, 10800, MIN_INT32, 0x7fffffff }
128 static const mso_CustomShape msoArc =
130 (SvxMSDffVertPair*)mso_sptArcVert, SAL_N_ELEMENTS( mso_sptArcVert ),
131 (sal_uInt16*)mso_sptArcSegm, sizeof( mso_sptArcSegm ) >> 1,
132 (SvxMSDffCalculationData*)mso_sptArcCalc, SAL_N_ELEMENTS( mso_sptArcCalc ),
133 (sal_Int32*)mso_sptArcDefault,
134 NULL, 0,
135 21600, 21600,
136 MIN_INT32, MIN_INT32,
137 NULL, 0,
138 (SvxMSDffHandle*)mso_sptArcHandle, SAL_N_ELEMENTS( mso_sptArcHandle ) // handles
141 static const SvxMSDffVertPair mso_sptTextSimpleVert[] =
143 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0, 0 }
145 static const mso_CustomShape msoTextSimple =
147 (SvxMSDffVertPair*)mso_sptTextSimpleVert, SAL_N_ELEMENTS( mso_sptTextSimpleVert ),
148 NULL, 0,
149 NULL, 0,
150 NULL,
151 NULL, 0,
152 21600, 21600,
153 MIN_INT32, MIN_INT32,
154 NULL, 0,
155 NULL, 0 // handles
158 static const SvxMSDffVertPair mso_sptRectangleVert[] =
160 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0, 0 }
162 static const mso_CustomShape msoRectangle =
164 (SvxMSDffVertPair*)mso_sptRectangleVert, SAL_N_ELEMENTS( mso_sptRectangleVert ),
165 NULL, 0,
166 NULL, 0,
167 NULL,
168 NULL, 0,
169 21600, 21600,
170 MIN_INT32, MIN_INT32,
171 NULL, 0,
172 NULL, 0 // handles
175 static const SvxMSDffVertPair mso_sptRoundRectangleVert[] = // adj value 0 -> 10800
177 { 7 MSO_I, 0 }, { 0, 8 MSO_I }, { 0, 9 MSO_I }, { 7 MSO_I, 21600 },
178 { 10 MSO_I, 21600 }, { 21600, 9 MSO_I }, { 21600, 8 MSO_I }, { 10 MSO_I, 0 }
180 static const sal_uInt16 mso_sptRoundRectangleSegm[] =
182 0x4000, 0xa701, 0x0001, 0xa801, 0x0001, 0xa701, 0x0001, 0xa801, 0x6000, 0x8000
184 static const SvxMSDffCalculationData mso_sptRoundRectangleCalc[] =
186 { 0x000e, { 0, 45, 0 } },
187 { 0x6009, { DFF_Prop_adjustValue, 0x400, 0 } },
188 { 0x2001, { 0x401, 3163, 7636 } },
189 { 0x6000, { DFF_Prop_geoLeft, 0x402, 0 } },
190 { 0x6000, { DFF_Prop_geoTop, 0x402, 0 } },
191 { 0xa000, { DFF_Prop_geoRight, 0, 0x402 } },
192 { 0xa000, { DFF_Prop_geoBottom, 0, 0x402 } },
193 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
194 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
195 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
196 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } }
198 static const SvxMSDffTextRectangles mso_sptRoundRectangleTextRect[] =
200 { { 3 MSO_I, 4 MSO_I }, { 5 MSO_I, 6 MSO_I } }
202 static const SvxMSDffHandle mso_sptRoundRectangleHandle[] =
204 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
205 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
207 static const mso_CustomShape msoRoundRectangle =
209 (SvxMSDffVertPair*)mso_sptRoundRectangleVert, SAL_N_ELEMENTS( mso_sptRoundRectangleVert ),
210 (sal_uInt16*)mso_sptRoundRectangleSegm, sizeof( mso_sptRoundRectangleSegm ) >> 1,
211 (SvxMSDffCalculationData*)mso_sptRoundRectangleCalc, SAL_N_ELEMENTS( mso_sptRoundRectangleCalc ),
212 (sal_Int32*)mso_sptDefault3600,
213 (SvxMSDffTextRectangles*)mso_sptRoundRectangleTextRect, SAL_N_ELEMENTS( mso_sptRoundRectangleTextRect ),
214 21600, 21600,
215 10800, 10800,
216 NULL, 0,
217 (SvxMSDffHandle*)mso_sptRoundRectangleHandle, SAL_N_ELEMENTS( mso_sptRoundRectangleHandle ) // handles
220 static const SvxMSDffVertPair mso_sptRightTriangleVert[] =
222 { 0, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0, 0 }
224 static const SvxMSDffTextRectangles mso_sptRightTriangleTextRect[] =
226 { { 1900, 12700 }, { 12700, 19700 } }
228 static const SvxMSDffVertPair mso_sptRightTriangleGluePoints[] =
230 { 0, 0 }, { 0, 10800 }, { 0, 21600 }, { 10800, 21600 }, { 21600, 21600 }, { 10800, 10800 }
232 static const mso_CustomShape msoRightTriangle =
234 (SvxMSDffVertPair*)mso_sptRightTriangleVert, SAL_N_ELEMENTS( mso_sptRightTriangleVert ),
235 NULL, 0,
236 NULL, 0,
237 NULL,
238 (SvxMSDffTextRectangles*)mso_sptRightTriangleTextRect, SAL_N_ELEMENTS( mso_sptRightTriangleTextRect ),
239 21600, 21600,
240 MIN_INT32, MIN_INT32,
241 (SvxMSDffVertPair*)mso_sptRightTriangleGluePoints, SAL_N_ELEMENTS( mso_sptRightTriangleGluePoints ),
242 NULL, 0 // handles
245 static const SvxMSDffVertPair mso_sptEllipseVert[] =
247 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 }
249 static const sal_uInt16 mso_sptEllipseSegm[] =
251 0xa203, 0x6000, 0x8000
253 static const SvxMSDffTextRectangles mso_sptEllipseTextRect[] =
255 { { 3163, 3163 }, { 18437, 18437 } }
257 static const SvxMSDffVertPair mso_sptEllipseGluePoints[] =
259 { 10800, 0 }, { 3163, 3163 }, { 0, 10800 }, { 3163, 18437 }, { 10800, 21600 }, { 18437, 18437 }, { 21600, 10800 }, { 18437, 3163 }
261 static const mso_CustomShape msoEllipse =
263 (SvxMSDffVertPair*)mso_sptEllipseVert, SAL_N_ELEMENTS( mso_sptEllipseVert ),
264 (sal_uInt16*)mso_sptEllipseSegm, sizeof( mso_sptEllipseSegm ) >> 1,
265 NULL, 0,
266 NULL,
267 (SvxMSDffTextRectangles*)mso_sptEllipseTextRect, SAL_N_ELEMENTS( mso_sptEllipseTextRect ),
268 21600, 21600,
269 MIN_INT32, MIN_INT32,
270 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
271 NULL, 0 // handles
274 static const SvxMSDffVertPair mso_sptParallelogramVert[] = // adjustment1 : 0 - 21600
276 { 0 MSO_I, 0 }, { 21600, 0 }, { 1 MSO_I, 21600 }, { 0, 21600 }
278 static const sal_uInt16 mso_sptParallelogramSegm[] =
280 0x4000, 0x0003, 0x6001, 0x8000
282 static const SvxMSDffCalculationData mso_sptParallelogramCalc[] =
284 { 0x4000, { 0, DFF_Prop_adjustValue, 0 } },
285 { 0x8000, { 0, 21600, DFF_Prop_adjustValue } },
286 { 0x2001, { DFF_Prop_adjustValue, 10, 24 } },
287 { 0x2000, { 0x0402, 1750, 0 } },
288 { 0x8000, { 21600, 0, 0x0403 } },
289 { 0x2001, { 0x400, 1, 2 } },
290 { 0x4000, { 10800, 0x405, 0 } },
291 { 0x2000, { 0x400, 0, 10800 } },
292 { 0x6006, { 0x407, 0x40d, 0 } },
293 { 0x8000, { 10800, 0, 0x405 } },
294 { 0x6006, { 0x407, 0x40c, 21600 } },
295 { 0x8000, { 21600, 0, 0x405 } },
296 { 0x8001, { 21600, 10800, 0x400 } },
297 { 0x8000, { 21600, 0, 0x40c } }
299 static const SvxMSDffTextRectangles mso_sptParallelogramTextRect[] =
301 { { 3 MSO_I, 3 MSO_I }, { 4 MSO_I, 4 MSO_I } }
303 static const SvxMSDffVertPair mso_sptParallelogramGluePoints[] =
305 { 6 MSO_I, 0 }, { 10800, 8 MSO_I }, { 11 MSO_I, 10800 }, { 9 MSO_I, 21600 }, { 10800, 10 MSO_I }, { 5 MSO_I, 10800 }
307 static const SvxMSDffHandle mso_sptParallelogramHandle[] =
309 { MSDFF_HANDLE_FLAGS_RANGE,
310 0x100, 0, 10800, 10800, 0, 21600, MIN_INT32, 0x7fffffff }
312 static const mso_CustomShape msoParallelogram =
314 (SvxMSDffVertPair*)mso_sptParallelogramVert, SAL_N_ELEMENTS( mso_sptParallelogramVert ),
315 (sal_uInt16*)mso_sptParallelogramSegm, sizeof( mso_sptParallelogramSegm ) >> 1,
316 (SvxMSDffCalculationData*)mso_sptParallelogramCalc, SAL_N_ELEMENTS( mso_sptParallelogramCalc ),
317 (sal_Int32*)mso_sptDefault5400,
318 (SvxMSDffTextRectangles*)mso_sptParallelogramTextRect, SAL_N_ELEMENTS( mso_sptParallelogramTextRect ),
319 21600, 21600,
320 MIN_INT32, MIN_INT32,
321 (SvxMSDffVertPair*)mso_sptParallelogramGluePoints, SAL_N_ELEMENTS( mso_sptParallelogramGluePoints ),
322 (SvxMSDffHandle*)mso_sptParallelogramHandle, SAL_N_ELEMENTS( mso_sptParallelogramHandle ) // handles
325 static const SvxMSDffVertPair mso_sptDiamondVert[] =
327 { 10800, 0 }, { 21600, 10800 }, { 10800, 21600 }, { 0, 10800 }, { 10800, 0 }
329 static const SvxMSDffTextRectangles mso_sptDiamondTextRect[] =
331 { { 5400, 5400 }, { 16200, 16200 } }
333 static const mso_CustomShape msoDiamond =
335 (SvxMSDffVertPair*)mso_sptDiamondVert, SAL_N_ELEMENTS( mso_sptDiamondVert ),
336 NULL, 0,
337 NULL, 0,
338 NULL,
339 (SvxMSDffTextRectangles*)mso_sptDiamondTextRect, SAL_N_ELEMENTS( mso_sptDiamondTextRect ),
340 21600, 21600,
341 MIN_INT32, MIN_INT32,
342 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
343 NULL, 0 // handles
346 static const SvxMSDffVertPair mso_sptTrapezoidVert[] = // adjustment1 : 0 - 10800
348 { 0, 0 }, { 21600, 0 }, {0 MSO_I, 21600 }, { 1 MSO_I, 21600 }
350 static const sal_uInt16 mso_sptTrapezoidSegm[] =
352 0x4000, 0x0003, 0x6001, 0x8000
354 static const SvxMSDffCalculationData mso_sptTrapezoidCalc[] =
356 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
357 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
358 { 0x2001, { DFF_Prop_adjustValue, 10, 18 } },
359 { 0x2000, { 0x0402, 1750, 0 } },
360 { 0x8000, { 21600, 0, 0x403 } },
361 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
362 { 0x8000, { 21600, 0, 0x405 } }
364 static const SvxMSDffTextRectangles mso_sptTrapezoidTextRect[] =
366 { { 3 MSO_I, 3 MSO_I }, { 4 MSO_I, 4 MSO_I } }
368 static const SvxMSDffVertPair mso_sptTrapezoidGluePoints[] =
370 { 6 MSO_I, 10800 }, { 10800, 21600 }, { 5 MSO_I, 10800 }, { 10800, 0 }
372 static const SvxMSDffHandle mso_sptTrapezoidHandle[] =
374 { MSDFF_HANDLE_FLAGS_RANGE,
375 0x100, 1, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
377 static const mso_CustomShape msoTrapezoid =
379 (SvxMSDffVertPair*)mso_sptTrapezoidVert, SAL_N_ELEMENTS( mso_sptTrapezoidVert ),
380 (sal_uInt16*)mso_sptTrapezoidSegm, sizeof( mso_sptTrapezoidSegm ) >> 1,
381 (SvxMSDffCalculationData*)mso_sptTrapezoidCalc, SAL_N_ELEMENTS( mso_sptTrapezoidCalc ),
382 (sal_Int32*)mso_sptDefault5400,
383 (SvxMSDffTextRectangles*)mso_sptTrapezoidTextRect, SAL_N_ELEMENTS( mso_sptTrapezoidTextRect ),
384 21600, 21600,
385 MIN_INT32, MIN_INT32,
386 (SvxMSDffVertPair*)mso_sptTrapezoidGluePoints, SAL_N_ELEMENTS( mso_sptTrapezoidGluePoints ),
387 (SvxMSDffHandle*)mso_sptTrapezoidHandle, SAL_N_ELEMENTS( mso_sptTrapezoidHandle ) // handles
390 static const SvxMSDffVertPair mso_sptOctagonVert[] = // adjustment1 : 0 - 10800
392 { 0 MSO_I, 0 }, { 2 MSO_I, 0 }, { 21600, 1 MSO_I }, { 21600, 3 MSO_I },
393 { 2 MSO_I, 21600 }, { 0 MSO_I, 21600 }, { 0, 3 MSO_I }, { 0, 1 MSO_I }
395 static const sal_uInt16 mso_sptOctagonSegm[] =
397 0x4000, 0x0007, 0x6001, 0x8000
399 static const SvxMSDffCalculationData mso_sptOctagonCalc[] =
401 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
402 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
403 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
404 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
405 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
406 { 0x6000, { DFF_Prop_geoLeft, 0x404, 0 } },
407 { 0x6000, { DFF_Prop_geoTop, 0x404, 0 } },
408 { 0xa000, { DFF_Prop_geoRight, 0, 0x404 } },
409 { 0xa000, { DFF_Prop_geoBottom, 0, 0x404 } }
411 static const sal_Int32 mso_sptOctagonDefault[] =
413 1, 5000
415 static const SvxMSDffTextRectangles mso_sptOctagonTextRect[] =
417 { { 5 MSO_I, 6 MSO_I }, { 7 MSO_I, 8 MSO_I } }
419 static const SvxMSDffHandle mso_sptOctagonHandle[] =
421 { MSDFF_HANDLE_FLAGS_RANGE,
422 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
424 static const mso_CustomShape msoOctagon =
426 (SvxMSDffVertPair*)mso_sptOctagonVert, SAL_N_ELEMENTS( mso_sptOctagonVert ),
427 (sal_uInt16*)mso_sptOctagonSegm, sizeof( mso_sptOctagonSegm ) >> 1,
428 (SvxMSDffCalculationData*)mso_sptOctagonCalc, SAL_N_ELEMENTS( mso_sptOctagonCalc ),
429 (sal_Int32*)mso_sptOctagonDefault,
430 (SvxMSDffTextRectangles*)mso_sptOctagonTextRect, SAL_N_ELEMENTS( mso_sptOctagonTextRect ),
431 21600, 21600,
432 10800, 10800,
433 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
434 (SvxMSDffHandle*)mso_sptOctagonHandle, SAL_N_ELEMENTS( mso_sptOctagonHandle ) // handles
437 static const SvxMSDffVertPair mso_sptIsocelesTriangleVert[] = // adjustment1 : 0 - 21600
439 { 0 MSO_I, 0 }, { 21600, 21600 }, { 0, 21600 }
441 static const sal_uInt16 mso_sptIsocelesTriangleSegm[] =
443 0x4000, 0x0002, 0x6001, 0x8000
445 static const SvxMSDffCalculationData mso_sptIsocelesTriangleCalc[] =
447 { 0x4000, { 0, DFF_Prop_adjustValue, 0 } },
448 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
449 { 0x2000, { 0x401, 10800, 0 } },
450 { 0x2001, { DFF_Prop_adjustValue, 2, 3 } },
451 { 0x2000, { 0x403, 7200, 0 } },
452 { 0x8000, { 21600, 0, 0x400 } },
453 { 0x2001, { 0x405, 1, 2 } },
454 { 0x8000, { 21600, 0, 0x406 } }
456 static const SvxMSDffTextRectangles mso_sptIsocelesTriangleTextRect[] =
458 { { 1 MSO_I, 10800 }, { 2 MSO_I, 18000 } },
459 { { 3 MSO_I, 7200 }, { 4 MSO_I, 21600 } }
461 static const SvxMSDffVertPair mso_sptIsocelesTriangleGluePoints[] =
463 { 0 MSO_I, 0 }, { 1 MSO_I, 10800 }, { 0, 21600 }, { 10800, 21600 }, { 21600, 21600 }, { 7 MSO_I, 10800 }
465 static const SvxMSDffHandle mso_sptIsocelesTriangleHandle[] =
467 { MSDFF_HANDLE_FLAGS_RANGE,
468 0x100, 0, 10800, 10800, 0, 21600, MIN_INT32, 0x7fffffff }
470 static const mso_CustomShape msoIsocelesTriangle =
472 (SvxMSDffVertPair*)mso_sptIsocelesTriangleVert, SAL_N_ELEMENTS( mso_sptIsocelesTriangleVert ),
473 (sal_uInt16*)mso_sptIsocelesTriangleSegm, sizeof( mso_sptIsocelesTriangleSegm ) >> 1,
474 (SvxMSDffCalculationData*)mso_sptIsocelesTriangleCalc, SAL_N_ELEMENTS( mso_sptIsocelesTriangleCalc ),
475 (sal_Int32*)mso_sptDefault10800,
476 (SvxMSDffTextRectangles*)mso_sptIsocelesTriangleTextRect, SAL_N_ELEMENTS( mso_sptIsocelesTriangleTextRect ),
477 21600, 21600,
478 MIN_INT32, MIN_INT32,
479 (SvxMSDffVertPair*)mso_sptIsocelesTriangleGluePoints, SAL_N_ELEMENTS( mso_sptIsocelesTriangleGluePoints ),
480 (SvxMSDffHandle*)mso_sptIsocelesTriangleHandle, SAL_N_ELEMENTS( mso_sptIsocelesTriangleHandle ) // handles
483 static const SvxMSDffVertPair mso_sptHexagonVert[] = // adjustment1 : 0 - 10800
485 { 0 MSO_I, 0 }, { 1 MSO_I, 0 }, { 21600, 10800 }, { 1 MSO_I, 21600 },
486 { 0 MSO_I, 21600 }, { 0, 10800 }
488 static const sal_uInt16 mso_sptHexagonSegm[] =
490 0x4000, 0x0005, 0x6001, 0x8000
492 static const SvxMSDffCalculationData mso_sptHexagonCalc[] =
494 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
495 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
496 { 0x2001, { DFF_Prop_adjustValue, 100, 234 } },
497 { 0x2000, { 0x402, 1700, 0 } },
498 { 0x8000, { 21600, 0, 0x403 } }
500 static const SvxMSDffTextRectangles mso_sptHexagonTextRect[] =
502 { { 3 MSO_I, 3 MSO_I }, { 4 MSO_I, 4 MSO_I } }
504 static const SvxMSDffHandle mso_sptHexagonHandle[] =
506 { MSDFF_HANDLE_FLAGS_RANGE,
507 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
509 static const mso_CustomShape msoHexagon =
511 (SvxMSDffVertPair*)mso_sptHexagonVert, SAL_N_ELEMENTS( mso_sptHexagonVert ),
512 (sal_uInt16*)mso_sptHexagonSegm, sizeof( mso_sptHexagonSegm ) >> 1,
513 (SvxMSDffCalculationData*)mso_sptHexagonCalc, SAL_N_ELEMENTS( mso_sptHexagonCalc ),
514 (sal_Int32*)mso_sptDefault5400,
515 (SvxMSDffTextRectangles*)mso_sptHexagonTextRect, SAL_N_ELEMENTS( mso_sptHexagonTextRect ),
516 21600, 21600,
517 MIN_INT32, MIN_INT32,
518 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
519 (SvxMSDffHandle*)mso_sptHexagonHandle, SAL_N_ELEMENTS( mso_sptHexagonHandle ) // handles
522 static const SvxMSDffVertPair mso_sptPentagonVert[] =
524 { 10800, 0 }, { 0, 8260 }, { 4230, 21600 }, { 17370, 21600 },
525 { 21600, 8260 }, { 10800, 0 }
527 static const SvxMSDffTextRectangles mso_sptPentagonTextRect[] =
529 { { 4230, 5080 }, { 17370, 21600 } }
531 static const SvxMSDffVertPair mso_sptPentagonGluePoints[] =
533 { 10800, 0 }, { 0, 8260 }, { 4230, 21600 }, { 10800, 21600 },
534 { 17370, 21600 }, { 21600, 8260 }
536 static const mso_CustomShape msoPentagon =
538 (SvxMSDffVertPair*)mso_sptPentagonVert, SAL_N_ELEMENTS( mso_sptPentagonVert ),
539 NULL, 0,
540 NULL, 0,
541 NULL,
542 (SvxMSDffTextRectangles*)mso_sptPentagonTextRect, SAL_N_ELEMENTS( mso_sptPentagonTextRect ),
543 21600, 21600,
544 MIN_INT32, MIN_INT32,
545 (SvxMSDffVertPair*)mso_sptPentagonGluePoints, SAL_N_ELEMENTS( mso_sptPentagonGluePoints ),
546 NULL, 0 // handles
549 static const SvxMSDffVertPair mso_sptPlusVert[] = // adjustment1 : 0 - 10800
551 { 1 MSO_I, 0 }, { 2 MSO_I, 0 }, { 2 MSO_I, 1 MSO_I }, { 21600, 1 MSO_I },
552 { 21600, 3 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 2 MSO_I, 21600 }, { 1 MSO_I, 21600 },
553 { 1 MSO_I, 3 MSO_I }, { 0, 3 MSO_I }, { 0, 1 MSO_I }, { 1 MSO_I, 1 MSO_I }, { 1 MSO_I, 0 }
555 static const SvxMSDffCalculationData mso_sptPlusCalc[] =
557 { 0x2001, { DFF_Prop_adjustValue, 10799, 10800 } },
558 { 0x2000, { 0x400, 0, 0 } },
559 { 0xa000, { DFF_Prop_geoRight, 0, 0x400 } },
560 { 0xa000, { DFF_Prop_geoBottom, 0, 0x400 } }
562 static const SvxMSDffTextRectangles mso_sptPlusTextRect[] =
564 { { 1 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I } }
566 static const SvxMSDffHandle mso_sptPlusHandle[] =
568 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
569 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
571 static const mso_CustomShape msoPlus =
573 (SvxMSDffVertPair*)mso_sptPlusVert, SAL_N_ELEMENTS( mso_sptPlusVert ),
574 NULL, 0,
575 (SvxMSDffCalculationData*)mso_sptPlusCalc, SAL_N_ELEMENTS( mso_sptPlusCalc ),
576 (sal_Int32*)mso_sptDefault5400,
577 (SvxMSDffTextRectangles*)mso_sptPlusTextRect, SAL_N_ELEMENTS( mso_sptPlusTextRect ),
578 21600, 21600,
579 10800, 10800,
580 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
581 (SvxMSDffHandle*)mso_sptPlusHandle, SAL_N_ELEMENTS( mso_sptPlusHandle ) // handles
584 static const SvxMSDffVertPair mso_sptCanVert[] = // adjustment1 : 0 - 10800
586 { 44, 0 },
587 { 20, 0 }, { 0, 2 MSO_I }, { 0, 0 MSO_I }, // ccp
588 { 0, 3 MSO_I }, // p
589 { 0, 4 MSO_I }, { 20, 21600 }, { 44, 21600 }, // ccp
590 { 68, 21600 }, { 88, 4 MSO_I }, { 88, 3 MSO_I }, // ccp
591 { 88, 0 MSO_I }, // p
592 { 88, 2 MSO_I }, { 68, 0 }, { 44, 0 }, // ccp
593 { 44, 0 }, // p
594 { 20, 0 }, { 0, 2 MSO_I }, { 0, 0 MSO_I }, // ccp
595 { 0, 5 MSO_I }, { 20, 6 MSO_I }, { 44, 6 MSO_I }, // ccp
596 { 68, 6 MSO_I },{ 88, 5 MSO_I }, { 88, 0 MSO_I }, // ccp
597 { 88, 2 MSO_I },{ 68, 0 }, { 44, 0 } // ccp
599 static const sal_uInt16 mso_sptCanSegm[] =
601 0x4000, 0x2001, 0x0001, 0x2002, 0x0001, 0x2001, 0x6001, 0x8000,
602 0x4000, 0x2004, 0x6001, 0x8000
604 static const SvxMSDffCalculationData mso_sptCanCalc[] =
606 { 0x2001, { DFF_Prop_adjustValue, 2, 4 } }, // 1/4
607 { 0x2001, { 0x0400, 6, 11 } },
608 { 0xa000, { 0x0400, 0, 0x0401 } },
609 { 0x8000, { 21600, 0, 0x0400 } },
610 { 0x6000, { 0x0403, 0x0401, 0 } },
611 { 0x6000, { 0x0400, 0x0401, 0 } },
612 { 0x2001, { DFF_Prop_adjustValue, 2, 2 } },
613 { 0x0000, { 44, 0, 0 } }
615 static const SvxMSDffTextRectangles mso_sptCanTextRect[] =
617 { { 0, 6 MSO_I }, { 88, 3 MSO_I } }
619 static const SvxMSDffVertPair mso_sptCanGluePoints[] =
621 { 44, 6 MSO_I }, { 44, 0 }, { 0, 10800 }, { 44, 21600 }, { 88, 10800 }
623 static const SvxMSDffHandle mso_sptCanHandle[] =
625 { MSDFF_HANDLE_FLAGS_RANGE,
626 7 + 3, 0x100, 44, 10800, MIN_INT32, 0x7fffffff, 0, 10800 }
628 static const mso_CustomShape msoCan =
630 (SvxMSDffVertPair*)mso_sptCanVert, SAL_N_ELEMENTS( mso_sptCanVert ),
631 (sal_uInt16*)mso_sptCanSegm, sizeof( mso_sptCanSegm ) >> 1,
632 (SvxMSDffCalculationData*)mso_sptCanCalc, SAL_N_ELEMENTS( mso_sptCanCalc ),
633 (sal_Int32*)mso_sptDefault5400,
634 (SvxMSDffTextRectangles*)mso_sptCanTextRect, SAL_N_ELEMENTS( mso_sptCanTextRect ),
635 88, 21600,
636 MIN_INT32, MIN_INT32,
637 (SvxMSDffVertPair*)mso_sptCanGluePoints, SAL_N_ELEMENTS( mso_sptCanGluePoints ),
638 (SvxMSDffHandle*)mso_sptCanHandle, SAL_N_ELEMENTS( mso_sptCanHandle ) // handles
641 static const SvxMSDffVertPair mso_sptArrowVert[] = // adjustment1: x 0 - 21600
642 { // adjustment2: y 0 - 10800
643 { 0, 0 MSO_I }, { 1 MSO_I, 0 MSO_I }, { 1 MSO_I, 0 }, { 21600, 10800 },
644 { 1 MSO_I, 21600 }, { 1 MSO_I, 2 MSO_I }, { 0, 2 MSO_I }
646 static const sal_uInt16 mso_sptArrowSegm[] =
648 0x4000, 0x0006, 0x6001, 0x8000
650 static const SvxMSDffCalculationData mso_sptArrowCalc[] =
652 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
653 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
654 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } },
655 { 0x8000, { 21600, 0, 0x401 } },
656 { 0x6001, { 0x403, 0x400, 10800 } },
657 { 0x6000, { 0x401, 0x404, 0 } },
658 { 0x6001, { 0x401, 0x400, 10800 } },
659 { 0xa000, { 0x401, 0, 0x406 } }
661 static const SvxMSDffTextRectangles mso_sptArrowTextRect[] =
663 { { 0, 0 MSO_I }, { 5 MSO_I, 2 MSO_I } }
665 static const SvxMSDffHandle mso_sptArrowHandle[] =
667 { MSDFF_HANDLE_FLAGS_RANGE,
668 0x100, 0x101, 10800, 10800, 0, 21600, 0, 10800 }
670 static const mso_CustomShape msoArrow =
672 (SvxMSDffVertPair*)mso_sptArrowVert, SAL_N_ELEMENTS( mso_sptArrowVert ),
673 (sal_uInt16*)mso_sptArrowSegm, sizeof( mso_sptArrowSegm ) >> 1,
674 (SvxMSDffCalculationData*)mso_sptArrowCalc, SAL_N_ELEMENTS( mso_sptArrowCalc ),
675 (sal_Int32*)mso_sptDefault16200and5400,
676 (SvxMSDffTextRectangles*)mso_sptArrowTextRect, SAL_N_ELEMENTS( mso_sptArrowTextRect ),
677 21600, 21600,
678 MIN_INT32, MIN_INT32,
679 NULL, 0,
680 (SvxMSDffHandle*)mso_sptArrowHandle, SAL_N_ELEMENTS( mso_sptArrowHandle ) // handles
683 static const SvxMSDffVertPair mso_sptLeftArrowVert[] = // adjustment1: x 0 - 21600
684 { // adjustment2: y 0 - 10800
685 { 21600, 0 MSO_I }, { 1 MSO_I, 0 MSO_I }, { 1 MSO_I, 0 }, { 0, 10800 },
686 { 1 MSO_I, 21600 }, { 1 MSO_I, 2 MSO_I }, { 21600, 2 MSO_I }
688 static const sal_uInt16 mso_sptLeftArrowSegm[] =
690 0x4000, 0x0006, 0x6001, 0x8000
692 static const sal_Int32 mso_sptLeftArrowDefault[] =
694 2, 5400, 5400
696 static const SvxMSDffTextRectangles mso_sptLeftArrowTextRect[] =
698 { { 7 MSO_I, 0 MSO_I }, { 21600, 2 MSO_I } }
700 static const SvxMSDffHandle mso_sptLeftArrowHandle[] =
702 { MSDFF_HANDLE_FLAGS_RANGE,
703 0x100, 0x101, 10800, 10800, 0, 21600, 0, 10800 }
705 static const mso_CustomShape msoLeftArrow =
707 (SvxMSDffVertPair*)mso_sptLeftArrowVert, SAL_N_ELEMENTS( mso_sptLeftArrowVert ),
708 (sal_uInt16*)mso_sptLeftArrowSegm, sizeof( mso_sptLeftArrowSegm ) >> 1,
709 (SvxMSDffCalculationData*)mso_sptArrowCalc, SAL_N_ELEMENTS( mso_sptArrowCalc ),
710 (sal_Int32*)mso_sptLeftArrowDefault,
711 (SvxMSDffTextRectangles*)mso_sptLeftArrowTextRect, SAL_N_ELEMENTS( mso_sptLeftArrowTextRect ),
712 21600, 21600,
713 MIN_INT32, MIN_INT32,
714 NULL, 0,
715 (SvxMSDffHandle*)mso_sptLeftArrowHandle, SAL_N_ELEMENTS( mso_sptLeftArrowHandle ) // handles
718 static const SvxMSDffVertPair mso_sptDownArrowVert[] = // adjustment1: x 0 - 21600
719 { // adjustment2: y 0 - 10800
720 { 0 MSO_I, 0 }, { 0 MSO_I, 1 MSO_I }, { 0, 1 MSO_I }, { 10800, 21600 },
721 { 21600, 1 MSO_I }, { 2 MSO_I, 1 MSO_I }, { 2 MSO_I, 0 }
723 static const sal_uInt16 mso_sptDownArrowSegm[] =
725 0x4000, 0x0006, 0x6001, 0x8000
727 static const SvxMSDffTextRectangles mso_sptDownArrowTextRect[] =
729 { { 0 MSO_I, 0 }, { 2 MSO_I, 5 MSO_I } }
731 static const SvxMSDffHandle mso_sptDownArrowHandle[] =
733 { MSDFF_HANDLE_FLAGS_RANGE,
734 0x101, 0x100, 10800, 10800, 0, 10800, 0, 21600 }
736 static const mso_CustomShape msoDownArrow =
738 (SvxMSDffVertPair*)mso_sptDownArrowVert, SAL_N_ELEMENTS( mso_sptDownArrowVert ),
739 (sal_uInt16*)mso_sptDownArrowSegm, sizeof( mso_sptDownArrowSegm ) >> 1,
740 (SvxMSDffCalculationData*)mso_sptArrowCalc, SAL_N_ELEMENTS( mso_sptArrowCalc ),
741 (sal_Int32*)mso_sptDefault16200and5400,
742 (SvxMSDffTextRectangles*)mso_sptDownArrowTextRect, SAL_N_ELEMENTS( mso_sptDownArrowTextRect ),
743 21600, 21600,
744 MIN_INT32, MIN_INT32,
745 NULL, 0,
746 (SvxMSDffHandle*)mso_sptDownArrowHandle, SAL_N_ELEMENTS( mso_sptDownArrowHandle ) // handles
749 static const SvxMSDffVertPair mso_sptUpArrowVert[] = // adjustment1: x 0 - 21600
750 { // adjustment2: y 0 - 10800
751 { 0 MSO_I, 21600 }, { 0 MSO_I, 1 MSO_I }, { 0, 1 MSO_I }, { 10800, 0 },
752 { 21600, 1 MSO_I }, { 2 MSO_I, 1 MSO_I }, { 2 MSO_I, 21600 }
754 static const sal_uInt16 mso_sptUpArrowSegm[] =
756 0x4000, 0x0006, 0x6001, 0x8000
758 static const sal_Int32 mso_sptUpArrowDefault[] =
760 2, 5400, 5400
762 static const SvxMSDffTextRectangles mso_sptUpArrowTextRect[] =
764 { { 0 MSO_I, 7 MSO_I }, { 2 MSO_I, 21600 } }
766 static const SvxMSDffHandle mso_sptUpArrowHandle[] =
768 { MSDFF_HANDLE_FLAGS_RANGE,
769 0x101, 0x100, 10800, 10800, 0, 10800, 0, 21600 }
771 static const mso_CustomShape msoUpArrow =
773 (SvxMSDffVertPair*)mso_sptUpArrowVert, SAL_N_ELEMENTS( mso_sptUpArrowVert ),
774 (sal_uInt16*)mso_sptUpArrowSegm, sizeof( mso_sptUpArrowSegm ) >> 1,
775 (SvxMSDffCalculationData*)mso_sptArrowCalc, SAL_N_ELEMENTS( mso_sptArrowCalc ),
776 (sal_Int32*)mso_sptUpArrowDefault,
777 (SvxMSDffTextRectangles*)mso_sptUpArrowTextRect, SAL_N_ELEMENTS( mso_sptUpArrowTextRect ),
778 21600, 21600,
779 MIN_INT32, MIN_INT32,
780 NULL, 0,
781 (SvxMSDffHandle*)mso_sptUpArrowHandle, SAL_N_ELEMENTS( mso_sptUpArrowHandle ) // handles
784 static const SvxMSDffVertPair mso_sptLeftRightArrowVert[] = // adjustment1: x 0 - 10800
785 { // adjustment2: y 0 - 10800
786 { 0, 10800 }, { 0 MSO_I, 0 }, { 0 MSO_I, 1 MSO_I }, { 2 MSO_I, 1 MSO_I },
787 { 2 MSO_I, 0 }, { 21600, 10800 }, { 2 MSO_I, 21600 }, { 2 MSO_I, 3 MSO_I },
788 { 0 MSO_I, 3 MSO_I }, { 0 MSO_I, 21600 }
790 static const sal_uInt16 mso_sptLeftRightArrowSegm[] =
792 0x4000, 0x0009, 0x6001, 0x8000
794 static const SvxMSDffCalculationData mso_sptDoubleArrowCalc[] =
796 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
797 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
798 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
799 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } },
800 { 0x8000, { 10800, 0, DFF_Prop_adjust2Value } },
801 { 0x6001, { DFF_Prop_adjustValue, 0x404, 10800 } },
802 { 0x8000, { 21600, 0, 0x405 } },
803 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
804 { 0x6001, { DFF_Prop_adjust2Value, 0x407, 10800 } },
805 { 0x8000, { 21600, 0, 0x408 } }
807 static const sal_Int32 mso_sptLeftRightArrowDefault[] =
809 2, 4300, 5400
811 static const SvxMSDffTextRectangles mso_sptLeftRightArrowTextRect[] =
813 { { 5 MSO_I, 1 MSO_I }, { 6 MSO_I, 3 MSO_I } }
815 static const SvxMSDffHandle mso_sptLeftRightArrowHandle[] =
817 { MSDFF_HANDLE_FLAGS_RANGE,
818 0x100, 0x101, 10800, 10800, 0, 10800, 0, 10800 }
820 static const mso_CustomShape msoLeftRightArrow =
822 (SvxMSDffVertPair*)mso_sptLeftRightArrowVert, SAL_N_ELEMENTS( mso_sptLeftRightArrowVert ),
823 (sal_uInt16*)mso_sptLeftRightArrowSegm, sizeof( mso_sptLeftRightArrowSegm ) >> 1,
824 (SvxMSDffCalculationData*)mso_sptDoubleArrowCalc, SAL_N_ELEMENTS( mso_sptDoubleArrowCalc ),
825 (sal_Int32*)mso_sptLeftRightArrowDefault,
826 (SvxMSDffTextRectangles*)mso_sptLeftRightArrowTextRect, SAL_N_ELEMENTS( mso_sptLeftRightArrowTextRect ),
827 21600, 21600,
828 MIN_INT32, MIN_INT32,
829 NULL, 0,
830 (SvxMSDffHandle*)mso_sptLeftRightArrowHandle, SAL_N_ELEMENTS( mso_sptLeftRightArrowHandle ) // handles
833 static const SvxMSDffVertPair mso_sptUpDownArrowVert[] = // adjustment1: x 0 - 10800
834 { // adjustment2: y 0 - 10800
835 { 0, 1 MSO_I }, { 10800, 0 }, { 21600, 1 MSO_I }, { 2 MSO_I, 1 MSO_I },
836 { 2 MSO_I, 3 MSO_I }, { 21600, 3 MSO_I }, { 10800, 21600 }, { 0, 3 MSO_I },
837 { 0 MSO_I, 3 MSO_I }, { 0 MSO_I, 1 MSO_I }
839 static const sal_uInt16 mso_sptUpDownArrowSegm[] =
841 0x4000, 0x0009, 0x6001, 0x8000
843 static const sal_Int32 mso_sptUpDownArrowDefault[] =
845 2, 5400, 4300
847 static const SvxMSDffTextRectangles mso_sptUpDownArrowTextRect[] =
849 { { 0 MSO_I, 8 MSO_I }, { 2 MSO_I, 9 MSO_I } }
851 static const SvxMSDffHandle mso_sptUpDownArrowHandle[] =
853 { MSDFF_HANDLE_FLAGS_RANGE,
854 0x100, 0x101, 10800, 10800, 0, 10800, 0, 10800 }
856 static const mso_CustomShape msoUpDownArrow =
858 (SvxMSDffVertPair*)mso_sptUpDownArrowVert, SAL_N_ELEMENTS( mso_sptUpDownArrowVert ),
859 (sal_uInt16*)mso_sptUpDownArrowSegm, sizeof( mso_sptUpDownArrowSegm ) >> 1,
860 (SvxMSDffCalculationData*)mso_sptDoubleArrowCalc, SAL_N_ELEMENTS( mso_sptDoubleArrowCalc ),
861 (sal_Int32*)mso_sptUpDownArrowDefault,
862 (SvxMSDffTextRectangles*)mso_sptUpDownArrowTextRect, SAL_N_ELEMENTS( mso_sptUpDownArrowTextRect ),
863 21600, 21600,
864 MIN_INT32, MIN_INT32,
865 NULL, 0,
866 (SvxMSDffHandle*)mso_sptUpDownArrowHandle, SAL_N_ELEMENTS( mso_sptUpDownArrowHandle ) // handles
869 static const SvxMSDffVertPair mso_sptQuadArrowVert[] = // adjustment1: x 0 - 10800, adjustment2: x 0 - 10800
870 { // adjustment3: y 0 - 10800
871 { 0, 10800 }, { 0 MSO_I, 1 MSO_I }, { 0 MSO_I, 2 MSO_I }, { 2 MSO_I, 2 MSO_I },
872 { 2 MSO_I, 0 MSO_I }, { 1 MSO_I, 0 MSO_I }, { 10800, 0 }, { 3 MSO_I, 0 MSO_I },
873 { 4 MSO_I, 0 MSO_I }, { 4 MSO_I, 2 MSO_I }, { 5 MSO_I, 2 MSO_I }, { 5 MSO_I, 1 MSO_I },
874 { 21600, 10800 }, { 5 MSO_I, 3 MSO_I }, { 5 MSO_I, 4 MSO_I }, { 4 MSO_I, 4 MSO_I },
875 { 4 MSO_I, 5 MSO_I }, { 3 MSO_I, 5 MSO_I }, { 10800, 21600 }, { 1 MSO_I, 5 MSO_I },
876 { 2 MSO_I, 5 MSO_I }, { 2 MSO_I, 4 MSO_I }, { 0 MSO_I, 4 MSO_I }, { 0 MSO_I, 3 MSO_I }
878 static const sal_uInt16 mso_sptQuadArrowSegm[] =
880 0x4000, 0x0017, 0x6001, 0x8000
882 static const SvxMSDffCalculationData mso_sptQuadArrowCalc[] =
884 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
885 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
886 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
887 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
888 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } },
889 { 0x8000, { 21600, 0, DFF_Prop_adjust3Value } }
891 static const sal_Int32 mso_sptQuadArrowDefault[] =
893 3, 6500, 8600, 4300
895 static const SvxMSDffTextRectangles mso_sptQuadArrowTextRect[] = // todo
897 { { 0, 0 }, { 21600, 21600 } }
899 static const SvxMSDffHandle mso_sptQuadArrowHandle[] =
901 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
902 0x101, 0x102, 10800, 10800, 0x100, 10800, 0, 0x100 },
903 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
904 0x100, 0, 10800, 10800, 0x102, 0x101, MIN_INT32, 0x7fffffff }
906 static const mso_CustomShape msoQuadArrow =
908 (SvxMSDffVertPair*)mso_sptQuadArrowVert, SAL_N_ELEMENTS( mso_sptQuadArrowVert ),
909 (sal_uInt16*)mso_sptQuadArrowSegm, sizeof( mso_sptQuadArrowSegm ) >> 1,
910 (SvxMSDffCalculationData*)mso_sptQuadArrowCalc, SAL_N_ELEMENTS( mso_sptQuadArrowCalc ),
911 (sal_Int32*)mso_sptQuadArrowDefault,
912 (SvxMSDffTextRectangles*)mso_sptQuadArrowTextRect, SAL_N_ELEMENTS( mso_sptQuadArrowTextRect ),
913 21600, 21600,
914 MIN_INT32, MIN_INT32,
915 NULL, 0,
916 (SvxMSDffHandle*)mso_sptQuadArrowHandle, SAL_N_ELEMENTS( mso_sptQuadArrowHandle ) // handles
919 static const SvxMSDffVertPair mso_sptLeftRightUpArrowVert[] = // adjustment1: x 0 - 10800, adjustment2: x 0 - 10800
920 { // adjustment3: y 0 - 21600
921 { 10800, 0 }, { 3 MSO_I, 2 MSO_I }, { 4 MSO_I, 2 MSO_I }, { 4 MSO_I, 1 MSO_I },
922 { 5 MSO_I, 1 MSO_I }, { 5 MSO_I, 0 MSO_I }, { 21600, 10800 }, { 5 MSO_I, 3 MSO_I },
923 { 5 MSO_I, 4 MSO_I }, { 2 MSO_I, 4 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 0, 10800 },
924 { 2 MSO_I, 0 MSO_I }, { 2 MSO_I, 1 MSO_I }, { 1 MSO_I, 1 MSO_I }, { 1 MSO_I, 2 MSO_I },
925 { 0 MSO_I, 2 MSO_I }
927 static const sal_uInt16 mso_sptLeftRightUpArrowSegm[] =
929 0x4000, 0x0010, 0x6001, 0x8000
931 static const SvxMSDffCalculationData mso_sptLeftRightUpArrowCalc[] =
933 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0
934 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }, // 1
935 { 0x6001, { 0x0403, DFF_Prop_adjust3Value, 21600 } }, // 2
936 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }, // 3
937 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } }, // 4
938 { 0x8000, { 21600, 0, 0x0402 } } // 5
940 static const sal_Int32 mso_sptLeftRightUpArrowDefault[] =
942 3, 6500, 8600, 6200
944 static const SvxMSDffTextRectangles mso_sptLeftRightUpArrowTextRect[] = // todo
946 { { 0, 0 }, { 21600, 21600 } }
948 static const SvxMSDffHandle mso_sptLeftRightUpArrowHandle[] =
950 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
951 0x101, 0x102, 10800, 10800, 0x100, 10800, 0, 0x100 },
952 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
953 0x100, 0, 10800, 10800, 0x102, 0x101, MIN_INT32, 0x7fffffff }
955 static const mso_CustomShape msoLeftRightUpArrow =
957 (SvxMSDffVertPair*)mso_sptLeftRightUpArrowVert, SAL_N_ELEMENTS( mso_sptLeftRightUpArrowVert ),
958 (sal_uInt16*)mso_sptLeftRightUpArrowSegm, sizeof( mso_sptLeftRightUpArrowSegm ) >> 1,
959 (SvxMSDffCalculationData*)mso_sptLeftRightUpArrowCalc, SAL_N_ELEMENTS( mso_sptLeftRightUpArrowCalc ),
960 (sal_Int32*)mso_sptLeftRightUpArrowDefault,
961 (SvxMSDffTextRectangles*)mso_sptLeftRightUpArrowTextRect, SAL_N_ELEMENTS( mso_sptLeftRightUpArrowTextRect ),
962 21600, 21600,
963 MIN_INT32, MIN_INT32,
964 NULL, 0,
965 (SvxMSDffHandle*)mso_sptLeftRightUpArrowHandle, SAL_N_ELEMENTS( mso_sptLeftRightUpArrowHandle ) // handles
968 static const SvxMSDffVertPair mso_sptBentArrowVert[] = // adjustment1 : x 12427 - 21600
969 { // adjustment2 : y 0 - 6079
970 { 0, 21600 }, { 0, 12160 }, { 12427, 1 MSO_I }, { 0 MSO_I, 1 MSO_I },
971 { 0 MSO_I, 0 }, { 21600, 6079 }, { 0 MSO_I, 12158 }, { 0 MSO_I, 2 MSO_I },
972 { 12427, 2 MSO_I }, { 4 MSO_I, 12160 }, { 4 MSO_I, 21600 }
974 static const sal_uInt16 mso_sptBentArrowSegm[] =
976 0x4000, 0x0001, 0xa801, 0x0006, 0xa701, 0x0001, 0x6001, 0x8000
978 static const SvxMSDffCalculationData mso_sptBentArrowCalc[] =
980 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
981 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
982 { 0x8000, { 12158, 0, DFF_Prop_adjust2Value } },
983 { 0x8000, { 6079, 0, DFF_Prop_adjust2Value } },
984 { 0x2001, { 0x0403, 2, 1 } }
986 static const sal_Int32 mso_sptBentArrowDefault[] =
988 2, 15100, 2900
990 static const SvxMSDffTextRectangles mso_sptBentArrowTextRect[] = // todo
992 { { 0, 0 }, { 21600, 21600 } }
994 static const SvxMSDffHandle mso_sptBentArrowHandle[] =
996 { MSDFF_HANDLE_FLAGS_RANGE,
997 0x100, 0x101, 10800, 10800, 12427, 21600, 0, 6079 }
999 static const mso_CustomShape msoBentArrow =
1001 (SvxMSDffVertPair*)mso_sptBentArrowVert, SAL_N_ELEMENTS( mso_sptBentArrowVert ),
1002 (sal_uInt16*)mso_sptBentArrowSegm, sizeof( mso_sptBentArrowSegm ) >> 1,
1003 (SvxMSDffCalculationData*)mso_sptBentArrowCalc, SAL_N_ELEMENTS( mso_sptBentArrowCalc ),
1004 (sal_Int32*)mso_sptBentArrowDefault,
1005 (SvxMSDffTextRectangles*)mso_sptBentArrowTextRect, SAL_N_ELEMENTS( mso_sptBentArrowTextRect ),
1006 21600, 21600,
1007 MIN_INT32, MIN_INT32,
1008 NULL, 0,
1009 (SvxMSDffHandle*)mso_sptBentArrowHandle, SAL_N_ELEMENTS( mso_sptBentArrowHandle ) // handles
1012 static const SvxMSDffVertPair mso_sptUturnArrowVert[] =
1014 { 0, 21600 }, { 0, 8550 }, // pp
1015 { 0, 3540 }, { 4370, 0 }, { 9270, 0 }, // ccp
1016 { 13890, 0 }, { 18570, 3230 }, { 18600, 8300 }, // ccp
1017 { 21600, 8300 }, { 15680, 14260 }, { 9700, 8300 }, { 12500, 8300 }, // pppp
1018 { 12320, 6380 }, { 10870, 5850 }, { 9320, 5850 }, // ccp
1019 { 7770, 5850 }, { 6040, 6410 }, { 6110, 8520 }, // ccp
1020 { 6110, 21600 }
1022 static const sal_uInt16 mso_sptUturnArrowSegm[] =
1024 0x4000, 0x0001, 0x2002, 0x0004, 0x2002, 0x0001, 0x6000, 0x8000
1026 static const SvxMSDffTextRectangles mso_sptUturnArrowTextRect[] =
1028 { { 0, 8280 }, { 6110, 21600 } }
1030 static const mso_CustomShape msoUturnArrow =
1032 (SvxMSDffVertPair*)mso_sptUturnArrowVert, SAL_N_ELEMENTS( mso_sptUturnArrowVert ),
1033 (sal_uInt16*)mso_sptUturnArrowSegm, sizeof( mso_sptUturnArrowSegm ) >> 1,
1034 NULL, 0,
1035 NULL,
1036 (SvxMSDffTextRectangles*)mso_sptUturnArrowTextRect, SAL_N_ELEMENTS( mso_sptUturnArrowTextRect ),
1037 21600, 21600,
1038 MIN_INT32, MIN_INT32,
1039 NULL, 0,
1040 NULL, 0 // handles
1043 static const SvxMSDffVertPair mso_sptLeftUpArrowVert[] = // adjustment1 : x 0 - 21600, adjustment2 : x 0 - 21600
1044 { // adjustment3 : y 0 - 21600
1045 { 0, 5 MSO_I }, { 2 MSO_I, 0 MSO_I }, { 2 MSO_I, 7 MSO_I }, { 7 MSO_I, 7 MSO_I },
1046 { 7 MSO_I, 2 MSO_I }, { 0 MSO_I, 2 MSO_I }, { 5 MSO_I, 0 }, { 21600, 2 MSO_I },
1047 { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 1 MSO_I }, { 2 MSO_I, 1 MSO_I }, { 2 MSO_I, 21600 }
1049 static const sal_uInt16 mso_sptLeftUpArrowSegm[] =
1051 0x4000, 0x000b, 0x6001, 0x8000
1053 static const SvxMSDffCalculationData mso_sptLeftUpArrowCalc[] =
1055 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0
1056 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }, // 1
1057 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } }, // 2
1058 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }, // 3
1059 { 0x2001, { 0x0403, 1, 2 } }, // 4
1060 { 0x6000, { DFF_Prop_adjustValue, 0x0404, 0 } }, // 5
1061 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } }, // 6
1062 { 0x6000, { DFF_Prop_adjustValue, 0x0406, 0 } }, // 7
1063 { 0x8000, { 21600, 0, 0x406 } }, // 8
1064 { 0xa000, { 0x408, 0, 0x406 } } // 9
1066 static const sal_Int32 mso_sptLeftUpArrowDefault[] =
1068 3, 9340, 18500, 6200
1070 static const SvxMSDffTextRectangles mso_sptLeftUpArrowTextRect[] =
1072 { { 2 MSO_I, 7 MSO_I }, { 1 MSO_I, 1 MSO_I } },
1073 { { 7 MSO_I, 2 MSO_I }, { 1 MSO_I, 1 MSO_I } }
1075 static const SvxMSDffHandle mso_sptLeftUpArrowHandle[] =
1077 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
1078 0x101, 0x102, 10800, 10800, 3 + 5, 21600, 0, 0x100 },
1079 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1080 0x100, 0, 10800, 10800, 0x102, 3 + 9, MIN_INT32, 0x7fffffff }
1082 static const mso_CustomShape msoLeftUpArrow =
1084 (SvxMSDffVertPair*)mso_sptLeftUpArrowVert, SAL_N_ELEMENTS( mso_sptLeftUpArrowVert ),
1085 (sal_uInt16*)mso_sptLeftUpArrowSegm, sizeof( mso_sptLeftUpArrowSegm ) >> 1,
1086 (SvxMSDffCalculationData*)mso_sptLeftUpArrowCalc, SAL_N_ELEMENTS( mso_sptLeftUpArrowCalc ),
1087 (sal_Int32*)mso_sptLeftUpArrowDefault,
1088 (SvxMSDffTextRectangles*)mso_sptLeftUpArrowTextRect, SAL_N_ELEMENTS( mso_sptLeftUpArrowTextRect ),
1089 21600, 21600,
1090 MIN_INT32, MIN_INT32,
1091 NULL, 0,
1092 (SvxMSDffHandle*)mso_sptLeftUpArrowHandle, SAL_N_ELEMENTS( mso_sptLeftUpArrowHandle ) // handles
1095 static const SvxMSDffVertPair mso_sptBentUpArrowVert[] = // adjustment1 : x 0 - 21600, adjustment2 : x 0 - 21600
1096 { // adjustment3 : y 0 - 21600
1097 { 0, 8 MSO_I }, { 7 MSO_I, 8 MSO_I }, { 7 MSO_I, 2 MSO_I }, { 0 MSO_I, 2 MSO_I },
1098 { 5 MSO_I, 0 }, { 21600, 2 MSO_I }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 21600 },
1099 { 0, 21600 }
1101 static const sal_uInt16 mso_sptBentUpArrowSegm[] =
1103 0x4000, 0x0008, 0x6001, 0x8000
1105 static const SvxMSDffCalculationData mso_sptBentUpArrowCalc[] =
1107 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0
1108 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }, // 1
1109 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } }, // 2
1110 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }, // 3
1111 { 0x2001, { 0x0403, 1, 2 } }, // 4
1112 { 0x6000, { DFF_Prop_adjustValue, 0x0404, 0 } }, // 5
1113 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } }, // 6
1114 { 0x6000, { DFF_Prop_adjustValue, 0x0406, 0 } }, // 7
1115 { 0x6000, { 0x0407, 0x0406, 0 } }, // 8
1116 { 0x8000, { 21600, 0, 0x406 } }, // 9
1117 { 0xa000, { 0x409, 0, 0x406 } } // a
1119 static const sal_Int32 mso_sptBentUpArrowDefault[] =
1121 3, 9340, 18500, 7200
1123 static const SvxMSDffTextRectangles mso_sptBentUpArrowTextRect[] =
1125 { { 2 MSO_I, 7 MSO_I }, { 1 MSO_I, 1 MSO_I } },
1126 { { 7 MSO_I, 2 MSO_I }, { 1 MSO_I, 1 MSO_I } }
1128 static const SvxMSDffHandle mso_sptBentUpArrowHandle[] =
1130 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
1131 0x101, 0x102, 10800, 10800, 3 + 5, 21600, 0, 0x100 },
1132 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1133 0x100, 0, 10800, 10800, 0x102, 3 + 10, MIN_INT32, 0x7fffffff }
1135 static const mso_CustomShape msoBentUpArrow =
1137 (SvxMSDffVertPair*)mso_sptBentUpArrowVert, SAL_N_ELEMENTS( mso_sptBentUpArrowVert ),
1138 (sal_uInt16*)mso_sptBentUpArrowSegm, sizeof( mso_sptBentUpArrowSegm ) >> 1,
1139 (SvxMSDffCalculationData*)mso_sptBentUpArrowCalc, SAL_N_ELEMENTS( mso_sptBentUpArrowCalc ),
1140 (sal_Int32*)mso_sptBentUpArrowDefault,
1141 (SvxMSDffTextRectangles*)mso_sptBentUpArrowTextRect, SAL_N_ELEMENTS( mso_sptBentUpArrowTextRect ),
1142 21600, 21600,
1143 MIN_INT32, MIN_INT32,
1144 NULL, 0,
1145 (SvxMSDffHandle*)mso_sptBentUpArrowHandle, SAL_N_ELEMENTS( mso_sptBentUpArrowHandle )
1148 static const SvxMSDffVertPair mso_sptCurvedRightVert[] =
1150 { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 22 MSO_I, 0 }, { 0, 4 MSO_I }, { 0, 15 MSO_I }, { 23 MSO_I, 1 MSO_I }, { 0, 7 MSO_I }, { 2 MSO_I, 13 MSO_I },
1151 { 2 MSO_I, 14 MSO_I }, { 22 MSO_I, 8 MSO_I }, { 2 MSO_I, 12 MSO_I },
1152 { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 2 MSO_I, 11 MSO_I }, { 26 MSO_I, 17 MSO_I }, { 0, 15 MSO_I }, { 23 MSO_I, 1 MSO_I }, { 26 MSO_I, 17 MSO_I }, { 22 MSO_I, 15 MSO_I },
1153 { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 22 MSO_I, 0 }, { 0, 4 MSO_I },
1154 { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 0, 4 MSO_I }, { 26 MSO_I, 17 MSO_I },
1155 { 0, 15 MSO_I }, { 23 MSO_I, 1 MSO_I }, { 26 MSO_I, 17 MSO_I }, { 22 MSO_I, 15 MSO_I }
1157 static const sal_uInt16 mso_sptCurvedRightSegm[] =
1159 0xa408,
1160 0x0003,
1161 0xa508,
1162 0x6000,
1163 0x8000,
1164 0xa404,
1165 0xa304,
1166 0xa504,
1167 0x6000,
1168 0x8000
1170 static const SvxMSDffCalculationData mso_sptCurvedRightCalc[] =
1172 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1173 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1174 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1175 { 0xa000, { DFF_Prop_adjustValue, 21600, DFF_Prop_adjust2Value } },
1176 { 0x2001, { 0x403, 1, 2 } },
1177 { 0x6000, { DFF_Prop_adjust2Value, DFF_Prop_adjust2Value, 21600 } },
1178 { 0xe000, { 0x405, DFF_Prop_adjust2Value, DFF_Prop_adjustValue } },
1179 { 0x2001, { 0x406, 1, 2 } },
1180 { 0x4002, { 21600, DFF_Prop_adjustValue, 0 } },
1181 { 0x8000, { 21600, 0, DFF_Prop_adjust3Value } },
1182 { 0xa00f, { 0x409, 21600, 0x404 } },
1183 { 0x6000, { 0x404, 0x40a, 0 } },
1184 { 0x6000, { 0x40b, DFF_Prop_adjust2Value, 21600 } },
1185 { 0x6000, { 0x407, 0x40a, 0 } },
1186 { 0xa000, { 0x40c, 21600, DFF_Prop_adjustValue } },
1187 { 0xa000, { 0x405, 0, DFF_Prop_adjustValue } },
1188 { 0x2001, { 0x40f, 1, 2 } },
1189 { 0x6002, { 0x404, 0x407, 0 } },
1190 { 0x6000, { DFF_Prop_adjustValue, DFF_Prop_adjust2Value, 21600 } },
1191 { 0x2001, { 0x412, 1, 2 } },
1192 { 0xa000, { 0x411, 0, 0x413 } },
1193 { 0x0000, { 21600, 0, 0 } },
1194 { 0x0000, { 21600, 0, 0 } },
1195 { 0x0001, { 21600, 2, 1 } },
1196 { 0xa000, { 0x411, 0, 0x404 } },
1197 { 0x600f, { 0x418, 0x404, 21600 } },
1198 { 0x8000, { 21600, 0, 0x419 } },
1199 { 0x2000, { 0x408, 128, 0 } },
1200 { 0x2001, { 0x405, 1, 2 } },
1201 { 0x2000, { 0x405, 0, 128 } },
1202 { 0xe000, { DFF_Prop_adjustValue, 0x411, 0x40c } },
1203 { 0x600f, { 0x414, 0x404, 21600 } },
1204 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
1205 { 0x2001, { 0x420, 1, 2 } },
1206 { 0x0001, { 21600, 21600, 1 } },
1207 { 0x6001, { 0x409, 0x409, 1 } },
1208 { 0xa000, { 0x422, 0, 0x423 } },
1209 { 0x200d, { 0x424, 0, 0 } },
1210 { 0x2000, { 0x425, 21600, 0 } },
1211 { 0x8001, { 21600, 21600, 0x426 } },
1212 { 0x2000, { 0x427, 64, 0 } },
1213 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
1214 { 0x600f, { 0x421, 0x429, 21600 } },
1215 { 0x8000, { 21600, 0, 0x42a } },
1216 { 0x2000, { 0x42b, 64, 0 } },
1217 { 0x2001, { 0x404, 1, 2 } },
1218 { 0xa000, { DFF_Prop_adjust2Value, 0, 0x42d } },
1219 { 0x0001, { 21600, 2195, 16384 } },
1220 { 0x0001, { 21600, 14189, 16384 } }
1222 static const sal_Int32 mso_sptCurvedRightDefault[] =
1224 3, 12960, 19440, 14400
1226 static const SvxMSDffTextRectangles mso_sptCurvedRightTextRect[] =
1228 { { 47 MSO_I, 45 MSO_I }, { 48 MSO_I, 46 MSO_I } }
1230 static const SvxMSDffVertPair mso_sptCurvedRightGluePoints[] =
1232 { 0, 17 MSO_I }, { 2 MSO_I, 14 MSO_I }, { 22 MSO_I, 8 MSO_I }, { 2 MSO_I, 12 MSO_I }, { 22 MSO_I, 16 MSO_I }
1234 static const SvxMSDffHandle mso_sptCurvedRightHandles[] =
1236 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1237 21600, 0x100, 10800, 10800, 0, 10800, 3 + 40, 3 + 29 },
1238 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1239 21600, 0x101, 10800, 10800, 0, 10800, 3 + 27, 3 + 21 },
1240 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1241 0x102, 21600, 10800, 10800, 3 + 44, 3 + 22, 3375, 21600 }
1243 static const mso_CustomShape msoCurvedRightArrow =
1245 (SvxMSDffVertPair*)mso_sptCurvedRightVert, SAL_N_ELEMENTS( mso_sptCurvedRightVert ),
1246 (sal_uInt16*)mso_sptCurvedRightSegm, sizeof( mso_sptCurvedRightSegm ) >> 1,
1247 (SvxMSDffCalculationData*)mso_sptCurvedRightCalc, SAL_N_ELEMENTS( mso_sptCurvedRightCalc ),
1248 (sal_Int32*)mso_sptCurvedRightDefault,
1249 (SvxMSDffTextRectangles*)mso_sptCurvedRightTextRect, SAL_N_ELEMENTS( mso_sptCurvedRightTextRect ),
1250 21600, 21600,
1251 MIN_INT32, MIN_INT32,
1252 (SvxMSDffVertPair*)mso_sptCurvedRightGluePoints, SAL_N_ELEMENTS( mso_sptCurvedRightGluePoints ),
1253 (SvxMSDffHandle*)mso_sptCurvedRightHandles, SAL_N_ELEMENTS( mso_sptCurvedRightHandles )
1256 static const SvxMSDffVertPair mso_sptCurvedDownVert[] =
1258 { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 0, 22 MSO_I }, { 4 MSO_I, 0 },
1259 { 15 MSO_I, 0 }, { 1 MSO_I, 23 MSO_I }, { 7 MSO_I, 0 }, { 13 MSO_I, 2 MSO_I },
1260 { 14 MSO_I, 2 MSO_I }, { 8 MSO_I, 22 MSO_I }, { 12 MSO_I, 2 MSO_I },
1261 { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 11 MSO_I, 2 MSO_I }, { 17 MSO_I, 26 MSO_I }, { 15 MSO_I, 0 },
1262 { 1 MSO_I, 23 MSO_I }, { 17 MSO_I, 26 MSO_I }, { 15 MSO_I, 22 MSO_I },
1263 { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 0, 22 MSO_I }, { 4 MSO_I, 0 },
1264 { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 4 MSO_I, 0 }, { 17 MSO_I, 26 MSO_I },
1265 { 15 MSO_I, 0 }, { 1 MSO_I, 23 MSO_I }, { 17 MSO_I, 26 MSO_I }, { 15 MSO_I, 22 MSO_I }
1267 static const sal_uInt16 mso_sptCurvedDownSegm[] =
1269 0xa608,
1270 0x0003,
1271 0xa308,
1272 0x6000,
1273 0x8000,
1274 0xa604,
1275 0xa504,
1276 0xa304,
1277 0x6000,
1278 0x8000
1280 static const SvxMSDffTextRectangles mso_sptCurvedDownTextRect[] =
1282 { { 45 MSO_I, 47 MSO_I }, { 46 MSO_I, 48 MSO_I } }
1284 static const SvxMSDffVertPair mso_sptCurvedDownGluePoints[] =
1286 { 17 MSO_I, 0 }, { 16 MSO_I, 22 MSO_I }, { 12 MSO_I, 2 MSO_I }, { 8 MSO_I, 22 MSO_I }, { 14 MSO_I, 2 MSO_I }
1288 static const SvxMSDffHandle mso_sptCurvedDownHandles[] =
1290 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1291 0x100, 21600, 10800, 10800, 3 + 40, 3 + 29, 0, 10800 },
1292 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1293 0x101, 21600, 10800, 10800, 3 + 27, 3 + 21, 0, 10800 },
1294 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1295 21600, 0x102, 10800, 10800, 3375, 21600, 3 + 44, 3 + 22 }
1298 static const mso_CustomShape msoCurvedDownArrow =
1300 (SvxMSDffVertPair*)mso_sptCurvedDownVert, SAL_N_ELEMENTS( mso_sptCurvedDownVert ),
1301 (sal_uInt16*)mso_sptCurvedDownSegm, sizeof( mso_sptCurvedDownSegm ) >> 1,
1302 (SvxMSDffCalculationData*)mso_sptCurvedRightCalc, SAL_N_ELEMENTS( mso_sptCurvedRightCalc ),
1303 (sal_Int32*)mso_sptCurvedRightDefault,
1304 (SvxMSDffTextRectangles*)mso_sptCurvedDownTextRect, SAL_N_ELEMENTS( mso_sptCurvedDownTextRect ),
1305 21600, 21600,
1306 MIN_INT32, MIN_INT32,
1307 (SvxMSDffVertPair*)mso_sptCurvedDownGluePoints, SAL_N_ELEMENTS( mso_sptCurvedDownGluePoints ),
1308 (SvxMSDffHandle*)mso_sptCurvedDownHandles, SAL_N_ELEMENTS( mso_sptCurvedDownHandles )
1311 static const SvxMSDffVertPair mso_sptCurvedUpVert[] =
1313 { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 0, 0 }, { 4 MSO_I, 21 MSO_I },
1314 { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 21 MSO_I },
1315 { 12 MSO_I, 2 MSO_I }, { 13 MSO_I, 2 MSO_I }, { 8 MSO_I, 0 }, { 11 MSO_I, 2 MSO_I },
1316 { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 10 MSO_I, 2 MSO_I }, { 16 MSO_I, 24 MSO_I },
1317 { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I }, { 14 MSO_I, 0 },
1318 { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 0, 0 }, { 4 MSO_I, 21 MSO_I },
1319 { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I },
1320 { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I }, { 14 MSO_I, 0 }
1322 static const sal_uInt16 mso_sptCurvedUpSegm[] =
1324 0xa408,
1325 0x0003,
1326 0xa508,
1327 0x6000,
1328 0x8000,
1329 0xa404,
1330 0xa508,
1331 0xa504,
1332 0x6000,
1333 0x8000
1335 static const SvxMSDffCalculationData mso_sptCurvedUpCalc[] =
1337 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1338 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1339 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1340 { 0xa000, { DFF_Prop_adjustValue, 21600, DFF_Prop_adjust2Value } },
1341 { 0x2001, { 0x403, 1, 2 } },
1342 { 0x6000, { DFF_Prop_adjust2Value, DFF_Prop_adjust2Value, 21600 } },
1343 { 0xe000, { 0x405, DFF_Prop_adjust2Value, DFF_Prop_adjustValue } },
1344 { 0x2001, { 0x406, 1, 2 } },
1345 { 0x4002, { 21600, DFF_Prop_adjustValue, 0 } },
1346 { 0xa00f, { DFF_Prop_adjust3Value, 21600, 0x404 } },
1347 { 0x6000, { 0x404, 0x409, 0 } },
1348 { 0x6000, { 0x40a, DFF_Prop_adjust2Value, 21600 } },
1349 { 0x6000, { 0x407, 0x409, 0 } },
1350 { 0xa000, { 0x40b, 21600, DFF_Prop_adjustValue } },
1351 { 0xa000, { 0x405, 0, DFF_Prop_adjustValue } },
1352 { 0x2001, { 0x40e, 1, 2 } },
1353 { 0x6002, { 0x404, 0x407, 0 } },
1354 { 0x6000, { DFF_Prop_adjustValue, DFF_Prop_adjust2Value, 21600 } },
1355 { 0x2001, { 0x411, 1, 2 } },
1356 { 0xa000, { 0x410, 0, 0x412 } },
1357 { 0x0000, { 21600, 0, 0 } },
1358 { 0x0000, { 21600, 0, 0 } },
1359 { 0x0000, { 0, 0, 21600 } },
1360 { 0xa000, { 0x410, 0, 0x404 } },
1361 { 0x600f, { 0x417, 0x404, 21600 } },
1362 { 0x2000, { 0x408, 128, 0 } },
1363 { 0x2001, { 0x405, 1, 2 } },
1364 { 0x2000, { 0x405, 0, 128 } },
1365 { 0xe000, { DFF_Prop_adjustValue, 0x410, 0x40b } },
1366 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
1367 { 0x2001, { 0x41d, 1, 2 } },
1368 { 0x0001, { 21600, 21600, 1 } },
1369 { 0x6001, { DFF_Prop_adjust3Value, DFF_Prop_adjust3Value, 1 } },
1370 { 0xa000, { 0x41f, 0, 0x420 } },
1371 { 0x200d, { 0x421, 0, 0 } },
1372 { 0x2000, { 0x422, 21600, 0 } },
1373 { 0x8001, { 21600, 21600, 0x423 } },
1374 { 0x2000, { 0x424, 64, 0 } },
1375 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
1376 { 0x600f, { 0x41e, 0x426, 21600 } },
1377 { 0x2000, { 0x427, 0, 64 } },
1378 { 0x2001, { 0x404, 1, 2 } },
1379 { 0xa000, { DFF_Prop_adjust2Value, 0, 0x429 } },
1380 { 0x0001, { 21600, 2195, 16384 } },
1381 { 0x0001, { 21600, 14189, 16384 } }
1383 static const sal_Int32 mso_sptCurvedUpDefault[] =
1385 3, 12960, 19440, 7200
1387 static const SvxMSDffTextRectangles mso_sptCurvedUpTextRect[] =
1389 { { 41 MSO_I, 43 MSO_I }, { 42 MSO_I, 44 MSO_I } }
1391 static const SvxMSDffVertPair mso_sptCurvedUpGluePoints[] =
1393 { 8 MSO_I, 0 }, { 11 MSO_I, 2 MSO_I }, { 15 MSO_I, 0 }, { 16 MSO_I, 21 MSO_I }, { 13 MSO_I, 2 MSO_I }
1395 static const SvxMSDffHandle mso_sptCurvedUpHandles[] =
1397 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1398 0x100, 0, 10800, 10800, 3 + 37, 3 + 27, 0, 10800 },
1399 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1400 0x101, 0, 10800, 10800, 3 + 25, 3 + 20, 0, 10800 },
1401 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1402 21600, 0x102, 10800, 10800, 3375, 21600, 0, 3 + 40 }
1404 static const mso_CustomShape msoCurvedUpArrow =
1406 (SvxMSDffVertPair*)mso_sptCurvedUpVert, SAL_N_ELEMENTS( mso_sptCurvedUpVert ),
1407 (sal_uInt16*)mso_sptCurvedUpSegm, sizeof( mso_sptCurvedUpSegm ) >> 1,
1408 (SvxMSDffCalculationData*)mso_sptCurvedUpCalc, SAL_N_ELEMENTS( mso_sptCurvedUpCalc ),
1409 (sal_Int32*)mso_sptCurvedUpDefault,
1410 (SvxMSDffTextRectangles*)mso_sptCurvedUpTextRect, SAL_N_ELEMENTS( mso_sptCurvedUpTextRect ),
1411 21600, 21600,
1412 MIN_INT32, MIN_INT32,
1413 (SvxMSDffVertPair*)mso_sptCurvedUpGluePoints, SAL_N_ELEMENTS( mso_sptCurvedUpGluePoints ),
1414 (SvxMSDffHandle*)mso_sptCurvedUpHandles, SAL_N_ELEMENTS( mso_sptCurvedUpHandles )
1417 static const SvxMSDffVertPair mso_sptCurvedLeftVert[] =
1419 { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 0, 0 }, { 21 MSO_I, 4 MSO_I },
1420 { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 21 MSO_I, 7 MSO_I }, { 2 MSO_I, 12 MSO_I },
1421 { 2 MSO_I, 13 MSO_I }, { 0, 8 MSO_I }, { 2 MSO_I, 11 MSO_I },
1422 { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 2 MSO_I, 10 MSO_I }, { 24 MSO_I, 16 MSO_I },
1423 { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 24 MSO_I, 16 MSO_I }, { 0, 14 MSO_I },
1424 { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 0, 0 }, { 21 MSO_I, 4 MSO_I },
1425 { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 21 MSO_I, 7 MSO_I }, { 24 MSO_I, 16 MSO_I },
1426 { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 24 MSO_I, 16 MSO_I }, { 0, 14 MSO_I }
1428 static const sal_uInt16 mso_sptCurvedLeftSegm[] =
1430 0xa608,
1431 0x0003,
1432 0xa308,
1433 0x6000,
1434 0x8000,
1435 0xa604,
1436 0xa308,
1437 0x6000,
1438 0x8000
1440 static const SvxMSDffTextRectangles mso_sptCurvedLeftTextRect[] =
1442 { { 43 MSO_I, 41 MSO_I }, { 44 MSO_I, 42 MSO_I } }
1444 static const SvxMSDffVertPair mso_sptCurvedLeftGluePoints[] =
1446 { 0, 15 MSO_I }, { 2 MSO_I, 11 MSO_I }, { 0, 8 MSO_I }, { 2 MSO_I, 13 MSO_I }, { 21 MSO_I, 16 MSO_I }
1448 static const SvxMSDffHandle mso_sptCurvedLeftHandles[] =
1450 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1451 0, 0x100, 10800, 10800, 0, 10800, 3 + 37, 3 + 27 },
1452 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1453 0, 0x101, 10800, 10800, 0, 10800, 3 + 25, 3 + 20 },
1454 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1455 0x102, 21600, 10800, 10800, 0, 3 + 40, 3375, 21600 }
1457 static const mso_CustomShape msoCurvedLeftArrow =
1459 (SvxMSDffVertPair*)mso_sptCurvedLeftVert, SAL_N_ELEMENTS( mso_sptCurvedLeftVert ),
1460 (sal_uInt16*)mso_sptCurvedLeftSegm, sizeof( mso_sptCurvedLeftSegm ) >> 1,
1461 (SvxMSDffCalculationData*)mso_sptCurvedUpCalc, SAL_N_ELEMENTS( mso_sptCurvedUpCalc ),
1462 (sal_Int32*)mso_sptCurvedUpDefault,
1463 (SvxMSDffTextRectangles*)mso_sptCurvedLeftTextRect, SAL_N_ELEMENTS( mso_sptCurvedLeftTextRect ),
1464 21600, 21600,
1465 MIN_INT32, MIN_INT32,
1466 (SvxMSDffVertPair*)mso_sptCurvedLeftGluePoints, SAL_N_ELEMENTS( mso_sptCurvedLeftGluePoints ),
1467 (SvxMSDffHandle*)mso_sptCurvedLeftHandles, SAL_N_ELEMENTS( mso_sptCurvedLeftHandles )
1470 static const SvxMSDffVertPair mso_sptStripedRightArrowVert[] = // adjustment1 : x 3375 - 21600
1471 { // adjustment2 : y 0 - 10800
1472 { 3375, 0 MSO_I }, { 1 MSO_I, 0 MSO_I }, { 1 MSO_I, 0 }, { 21600, 10800 },
1473 { 1 MSO_I, 21600 }, { 1 MSO_I, 2 MSO_I }, { 3375, 2 MSO_I }, { 0, 0 MSO_I },
1474 { 675, 0 MSO_I }, { 675, 2 MSO_I }, { 0, 2 MSO_I }, { 1350, 0 MSO_I },
1475 { 2700, 0 MSO_I }, { 2700, 2 MSO_I }, { 1350, 2 MSO_I }
1477 static const sal_uInt16 mso_sptStripedRightArrowSegm[] =
1479 0x4000, 0x0006, 0x6001, 0x8000,
1480 0x4000, 0x0003, 0x6001, 0x8000,
1481 0x4000, 0x0003, 0x6001, 0x8000
1483 static const SvxMSDffCalculationData mso_sptStripedRightArrowCalc[] =
1485 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1486 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1487 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } },
1488 { 0x8000, { 21600, 0, 0x401 } },
1489 { 0x6001, { 0x403, 0x400, 10800 } },
1490 { 0x6000, { 0x401, 0x404, 0 } }
1492 static const SvxMSDffTextRectangles mso_sptStripedRightArrowTextRect[] =
1494 { { 3375, 0 MSO_I }, { 5 MSO_I, 2 MSO_I } }
1496 static const SvxMSDffHandle mso_sptStripedRightArrowHandle[] =
1498 { MSDFF_HANDLE_FLAGS_RANGE,
1499 0x100, 0x101, 10800, 10800, 3375, 21600, 0, 10800 }
1501 static const mso_CustomShape msoStripedRightArrow =
1503 (SvxMSDffVertPair*)mso_sptStripedRightArrowVert, SAL_N_ELEMENTS( mso_sptStripedRightArrowVert ),
1504 (sal_uInt16*)mso_sptStripedRightArrowSegm, sizeof( mso_sptStripedRightArrowSegm ) >> 1,
1505 (SvxMSDffCalculationData*)mso_sptStripedRightArrowCalc, SAL_N_ELEMENTS( mso_sptStripedRightArrowCalc ),
1506 (sal_Int32*)mso_sptDefault16200and5400,
1507 (SvxMSDffTextRectangles*)mso_sptStripedRightArrowTextRect, SAL_N_ELEMENTS( mso_sptStripedRightArrowTextRect ),
1508 21600, 21600,
1509 MIN_INT32, MIN_INT32,
1510 NULL, 0,
1511 (SvxMSDffHandle*)mso_sptStripedRightArrowHandle, SAL_N_ELEMENTS( mso_sptStripedRightArrowHandle )
1514 static const SvxMSDffVertPair mso_sptNotchedRightArrowVert[] = // adjustment1 : x 0 - 21600 (default 16200)
1515 { // adjustment2 : y 0 - 10800 (default 5400)
1516 { 0, 1 MSO_I }, { 0 MSO_I, 1 MSO_I }, { 0 MSO_I, 0 }, { 21600, 10800 },
1517 { 0 MSO_I, 21600 }, { 0 MSO_I, 2 MSO_I }, { 0, 2 MSO_I }, { 5 MSO_I, 10800 }, { 0, 1 MSO_I }
1519 static const SvxMSDffCalculationData mso_sptNotchedRightArrowCalc[] =
1521 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1522 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1523 { 0x8000, { 21600, 0, DFF_Prop_adjust2Value } },
1524 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
1525 { 0x8000, { 10800, 0, DFF_Prop_adjust2Value } },
1526 { 0x6001, { 0x403, 0x404, 10800 } },
1527 { 0x8000, { 21600, 0, 0x405 }}
1529 static const SvxMSDffTextRectangles mso_sptNotchedRightArrowTextRect[] = // todo
1531 { { 5 MSO_I, 1 MSO_I }, { 6 MSO_I, 2 MSO_I } }
1533 static const SvxMSDffHandle mso_sptNotchedRightArrowHandle[] =
1535 { MSDFF_HANDLE_FLAGS_RANGE,
1536 0x100, 0x101, 10800, 10800, 0, 21600, 0, 10800 }
1538 static const mso_CustomShape msoNotchedRightArrow =
1540 (SvxMSDffVertPair*)mso_sptNotchedRightArrowVert, SAL_N_ELEMENTS( mso_sptNotchedRightArrowVert ),
1541 NULL, 0,
1542 (SvxMSDffCalculationData*)mso_sptNotchedRightArrowCalc, SAL_N_ELEMENTS( mso_sptNotchedRightArrowCalc ),
1543 (sal_Int32*)mso_sptDefault16200and5400,
1544 (SvxMSDffTextRectangles*)mso_sptNotchedRightArrowTextRect, SAL_N_ELEMENTS( mso_sptNotchedRightArrowTextRect ),
1545 21600, 21600,
1546 MIN_INT32, MIN_INT32,
1547 NULL, 0,
1548 (SvxMSDffHandle*)mso_sptNotchedRightArrowHandle, SAL_N_ELEMENTS( mso_sptNotchedRightArrowHandle )
1551 static const SvxMSDffVertPair mso_sptHomePlateVert[] = // adjustment1 : x 0 - 21600
1553 { 0, 0 }, { 0 MSO_I, 0 }, { 21600, 10800 }, { 0 MSO_I, 21600 },
1554 { 0, 21600 }
1556 static const sal_uInt16 mso_sptHomePlateSegm[] =
1558 0x4000, 0x0004, 0x6001, 0x8000
1560 static const SvxMSDffCalculationData mso_sptHomePlateCalc[] =
1562 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }
1564 static const sal_Int32 mso_sptHomePlateDefault[] =
1566 1, 16200
1568 static const SvxMSDffTextRectangles mso_sptHomePlateTextRect[] = // todo
1570 { { 0, 0 }, { 21600, 21600 } }
1572 static const SvxMSDffHandle mso_sptHomePlateHandle[] =
1574 { MSDFF_HANDLE_FLAGS_RANGE,
1575 0x100, 0, 10800, 10800, 0, 21600, MIN_INT32, 0x7fffffff }
1577 static const mso_CustomShape msoHomePlate =
1579 (SvxMSDffVertPair*)mso_sptHomePlateVert, SAL_N_ELEMENTS( mso_sptHomePlateVert ),
1580 (sal_uInt16*)mso_sptHomePlateSegm, sizeof( mso_sptHomePlateSegm ) >> 1,
1581 (SvxMSDffCalculationData*)mso_sptHomePlateCalc, SAL_N_ELEMENTS( mso_sptHomePlateCalc ),
1582 (sal_Int32*)mso_sptHomePlateDefault,
1583 (SvxMSDffTextRectangles*)mso_sptHomePlateTextRect, SAL_N_ELEMENTS( mso_sptHomePlateTextRect ),
1584 21600, 21600,
1585 MIN_INT32, MIN_INT32,
1586 NULL, 0,
1587 (SvxMSDffHandle*)mso_sptHomePlateHandle, SAL_N_ELEMENTS( mso_sptHomePlateHandle )
1590 static const SvxMSDffVertPair mso_sptChevronVert[] = // adjustment1 : x 0 - 21600
1592 { 0, 0 }, { 0 MSO_I, 0 }, { 21600, 10800 }, { 0 MSO_I, 21600 },
1593 { 0, 21600 }, { 1 MSO_I, 10800 }
1595 static const sal_uInt16 mso_sptChevronSegm[] =
1597 0x4000, 0x0005, 0x6001, 0x8000
1599 static const SvxMSDffCalculationData mso_sptChevronCalc[] =
1601 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1602 { 0x8000, { 21600, 0, 0x0400 } }
1604 static const sal_Int32 mso_sptChevronDefault[] =
1606 1, 16200
1608 static const SvxMSDffTextRectangles mso_sptChevronTextRect[] = // todo
1610 { { 0, 0 }, { 21600, 21600 } }
1612 static const SvxMSDffHandle mso_sptChevronHandle[] =
1614 { MSDFF_HANDLE_FLAGS_RANGE,
1615 0x100, 0, 10800, 10800, 0, 21600, MIN_INT32, 0x7fffffff }
1617 static const mso_CustomShape msoChevron =
1619 (SvxMSDffVertPair*)mso_sptChevronVert, SAL_N_ELEMENTS( mso_sptChevronVert ),
1620 (sal_uInt16*)mso_sptChevronSegm, sizeof( mso_sptChevronSegm ) >> 1,
1621 (SvxMSDffCalculationData*)mso_sptChevronCalc, SAL_N_ELEMENTS( mso_sptChevronCalc ),
1622 (sal_Int32*)mso_sptChevronDefault,
1623 (SvxMSDffTextRectangles*)mso_sptChevronTextRect, SAL_N_ELEMENTS( mso_sptChevronTextRect ),
1624 21600, 21600,
1625 MIN_INT32, MIN_INT32,
1626 NULL, 0,
1627 (SvxMSDffHandle*)mso_sptChevronHandle, SAL_N_ELEMENTS( mso_sptChevronHandle )
1630 static const SvxMSDffVertPair mso_sptRightArrowCalloutVert[] = // adjustment1 : x 0 - 21000
1631 { // adjustment2 : y 0 - 10800
1632 { 0, 0 }, { 0 MSO_I, 0 }, { 0 MSO_I, 3 MSO_I }, { 2 MSO_I, 3 MSO_I },
1633 { 2 MSO_I, 1 MSO_I }, { 21600, 10800 }, { 2 MSO_I, 4 MSO_I }, { 2 MSO_I, 5 MSO_I },
1634 { 0 MSO_I, 5 MSO_I }, { 0 MSO_I, 21600 }, { 0, 21600 }
1636 static const sal_uInt16 mso_sptRightArrowCalloutSegm[] =
1638 0x4000, 0x000a, 0x6001, 0x8000
1640 static const SvxMSDffCalculationData mso_sptRightArrowCalloutCalc[] =
1642 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1643 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1644 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1645 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1646 { 0x8000, { 21600, 0, 0x0401 } },
1647 { 0x8000, { 21600, 0, 0x0403 } }
1649 static const sal_Int32 mso_sptRightArrowCalloutDefault[] =
1651 4, 14400, 5400, 18000, 8100
1653 static const SvxMSDffTextRectangles mso_sptRightArrowCalloutTextRect[] =
1655 { { 0, 0 }, { 0 MSO_I, 21600 } }
1657 static const SvxMSDffHandle mso_sptRightArrowCalloutHandle[] =
1659 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1660 0x100, 0, 10800, 10800, 0, 0x102, MIN_INT32, 0x7fffffff },
1661 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
1662 0x102, 0x103, 10800, 10800, 0x100, 21600, 0x101, 10800 },
1663 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1664 1, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 0x103 }
1666 static const mso_CustomShape msoRightArrowCallout =
1668 (SvxMSDffVertPair*)mso_sptRightArrowCalloutVert, SAL_N_ELEMENTS( mso_sptRightArrowCalloutVert ),
1669 (sal_uInt16*)mso_sptRightArrowCalloutSegm, sizeof( mso_sptRightArrowCalloutSegm ) >> 1,
1670 (SvxMSDffCalculationData*)mso_sptRightArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptRightArrowCalloutCalc ),
1671 (sal_Int32*)mso_sptRightArrowCalloutDefault,
1672 (SvxMSDffTextRectangles*)mso_sptRightArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptRightArrowCalloutTextRect ),
1673 21600, 21600,
1674 MIN_INT32, MIN_INT32,
1675 NULL, 0,
1676 (SvxMSDffHandle*)mso_sptRightArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptRightArrowCalloutHandle )
1679 static const SvxMSDffVertPair mso_sptLeftArrowCalloutVert[] = // adjustment1 : x 0 - 21600, adjustment2 : y 0 - 10800
1680 { // adjustment3 : x 0 - 21600, adjustment4 : y 0 - 10800
1681 { 0 MSO_I, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0 MSO_I, 21600 },
1682 { 0 MSO_I, 5 MSO_I }, { 2 MSO_I, 5 MSO_I }, { 2 MSO_I, 4 MSO_I }, { 0, 10800 },
1683 { 2 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 0 MSO_I, 3 MSO_I }
1685 static const sal_uInt16 mso_sptLeftArrowCalloutSegm[] =
1687 0x4000, 0x000a, 0x6001, 0x8000
1689 static const SvxMSDffCalculationData mso_sptLeftArrowCalloutCalc[] =
1691 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1692 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1693 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1694 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1695 { 0x8000, { 21600, 0, 0x0401 } },
1696 { 0x8000, { 21600, 0, 0x0403 } }
1698 static const sal_Int32 mso_sptLeftArrowCalloutDefault[] =
1700 4, 7200, 5400, 3600, 8100
1702 static const SvxMSDffTextRectangles mso_sptLeftArrowCalloutTextRect[] =
1704 { { 0 MSO_I, 0 }, { 21600, 21600 } }
1706 static const SvxMSDffHandle mso_sptLeftArrowCalloutHandle[] =
1708 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
1709 0x100, 0, 10800, 10800, 0x102, 21600, MIN_INT32, 0x7fffffff },
1710 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
1711 0x102, 0x103, 10800, 10800, 0, 0x100, 0x101, 10800 },
1712 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1713 0, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 0x103 }
1715 static const mso_CustomShape msoLeftArrowCallout =
1717 (SvxMSDffVertPair*)mso_sptLeftArrowCalloutVert, SAL_N_ELEMENTS( mso_sptLeftArrowCalloutVert ),
1718 (sal_uInt16*)mso_sptLeftArrowCalloutSegm, sizeof( mso_sptLeftArrowCalloutSegm ) >> 1,
1719 (SvxMSDffCalculationData*)mso_sptLeftArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptLeftArrowCalloutCalc ),
1720 (sal_Int32*)mso_sptLeftArrowCalloutDefault,
1721 (SvxMSDffTextRectangles*)mso_sptLeftArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptLeftArrowCalloutTextRect ),
1722 21600, 21600,
1723 MIN_INT32, MIN_INT32,
1724 NULL, 0,
1725 (SvxMSDffHandle*)mso_sptLeftArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptLeftArrowCalloutHandle )
1728 static const SvxMSDffVertPair mso_sptUpArrowCalloutVert[] =
1730 { 21600, 0 MSO_I }, { 21600, 21600 }, { 0, 21600 }, { 0, 0 MSO_I },
1731 { 3 MSO_I, 0 MSO_I }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I }, { 10800, 0 },
1732 { 4 MSO_I, 2 MSO_I }, { 5 MSO_I, 2 MSO_I }, { 5 MSO_I, 0 MSO_I }
1734 static const sal_uInt16 mso_sptUpArrowCalloutSegm[] =
1736 0x4000, 0x000a, 0x6001, 0x8000
1738 static const SvxMSDffCalculationData mso_sptUpArrowCalloutCalc[] =
1740 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1741 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1742 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1743 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1744 { 0x8000, { 21600, 0, 0x0401 } },
1745 { 0x8000, { 21600, 0, 0x0403 } }
1747 static const sal_Int32 mso_sptUpArrowCalloutDefault[] =
1749 4, 7200, 5400, 3600, 8100
1751 static const SvxMSDffTextRectangles mso_sptUpArrowCalloutTextRect[] =
1753 { { 0, 0 MSO_I }, { 21600, 21600 } }
1755 static const SvxMSDffHandle mso_sptUpArrowCalloutHandle[] =
1757 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
1758 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0x102, 21600 },
1759 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1760 0x103, 0x102, 10800, 10800, 0x101, 10800, 0, 0x100 },
1761 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1762 0x101, 0, 10800, 10800, 0, 0x103, MIN_INT32, 0x7fffffff }
1764 static const mso_CustomShape msoUpArrowCallout =
1766 (SvxMSDffVertPair*)mso_sptUpArrowCalloutVert, SAL_N_ELEMENTS( mso_sptUpArrowCalloutVert ),
1767 (sal_uInt16*)mso_sptUpArrowCalloutSegm, sizeof( mso_sptUpArrowCalloutSegm ) >> 1,
1768 (SvxMSDffCalculationData*)mso_sptUpArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptUpArrowCalloutCalc ),
1769 (sal_Int32*)mso_sptUpArrowCalloutDefault,
1770 (SvxMSDffTextRectangles*)mso_sptUpArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptUpArrowCalloutTextRect ),
1771 21600, 21600,
1772 MIN_INT32, MIN_INT32,
1773 NULL, 0,
1774 (SvxMSDffHandle*)mso_sptUpArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptUpArrowCalloutHandle )
1777 static const SvxMSDffVertPair mso_sptDownArrowCalloutVert[] =
1779 { 0, 0 MSO_I }, { 0, 0 }, { 21600, 0 }, { 21600, 0 MSO_I },
1780 { 5 MSO_I, 0 MSO_I }, { 5 MSO_I, 2 MSO_I }, { 4 MSO_I, 2 MSO_I }, { 10800, 21600 },
1781 { 1 MSO_I, 2 MSO_I }, { 3 MSO_I, 2 MSO_I }, { 3 MSO_I, 0 MSO_I }
1783 static const sal_uInt16 mso_sptDownArrowCalloutSegm[] =
1785 0x4000, 0x000a, 0x6001, 0x8000
1787 static const SvxMSDffCalculationData mso_sptDownArrowCalloutCalc[] =
1789 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1790 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1791 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1792 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1793 { 0x8000, { 21600, 0, 0x0401 } },
1794 { 0x8000, { 21600, 0, 0x0403 } }
1796 static const sal_Int32 mso_sptDownArrowCalloutDefault[] =
1798 4, 14400, 5400, 18000, 8100
1800 static const SvxMSDffTextRectangles mso_sptDownArrowCalloutTextRect[] =
1802 { { 0, 0 }, { 21600, 0 MSO_I } }
1804 static const SvxMSDffHandle mso_sptDownArrowCalloutHandle[] =
1806 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1807 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 0x102 },
1808 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
1809 0x103, 0x102, 10800, 10800, 0x101, 10800, 0x100, 21600 },
1810 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1811 0x101, 1, 10800, 10800, 0, 0x103, MIN_INT32, 0x7fffffff }
1813 static const mso_CustomShape msoDownArrowCallout =
1815 (SvxMSDffVertPair*)mso_sptDownArrowCalloutVert, SAL_N_ELEMENTS( mso_sptDownArrowCalloutVert ),
1816 (sal_uInt16*)mso_sptDownArrowCalloutSegm, sizeof( mso_sptDownArrowCalloutSegm ) >> 1,
1817 (SvxMSDffCalculationData*)mso_sptDownArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptDownArrowCalloutCalc ),
1818 (sal_Int32*)mso_sptDownArrowCalloutDefault,
1819 (SvxMSDffTextRectangles*)mso_sptDownArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptDownArrowCalloutTextRect ),
1820 21600, 21600,
1821 MIN_INT32, MIN_INT32,
1822 NULL, 0,
1823 (SvxMSDffHandle*)mso_sptDownArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptDownArrowCalloutHandle )
1826 static const SvxMSDffVertPair mso_sptLeftRightArrowCalloutVert[] =
1828 { 0 MSO_I, 0 }, { 4 MSO_I, 0 }, { 4 MSO_I, 3 MSO_I }, { 6 MSO_I, 3 MSO_I },
1829 { 6 MSO_I, 1 MSO_I }, { 21600, 10800 }, { 6 MSO_I, 5 MSO_I }, { 6 MSO_I, 7 MSO_I },
1830 { 4 MSO_I, 7 MSO_I }, { 4 MSO_I, 21600 }, { 0 MSO_I, 21600 }, { 0 MSO_I, 7 MSO_I },
1831 { 2 MSO_I, 7 MSO_I }, { 2 MSO_I, 5 MSO_I }, { 0, 10800 }, { 2 MSO_I, 1 MSO_I },
1832 { 2 MSO_I, 3 MSO_I }, { 0 MSO_I, 3 MSO_I }
1834 static const sal_uInt16 mso_sptLeftRightArrowCalloutSegm[] =
1836 0x4000, 0x0011, 0x6001, 0x8000
1838 static const SvxMSDffCalculationData mso_sptLeftRightArrowCalloutCalc[] =
1840 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1841 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1842 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1843 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1844 { 0x8000, { 21600, 0, 0x0400 } },
1845 { 0x8000, { 21600, 0, 0x0401 } },
1846 { 0x8000, { 21600, 0, 0x0402 } },
1847 { 0x8000, { 21600, 0, 0x0403 } }
1849 static const sal_Int32 mso_sptLeftRightArrowCalloutDefault[] =
1851 4, 5400, 5500, 2700, 8100
1853 static const SvxMSDffTextRectangles mso_sptLeftRightArrowCalloutTextRect[] =
1855 { { 0 MSO_I, 0 }, { 4 MSO_I, 21600 } }
1857 static const SvxMSDffHandle mso_sptLeftRightArrowCalloutHandle[] =
1859 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
1860 0x100, 0, 10800, 10800, 0x102, 10800, MIN_INT32, 0x7fffffff },
1861 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
1862 0x102, 0x103, 10800, 10800, 0, 0x100, 0x101, 10800 },
1863 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1864 0, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 0x103 }
1866 static const mso_CustomShape msoLeftRightArrowCallout =
1868 (SvxMSDffVertPair*)mso_sptLeftRightArrowCalloutVert, SAL_N_ELEMENTS( mso_sptLeftRightArrowCalloutVert ),
1869 (sal_uInt16*)mso_sptLeftRightArrowCalloutSegm, sizeof( mso_sptLeftRightArrowCalloutSegm ) >> 1,
1870 (SvxMSDffCalculationData*)mso_sptLeftRightArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptLeftRightArrowCalloutCalc ),
1871 (sal_Int32*)mso_sptLeftRightArrowCalloutDefault,
1872 (SvxMSDffTextRectangles*)mso_sptLeftRightArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptLeftRightArrowCalloutTextRect ),
1873 21600, 21600,
1874 MIN_INT32, MIN_INT32,
1875 NULL, 0,
1876 (SvxMSDffHandle*)mso_sptLeftRightArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptLeftRightArrowCalloutHandle )
1879 static const SvxMSDffVertPair mso_sptUpDownArrowCalloutVert[] =
1881 { 0, 0 MSO_I }, { 0, 4 MSO_I }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 6 MSO_I },
1882 { 1 MSO_I, 6 MSO_I }, { 10800, 21600 }, { 5 MSO_I, 6 MSO_I }, { 7 MSO_I, 6 MSO_I },
1883 { 7 MSO_I, 4 MSO_I }, { 21600, 4 MSO_I }, { 21600, 0 MSO_I }, { 7 MSO_I, 0 MSO_I },
1884 { 7 MSO_I, 2 MSO_I }, { 5 MSO_I, 2 MSO_I }, { 10800, 0 }, { 1 MSO_I, 2 MSO_I },
1885 { 3 MSO_I, 2 MSO_I }, { 3 MSO_I, 0 MSO_I }
1887 static const sal_uInt16 mso_sptUpDownArrowCalloutSegm[] =
1889 0x4000, 0x0011, 0x6001, 0x8000
1891 static const SvxMSDffCalculationData mso_sptUpDownArrowCalloutCalc[] =
1893 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1894 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1895 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1896 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1897 { 0x8000, { 21600, 0, 0x0400 } },
1898 { 0x8000, { 21600, 0, 0x0401 } },
1899 { 0x8000, { 21600, 0, 0x0402 } },
1900 { 0x8000, { 21600, 0, 0x0403 } }
1902 static const sal_Int32 mso_sptUpDownArrowCalloutDefault[] =
1904 4, 5400, 5500, 2700, 8100
1906 static const SvxMSDffTextRectangles mso_sptUpDownArrowCalloutTextRect[] =
1908 { { 0, 0 MSO_I }, { 21600, 4 MSO_I } }
1910 static const SvxMSDffHandle mso_sptUpDownArrowCalloutHandle[] =
1912 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
1913 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0x102, 10800 },
1914 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1915 0x103, 0x102, 10800, 10800, 0x101, 10800, 0, 0x100 },
1916 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
1917 0x101, 0, 10800, 10800, 0, 0x103, MIN_INT32, 0x7fffffff }
1919 static const mso_CustomShape msoUpDownArrowCallout =
1921 (SvxMSDffVertPair*)mso_sptUpDownArrowCalloutVert, SAL_N_ELEMENTS( mso_sptUpDownArrowCalloutVert ),
1922 (sal_uInt16*)mso_sptUpDownArrowCalloutSegm, sizeof( mso_sptUpDownArrowCalloutSegm ) >> 1,
1923 (SvxMSDffCalculationData*)mso_sptUpDownArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptUpDownArrowCalloutCalc ),
1924 (sal_Int32*)mso_sptUpDownArrowCalloutDefault,
1925 (SvxMSDffTextRectangles*)mso_sptUpDownArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptUpDownArrowCalloutTextRect ),
1926 21600, 21600,
1927 MIN_INT32, MIN_INT32,
1928 NULL, 0,
1929 (SvxMSDffHandle*)mso_sptUpDownArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptUpDownArrowCalloutHandle )
1932 static const SvxMSDffVertPair mso_sptQuadArrowCalloutVert[] =
1934 { 0 MSO_I, 0 MSO_I }, { 3 MSO_I, 0 MSO_I }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
1935 { 10800, 0 }, { 5 MSO_I, 2 MSO_I }, { 7 MSO_I, 2 MSO_I }, { 7 MSO_I, 0 MSO_I },
1936 { 4 MSO_I, 0 MSO_I }, { 4 MSO_I, 3 MSO_I }, { 6 MSO_I, 3 MSO_I }, { 6 MSO_I, 1 MSO_I },
1937 { 21600, 10800 }, { 6 MSO_I, 5 MSO_I }, { 6 MSO_I, 7 MSO_I }, { 4 MSO_I, 7 MSO_I },
1938 { 4 MSO_I, 4 MSO_I }, { 7 MSO_I, 4 MSO_I }, { 7 MSO_I, 6 MSO_I }, { 5 MSO_I, 6 MSO_I },
1939 { 10800, 21600 }, { 1 MSO_I, 6 MSO_I }, { 3 MSO_I, 6 MSO_I }, { 3 MSO_I, 4 MSO_I },
1940 { 0 MSO_I, 4 MSO_I }, { 0 MSO_I, 7 MSO_I }, { 2 MSO_I, 7 MSO_I }, { 2 MSO_I, 5 MSO_I },
1941 { 0, 10800 }, { 2 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 0 MSO_I, 3 MSO_I }
1943 static const sal_uInt16 mso_sptQuadArrowCalloutSegm[] =
1945 0x4000, 0x001f, 0x6001, 0x8000
1947 static const SvxMSDffCalculationData mso_sptQuadArrowCalloutCalc[] =
1949 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
1950 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
1951 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
1952 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
1953 { 0x8000, { 21600, 0, 0x0400 } },
1954 { 0x8000, { 21600, 0, 0x0401 } },
1955 { 0x8000, { 21600, 0, 0x0402 } },
1956 { 0x8000, { 21600, 0, 0x0403 } }
1958 static const sal_Int32 mso_sptQuadArrowCalloutDefault[] =
1960 4, 5400, 8100, 2700, 9400
1962 static const SvxMSDffTextRectangles mso_sptQuadArrowCalloutTextRect[] =
1964 { { 0 MSO_I, 0 MSO_I }, { 4 MSO_I, 4 MSO_I } }
1966 static const SvxMSDffHandle mso_sptQuadArrowCalloutHandle[] =
1968 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1969 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0x102, 0x101 },
1970 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
1971 0x101, 0, 10800, 10800, 0x100, 10800, MIN_INT32, 0x7fffffff },
1972 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
1973 0x103, 0x102, 10800, 10800, 0x101, 10800, 0, 0x100 }
1975 static const mso_CustomShape msoQuadArrowCallout =
1977 (SvxMSDffVertPair*)mso_sptQuadArrowCalloutVert, SAL_N_ELEMENTS( mso_sptQuadArrowCalloutVert ),
1978 (sal_uInt16*)mso_sptQuadArrowCalloutSegm, sizeof( mso_sptQuadArrowCalloutSegm ) >> 1,
1979 (SvxMSDffCalculationData*)mso_sptQuadArrowCalloutCalc, SAL_N_ELEMENTS( mso_sptQuadArrowCalloutCalc ),
1980 (sal_Int32*)mso_sptQuadArrowCalloutDefault,
1981 (SvxMSDffTextRectangles*)mso_sptQuadArrowCalloutTextRect, SAL_N_ELEMENTS( mso_sptQuadArrowCalloutTextRect ),
1982 21600, 21600,
1983 MIN_INT32, MIN_INT32,
1984 NULL, 0,
1985 (SvxMSDffHandle*)mso_sptQuadArrowCalloutHandle, SAL_N_ELEMENTS( mso_sptQuadArrowCalloutHandle )
1988 static const SvxMSDffVertPair mso_sptCircularArrowVert[] =
1990 { 0x03 MSO_I, 0x03 MSO_I },
1991 { 0x14 MSO_I, 0x14 MSO_I },
1992 { 0x13 MSO_I, 0x12 MSO_I },
1993 { 0x11 MSO_I, 0x10 MSO_I },
1994 { 0, 0 }, { 21600, 21600 },
1995 { 0x09 MSO_I, 0x08 MSO_I },
1996 { 0x0B MSO_I, 0x0A MSO_I },
1997 { 0x18 MSO_I, 0x17 MSO_I },
1998 { 0x2F MSO_I, 0x2E MSO_I },
1999 { 0x1D MSO_I, 0x1C MSO_I }
2001 static const sal_uInt16 mso_sptCircularArrowSegm[] =
2003 0xa404, 0xa504, 0x0003, 0x6001, 0x8000
2005 static const SvxMSDffCalculationData mso_sptCircularArrowCalc[] =
2007 { 0x2000, { 0x0147, 0x0000, 0x0000 } },
2008 { 0x2000, { 0x0148, 0x0000, 0x0000 } },
2009 { 0x2000, { 0x0149, 0x0000, 0x0000 } },
2010 { 0x4000, { 0x2A30, 0x0149, 0x0000 } },
2011 { 0x4009, { 0x2A30, 0x0147, 0x0000 } },
2012 { 0x400A, { 0x2A30, 0x0147, 0x0000 } },
2013 { 0x4009, { 0x2A30, 0x0148, 0x0000 } },
2014 { 0x400A, { 0x2A30, 0x0148, 0x0000 } },
2015 { 0x2000, { 0x0404, 0x2A30, 0x0000 } },
2016 { 0x2000, { 0x0405, 0x2A30, 0x0000 } },
2017 { 0x2000, { 0x0406, 0x2A30, 0x0000 } },
2018 { 0x2000, { 0x0407, 0x2A30, 0x0000 } },
2019 { 0x6009, { 0x0403, 0x0147, 0x0000 } },
2020 { 0x600A, { 0x0403, 0x0147, 0x0000 } },
2021 { 0x6009, { 0x0403, 0x0148, 0x0000 } },
2022 { 0x600A, { 0x0403, 0x0148, 0x0000 } },
2023 { 0x2000, { 0x040C, 0x2A30, 0x0000 } },
2024 { 0x2000, { 0x040D, 0x2A30, 0x0000 } },
2025 { 0x2000, { 0x040E, 0x2A30, 0x0000 } },
2026 { 0x2000, { 0x040F, 0x2A30, 0x0000 } },
2027 { 0x8000, { 0x5460, 0x0000, 0x0403 } },
2028 { 0x4009, { 0x34BC, 0x0148, 0x0000 } },
2029 { 0x400A, { 0x34BC, 0x0148, 0x0000 } },
2030 { 0x2000, { 0x0415, 0x2A30, 0x0000 } },
2031 { 0x2000, { 0x0416, 0x2A30, 0x0000 } },
2032 { 0x2000, { 0x0149, 0x0000, 0x0A8C } },
2033 { 0x6009, { 0x0419, 0x0148, 0x0000 } },
2034 { 0x600A, { 0x0419, 0x0148, 0x0000 } },
2035 { 0x2000, { 0x041A, 0x2A30, 0x0000 } },
2036 { 0x2000, { 0x041B, 0x2A30, 0x0000 } },
2037 { 0xA000, { 0x041D, 0x0000, 0x0418 } },
2038 { 0xA000, { 0x041D, 0x0000, 0x0418 } },
2039 { 0x6001, { 0x041E, 0x041F, 0x0001 } },
2040 { 0xA000, { 0x041C, 0x0000, 0x0417 } },
2041 { 0xA000, { 0x041C, 0x0000, 0x0417 } },
2042 { 0x6001, { 0x0421, 0x0422, 0x0001 } },
2043 { 0x6000, { 0x0420, 0x0423, 0x0000 } },
2044 { 0x200D, { 0x0424, 0x0000, 0x0000 } },
2045 { 0x200E, { 0x0148, 0x002D, 0x0000 } },
2046 { 0x6009, { 0x0425, 0x0426, 0x0000 } },
2047 { 0x200E, { 0x0148, 0x002D, 0x0000 } },
2048 { 0x600A, { 0x0425, 0x0428, 0x0000 } },
2049 { 0x000E, { 0x0000, 0x002D, 0x0000 } },
2050 { 0x6009, { 0x0427, 0x042A, 0x0000 } },
2051 { 0x000E, { 0x0000, 0x002D, 0x0000 } },
2052 { 0x6009, { 0x0429, 0x042C, 0x0000 } },
2053 { 0x6000, { 0x041C, 0x042B, 0x0000 } },
2054 { 0x6000, { 0x041D, 0x042D, 0x0000 } }
2056 static const sal_Int32 mso_sptCircularArrowDefault[] =
2058 3, 180, 0, 5500
2060 static const SvxMSDffTextRectangles mso_sptCircularArrowTextRect[] = // todo
2062 { { 0, 0 }, { 21600, 21600 } }
2064 static const SvxMSDffHandle mso_sptCircularArrowHandle[] =
2066 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
2067 10800, 0x100, 10800, 10800, 10800, 10800, -0x7f4c0000, 0x00b40000 },
2068 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
2069 0x102, 0x101, 10800, 10800, 0, 10800, -0x7f4c0000, 0x00b40000 }
2071 static const mso_CustomShape msoCircularArrow =
2073 (SvxMSDffVertPair*)mso_sptCircularArrowVert, SAL_N_ELEMENTS( mso_sptCircularArrowVert ),
2074 (sal_uInt16*)mso_sptCircularArrowSegm, sizeof( mso_sptCircularArrowSegm ) >> 1,
2075 (SvxMSDffCalculationData*)mso_sptCircularArrowCalc, SAL_N_ELEMENTS( mso_sptCircularArrowCalc ),
2076 (sal_Int32*)mso_sptCircularArrowDefault,
2077 (SvxMSDffTextRectangles*)mso_sptCircularArrowTextRect, SAL_N_ELEMENTS( mso_sptCircularArrowTextRect ),
2078 21600, 21600,
2079 MIN_INT32, MIN_INT32,
2080 NULL, 0,
2081 (SvxMSDffHandle*)mso_sptCircularArrowHandle, SAL_N_ELEMENTS( mso_sptCircularArrowHandle ) // handles
2084 static const SvxMSDffVertPair mso_sptCubeVert[] =
2086 { 0, 12 MSO_I }, { 0, 1 MSO_I }, { 2 MSO_I, 0 }, { 11 MSO_I, 0 }, { 11 MSO_I, 3 MSO_I }, { 4 MSO_I, 12 MSO_I },
2087 { 0, 1 MSO_I }, { 2 MSO_I, 0 }, { 11 MSO_I, 0 }, { 4 MSO_I, 1 MSO_I },
2088 { 4 MSO_I, 12 MSO_I }, { 4 MSO_I, 1 MSO_I }, { 11 MSO_I, 0 }, { 11 MSO_I, 3 MSO_I }
2090 static const sal_uInt16 mso_sptCubeSegm[] =
2092 0x4000, 0x0005, 0x6001, 0x8000,
2093 0x4000, 0x0003, 0x6001, 0x8000,
2094 0x4000, 0x0003, 0x6001, 0x8000
2096 static const SvxMSDffCalculationData mso_sptCubeCalc[] =
2098 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2099 { 0x6000, { DFF_Prop_geoTop, 0x400, 0 } },
2100 { 0x6000, { DFF_Prop_geoLeft, 0x400, 0 } },
2101 { 0xa000, { DFF_Prop_geoBottom, 0, 0x400 } },
2102 { 0xa000, { DFF_Prop_geoRight, 0, 0x400 } },
2103 { 0xa000, { DFF_Prop_geoRight, 0, 0x402 } }, // 5
2104 { 0x2001, { 0x405, 1, 2 } }, // 6
2105 { 0x6000, { 0x402, 0x406, 0 } }, // 7
2106 { 0xa000, { DFF_Prop_geoBottom, 0, 0x401 } }, // 8
2107 { 0x2001, { 0x408, 1, 2 } }, // 9
2108 { 0x6000, { 0x401, 0x409, 0 } }, // 10
2109 { 0x2000, { DFF_Prop_geoRight, 0, 0 } }, // 11
2110 { 0x2000, { DFF_Prop_geoBottom, 0, 0 } } // 12
2112 static const SvxMSDffTextRectangles mso_sptCubeTextRect[] =
2114 { { 0, 1 MSO_I }, { 4 MSO_I, 12 MSO_I } }
2116 static const SvxMSDffHandle mso_sptCubeHandle[] =
2118 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
2119 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 21600 }
2121 static const SvxMSDffVertPair mso_sptCubeGluePoints[] =
2123 { 7 MSO_I, 0 }, { 6 MSO_I, 1 MSO_I }, { 0, 10 MSO_I }, { 6 MSO_I, 21600 }, { 4 MSO_I, 10 MSO_I }, { 21600, 9 MSO_I }
2125 static const mso_CustomShape msoCube =
2127 (SvxMSDffVertPair*)mso_sptCubeVert, SAL_N_ELEMENTS( mso_sptCubeVert ),
2128 (sal_uInt16*)mso_sptCubeSegm, sizeof( mso_sptCubeSegm ) >> 1,
2129 (SvxMSDffCalculationData*)mso_sptCubeCalc, SAL_N_ELEMENTS( mso_sptCubeCalc ),
2130 (sal_Int32*)mso_sptDefault5400,
2131 (SvxMSDffTextRectangles*)mso_sptCubeTextRect, SAL_N_ELEMENTS( mso_sptCubeTextRect ),
2132 21600, 21600,
2133 10800, 10800,
2134 (SvxMSDffVertPair*)mso_sptCubeGluePoints, SAL_N_ELEMENTS( mso_sptCubeGluePoints ),
2135 (SvxMSDffHandle*)mso_sptCubeHandle, SAL_N_ELEMENTS( mso_sptCubeHandle )
2138 static const SvxMSDffVertPair mso_sptBevelVert[] =
2140 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2141 { 0, 0 }, { 21600, 0 }, { 1 MSO_I, 0 MSO_I }, { 0 MSO_I, 0 MSO_I },
2142 { 21600, 0 }, { 21600, 21600 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 0 MSO_I },
2143 { 21600, 21600 }, { 0, 21600 }, { 0 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2144 { 0, 21600 }, { 0, 0 }, { 0 MSO_I, 0 MSO_I }, { 0 MSO_I, 2 MSO_I }
2146 static const sal_uInt16 mso_sptBevelSegm[] =
2148 0x4000, 0x0003, 0x6001, 0x8000,
2149 0x4000, 0x0003, 0x6001, 0x8000,
2150 0x4000, 0x0003, 0x6001, 0x8000,
2151 0x4000, 0x0003, 0x6001, 0x8000,
2152 0x4000, 0x0003, 0x6001, 0x8000
2154 static const SvxMSDffCalculationData mso_sptBevelCalc[] =
2156 { 0x2001, { DFF_Prop_adjustValue, 21599, 21600 } },
2157 { 0xa000, { DFF_Prop_geoRight, 0, 0x400 } },
2158 { 0xa000, { DFF_Prop_geoBottom, 0, 0x400 } }
2161 static const SvxMSDffTextRectangles mso_sptBevelTextRect[] =
2163 { { 0 MSO_I, 0 MSO_I }, { 1 MSO_I, 2 MSO_I } }
2165 static const SvxMSDffHandle mso_sptBevelHandle[] =
2167 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
2168 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
2170 static const mso_CustomShape msoBevel =
2172 (SvxMSDffVertPair*)mso_sptBevelVert, SAL_N_ELEMENTS( mso_sptBevelVert ),
2173 (sal_uInt16*)mso_sptBevelSegm, sizeof( mso_sptBevelSegm ) >> 1,
2174 (SvxMSDffCalculationData*)mso_sptBevelCalc, SAL_N_ELEMENTS( mso_sptBevelCalc ),
2175 (sal_Int32*)mso_sptDefault2700,
2176 (SvxMSDffTextRectangles*)mso_sptBevelTextRect, SAL_N_ELEMENTS( mso_sptBevelTextRect ),
2177 21600, 21600,
2178 10800, 10800,
2179 NULL, 0,
2180 (SvxMSDffHandle*)mso_sptBevelHandle, SAL_N_ELEMENTS( mso_sptBevelHandle )
2183 static const SvxMSDffVertPair mso_sptFoldedCornerVert[] = // adjustment1 : x 10800 - 21600
2185 { 0, 0 }, { 21600, 0 }, { 21600, 0 MSO_I }, { 0 MSO_I, 21600 },
2186 { 0, 21600 }, { 0 MSO_I, 21600 }, { 3 MSO_I, 0 MSO_I }, { 8 MSO_I, 9 MSO_I },
2187 { 10 MSO_I, 11 MSO_I }, { 21600, 0 MSO_I }
2189 static const sal_uInt16 mso_sptFoldedCornerSegm[] =
2191 0x4000, 0x0004, 0x6001, 0x8000,
2192 0x4000, 0x0001, 0x2001, 0x6001, 0x8000
2194 static const SvxMSDffCalculationData mso_sptFoldedCornerCalc[] =
2196 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2197 { 0x8000, { 21600, 0, 0x400 } },
2198 { 0x2001, { 0x0401, 8000, 10800 } },
2199 { 0x8000, { 21600, 0, 0x0402 } },
2200 { 0x2001, { 0x0401, 1, 2 } },
2201 { 0x2001, { 0x0401, 1, 4 } },
2202 { 0x2001, { 0x0401, 1, 7 } },
2203 { 0x2001, { 0x0401, 1, 16 } },
2204 { 0x6000, { 0x0403, 0x405, 0 } },
2205 { 0x6000, { 0x0400, 0x406, 0 } },
2206 { 0x8000, { 21600, 0, 0x404 } },
2207 { 0x6000, { 0x400, 0x407, 0 } }
2209 static const sal_Int32 mso_sptFoldedCornerDefault[] =
2211 1, 18900
2213 static const SvxMSDffTextRectangles mso_sptFoldedCornerTextRect[] =
2215 { { 0, 0 }, { 21600, 11 MSO_I } }
2217 static const SvxMSDffHandle mso_sptFoldedCornerHandle[] =
2219 { MSDFF_HANDLE_FLAGS_RANGE,
2220 0x100, 1, 10800, 10800, 10800, 21600, MIN_INT32, 0x7fffffff }
2222 static const mso_CustomShape msoFoldedCorner =
2224 (SvxMSDffVertPair*)mso_sptFoldedCornerVert, SAL_N_ELEMENTS( mso_sptFoldedCornerVert ),
2225 (sal_uInt16*)mso_sptFoldedCornerSegm, sizeof( mso_sptFoldedCornerSegm ) >> 1,
2226 (SvxMSDffCalculationData*)mso_sptFoldedCornerCalc, SAL_N_ELEMENTS( mso_sptFoldedCornerCalc ),
2227 (sal_Int32*)mso_sptFoldedCornerDefault,
2228 (SvxMSDffTextRectangles*)mso_sptFoldedCornerTextRect, SAL_N_ELEMENTS( mso_sptFoldedCornerTextRect ),
2229 21600, 21600,
2230 MIN_INT32, MIN_INT32,
2231 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
2232 (SvxMSDffHandle*)mso_sptFoldedCornerHandle, SAL_N_ELEMENTS( mso_sptFoldedCornerHandle )
2235 static const SvxMSDffVertPair mso_sptActionButtonBlankVert[] =
2237 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2238 { 0, 0 }, { 21600, 0 }, { 1 MSO_I, 0 MSO_I }, { 0 MSO_I, 0 MSO_I },
2239 { 21600, 0 }, { 21600, 21600 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 0 MSO_I },
2240 { 21600, 21600 }, { 0, 21600 }, { 0 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2241 { 0, 21600 }, { 0, 0 }, { 0 MSO_I, 0 MSO_I }, { 0 MSO_I, 2 MSO_I }
2243 static const sal_uInt16 mso_sptActionButtonBlankSegm[] =
2245 0x4000, 0x0003, 0x6001, 0x8000,
2246 0x4000, 0x0003, 0x6001, 0x8000,
2247 0x4000, 0x0003, 0x6001, 0x8000,
2248 0x4000, 0x0003, 0x6001, 0x8000,
2249 0x4000, 0x0003, 0x6001, 0x8000
2251 static const SvxMSDffCalculationData mso_sptActionButtonBlankCalc[] =
2253 { 0x2001, { DFF_Prop_adjustValue, 21599, 21600 } },
2254 { 0xa000, { DFF_Prop_geoRight, 0, 0x400 } },
2255 { 0xa000, { DFF_Prop_geoBottom, 0, 0x400 } }
2257 static const SvxMSDffTextRectangles mso_sptActionButtonBlankTextRect[] =
2259 { { 0 MSO_I, 0 MSO_I }, { 1 MSO_I, 2 MSO_I } }
2261 static const SvxMSDffHandle mso_sptButtonHandle[] =
2263 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
2264 0x100, 0, 10800, 10800, 0, 5400, MIN_INT32, 0x7fffffff }
2266 static const mso_CustomShape msoActionButtonBlank =
2268 (SvxMSDffVertPair*)mso_sptActionButtonBlankVert, SAL_N_ELEMENTS( mso_sptActionButtonBlankVert ),
2269 (sal_uInt16*)mso_sptActionButtonBlankSegm, sizeof( mso_sptActionButtonBlankSegm ) >> 1,
2270 (SvxMSDffCalculationData*)mso_sptActionButtonBlankCalc, SAL_N_ELEMENTS( mso_sptActionButtonBlankCalc ),
2271 (sal_Int32*)mso_sptDefault1400,
2272 (SvxMSDffTextRectangles*)mso_sptActionButtonBlankTextRect, SAL_N_ELEMENTS( mso_sptActionButtonBlankTextRect ),
2273 21600, 21600,
2274 10800, 10800,
2275 NULL, 0,
2276 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2279 static const SvxMSDffTextRectangles mso_sptActionButtonTextRect[] =
2281 { { 1 MSO_I, 2 MSO_I }, { 3 MSO_I, 4 MSO_I } }
2283 static const SvxMSDffVertPair mso_sptActionButtonHomeVert[] =
2285 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2286 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2287 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2288 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2289 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2291 { 7 MSO_I, 0xa MSO_I }, { 0xc MSO_I, 0xe MSO_I }, { 0xc MSO_I, 0x10 MSO_I }, { 0x12 MSO_I, 0x10 MSO_I },
2292 { 0x12 MSO_I, 0x14 MSO_I }, { 0x16 MSO_I, 8 MSO_I }, { 0x18 MSO_I, 8 MSO_I }, { 0x18 MSO_I, 0x1a MSO_I },
2293 { 0x1c MSO_I, 0x1a MSO_I }, { 0x1c MSO_I, 8 MSO_I }, { 0x1e MSO_I, 8 MSO_I },
2295 { 0xc MSO_I, 0xe MSO_I }, { 0xc MSO_I, 0x10 MSO_I }, { 0x12 MSO_I, 0x10 MSO_I },{ 0x12 MSO_I, 0x14 MSO_I },
2297 { 0x20 MSO_I, 0x24 MSO_I }, { 0x22 MSO_I, 0x24 MSO_I }, { 0x22 MSO_I, 0x1a MSO_I }, { 0x18 MSO_I, 0x1a MSO_I },
2298 { 0x18 MSO_I, 8 MSO_I }, { 0x1c MSO_I, 8 MSO_I }, { 0x1c MSO_I, 0x1a MSO_I }, { 0x20 MSO_I, 0x1a MSO_I }
2301 static const sal_uInt16 mso_sptActionButtonHomeSegm[] =
2303 0x4000, 0x0003, 0x6001, 0x8000,
2304 0x4000, 0x0003, 0x6001, 0x8000,
2305 0x4000, 0x0003, 0x6001, 0x8000,
2306 0x4000, 0x0003, 0x6001, 0x8000,
2307 0x4000, 0x0003, 0x6001, 0x8000,
2308 0x4000, 0x000a, 0x6001, 0x8000,
2309 0x4000, 0x0003, 0x6001, 0x8000,
2310 0x4000, 0x0007, 0x6001, 0x8000
2312 static const SvxMSDffCalculationData mso_sptActionButtonHomeCalc[] = // adj value 0 - 5400
2314 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2315 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2316 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2317 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2318 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2319 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2320 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2321 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2322 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2324 { 0x4001, { -8000, 0x0406, 1 } }, // 9
2325 { 0x6000, { 0x0409, 0x0408, 0 } }, // a
2326 { 0x4001, { 2960, 0x0406, 1 } }, // b
2327 { 0x6000, { 0x040b, 0x0407, 0 } }, // c
2328 { 0x4001, { -5000, 0x0406, 1 } }, // d
2329 { 0x6000, { 0x040d, 0x0408, 0 } }, // e
2330 { 0x4001, { -7000, 0x0406, 1 } }, // f
2331 { 0x6000, { 0x040f, 0x0408, 0 } }, // 10
2332 { 0x4001, { 5000, 0x0406, 1 } }, // 11
2333 { 0x6000, { 0x0411, 0x0407, 0 } }, // 12
2334 { 0x4001, { -2960, 0x0406, 1 } }, // 13
2335 { 0x6000, { 0x0413, 0x0408, 0 } }, // 14
2336 { 0x4001, { 8000, 0x0406, 1 } }, // 15
2337 { 0x6000, { 0x0415,0x0407, 0 } }, // 16
2338 { 0x4001, { 6100, 0x0406, 1 } }, // 17
2339 { 0x6000, { 0x0417,0x0407, 0 } }, // 18
2340 { 0x4001, { 8260, 0x0406, 1 } }, // 19
2341 { 0x6000, { 0x0419, 0x0408, 0 } }, // 1a
2342 { 0x4001, { -6100, 0x0406, 1 } }, // 1b
2343 { 0x6000, { 0x041b, 0x0407, 0 } }, // 1c
2344 { 0x4001, { -8000, 0x0406, 1 } }, // 1d
2345 { 0x6000, { 0x041d, 0x0407, 0 } }, // 1e
2346 { 0x4001, { -1060, 0x0406, 1 } }, // 1f
2347 { 0x6000, { 0x041f, 0x0407, 0 } }, // 20
2348 { 0x4001, { 1060, 0x0406, 1 } }, // 21
2349 { 0x6000, { 0x0421, 0x0407, 0 } }, // 22
2350 { 0x4001, { 4020, 0x0406, 1 } }, // 23
2351 { 0x6000, { 0x0423, 0x0408, 0 } } // 24
2354 static const mso_CustomShape msoActionButtonHome =
2356 (SvxMSDffVertPair*)mso_sptActionButtonHomeVert, SAL_N_ELEMENTS( mso_sptActionButtonHomeVert ),
2357 (sal_uInt16*)mso_sptActionButtonHomeSegm, sizeof( mso_sptActionButtonHomeSegm ) >> 1,
2358 (SvxMSDffCalculationData*)mso_sptActionButtonHomeCalc, SAL_N_ELEMENTS( mso_sptActionButtonHomeCalc ),
2359 (sal_Int32*)mso_sptDefault1400,
2360 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2361 21600, 21600,
2362 10800, 10800,
2363 NULL, 0,
2364 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2367 static const SvxMSDffVertPair mso_sptActionButtonHelpVert[] =
2369 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2370 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2371 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2372 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2373 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I,4 MSO_I },
2374 { 7 MSO_I, 0xc MSO_I }, { 0xa MSO_I, 0x3e MSO_I }, { 7 MSO_I, 0x10 MSO_I }, { 0xe MSO_I, 0x3e MSO_I }, { 7 MSO_I, 0xc MSO_I },
2375 { 0x12 MSO_I, 0x14 MSO_I }, { 0x12 MSO_I, 0x16 MSO_I }, // pp
2376 { 0x12 MSO_I, 0x18 MSO_I }, { 0x1a MSO_I, 8 MSO_I }, { 0x1c MSO_I, 8 MSO_I }, // ccp
2377 { 0x1e MSO_I, 8 MSO_I }, { 0x20 MSO_I, 0x22 MSO_I }, { 0x20 MSO_I, 0x24 MSO_I }, // ccp
2378 { 0x20 MSO_I, 0x26 MSO_I }, { 0x28 MSO_I, 0x2a MSO_I }, { 7 MSO_I, 0x2a MSO_I }, // ccp
2379 { 0x2c MSO_I, 0x2a MSO_I }, { 0x2e MSO_I, 0x26 MSO_I }, { 0x2e MSO_I, 0x24 MSO_I }, // ccp
2380 { 0x30 MSO_I, 0x24 MSO_I }, { 0x30 MSO_I, 0x32 MSO_I }, { 0x34 MSO_I, 0x36 MSO_I }, // ccp
2381 { 7 MSO_I, 0x36 MSO_I }, // p
2382 { 0x12 MSO_I, 0x36 MSO_I }, { 0x1c MSO_I, 0x32 MSO_I }, { 0x1c MSO_I, 0x24 MSO_I }, // ccp
2383 { 0x1c MSO_I, 0x38 MSO_I }, { 0x3a MSO_I, 0x3c MSO_I }, { 0x12 MSO_I, 0x3c MSO_I }, // ccp
2384 { 7 MSO_I, 0x3c MSO_I }, { 0x34 MSO_I, 8 MSO_I }, { 0x34 MSO_I, 0x16 MSO_I }, // ccp
2385 { 0x34 MSO_I, 0x14 MSO_I }
2387 static const sal_uInt16 mso_sptActionButtonHelpSegm[] =
2389 0x4000, 0x0003, 0x6001, 0x8000,
2390 0x4000, 0x0003, 0x6001, 0x8000,
2391 0x4000, 0x0003, 0x6001, 0x8000,
2392 0x4000, 0x0003, 0x6001, 0x8000,
2393 0x4000, 0x0003, 0x6001, 0x8000,
2394 0x4000, 0xa704, 0x6000, 0x8000,
2395 0x4000, 0x0001, 0x2004, 0x0001, 0x2004, 0x0001, 0x6001, 0x8000
2397 static const SvxMSDffCalculationData mso_sptActionButtonHelpCalc[] = // adj value 0 - 5400
2399 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2400 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2401 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2402 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2403 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2404 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2405 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2406 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2407 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2409 { 0x4001, { -1690, 0x0406, 1 } }, // 9
2410 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2411 { 0x4001, { 4600, 0x0406, 1 } }, // b
2412 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2413 { 0x4001, { 1690, 0x0406, 1 } }, // d
2414 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2415 { 0x4001, { 7980, 0x0406, 1 } }, // f
2416 { 0x6000, { 0x040f, 0x0408, 0 } }, // 10
2417 { 0x4001, { 1270, 0x0406, 1 } }, // 11
2418 { 0x6000, { 0x0411, 0x0407, 0 } }, // 12
2419 { 0x4001, { 4000, 0x0406, 1 } }, // 13
2420 { 0x6000, { 0x0413, 0x0408, 0 } }, // 14
2421 { 0x4001, { 1750, 0x0406, 1 } }, // 15
2422 { 0x6000, { 0x0415, 0x0408, 0 } }, // 16
2423 { 0x4001, { 800, 0x0406, 1 } }, // 17
2424 { 0x6000, { 0x0417, 0x0408, 0 } }, // 18
2425 { 0x4001, { 1650, 0x0406, 1 } }, // 19
2426 { 0x6000, { 0x0419, 0x0407, 0 } }, // 1a
2427 { 0x4001, { 2340, 0x0406, 1 } }, // 1b
2428 { 0x6000, { 0x041b, 0x0407, 0 } }, // 1c
2429 { 0x4001, { 3640, 0x0406, 1 } }, // 1d
2430 { 0x6000, { 0x041d, 0x0407, 0 } }, // 1e
2431 { 0x4001, { 4670, 0x0406, 1 } }, // 1f
2432 { 0x6000, { 0x041f, 0x0407, 0 } }, // 20
2433 { 0x4001, { -1570, 0x0406, 1 } }, // 21
2434 { 0x6000, { 0x0421, 0x0408, 0 } }, // 22
2435 { 0x4001, { -3390, 0x0406, 1 } }, // 23
2436 { 0x6000, { 0x0423, 0x0408, 0 } }, // 24
2437 { 0x4001, { -6050, 0x0406, 1 } }, // 25
2438 { 0x6000, { 0x0425, 0x0408, 0 } }, // 26
2439 { 0x4001, { 2540, 0x0406, 1 } }, // 27
2440 { 0x6000, { 0x0427, 0x0407, 0 } }, // 28
2441 { 0x4001, { -8050, 0x0406, 1 } }, // 29
2442 { 0x6000, { 0x0429, 0x0408, 0 } }, // 2a
2443 { 0x4001, { -2540, 0x0406, 1 } }, // 2b
2444 { 0x6000, { 0x042b, 0x0407, 0 } }, // 2c
2445 { 0x4001, { -4460, 0x0406, 1 } }, // 2d
2446 { 0x6000, { 0x042d, 0x0407, 0 } }, // 2e
2447 { 0x4001, { -2330, 0x0406, 1 } }, // 2f
2448 { 0x6000, { 0x042f, 0x0407, 0 } }, // 30
2449 { 0x4001, { -4700, 0x0406, 1 } }, // 31
2450 { 0x6000, { 0x0431, 0x0408, 0 } }, // 32
2451 { 0x4001, { -1270, 0x0406, 1 } }, // 33
2452 { 0x6000, { 0x0433, 0x0407, 0 } }, // 34
2453 { 0x4001, { -5720, 0x0406, 1 } }, // 35
2454 { 0x6000, { 0x0435, 0x0408, 0 } }, // 36
2455 { 0x4001, { -2540, 0x0406, 1 } }, // 37
2456 { 0x6000, { 0x0437, 0x0408, 0 } }, // 38
2457 { 0x4001, { 1800, 0x0406, 1 } }, // 39
2458 { 0x6000, { 0x0439, 0x0407, 0 } }, // 3a
2459 { 0x4001, { -1700, 0x0406, 1 } }, // 3b
2460 { 0x6000, { 0x043b, 0x0408, 0 } }, // 3c
2461 { 0x4001, { 6290, 0x0406, 1 } }, // 3d
2462 { 0x6000, { 0x043d, 0x0408, 0 } } // 3e
2464 static const mso_CustomShape msoActionButtonHelp =
2466 (SvxMSDffVertPair*)mso_sptActionButtonHelpVert, SAL_N_ELEMENTS( mso_sptActionButtonHelpVert ),
2467 (sal_uInt16*)mso_sptActionButtonHelpSegm, sizeof( mso_sptActionButtonHelpSegm ) >> 1,
2468 (SvxMSDffCalculationData*)mso_sptActionButtonHelpCalc, SAL_N_ELEMENTS( mso_sptActionButtonHelpCalc ),
2469 (sal_Int32*)mso_sptDefault1400,
2470 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2471 21600, 21600,
2472 10800, 10800,
2473 NULL, 0,
2474 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2477 static const SvxMSDffVertPair mso_sptActionButtonInformationVert[] =
2479 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2480 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2481 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2482 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2483 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2484 { 0x7 MSO_I, 0xc MSO_I }, { 0xa MSO_I, 0x8 MSO_I }, { 0x7 MSO_I, 0x10 MSO_I }, { 0xe MSO_I, 8 MSO_I }, { 0x7 MSO_I, 0xc MSO_I },
2485 { 0x7 MSO_I, 0x14 MSO_I }, { 0x12 MSO_I, 0x2a MSO_I }, { 0x7 MSO_I, 0x18 MSO_I }, { 0x16 MSO_I, 0x2a MSO_I }, { 0x7 MSO_I, 0x14 MSO_I },
2486 { 0x1a MSO_I, 0x1c MSO_I }, { 0x1e MSO_I, 0x1c MSO_I }, { 0x1e MSO_I, 0x20 MSO_I }, { 0x22 MSO_I, 0x20 MSO_I },
2487 { 0x22 MSO_I, 0x24 MSO_I }, { 0x1a MSO_I, 0x24 MSO_I }, { 0x1a MSO_I, 0x20 MSO_I }, { 0x26 MSO_I, 0x20 MSO_I },
2488 { 0x26 MSO_I, 0x28 MSO_I }, { 0x1a MSO_I, 0x28 MSO_I }
2490 static const sal_uInt16 mso_sptActionButtonInformationSegm[] =
2492 0x4000, 0x0003, 0x6001, 0x8000,
2493 0x4000, 0x0003, 0x6001, 0x8000,
2494 0x4000, 0x0003, 0x6001, 0x8000,
2495 0x4000, 0x0003, 0x6001, 0x8000,
2496 0x4000, 0x0003, 0x6001, 0x8000,
2497 0x4000, 0xa704, 0x6000, 0x8000,
2498 0x4000, 0xa704, 0x6000, 0x8000,
2499 0x4000, 0x0009, 0x6001, 0x8000
2501 static const SvxMSDffCalculationData mso_sptActionButtonInformationCalc[] = // adj value 0 - 5400
2503 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2504 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2505 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2506 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2507 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2508 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2509 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2510 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2511 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2513 { 0x4001, { -8050, 0x0406, 1 } }, // 9
2514 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2515 { 0x4001, { -8050, 0x0406, 1 } }, // b
2516 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2517 { 0x4001, { 8050, 0x0406, 1 } }, // d
2518 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2519 { 0x4001, { 8050, 0x0406, 1 } }, // f
2520 { 0x6000, { 0x040f, 0x0408, 0 } }, // 10
2522 { 0x4001, { -2060, 0x0406, 1 } }, // 11
2523 { 0x6000, { 0x0411, 0x0407, 0 } }, // 12
2524 { 0x4001, { -7620, 0x0406, 1 } }, // 13
2525 { 0x6000, { 0x0413, 0x0408, 0 } }, // 14
2526 { 0x4001, { 2060, 0x0406, 1 } }, // 15
2527 { 0x6000, { 0x0415, 0x0407, 0 } }, // 16
2528 { 0x4001, { -3500, 0x0406, 1 } }, // 17
2529 { 0x6000, { 0x0417, 0x0408, 0 } }, // 18
2531 { 0x4001, { -2960, 0x0406, 1 } }, // 19
2532 { 0x6000, { 0x0419, 0x0407, 0 } }, // 1a
2533 { 0x4001, { -2960, 0x0406, 1 } }, // 1b
2534 { 0x6000, { 0x041b, 0x0408, 0 } }, // 1c
2535 { 0x4001, { 1480, 0x0406, 1 } }, // 1d
2536 { 0x6000, { 0x041d, 0x0407, 0 } }, // 1e
2537 { 0x4001, { 5080, 0x0406, 1 } }, // 1f
2538 { 0x6000, { 0x041f, 0x0408, 0 } }, // 20
2539 { 0x4001, { 2960, 0x0406, 1 } }, // 21
2540 { 0x6000, { 0x0421, 0x0407, 0 } }, // 22
2541 { 0x4001, { 6140, 0x0406, 1 } }, // 23
2542 { 0x6000, { 0x0423, 0x0408, 0 } }, // 24
2543 { 0x4001, { -1480, 0x0406, 1 } }, // 25
2544 { 0x6000, { 0x0425, 0x0407, 0 } }, // 26
2545 { 0x4001, { -1920, 0x0406, 1 } }, // 27
2546 { 0x6000, { 0x0427, 0x0408, 0 } }, // 28
2548 { 0x4001, { -5560, 0x0406, 1 } }, // 29
2549 { 0x6000, { 0x0429, 0x0408, 0 } }, // 2a
2552 static const mso_CustomShape msoActionButtonInformation =
2554 (SvxMSDffVertPair*)mso_sptActionButtonInformationVert, SAL_N_ELEMENTS( mso_sptActionButtonInformationVert ),
2555 (sal_uInt16*)mso_sptActionButtonInformationSegm, sizeof( mso_sptActionButtonInformationSegm ) >> 1,
2556 (SvxMSDffCalculationData*)mso_sptActionButtonInformationCalc, SAL_N_ELEMENTS( mso_sptActionButtonInformationCalc ),
2557 (sal_Int32*)mso_sptDefault1400,
2558 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2559 21600, 21600,
2560 10800, 10800,
2561 NULL, 0,
2562 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2565 static const SvxMSDffVertPair mso_sptActionButtonBackPreviousVert[] =
2567 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2568 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2569 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2570 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I,4 MSO_I },
2571 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2573 { 0xa MSO_I, 8 MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0x10 MSO_I }
2575 static const sal_uInt16 mso_sptActionButtonForwardBackSegm[] =
2577 0x4000, 0x0003, 0x6001, 0x8000,
2578 0x4000, 0x0003, 0x6001, 0x8000,
2579 0x4000, 0x0003, 0x6001, 0x8000,
2580 0x4000, 0x0003, 0x6001, 0x8000,
2581 0x4000, 0x0003, 0x6001, 0x8000,
2582 0x4000, 0x0002, 0x6001, 0x8000
2584 static const SvxMSDffCalculationData mso_sptActionButtonForwardBackCalc[] = // adj value 0 - 5400
2586 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2587 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2588 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2589 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2590 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2591 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2592 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2593 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2594 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2596 { 0x4001, { -8050, 0x0406, 1 } }, // 9
2597 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2598 { 0x4001, { -8050, 0x0406, 1 } }, // b
2599 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2600 { 0x4001, { 8050, 0x0406, 1 } }, // d
2601 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2602 { 0x4001, { 8050, 0x0406, 1 } }, // f
2603 { 0x6000, { 0x040f, 0x0408, 0 } } // 10
2605 static const mso_CustomShape msoActionButtonBackPrevious =
2607 (SvxMSDffVertPair*)mso_sptActionButtonBackPreviousVert, SAL_N_ELEMENTS( mso_sptActionButtonBackPreviousVert ),
2608 (sal_uInt16*)mso_sptActionButtonForwardBackSegm, sizeof( mso_sptActionButtonForwardBackSegm ) >> 1,
2609 (SvxMSDffCalculationData*)mso_sptActionButtonForwardBackCalc, SAL_N_ELEMENTS( mso_sptActionButtonForwardBackCalc ),
2610 (sal_Int32*)mso_sptDefault1400,
2611 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2612 21600, 21600,
2613 10800, 10800,
2614 NULL, 0,
2615 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2618 static const SvxMSDffVertPair mso_sptActionButtonForwardNextVert[] =
2620 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2621 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2622 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2623 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2624 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2626 { 0xa MSO_I, 0xc MSO_I }, { 0xe MSO_I, 8 MSO_I }, { 0xa MSO_I, 0x10 MSO_I }
2628 static const mso_CustomShape msoActionButtonForwardNext =
2630 (SvxMSDffVertPair*)mso_sptActionButtonForwardNextVert, SAL_N_ELEMENTS( mso_sptActionButtonForwardNextVert ),
2631 (sal_uInt16*)mso_sptActionButtonForwardBackSegm, sizeof( mso_sptActionButtonForwardBackSegm ) >> 1,
2632 (SvxMSDffCalculationData*)mso_sptActionButtonForwardBackCalc, SAL_N_ELEMENTS( mso_sptActionButtonForwardBackCalc ),
2633 (sal_Int32*)mso_sptDefault1400,
2634 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2635 21600, 21600,
2636 10800, 10800,
2637 NULL, 0,
2638 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2641 static const SvxMSDffVertPair mso_sptActionButtonBeginningVert[] =
2643 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2644 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2645 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2646 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2647 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2649 { 0xa MSO_I, 8 MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0x10 MSO_I }, { 0x12 MSO_I, 0xc MSO_I },
2650 { 0x14 MSO_I, 0xc MSO_I }, { 0x14 MSO_I, 0x10 MSO_I }, { 0x12 MSO_I, 0x10 MSO_I }
2652 static const sal_uInt16 mso_sptActionButtonBeginningEndSegm[] =
2654 0x4000, 0x0003, 0x6001, 0x8000,
2655 0x4000, 0x0003, 0x6001, 0x8000,
2656 0x4000, 0x0003, 0x6001, 0x8000,
2657 0x4000, 0x0003, 0x6001, 0x8000,
2658 0x4000, 0x0003, 0x6001, 0x8000,
2660 0x4000, 0x0002, 0x6001, 0x8000,
2661 0x4000, 0x0003, 0x6001, 0x8000
2663 static const SvxMSDffCalculationData mso_sptActionButtonBeginningEndCalc[] = // adj value 0 - 5400
2665 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2666 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2667 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2668 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2669 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2670 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2671 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2672 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2673 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2675 { 0x4001, { -4020, 0x0406, 1 } }, // 9
2676 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2677 { 0x4001, { -8050, 0x0406, 1 } }, // b
2678 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2679 { 0x4001, { 8050, 0x0406, 1 } }, // d
2680 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2681 { 0x4001, { 8050, 0x0406, 1 } }, // f
2682 { 0x6000, { 0x040f, 0x0408, 0 } }, // 10
2684 { 0x4001, { -8050, 0x0406, 1 } }, // 11
2685 { 0x6000, { 0x0411, 0x0407, 0 } }, // 12
2686 { 0x4001, { -6140, 0x0406, 1 } }, // 13
2687 { 0x6000, { 0x0413, 0x0407, 0 } }, // 14
2690 { 0x4001, { 4020, 0x0406, 1 } }, // 15
2691 { 0x6000, { 0x0415, 0x0407, 0 } }, // 16
2692 { 0x4001, { 6140, 0x0406, 1 } }, // 17
2693 { 0x6000, { 0x0417, 0x0407, 0 } } // 18
2695 static const mso_CustomShape msoActionButtonBeginning =
2697 (SvxMSDffVertPair*)mso_sptActionButtonBeginningVert, SAL_N_ELEMENTS( mso_sptActionButtonBeginningVert ),
2698 (sal_uInt16*)mso_sptActionButtonBeginningEndSegm, sizeof( mso_sptActionButtonBeginningEndSegm ) >> 1,
2699 (SvxMSDffCalculationData*)mso_sptActionButtonBeginningEndCalc, SAL_N_ELEMENTS( mso_sptActionButtonBeginningEndCalc ),
2700 (sal_Int32*)mso_sptDefault1400,
2701 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2702 21600, 21600,
2703 10800, 10800,
2704 NULL, 0,
2705 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2708 static const SvxMSDffVertPair mso_sptActionButtonEndVert[] =
2710 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2711 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2712 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2713 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2714 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2716 { 0x16 MSO_I, 8 MSO_I }, { 0x12 MSO_I, 0x10 MSO_I }, { 0x12 MSO_I, 0xc MSO_I },
2718 { 0x18 MSO_I, 0xc MSO_I }, { 0x18 MSO_I, 0x10 MSO_I }, { 0xe MSO_I, 0x10 MSO_I }, { 0xe MSO_I, 0xc MSO_I }
2720 static const mso_CustomShape msoActionButtonEnd =
2722 (SvxMSDffVertPair*)mso_sptActionButtonEndVert, SAL_N_ELEMENTS( mso_sptActionButtonEndVert ),
2723 (sal_uInt16*)mso_sptActionButtonBeginningEndSegm, sizeof( mso_sptActionButtonBeginningEndSegm ) >> 1,
2724 (SvxMSDffCalculationData*)mso_sptActionButtonBeginningEndCalc, SAL_N_ELEMENTS( mso_sptActionButtonBeginningEndCalc ),
2725 (sal_Int32*)mso_sptDefault1400,
2726 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2727 21600, 21600,
2728 10800, 10800,
2729 NULL, 0,
2730 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2733 static const SvxMSDffVertPair mso_sptActionButtonReturnVert[] =
2735 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2736 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2737 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2738 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2739 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2741 { 0xa MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0x10 MSO_I }, // ppp
2742 { 0xe MSO_I, 0x12 MSO_I }, { 0x14 MSO_I, 0x16 MSO_I }, { 0x18 MSO_I, 0x16 MSO_I }, // ccp
2743 { 7 MSO_I, 0x16 MSO_I }, // p
2744 { 0x1a MSO_I, 0x16 MSO_I }, { 0x1c MSO_I, 0x12 MSO_I }, { 0x1c MSO_I, 0x10 MSO_I }, // ccp
2745 { 0x1c MSO_I, 0xc MSO_I }, { 7 MSO_I, 0xc MSO_I }, { 0x1e MSO_I, 0x20 MSO_I }, { 0x22 MSO_I, 0xc MSO_I },// pppp
2746 { 0x24 MSO_I, 0xc MSO_I }, { 0x24 MSO_I, 0x10 MSO_I }, // pp
2747 { 0x24 MSO_I, 0x26 MSO_I }, { 0x28 MSO_I, 0x2a MSO_I }, { 7 MSO_I, 0x2a MSO_I }, // ccp
2748 { 0x18 MSO_I, 0x2a MSO_I }, // p
2749 { 0x2c MSO_I, 0x2a MSO_I }, { 0xa MSO_I, 0x26 MSO_I }, { 0xa MSO_I, 0x10 MSO_I } // ccp
2751 static const sal_uInt16 mso_sptActionButtonReturnSegm[] =
2753 0x4000, 0x0003, 0x6001, 0x8000,
2754 0x4000, 0x0003, 0x6001, 0x8000,
2755 0x4000, 0x0003, 0x6001, 0x8000,
2756 0x4000, 0x0003, 0x6001, 0x8000,
2757 0x4000, 0x0003, 0x6001, 0x8000,
2758 0x4000, 0x0002, 0x2001, 0x0001, 0x2001, 0x0006,0x2001, 0x0001, 0x2001, 0x6001, 0x8000
2760 static const SvxMSDffCalculationData mso_sptActionButtonReturnCalc[] = // adj value 0 - 5400
2762 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2763 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2764 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2765 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2766 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2767 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2768 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2769 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2770 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2772 { 0x4001, { -8050, 0x0406, 1 } }, // 9
2773 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2774 { 0x4001, { -3800, 0x0406, 1 } }, // b
2775 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2776 { 0x4001, { -4020, 0x0406, 1 } }, // d
2777 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2778 { 0x4001, { 2330, 0x0406, 1 } }, // f
2779 { 0x6000, { 0x040f, 0x0408, 0 } }, // 10
2780 { 0x4001, { 3390, 0x0406, 1 } }, // 11
2781 { 0x6000, { 0x0411, 0x0408, 0 } }, // 12
2782 { 0x4001, { -3100, 0x0406, 1 } }, // 13
2783 { 0x6000, { 0x0413, 0x0407, 0 } }, // 14
2784 { 0x4001, { 4230, 0x0406, 1 } }, // 15
2785 { 0x6000, { 0x0415, 0x0408, 0 } }, // 16
2786 { 0x4001, { -1910, 0x0406, 1 } }, // 17
2787 { 0x6000, { 0x0417, 0x0407, 0 } }, // 18
2788 { 0x4001, { 1190, 0x0406, 1 } }, // 19
2789 { 0x6000, { 0x0419, 0x0407, 0 } }, // 1a
2790 { 0x4001, { 2110, 0x0406, 1 } }, // 1b
2791 { 0x6000, { 0x041b, 0x0407, 0 } }, // 1c
2792 { 0x4001, { 4030, 0x0406, 1 } }, // 1d
2793 { 0x6000, { 0x041d, 0x0407, 0 } }, // 1e
2794 { 0x4001, { -7830, 0x0406, 1 } }, // 1f
2795 { 0x6000, { 0x041f, 0x0408, 0 } }, // 20
2796 { 0x4001, { 8250, 0x0406, 1 } }, // 21
2797 { 0x6000, { 0x0421, 0x0407, 0 } }, // 22
2798 { 0x4001, { 6140, 0x0406, 1 } }, // 23
2799 { 0x6000, { 0x0423, 0x0407, 0 } }, // 24
2800 { 0x4001, { 5510, 0x0406, 1 } }, // 25
2801 { 0x6000, { 0x0425, 0x0408, 0 } }, // 26
2802 { 0x4001, { 3180, 0x0406, 1 } }, // 27
2803 { 0x6000, { 0x0427, 0x0407, 0 } }, // 28
2804 { 0x4001, { 8450, 0x0406, 1 } }, // 29
2805 { 0x6000, { 0x0429, 0x0408, 0 } }, // 2a
2806 { 0x4001, { -5090, 0x0406, 1 } }, // 2b
2807 { 0x6000, { 0x042b, 0x0407, 0 } } // 2c
2809 static const mso_CustomShape msoActionButtonReturn =
2811 (SvxMSDffVertPair*)mso_sptActionButtonReturnVert, SAL_N_ELEMENTS( mso_sptActionButtonReturnVert ),
2812 (sal_uInt16*)mso_sptActionButtonReturnSegm, sizeof( mso_sptActionButtonReturnSegm ) >> 1,
2813 (SvxMSDffCalculationData*)mso_sptActionButtonReturnCalc, SAL_N_ELEMENTS( mso_sptActionButtonReturnCalc ),
2814 (sal_Int32*)mso_sptDefault1400,
2815 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2816 21600, 21600,
2817 10800, 10800,
2818 NULL, 0,
2819 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2822 static const SvxMSDffVertPair mso_sptActionButtonDocumentVert[] =
2824 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2825 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2826 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2827 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2828 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2830 { 0xa MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0x10 MSO_I, 0x12 MSO_I }, { 0x10 MSO_I, 0x14 MSO_I },
2831 { 0xa MSO_I, 0x14 MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0x10 MSO_I, 0x12 MSO_I }, { 0xe MSO_I, 0x12 MSO_I }
2833 static const sal_uInt16 mso_sptActionButtonDocumentSegm[] =
2835 0x4000, 0x0003, 0x6001, 0x8000,
2836 0x4000, 0x0003, 0x6001, 0x8000,
2837 0x4000, 0x0003, 0x6001, 0x8000,
2838 0x4000, 0x0003, 0x6001, 0x8000,
2839 0x4000, 0x0003, 0x6001, 0x8000,
2841 0x4000, 0x0004, 0x6001, 0x8000,
2842 0x4000, 0x0002, 0x6001, 0x8000
2844 static const SvxMSDffCalculationData mso_sptActionButtonDocumentCalc[] = // adj value 0 - 5400
2846 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2847 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2848 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2849 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2850 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2851 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2852 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2853 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2854 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2856 { 0x4001, { -6350, 0x0406, 1 } }, // 9
2857 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2858 { 0x4001, { -7830, 0x0406, 1 } }, // b
2859 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2860 { 0x4001, { 1690, 0x0406, 1 } }, // d
2861 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2862 { 0x4001, { 6350, 0x0406, 1 } }, // f
2863 { 0x6000, { 0x040f, 0x0407, 0 } }, // 10
2864 { 0x4001, { -3810, 0x0406, 1 } }, // 11
2865 { 0x6000, { 0x0411, 0x0408, 0 } }, // 12
2866 { 0x4001, { 7830, 0x0406, 1 } }, // 13
2867 { 0x6000, { 0x0413, 0x0408, 0 } } // 14
2869 static const mso_CustomShape msoActionButtonDocument =
2871 (SvxMSDffVertPair*)mso_sptActionButtonDocumentVert, SAL_N_ELEMENTS( mso_sptActionButtonDocumentVert ),
2872 (sal_uInt16*)mso_sptActionButtonDocumentSegm, sizeof( mso_sptActionButtonDocumentSegm ) >> 1,
2873 (SvxMSDffCalculationData*)mso_sptActionButtonDocumentCalc, SAL_N_ELEMENTS( mso_sptActionButtonDocumentCalc ),
2874 (sal_Int32*)mso_sptDefault1400,
2875 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2876 21600, 21600,
2877 10800, 10800,
2878 NULL, 0,
2879 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2882 static const SvxMSDffVertPair mso_sptActionButtonSoundVert[] =
2884 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2885 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2886 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2887 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2888 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2890 { 0xa MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0x10 MSO_I, 0x12 MSO_I }, { 0x10 MSO_I, 0x14 MSO_I },
2891 { 0xe MSO_I, 0x16 MSO_I }, { 0xa MSO_I, 0x16 MSO_I }, { 0x18 MSO_I, 8 MSO_I }, { 0x1a MSO_I, 8 MSO_I },
2893 { 0x18 MSO_I, 0xc MSO_I }, { 0x1a MSO_I, 0x1c MSO_I },
2895 { 0x18 MSO_I, 0x16 MSO_I }, { 0x1a MSO_I, 0x1e MSO_I }
2897 static const sal_uInt16 mso_sptActionButtonSoundSegm[] =
2899 0x4000, 0x0003, 0x6001, 0x8000,
2900 0x4000, 0x0003, 0x6001, 0x8000,
2901 0x4000, 0x0003, 0x6001, 0x8000,
2902 0x4000, 0x0003, 0x6001, 0x8000,
2903 0x4000, 0x0003, 0x6001, 0x8000,
2905 0x4000, 0x0005, 0x6001, 0x8000,
2906 0x4000, 0x0001, 0x8000,
2907 0x4000, 0x0001, 0x8000,
2908 0x4000, 0x0001, 0x8000
2910 static const SvxMSDffCalculationData mso_sptActionButtonSoundCalc[] = // adj value 0 - 5400
2912 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2913 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2914 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2915 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2916 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2917 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2918 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2919 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2920 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2922 { 0x4001, { -8050, 0x0406, 1 } }, // 9
2923 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2924 { 0x4001, { -2750, 0x0406, 1 } }, // b
2925 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2926 { 0x4001, { -2960, 0x0406, 1 } }, // d
2927 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2928 { 0x4001, { 2120, 0x0406, 1 } }, // f
2929 { 0x6000, { 0x040f, 0x0407, 0 } }, // 10
2930 { 0x4001, { -8050, 0x0406, 1 } }, // 11
2931 { 0x6000, { 0x0411, 0x0408, 0 } }, // 12
2932 { 0x4001, { 8050, 0x0406, 1 } }, // 13
2933 { 0x6000, { 0x0413, 0x0408, 0 } }, // 14
2934 { 0x4001, { 2750, 0x0406, 1 } }, // 15
2935 { 0x6000, { 0x0415, 0x0408, 0 } }, // 16
2936 { 0x4001, { 4020, 0x0406, 1 } }, // 17
2937 { 0x6000, { 0x0417, 0x0407, 0 } }, // 18
2938 { 0x4001, { 8050, 0x0406, 1 } }, // 19
2939 { 0x6000, { 0x0419, 0x0407, 0 } }, // 1a
2940 { 0x4001, { -5930, 0x0406, 1 } }, // 1b
2941 { 0x6000, { 0x041b, 0x0408, 0 } }, // 1c
2942 { 0x4001, { 5930, 0x0406, 1 } }, // 1d
2943 { 0x6000, { 0x041d, 0x0408, 0 } } // 1e
2945 static const mso_CustomShape msoActionButtonSound =
2947 (SvxMSDffVertPair*)mso_sptActionButtonSoundVert, SAL_N_ELEMENTS( mso_sptActionButtonSoundVert ),
2948 (sal_uInt16*)mso_sptActionButtonSoundSegm, sizeof( mso_sptActionButtonSoundSegm ) >> 1,
2949 (SvxMSDffCalculationData*)mso_sptActionButtonSoundCalc, SAL_N_ELEMENTS( mso_sptActionButtonSoundCalc ),
2950 (sal_Int32*)mso_sptDefault1400,
2951 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
2952 21600, 21600,
2953 10800, 10800,
2954 NULL, 0,
2955 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
2958 static const SvxMSDffVertPair mso_sptActionButtonMovieVert[] =
2960 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
2961 { 0, 0 }, { 21600, 0 }, { 3 MSO_I, 2 MSO_I }, { 1 MSO_I, 2 MSO_I },
2962 { 21600, 0 }, { 21600, 21600 }, { 3 MSO_I, 4 MSO_I }, { 3 MSO_I, 2 MSO_I },
2963 { 21600, 21600 }, { 0, 21600 }, { 1 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
2964 { 0, 21600 }, { 0, 0 }, { 1 MSO_I, 2 MSO_I }, { 1 MSO_I, 4 MSO_I },
2966 { 0xa MSO_I, 0xc MSO_I }, { 0xe MSO_I, 0xc MSO_I }, { 0x10 MSO_I, 0x12 MSO_I }, { 0x14 MSO_I, 0x12 MSO_I },
2967 { 0x16 MSO_I, 0x18 MSO_I }, { 0x16 MSO_I, 0x1a MSO_I }, { 0x1c MSO_I, 0x1a MSO_I }, { 0x1e MSO_I, 0x18 MSO_I },
2968 { 0x20 MSO_I, 0x18 MSO_I }, { 0x20 MSO_I, 0x22 MSO_I }, { 0x1e MSO_I, 0x22 MSO_I }, { 0x1c MSO_I, 0x24 MSO_I },
2969 { 0x16 MSO_I, 0x24 MSO_I }, { 0x16 MSO_I, 0x26 MSO_I }, { 0x2a MSO_I, 0x26 MSO_I }, { 0x2a MSO_I, 0x28 MSO_I },
2970 { 0x10 MSO_I, 0x28 MSO_I }, { 0xe MSO_I, 0x2c MSO_I }, { 0xa MSO_I, 0x2c MSO_I }
2972 static const sal_uInt16 mso_sptActionButtonMovieSegm[] =
2974 0x4000, 0x0003, 0x6001, 0x8000,
2975 0x4000, 0x0003, 0x6001, 0x8000,
2976 0x4000, 0x0003, 0x6001, 0x8000,
2977 0x4000, 0x0003, 0x6001, 0x8000,
2978 0x4000, 0x0003, 0x6001, 0x8000,
2979 0x4000, 0x0012, 0x6001, 0x8000
2981 static const SvxMSDffCalculationData mso_sptActionButtonMovieCalc[] = // adj value 0 - 5400
2983 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
2984 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
2985 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
2986 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
2987 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
2988 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } },
2989 { 0x2001, { 0x0405, 1, 10800 } }, // scaling 6
2990 { 0x2001, { DFF_Prop_geoRight, 1, 2 } }, // lr center 7
2991 { 0x2001, { DFF_Prop_geoBottom, 1, 2 } }, // ul center 8
2993 { 0x4001, { -8050, 0x0406, 1 } }, // 9
2994 { 0x6000, { 0x0409, 0x0407, 0 } }, // a
2995 { 0x4001, { -4020, 0x0406, 1 } }, // b
2996 { 0x6000, { 0x040b, 0x0408, 0 } }, // c
2997 { 0x4001, { -7000, 0x0406, 1 } }, // d
2998 { 0x6000, { 0x040d, 0x0407, 0 } }, // e
2999 { 0x4001, { -6560, 0x0406, 1 } }, // f
3000 { 0x6000, { 0x040f, 0x0407, 0 } }, // 10
3001 { 0x4001, { -3600, 0x0406, 1 } }, // 11
3002 { 0x6000, { 0x0411, 0x0408, 0 } }, // 12
3003 { 0x4001, { 4020, 0x0406, 1 } }, // 13
3004 { 0x6000, { 0x0413, 0x0407, 0 } }, // 14
3005 { 0x4001, { 4660, 0x0406, 1 } }, // 15
3006 { 0x6000, { 0x0415, 0x0407, 0 } }, // 16
3007 { 0x4001, { -2960, 0x0406, 1 } }, // 17
3008 { 0x6000, { 0x0417, 0x0408, 0 } }, // 18
3009 { 0x4001, { -2330, 0x0406, 1 } }, // 19
3010 { 0x6000, { 0x0419, 0x0408, 0 } }, // 1a
3011 { 0x4001, { 6780, 0x0406, 1 } }, // 1b
3012 { 0x6000, { 0x041b, 0x0407, 0 } }, // 1c
3013 { 0x4001, { 7200, 0x0406, 1 } }, // 1d
3014 { 0x6000, { 0x041d, 0x0407, 0 } }, // 1e
3015 { 0x4001, { 8050, 0x0406, 1 } }, // 1f
3016 { 0x6000, { 0x041f, 0x0407, 0 } }, // 20
3017 { 0x4001, { 2960, 0x0406, 1 } }, // 21
3018 { 0x6000, { 0x0421, 0x0408, 0 } }, // 22
3019 { 0x4001, { 2330, 0x0406, 1 } }, // 23
3020 { 0x6000, { 0x0423, 0x0408, 0 } }, // 24
3021 { 0x4001, { 3800, 0x0406, 1 } }, // 25
3022 { 0x6000, { 0x0425, 0x0408, 0 } }, // 26
3023 { 0x4001, { -1060, 0x0406, 1 } }, // 27
3024 { 0x6000, { 0x0427, 0x0408, 0 } }, // 28
3025 { 0x4001, { -6350, 0x0406, 1 } }, // 29
3026 { 0x6000, { 0x0429, 0x0407, 0 } }, // 2a
3027 { 0x4001, { -640, 0x0406, 1 } }, // 2b
3028 { 0x6000, { 0x042b, 0x0408, 0 } } // 2c
3030 static const mso_CustomShape msoActionButtonMovie =
3032 (SvxMSDffVertPair*)mso_sptActionButtonMovieVert, SAL_N_ELEMENTS( mso_sptActionButtonMovieVert ),
3033 (sal_uInt16*)mso_sptActionButtonMovieSegm, sizeof( mso_sptActionButtonMovieSegm ) >> 1,
3034 (SvxMSDffCalculationData*)mso_sptActionButtonMovieCalc, SAL_N_ELEMENTS( mso_sptActionButtonMovieCalc ),
3035 (sal_Int32*)mso_sptDefault1400,
3036 (SvxMSDffTextRectangles*)mso_sptActionButtonTextRect, SAL_N_ELEMENTS( mso_sptActionButtonTextRect ),
3037 21600, 21600,
3038 10800, 10800,
3039 NULL, 0,
3040 (SvxMSDffHandle*)mso_sptButtonHandle, SAL_N_ELEMENTS( mso_sptButtonHandle )
3043 static const SvxMSDffVertPair mso_sptSmileyFaceVert[] = // adj value 15510 - 17520
3045 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 },
3046 { 7305, 7515 }, { 1165, 1165 }, { 0, 360 },
3047 { 14295, 7515 }, { 1165, 1165 }, { 0, 360 },
3048 { 4870, 1 MSO_I }, { 8680, 2 MSO_I }, { 12920, 2 MSO_I }, { 16730, 1 MSO_I }
3050 static const sal_uInt16 mso_sptSmileyFaceSegm[] =
3052 0xa203, 0x6000, 0x8000,
3053 0xa203, 0x6000, 0x8000,
3054 0xa203, 0x6000, 0x8000,
3055 0x4000, 0x2001, 0xaa00, 0x8000
3057 static const SvxMSDffCalculationData mso_sptSmileyFaceCalc[] =
3059 { 0x2000, { DFF_Prop_adjustValue, 0, 15510 } },
3060 { 0x8000, { 17520, 0, 0x400 } },
3061 { 0x4000, { 15510, 0x400, 0 } }
3064 static const SvxMSDffTextRectangles mso_sptSmileyFaceTextRect[] =
3066 { { 0, 1 MSO_I }, { 4 MSO_I, 21600 } }
3068 static const sal_Int32 mso_sptSmileyFaceDefault[] =
3070 1, 17520
3072 static const SvxMSDffHandle mso_sptSmileyHandle[] =
3074 { MSDFF_HANDLE_FLAGS_RANGE,
3075 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 15510, 17520 }
3077 static const mso_CustomShape msoSmileyFace =
3079 (SvxMSDffVertPair*)mso_sptSmileyFaceVert, SAL_N_ELEMENTS( mso_sptSmileyFaceVert ),
3080 (sal_uInt16*)mso_sptSmileyFaceSegm, sizeof( mso_sptSmileyFaceSegm ) >> 1,
3081 (SvxMSDffCalculationData*)mso_sptSmileyFaceCalc, SAL_N_ELEMENTS( mso_sptSmileyFaceCalc ),
3082 (sal_Int32*)mso_sptSmileyFaceDefault,
3083 (SvxMSDffTextRectangles*)mso_sptEllipseTextRect, SAL_N_ELEMENTS( mso_sptEllipseTextRect ),
3084 21600, 21600,
3085 MIN_INT32, MIN_INT32,
3086 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
3087 (SvxMSDffHandle*)mso_sptSmileyHandle, SAL_N_ELEMENTS( mso_sptSmileyHandle ) // handles
3090 static const SvxMSDffVertPair mso_sptDonutVert[] = // adj value 0 - 10800
3092 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 },
3093 { 10800, 10800 }, { 1 MSO_I, 1 MSO_I }, { 0, 360 }
3095 static const sal_uInt16 mso_sptDonutSegm[] =
3097 0xa203, 0x6000, 0xa203, 0x8000
3099 static const SvxMSDffCalculationData mso_sptDonutCalc[] =
3101 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
3102 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } }
3104 static const SvxMSDffHandle mso_sptDonutHandle[] =
3106 { MSDFF_HANDLE_FLAGS_RANGE,
3107 0x100, 10800, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
3109 static const mso_CustomShape msoDonut =
3111 (SvxMSDffVertPair*)mso_sptDonutVert, SAL_N_ELEMENTS( mso_sptDonutVert ),
3112 (sal_uInt16*)mso_sptDonutSegm, sizeof( mso_sptDonutSegm ) >> 1,
3113 (SvxMSDffCalculationData*)mso_sptDonutCalc, SAL_N_ELEMENTS( mso_sptDonutCalc ),
3114 (sal_Int32*)mso_sptDefault5400,
3115 (SvxMSDffTextRectangles*)mso_sptEllipseTextRect, SAL_N_ELEMENTS( mso_sptEllipseTextRect ),
3116 21600, 21600,
3117 MIN_INT32, MIN_INT32,
3118 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
3119 (SvxMSDffHandle*)mso_sptDonutHandle, SAL_N_ELEMENTS( mso_sptDonutHandle ) // handles
3122 static const SvxMSDffVertPair mso_sptNoSmokingVert[] = // adj value 0 - 7200
3124 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 },
3125 { 0 MSO_I, 0 MSO_I }, { 1 MSO_I, 1 MSO_I },
3126 { 9 MSO_I, 0xa MSO_I }, { 0xb MSO_I, 0xc MSO_I }, { 0 MSO_I, 0 MSO_I }, { 1 MSO_I, 1 MSO_I },
3127 { 0xd MSO_I, 0xe MSO_I }, { 0xf MSO_I, 0x10 MSO_I }
3129 static const sal_uInt16 mso_sptNoSmokingSegm[] =
3131 0xa203, 0x6000, 0xa404, 0x6000, 0xa404, 0x6000, 0x8000
3133 static const SvxMSDffCalculationData mso_sptNoSmokingCalc[] =
3135 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0
3136 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }, // 1
3137 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } }, // 2
3138 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } }, // 3
3139 { 0xa080, { 0x403, 0, 0x402 } }, // 4
3140 { 0x8000, { 10800, 0, 0x403 } }, // 5 x1
3141 { 0x4000, { 10800, 0x403, 0 } }, // 6 x2
3142 { 0x8000, { 10800, 0, 0x404 } }, // 7 y1
3143 { 0x4000, { 10800, 0x404, 0 } }, // 8 y2
3144 { 0x6081, { 0x405, 0x407, 45 } }, // 9
3145 { 0x6082, { 0x405, 0x407, 45 } }, // a
3146 { 0x6081, { 0x405, 0x408, 45 } }, // b
3147 { 0x6082, { 0x405, 0x408, 45 } }, // c
3148 { 0x6081, { 0x406, 0x408, 45 } }, // d
3149 { 0x6082, { 0x406, 0x408, 45 } }, // e
3150 { 0x6081, { 0x406, 0x407, 45 } }, // f
3151 { 0x6082, { 0x406, 0x407, 45 } } // 10
3153 static const SvxMSDffHandle mso_sptNoSmokingHandle[] =
3155 { MSDFF_HANDLE_FLAGS_RANGE,
3156 0x100, 10800, 10800, 10800, 0, 7200, MIN_INT32, 0x7fffffff }
3158 static const mso_CustomShape msoNoSmoking =
3160 (SvxMSDffVertPair*)mso_sptNoSmokingVert, SAL_N_ELEMENTS( mso_sptNoSmokingVert ),
3161 (sal_uInt16*)mso_sptNoSmokingSegm, sizeof( mso_sptNoSmokingSegm ) >> 1,
3162 (SvxMSDffCalculationData*)mso_sptNoSmokingCalc, SAL_N_ELEMENTS( mso_sptNoSmokingCalc ),
3163 (sal_Int32*)mso_sptDefault2700,
3164 (SvxMSDffTextRectangles*)mso_sptEllipseTextRect, SAL_N_ELEMENTS( mso_sptEllipseTextRect ),
3165 21600, 21600,
3166 MIN_INT32, MIN_INT32,
3167 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
3168 (SvxMSDffHandle*)mso_sptNoSmokingHandle, SAL_N_ELEMENTS( mso_sptNoSmokingHandle ) // handles
3171 static const SvxMSDffVertPair mso_sptBlockArcVert[] = // adj value 0 (degrees)
3172 { // adj value 1: 0 -> 10800;
3173 { 0, 0 }, { 21600, 21600 }, { 4 MSO_I, 3 MSO_I }, { 2 MSO_I, 3 MSO_I },
3174 { 5 MSO_I, 5 MSO_I }, { 6 MSO_I, 6 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 3 MSO_I }
3176 static const sal_uInt16 mso_sptBlockArcSegm[] =
3178 0xA404, 0xa504, 0x6001, 0x8000
3180 static const sal_Int32 mso_sptBlockArcDefault[] =
3182 2, 180, 5400
3184 static const SvxMSDffCalculationData mso_sptBlockArcCalc[] =
3186 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
3187 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
3188 { 0x2000, { 0x400, 10800, 0 } },
3189 { 0x2000, { 0x401, 10800, 0 } },
3190 { 0x8000, { 21600, 0, 0x402 } },
3191 { 0x8000, { 10800, 0, DFF_Prop_adjust2Value } },
3192 { 0x4000, { 10800, DFF_Prop_adjust2Value, 0 } },
3193 { 0x600a, { 0x405, DFF_Prop_adjustValue, 0 } },
3194 { 0x6009, { 0x405, DFF_Prop_adjustValue, 0 } }
3196 static const SvxMSDffHandle mso_sptBlockArcHandle[] =
3198 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
3199 0x101, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
3201 static const mso_CustomShape msoBlockArc =
3203 (SvxMSDffVertPair*)mso_sptBlockArcVert, SAL_N_ELEMENTS( mso_sptBlockArcVert ),
3204 (sal_uInt16*)mso_sptBlockArcSegm, sizeof( mso_sptBlockArcSegm ) >> 1,
3205 (SvxMSDffCalculationData*)mso_sptBlockArcCalc, SAL_N_ELEMENTS( mso_sptBlockArcCalc ),
3206 (sal_Int32*)mso_sptBlockArcDefault,
3207 NULL, 0,
3208 21600, 21600,
3209 MIN_INT32, MIN_INT32,
3210 NULL, 0,
3211 (SvxMSDffHandle*)mso_sptBlockArcHandle, SAL_N_ELEMENTS( mso_sptBlockArcHandle ) // handles
3214 // aware : control points are always part of the bounding box
3215 static const SvxMSDffVertPair mso_sptHeartVert[] =
3217 { 10800, 21599 }, { 321, 6886 }, { 70, 6036 }, // ppp
3218 { -9, 5766 }, { -1, 5474 }, { 2, 5192 }, // ccp
3219 { 6, 4918 }, { 43, 4641 }, { 101, 4370 }, // ccp
3220 { 159, 4103 }, { 245, 3837 }, { 353, 3582 }, // ccp
3221 { 460, 3326 }, { 591, 3077 }, { 741, 2839 }, // ccp
3222 { 892, 2598 }, { 1066, 2369 }, { 1253, 2155 }, // ccp
3223 { 1443, 1938 }, { 1651, 1732 }, { 1874, 1543 }, // ccp
3224 { 2097, 1351 }, { 2337, 1174 }, { 2587, 1014 }, // ccp
3225 { 2839, 854 }, { 3106, 708 }, { 3380, 584 }, // ccp
3226 { 3656, 459 }, { 3945, 350 }, { 4237, 264 }, // ccp
3227 { 4533, 176 }, { 4838, 108 }, { 5144, 66 }, // ccp
3228 { 5454, 22 }, { 5771, 1 }, { 6086, 3 }, // ccp
3229 { 6407, 7 }, { 6731, 35 }, { 7048, 89 }, // ccp
3230 { 7374, 144 }, { 7700, 226 }, { 8015, 335 }, // ccp
3231 { 8344, 447 }, { 8667, 590 }, { 8972, 756 }, // ccp
3232 { 9297, 932 }, { 9613, 1135 }, { 9907, 1363 }, // ccp
3233 { 10224, 1609 }, { 10504, 1900 }, { 10802, 2169 }, // ccp
3234 { 11697, 1363 }, // p
3235 { 11971, 1116 }, { 12304, 934 }, { 12630, 756 }, // ccp
3236 { 12935, 590 }, { 13528, 450 }, { 13589, 335 }, // ccp
3237 { 13901, 226 }, { 14227, 144 }, { 14556, 89 }, // ccp
3238 { 14872, 35 }, { 15195, 7 }, { 15517, 3 }, // ccp
3239 { 15830, 0 }, { 16147, 22 }, { 16458, 66 }, // ccp
3240 { 16764, 109 }, { 17068, 177 }, { 17365, 264 }, // ccp
3241 { 17658, 349 }, { 17946, 458 }, { 18222, 584 }, // ccp
3242 { 18496, 708 }, { 18762, 854 }, { 19015, 1014 }, // ccp
3243 { 19264, 1172 }, { 19504, 1349 }, { 19730, 1543 }, // ccp
3244 { 19950, 1731 }, { 20158, 1937 }, { 20350, 2155 }, // ccp
3245 { 20536, 2369 }, { 20710, 2598 }, { 20861, 2839 }, // ccp
3246 { 21010, 3074 }, { 21143, 3323 }, { 21251, 3582 }, // ccp
3247 { 21357, 3835 }, { 21443, 4099 }, { 21502, 4370 }, // ccp
3248 { 21561, 4639 }, { 21595, 4916 }, { 21600, 5192 }, // ccp
3249 { 21606, 5474 }, { 21584, 5760 }, { 21532, 6036 }, // ccp
3250 { 21478, 6326 }, { 21366, 6603 }, { 21282, 6887 }, // ccp
3251 { 10802, 21602 } // p
3253 static const sal_uInt16 mso_sptHeartSegm[] =
3255 0x4000, 0x0002, 0x2010, 0x0001, 0x2010, 0x0001, 0x6001, 0x8000
3257 static const SvxMSDffTextRectangles mso_sptHeartTextRect[] =
3259 { { 5080, 2540 }, { 16520, 13550 } }
3261 static const SvxMSDffVertPair mso_sptHeartGluePoints[] =
3263 { 10800, 2180 }, { 3090, 10800 }, { 10800, 21600 }, { 18490, 10800 }
3265 static const mso_CustomShape msoHeart =
3267 (SvxMSDffVertPair*)mso_sptHeartVert, SAL_N_ELEMENTS( mso_sptHeartVert ),
3268 (sal_uInt16*)mso_sptHeartSegm, sizeof( mso_sptHeartSegm ) >> 1,
3269 NULL, 0,
3270 NULL,
3271 (SvxMSDffTextRectangles*)mso_sptHeartTextRect, SAL_N_ELEMENTS( mso_sptHeartTextRect ),
3272 21615, 21602,
3273 MIN_INT32, MIN_INT32,
3274 (SvxMSDffVertPair*)mso_sptHeartGluePoints, SAL_N_ELEMENTS( mso_sptHeartGluePoints ),
3275 NULL, 0 // handles
3278 static const SvxMSDffVertPair mso_sptLightningBoldVert[] =
3280 { 8458, 0 }, { 0, 3923 }, { 7564, 8416 }, { 4993, 9720 },
3281 { 12197, 13904 }, { 9987, 14934 }, { 21600, 21600 }, { 14768, 12911 },
3282 { 16558, 12016 }, { 11030, 6840 }, { 12831, 6120 }, { 8458, 0 }
3284 static const SvxMSDffTextRectangles mso_sptLightningBoldTextRect[] =
3286 { { 8680, 7410 }, { 13970, 14190 } }
3288 static const SvxMSDffVertPair mso_sptLightningBoldGluePoints[] =
3290 { 8458, 0 }, { 0, 3923 }, { 4993, 9720 }, { 9987, 14934 }, { 21600, 21600 },
3291 { 16558, 12016 }, { 12831, 6120 }
3293 static const mso_CustomShape msoLightningBold =
3295 (SvxMSDffVertPair*)mso_sptLightningBoldVert, SAL_N_ELEMENTS( mso_sptLightningBoldVert ),
3296 NULL, 0,
3297 NULL, 0,
3298 NULL,
3299 (SvxMSDffTextRectangles*)mso_sptLightningBoldTextRect, SAL_N_ELEMENTS( mso_sptLightningBoldTextRect ),
3300 21600, 21600,
3301 MIN_INT32, MIN_INT32,
3302 (SvxMSDffVertPair*)mso_sptLightningBoldGluePoints, SAL_N_ELEMENTS( mso_sptLightningBoldGluePoints ),
3303 NULL, 0 // handles
3306 static const SvxMSDffVertPair mso_sptSunVert[] = // adj value 2700 -> 10125
3308 { 0, 10800 }, { 4 MSO_I, 8 MSO_I }, { 4 MSO_I, 9 MSO_I },
3309 { 0x0a MSO_I, 0x0b MSO_I }, { 0x0c MSO_I, 0x0d MSO_I }, { 0x0e MSO_I, 0x0f MSO_I },
3310 { 0x10 MSO_I, 0x11 MSO_I }, { 0x12 MSO_I, 0x13 MSO_I }, { 0x14 MSO_I, 0x15 MSO_I },
3311 { 0x16 MSO_I, 0x17 MSO_I }, { 0x18 MSO_I, 0x19 MSO_I }, { 0x1a MSO_I, 0x1b MSO_I },
3312 { 0x1c MSO_I, 0x1d MSO_I }, { 0x1e MSO_I, 0x1f MSO_I }, { 0x20 MSO_I, 0x21 MSO_I },
3313 { 0x22 MSO_I, 0x23 MSO_I }, { 0x24 MSO_I, 0x25 MSO_I }, { 0x26 MSO_I, 0x27 MSO_I },
3314 { 0x28 MSO_I, 0x29 MSO_I }, { 0x2a MSO_I, 0x2b MSO_I }, { 0x2c MSO_I, 0x2d MSO_I },
3315 { 0x2e MSO_I, 0x2f MSO_I }, { 0x30 MSO_I, 0x31 MSO_I }, { 0x32 MSO_I, 0x33 MSO_I },
3316 { 10800, 10800 }, { 0x36 MSO_I, 0x36 MSO_I }, { 0, 360 }
3318 static const sal_uInt16 mso_sptSunSegm[] =
3320 0x4000, 0x0002, 0x6001, 0x8000,
3321 0x4000, 0x0002, 0x6001, 0x8000,
3322 0x4000, 0x0002, 0x6001, 0x8000,
3323 0x4000, 0x0002, 0x6001, 0x8000,
3324 0x4000, 0x0002, 0x6001, 0x8000,
3325 0x4000, 0x0002, 0x6001, 0x8000,
3326 0x4000, 0x0002, 0x6001, 0x8000,
3327 0x4000, 0x0002, 0x6001, 0x8000,
3328 0xa203, 0x6000, 0x8000
3330 static const SvxMSDffCalculationData mso_sptSunCalc[] =
3332 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
3333 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
3334 { 0x2000, { DFF_Prop_adjustValue, 0, 2700 } },
3335 { 0x2001, { 0x402, 5080, 7425 } },
3336 { 0x2000, { 0x403, 2540, 0 } },
3337 { 0x8000, { 10125, 0, DFF_Prop_adjustValue } },
3338 { 0x2001, { 0x405, 2120, 7425 } },
3339 { 0x2000, { 0x406, 210, 0 } },
3340 { 0x4000, { 10800, 0x407, 0 } }, // y1 (0x8)
3341 { 0x8000, { 10800, 0, 0x407 } }, // y2 (0x9)
3342 { 0x0081, { 0, 10800, 45 } }, // 0xa
3343 { 0x0082, { 0, 10800, 45 } }, // 0xb
3344 { 0x6081, { 0x404, 0x408, 45 } }, // 0xc
3345 { 0x6082, { 0x404, 0x408, 45 } }, // 0xd
3346 { 0x6081, { 0x404, 0x409, 45 } }, // 0xe
3347 { 0x6082, { 0x404, 0x409, 45 } }, // 0xf
3348 { 0x0081, { 0, 10800, 90 } }, // 0x10
3349 { 0x0082, { 0, 10800, 90 } }, // 0x11
3350 { 0x6081, { 0x404, 0x408, 90 } }, // 0x12
3351 { 0x6082, { 0x404, 0x408, 90 } }, // 0x13
3352 { 0x6081, { 0x404, 0x409, 90 } }, // 0x14
3353 { 0x6082, { 0x404, 0x409, 90 } }, // 0x15
3354 { 0x0081, { 0, 10800, 135 } }, // 0x16
3355 { 0x0082, { 0, 10800, 135 } }, // 0x17
3356 { 0x6081, { 0x404, 0x408, 135 } }, // 0x18
3357 { 0x6082, { 0x404, 0x408, 135 } }, // 0x19
3358 { 0x6081, { 0x404, 0x409, 135 } }, // 0x1a
3359 { 0x6082, { 0x404, 0x409, 135 } }, // 0x1b
3360 { 0x0081, { 0, 10800, 180 } }, // 0x1c
3361 { 0x0082, { 0, 10800, 180 } }, // 0x1d
3362 { 0x6081, { 0x404, 0x408, 180 } }, // 0x1e
3363 { 0x6082, { 0x404, 0x408, 180 } }, // 0x1f
3364 { 0x6081, { 0x404, 0x409, 180 } }, // 0x20
3365 { 0x6082, { 0x404, 0x409, 180 } }, // 0x21
3366 { 0x0081, { 0, 10800, 225 } }, // 0x22
3367 { 0x0082, { 0, 10800, 225 } }, // 0x23
3368 { 0x6081, { 0x404, 0x408, 225 } }, // 0x24
3369 { 0x6082, { 0x404, 0x408, 225 } }, // 0x25
3370 { 0x6081, { 0x404, 0x409, 225 } }, // 0x26
3371 { 0x6082, { 0x404, 0x409, 225 } }, // 0x27
3372 { 0x0081, { 0, 10800, 270 } }, // 0x28
3373 { 0x0082, { 0, 10800, 270 } }, // 0x29
3374 { 0x6081, { 0x404, 0x408, 270 } }, // 0x2a
3375 { 0x6082, { 0x404, 0x408, 270 } }, // 0x2b
3376 { 0x6081, { 0x404, 0x409, 270 } }, // 0x2c
3377 { 0x6082, { 0x404, 0x409, 270 } }, // 0x2d
3378 { 0x0081, { 0, 10800, 315 } }, // 0x2e
3379 { 0x0082, { 0, 10800, 315 } }, // 0x2f
3380 { 0x6081, { 0x404, 0x408, 315 } }, // 0x30
3381 { 0x6082, { 0x404, 0x408, 315 } }, // 0x31
3382 { 0x6081, { 0x404, 0x409, 315 } }, // 0x32
3383 { 0x6082, { 0x404, 0x409, 315 } }, // 0x33
3384 { 0x2081, { DFF_Prop_adjustValue, 10800, 45 } }, // 0x34 ( textbox )
3385 { 0x2081, { DFF_Prop_adjustValue, 10800, 225 } }, // 0x35
3386 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } }
3388 static const SvxMSDffTextRectangles mso_sptSunTextRect[] =
3390 { { 0x34 MSO_I, 0x34 MSO_I }, { 0x35 MSO_I, 0x35 MSO_I } }
3392 static const SvxMSDffHandle mso_sptSunHandle[] =
3394 { MSDFF_HANDLE_FLAGS_RANGE,
3395 0x100, 10800, 10800, 10800, 2700, 10125, MIN_INT32, 0x7fffffff }
3397 static const mso_CustomShape msoSun =
3399 (SvxMSDffVertPair*)mso_sptSunVert, SAL_N_ELEMENTS( mso_sptSunVert ),
3400 (sal_uInt16*)mso_sptSunSegm, sizeof( mso_sptSunSegm ) >> 1,
3401 (SvxMSDffCalculationData*)mso_sptSunCalc, SAL_N_ELEMENTS( mso_sptSunCalc ),
3402 (sal_Int32*)mso_sptDefault5400,
3403 (SvxMSDffTextRectangles*)mso_sptSunTextRect, SAL_N_ELEMENTS( mso_sptSunTextRect ),
3404 21600, 21600,
3405 MIN_INT32, MIN_INT32,
3406 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
3407 (SvxMSDffHandle*)mso_sptSunHandle, SAL_N_ELEMENTS( mso_sptSunHandle ) // handles
3410 static const SvxMSDffVertPair mso_sptMoonVert[] = // adj value 0 -> 18900
3412 { 21600, 0 },
3413 { 3 MSO_I, 4 MSO_I }, { 0 MSO_I, 5080 }, { 0 MSO_I, 10800 }, // ccp
3414 { 0 MSO_I, 16520 }, { 3 MSO_I, 5 MSO_I }, { 21600, 21600 }, // ccp
3415 { 9740, 21600 }, { 0, 16730 }, { 0, 10800 }, // ccp
3416 { 0, 4870 }, { 9740, 0 }, { 21600, 0 } // ccp
3418 static const sal_uInt16 mso_sptMoonSegm[] =
3420 0x4000, 0x2004, 0x6000, 0x8000
3422 static const SvxMSDffCalculationData mso_sptMoonCalc[] =
3424 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
3425 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
3426 { 0x2001, { 0x401, 1, 2 } },
3427 { 0x6000, { 0x402, DFF_Prop_adjustValue, 0 } },
3428 { 0x2001, { DFF_Prop_adjustValue, 1794, 10000 } },
3429 { 0x8000, { 21600, 0, 0x0404 } },
3430 { 0x2001, { DFF_Prop_adjustValue, 400, 18900 } },
3431 { 0x8081, { 0, 10800, 0x406 } },
3432 { 0x8082, { 0, 10800, 0x406 } },
3433 { 0x6000, { 0x407, 0x407, 0 } },
3434 { 0x8000, { 21600, 0, 0x408 } }
3436 static const SvxMSDffTextRectangles mso_sptMoonTextRect[] =
3438 { { 9 MSO_I, 8 MSO_I }, { 0 MSO_I, 0xa MSO_I } }
3440 static const SvxMSDffVertPair mso_sptMoonGluePoints[] =
3442 { 21600, 0 }, { 0, 10800 }, { 21600, 21600 }, { 0 MSO_I, 10800 }
3444 static const SvxMSDffHandle mso_sptMoonHandle[] =
3446 { MSDFF_HANDLE_FLAGS_RANGE,
3447 0x100, 10800, 10800, 10800, 0, 18900, MIN_INT32, 0x7fffffff }
3449 static const mso_CustomShape msoMoon =
3451 (SvxMSDffVertPair*)mso_sptMoonVert, SAL_N_ELEMENTS( mso_sptMoonVert ),
3452 (sal_uInt16*)mso_sptMoonSegm, sizeof( mso_sptMoonSegm ) >> 1,
3453 (SvxMSDffCalculationData*)mso_sptMoonCalc, SAL_N_ELEMENTS( mso_sptMoonCalc ),
3454 (sal_Int32*)mso_sptDefault10800,
3455 (SvxMSDffTextRectangles*)mso_sptMoonTextRect, SAL_N_ELEMENTS( mso_sptMoonTextRect ),
3456 21600, 21600,
3457 MIN_INT32, MIN_INT32,
3458 (SvxMSDffVertPair*)mso_sptMoonGluePoints, SAL_N_ELEMENTS( mso_sptMoonGluePoints ),
3459 (SvxMSDffHandle*)mso_sptMoonHandle, SAL_N_ELEMENTS( mso_sptMoonHandle ) // handles
3462 static const SvxMSDffVertPair mso_sptBracketPairVert[] = // adj value 0 -> 10800
3464 { 0 MSO_I, 0 }, { 0, 1 MSO_I }, // left top alignment
3465 { 0, 2 MSO_I }, { 0 MSO_I, 21600 }, // left bottom "
3466 { 3 MSO_I, 21600 }, { 21600, 2 MSO_I }, // right bottom "
3467 { 21600, 1 MSO_I }, { 3 MSO_I, 0 }, // right top "
3468 { 0 MSO_I, 0 }, { 0, 1 MSO_I }, // filling area
3469 { 0, 2 MSO_I }, { 0 MSO_I, 21600 },
3470 { 3 MSO_I, 21600 }, { 21600, 2 MSO_I },
3471 { 21600, 1 MSO_I }, { 3 MSO_I, 0 }
3473 static const sal_uInt16 mso_sptBracketPairSegm[] =
3475 0x4000, 0xa701, 0x0001, 0xa801, 0xaa00, 0x8000,
3476 0x4000, 0xa701, 0x0001, 0xa801, 0xaa00, 0x8000,
3477 0x4000, 0xa701, 0x0001, 0xa801, 0x0001, // filling area
3478 0xa701, 0x0001, 0xa801, 0x6000, 0xab00, 0x8000
3480 static const SvxMSDffCalculationData mso_sptBracketPairCalc[] =
3482 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
3483 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
3484 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
3485 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
3486 { 0x2082, { DFF_Prop_adjustValue, 0, 45 } },
3487 { 0x2000, { 0x404, 0, 10800 } },
3488 { 0x8000, { 0, 0, DFF_Prop_adjustValue } },
3489 { 0xa000, { 0x406, 0, 0x405 } },
3490 { 0xa000, { DFF_Prop_geoLeft, 0, 0x407 } },
3491 { 0xa000, { DFF_Prop_geoTop, 0, 0x407 } },
3492 { 0x6000, { DFF_Prop_geoRight, 0x407, 0 } },
3493 { 0x6000, { DFF_Prop_geoBottom, 0x407, 0 } },
3494 { 0xa000, { DFF_Prop_geoLeft, 0, 0x405 } },
3495 { 0xa000, { DFF_Prop_geoTop, 0, 0x405 } },
3496 { 0x6000, { DFF_Prop_geoRight, 0x405, 0 } },
3497 { 0x6000, { DFF_Prop_geoBottom, 0x405, 0 } }
3499 static const SvxMSDffTextRectangles mso_sptBracketPairTextRect[] =
3501 { { 8 MSO_I, 9 MSO_I }, { 0xa MSO_I, 0xb MSO_I } }
3503 static const SvxMSDffHandle mso_sptBracketPairHandle[] =
3505 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
3506 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
3508 static const mso_CustomShape msoBracketPair =
3510 (SvxMSDffVertPair*)mso_sptBracketPairVert, SAL_N_ELEMENTS( mso_sptBracketPairVert ),
3511 (sal_uInt16*)mso_sptBracketPairSegm, sizeof( mso_sptBracketPairSegm ) >> 1,
3512 (SvxMSDffCalculationData*)mso_sptBracketPairCalc, SAL_N_ELEMENTS( mso_sptBracketPairCalc ),
3513 (sal_Int32*)mso_sptDefault3700,
3514 (SvxMSDffTextRectangles*)mso_sptBracketPairTextRect, SAL_N_ELEMENTS( mso_sptBracketPairTextRect ),
3515 21600, 21600,
3516 10800, MIN_INT32,
3517 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
3518 (SvxMSDffHandle*)mso_sptBracketPairHandle, SAL_N_ELEMENTS( mso_sptBracketPairHandle ) // handles
3521 static const sal_uInt16 mso_sptPlaqueSegm[] =
3523 0x4000, 0xa801, 0x0001, 0xa701, 0x0001, 0xa801, 0x0001, 0xa701, 0x6000, 0x8000
3525 static const SvxMSDffTextRectangles mso_sptPlaqueTextRect[] =
3527 { { 0xc MSO_I, 0xd MSO_I }, { 0xe MSO_I, 0xf MSO_I } }
3529 static const SvxMSDffHandle mso_sptPlaqueHandle[] =
3531 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
3532 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
3534 static const mso_CustomShape msoPlaque =
3536 (SvxMSDffVertPair*)mso_sptBracketPairVert, SAL_N_ELEMENTS( mso_sptBracketPairVert ),
3537 (sal_uInt16*)mso_sptPlaqueSegm, sizeof( mso_sptPlaqueSegm ) >> 1,
3538 (SvxMSDffCalculationData*)mso_sptBracketPairCalc, SAL_N_ELEMENTS( mso_sptBracketPairCalc ),
3539 (sal_Int32*)mso_sptDefault3600,
3540 (SvxMSDffTextRectangles*)mso_sptPlaqueTextRect, SAL_N_ELEMENTS( mso_sptPlaqueTextRect ),
3541 21600, 21600,
3542 10800, 10800,
3543 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
3544 (SvxMSDffHandle*)mso_sptPlaqueHandle, SAL_N_ELEMENTS( mso_sptPlaqueHandle ) // handles
3547 static const SvxMSDffVertPair mso_sptBracePairVert[] = // adj value 0 -> 5400
3549 { 4 MSO_I, 0 }, { 0 MSO_I, 1 MSO_I }, { 0 MSO_I, 6 MSO_I }, { 0 ,10800 }, // left bracket
3550 { 0 MSO_I, 7 MSO_I }, { 0 MSO_I, 2 MSO_I }, { 4 MSO_I, 21600 },
3551 { 8 MSO_I, 21600 }, { 3 MSO_I, 2 MSO_I }, { 3 MSO_I, 7 MSO_I }, { 21600, 10800 }, // right bracket
3552 { 3 MSO_I, 6 MSO_I }, { 3 MSO_I, 1 MSO_I }, { 8 MSO_I, 0 },
3553 { 4 MSO_I, 0 }, { 0 MSO_I, 1 MSO_I }, { 0 MSO_I, 6 MSO_I }, { 0 ,10800 }, // filling area
3554 { 0 MSO_I, 7 MSO_I }, { 0 MSO_I, 2 MSO_I }, { 4 MSO_I, 21600 },
3555 { 8 MSO_I, 21600 }, { 3 MSO_I, 2 MSO_I }, { 3 MSO_I, 7 MSO_I }, { 21600, 10800 },
3556 { 3 MSO_I, 6 MSO_I }, { 3 MSO_I, 1 MSO_I }, { 8 MSO_I, 0 }
3558 static const sal_uInt16 mso_sptBracePairSegm[] =
3560 0x4000, 0xa701, 0x0001, 0xa801, 0xa701, 0x0001, 0xa801, 0xaa00, 0x8000,
3561 0x4000, 0xa701, 0x0001, 0xa801, 0xa701, 0x0001, 0xa801, 0xaa00, 0x8000,
3562 0x4000, 0xa701, 0x0001, 0xa801, 0xa701, 0x0001, 0xa801, 0x0001, // filling area
3563 0xa701, 0x0001, 0xa801, 0xa701, 0x0001, 0xa801, 0x6000, 0xab00, 0x8000
3565 static const SvxMSDffCalculationData mso_sptBracePairCalc[] =
3567 { 0x6000, { DFF_Prop_geoLeft, DFF_Prop_adjustValue, 0 } },
3568 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
3569 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
3570 { 0xa000, { DFF_Prop_geoRight, 0, DFF_Prop_adjustValue } },
3571 { 0x2001, { 0x400, 2, 1 } }, // 4
3572 { 0x2001, { DFF_Prop_adjustValue, 2, 1 } }, // 5
3573 { 0x8000, { 10800, 0, DFF_Prop_adjustValue } }, // 6
3574 { 0x8000, { 21600, 0, 0x406 } }, // 7
3575 { 0xa000, { DFF_Prop_geoRight, 0, 0x405 } }, // 8
3576 { 0x2001, { DFF_Prop_adjustValue, 1, 3 } }, // 9
3577 { 0x6000, { 0x409, DFF_Prop_adjustValue, 0 } }, // xa
3578 { 0x6000, { DFF_Prop_geoLeft, 0x40a, 0 } }, // xb
3579 { 0x6000, { DFF_Prop_geoTop, 0x409, 0 } }, // xc
3580 { 0xa000, { DFF_Prop_geoRight, 0, 0x40a } }, // xd
3581 { 0xa000, { DFF_Prop_geoBottom, 0, 0x409 } } // xe
3583 static const SvxMSDffTextRectangles mso_sptBracePairTextRect[] =
3585 { { 0xb MSO_I, 0xc MSO_I }, { 0xd MSO_I, 0xe MSO_I } }
3587 static const SvxMSDffHandle mso_sptBracePairHandle[] =
3589 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_SWITCHED,
3590 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 5400 }
3592 static const mso_CustomShape msoBracePair =
3594 (SvxMSDffVertPair*)mso_sptBracePairVert, SAL_N_ELEMENTS( mso_sptBracePairVert ),
3595 (sal_uInt16*)mso_sptBracePairSegm, sizeof( mso_sptBracePairSegm ) >> 1,
3596 (SvxMSDffCalculationData*)mso_sptBracePairCalc, SAL_N_ELEMENTS( mso_sptBracePairCalc ),
3597 (sal_Int32*)mso_sptDefault1800,
3598 (SvxMSDffTextRectangles*)mso_sptBracePairTextRect, SAL_N_ELEMENTS( mso_sptBracePairTextRect ),
3599 21600, 21600,
3600 10800, MIN_INT32,
3601 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
3602 (SvxMSDffHandle*)mso_sptBracePairHandle, SAL_N_ELEMENTS( mso_sptBracePairHandle ) // handles
3605 static const SvxMSDffCalculationData mso_sptBracketCalc[] =
3607 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
3608 { 0x6000, { DFF_Prop_geoTop, DFF_Prop_adjustValue, 0 } },
3609 { 0xa000, { DFF_Prop_geoBottom, 0, DFF_Prop_adjustValue } },
3610 { 0x6000, { DFF_Prop_geoTop, 0x400, 0 } },
3611 { 0xa000, { DFF_Prop_geoBottom, 0, 0x400 } }
3613 static const sal_uInt16 mso_sptBracketSegm[] =
3615 0x4000, 0x2001, 0x0001, 0x2001, 0x8000
3617 static const SvxMSDffVertPair mso_sptLeftBracketVert[] = // adj value 0 -> 10800
3619 { 21600, 0 }, { 10800, 0 }, { 0, 3 MSO_I }, { 0, 1 MSO_I },
3620 { 0, 2 MSO_I }, { 0, 4 MSO_I }, { 10800, 21600 }, { 21600, 21600 }
3622 static const SvxMSDffTextRectangles mso_sptLeftBracketTextRect[] =
3624 { { 6350, 3 MSO_I }, { 21600, 4 MSO_I } }
3626 static const SvxMSDffVertPair mso_sptLeftBracketGluePoints[] =
3628 { 21600, 0 }, { 0, 10800 }, { 21600, 21600 }
3630 static const SvxMSDffHandle mso_sptLeftBracketHandle[] =
3632 { MSDFF_HANDLE_FLAGS_RANGE,
3633 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 10800 }
3635 static const mso_CustomShape msoLeftBracket =
3637 (SvxMSDffVertPair*)mso_sptLeftBracketVert, SAL_N_ELEMENTS( mso_sptLeftBracketVert ),
3638 (sal_uInt16*)mso_sptBracketSegm, sizeof( mso_sptBracketSegm ) >> 1,
3639 (SvxMSDffCalculationData*)mso_sptBracketCalc, SAL_N_ELEMENTS( mso_sptBracketCalc ),
3640 (sal_Int32*)mso_sptDefault1800,
3641 (SvxMSDffTextRectangles*)mso_sptLeftBracketTextRect, SAL_N_ELEMENTS( mso_sptLeftBracketTextRect ),
3642 21600, 21600,
3643 MIN_INT32, MIN_INT32,
3644 (SvxMSDffVertPair*)mso_sptLeftBracketGluePoints, SAL_N_ELEMENTS( mso_sptLeftBracketGluePoints ),
3645 (SvxMSDffHandle*)mso_sptLeftBracketHandle, SAL_N_ELEMENTS( mso_sptLeftBracketHandle ) // handles
3647 static const SvxMSDffVertPair mso_sptRightBracketVert[] = // adj value 0 -> 10800
3649 { 0, 0 }, { 10800, 0 }, { 21600, 3 MSO_I }, { 21600, 1 MSO_I },
3650 { 21600, 2 MSO_I }, { 21600, 4 MSO_I }, { 10800, 21600 }, { 0, 21600 }
3652 static const SvxMSDffTextRectangles mso_sptRightBracketTextRect[] =
3654 { { 0, 3 MSO_I }, { 15150, 4 MSO_I } }
3656 static const SvxMSDffVertPair mso_sptRightBracketGluePoints[] =
3658 { 0, 0 }, { 0, 21600 }, { 21600, 10800 }
3660 static const SvxMSDffHandle mso_sptRightBracketHandle[] =
3662 { MSDFF_HANDLE_FLAGS_RANGE,
3663 1, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 10800 }
3665 static const mso_CustomShape msoRightBracket =
3667 (SvxMSDffVertPair*)mso_sptRightBracketVert, SAL_N_ELEMENTS( mso_sptRightBracketVert ),
3668 (sal_uInt16*)mso_sptBracketSegm, sizeof( mso_sptBracketSegm ) >> 1,
3669 (SvxMSDffCalculationData*)mso_sptBracketCalc, SAL_N_ELEMENTS( mso_sptBracketCalc ),
3670 (sal_Int32*)mso_sptDefault1800,
3671 (SvxMSDffTextRectangles*)mso_sptRightBracketTextRect, SAL_N_ELEMENTS( mso_sptRightBracketTextRect ),
3672 21600, 21600,
3673 MIN_INT32, MIN_INT32,
3674 (SvxMSDffVertPair*)mso_sptRightBracketGluePoints, SAL_N_ELEMENTS( mso_sptRightBracketGluePoints ),
3675 (SvxMSDffHandle*)mso_sptRightBracketHandle, SAL_N_ELEMENTS( mso_sptRightBracketHandle ) // handles
3678 static const SvxMSDffCalculationData mso_sptBraceCalc[] =
3680 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
3681 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
3682 { 0xa000, { 0x404, 0, DFF_Prop_adjustValue } },
3683 { 0xa000, { 0x404, 0, 0x400 } },
3684 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
3685 { 0x6000, { 0x404, 0x400, 0 } },
3686 { 0x6000, { 0x404, DFF_Prop_adjustValue, 0 } },
3687 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
3688 { 0x8000, { 21600, 0, 0x400 } },
3689 { 0x2001, { DFF_Prop_adjustValue, 10000, 31953 } },
3690 { 0x8000, { 21600, 0, 0x409 } }
3692 static const sal_uInt16 mso_sptBraceSegm[] =
3694 0x4000, 0x2001, 0x0001, 0x2002, 0x0001, 0x2001, 0x8000
3696 static const sal_Int32 mso_sptBraceDefault[] =
3698 2, 1800, 10800
3700 static const SvxMSDffVertPair mso_sptLeftBraceVert[] =
3702 { 21600, 0 }, // p
3703 { 16200, 0 }, { 10800, 0 MSO_I }, { 10800, 1 MSO_I }, // ccp
3704 { 10800, 2 MSO_I }, // p
3705 { 10800, 3 MSO_I }, { 5400, 4 MSO_I }, { 0, 4 MSO_I }, // ccp
3706 { 5400, 4 MSO_I }, { 10800, 5 MSO_I }, { 10800, 6 MSO_I }, // ccp
3707 { 10800, 7 MSO_I }, // p
3708 { 10800, 8 MSO_I }, { 16200, 21600 }, { 21600, 21600 } // ccp
3710 static const SvxMSDffTextRectangles mso_sptLeftBraceTextRect[] =
3712 { { 13800, 9 MSO_I }, { 21600, 10 MSO_I } }
3714 static const SvxMSDffHandle mso_sptLeftBraceHandle[] =
3716 { MSDFF_HANDLE_FLAGS_RANGE,
3717 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 5400 },
3718 { MSDFF_HANDLE_FLAGS_RANGE,
3719 0, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 21600 }
3721 static const mso_CustomShape msoLeftBrace = // adj value0 0 -> 5400
3722 { // adj value1 0 -> 21600
3723 (SvxMSDffVertPair*)mso_sptLeftBraceVert, SAL_N_ELEMENTS( mso_sptLeftBraceVert ),
3724 (sal_uInt16*)mso_sptBraceSegm, sizeof( mso_sptBraceSegm ) >> 1,
3725 (SvxMSDffCalculationData*)mso_sptBraceCalc, SAL_N_ELEMENTS( mso_sptBraceCalc ),
3726 (sal_Int32*)mso_sptBraceDefault,
3727 (SvxMSDffTextRectangles*)mso_sptLeftBraceTextRect, SAL_N_ELEMENTS( mso_sptLeftBraceTextRect ),
3728 21600, 21600,
3729 MIN_INT32, MIN_INT32,
3730 (SvxMSDffVertPair*)mso_sptLeftBracketGluePoints, SAL_N_ELEMENTS( mso_sptLeftBracketGluePoints ),
3731 (SvxMSDffHandle*)mso_sptLeftBraceHandle, SAL_N_ELEMENTS( mso_sptLeftBraceHandle ) // handles
3733 static const SvxMSDffVertPair mso_sptRightBraceVert[] =
3735 { 0, 0 }, // p
3736 { 5400, 0 }, { 10800, 0 MSO_I }, { 10800, 1 MSO_I }, // ccp
3737 { 10800, 2 MSO_I }, // p
3738 { 10800, 3 MSO_I }, { 16200, 4 MSO_I }, { 21600, 4 MSO_I }, // ccp
3739 { 16200, 4 MSO_I }, { 10800, 5 MSO_I }, { 10800, 6 MSO_I }, // ccp
3740 { 10800, 7 MSO_I }, // p
3741 { 10800, 8 MSO_I }, { 5400, 21600 }, { 0, 21600 } // ccp
3743 static const SvxMSDffTextRectangles mso_sptRightBraceTextRect[] =
3745 { { 0, 9 MSO_I }, { 7800, 10 MSO_I } }
3747 static const SvxMSDffHandle mso_sptRightBraceHandle[] =
3749 { MSDFF_HANDLE_FLAGS_RANGE,
3750 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 5400 },
3751 { MSDFF_HANDLE_FLAGS_RANGE,
3752 1, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 21600 }
3754 static const mso_CustomShape msoRightBrace = // adj value0 0 -> 5400
3755 { // adj value1 0 -> 21600
3756 (SvxMSDffVertPair*)mso_sptRightBraceVert, SAL_N_ELEMENTS( mso_sptRightBraceVert ),
3757 (sal_uInt16*)mso_sptBraceSegm, sizeof( mso_sptBraceSegm ) >> 1,
3758 (SvxMSDffCalculationData*)mso_sptBraceCalc, SAL_N_ELEMENTS( mso_sptBraceCalc ),
3759 (sal_Int32*)mso_sptBraceDefault,
3760 (SvxMSDffTextRectangles*)mso_sptRightBraceTextRect, SAL_N_ELEMENTS( mso_sptRightBraceTextRect ),
3761 21600, 21600,
3762 MIN_INT32, MIN_INT32,
3763 (SvxMSDffVertPair*)mso_sptRightBracketGluePoints, SAL_N_ELEMENTS( mso_sptRightBracketGluePoints ),
3764 (SvxMSDffHandle*)mso_sptRightBraceHandle, SAL_N_ELEMENTS( mso_sptRightBraceHandle ) // handles
3767 static const SvxMSDffVertPair mso_sptIrregularSeal1Vert[] =
3769 { 10901, 5905 }, { 8458, 2399 }, { 7417, 6425 }, { 476, 2399 },
3770 { 4732, 7722 }, { 106, 8718 }, { 3828, 11880 }, { 243, 14689 },
3771 { 5772, 14041 }, { 4868, 17719 }, { 7819, 15730 }, { 8590, 21600 },
3772 { 10637, 15038 }, { 13349, 19840 }, { 14125, 14561 }, { 18248, 18195 },
3773 { 16938, 13044 }, { 21600, 13393 }, { 17710, 10579 }, { 21198, 8242 },
3774 { 16806, 7417 }, { 18482, 4560 }, { 14257, 5429 }, { 14623, 106 }, { 10901, 5905 }
3776 static const SvxMSDffTextRectangles mso_sptIrregularSeal1TextRect[] =
3778 { { 4680, 6570 }, { 16140, 13280 } }
3780 static const SvxMSDffVertPair mso_sptIrregularSeal1GluePoints[] =
3782 { 14623, 106 }, { 106, 8718 }, { 8590, 21600 }, { 21600, 13393 }
3784 static const mso_CustomShape msoIrregularSeal1 =
3786 (SvxMSDffVertPair*)mso_sptIrregularSeal1Vert, SAL_N_ELEMENTS( mso_sptIrregularSeal1Vert ),
3787 NULL, 0,
3788 NULL, 0,
3789 NULL,
3790 (SvxMSDffTextRectangles*)mso_sptIrregularSeal1TextRect, SAL_N_ELEMENTS( mso_sptIrregularSeal1TextRect ),
3791 21600, 21600,
3792 MIN_INT32, MIN_INT32,
3793 (SvxMSDffVertPair*)mso_sptIrregularSeal1GluePoints, SAL_N_ELEMENTS( mso_sptIrregularSeal1GluePoints ),
3794 NULL, 0 // handles
3797 static const SvxMSDffVertPair mso_sptIrregularSeal2Vert[] =
3799 { 11464, 4340 }, { 9722, 1887 }, { 8548, 6383 }, { 4503, 3626 },
3800 { 5373, 7816 }, { 1174, 8270 }, { 3934, 11592 }, { 0, 12875 },
3801 { 3329, 15372 }, { 1283, 17824 }, { 4804, 18239 }, { 4918, 21600 },
3802 { 7525, 18125 }, { 8698, 19712 }, { 9871, 17371 }, { 11614, 18844 },
3803 { 12178, 15937 }, { 14943, 17371 }, { 14640, 14348 }, { 18878, 15632 },
3804 { 16382, 12311 }, { 18270, 11292 }, { 16986, 9404 }, { 21600, 6646 },
3805 { 16382, 6533 }, { 18005, 3172 }, { 14524, 5778 }, { 14789, 0 },
3806 { 11464, 4340 }
3808 static const SvxMSDffTextRectangles mso_sptIrregularSeal2TextRect[] =
3810 { { 5400, 6570 }, { 14160, 15290 } }
3812 static const SvxMSDffVertPair mso_sptIrregularSeal2GluePoints[] =
3814 { 9722, 1887 }, { 0, 12875 }, { 11614, 18844 }, { 21600, 6646 }
3816 static const mso_CustomShape msoIrregularSeal2 =
3818 (SvxMSDffVertPair*)mso_sptIrregularSeal2Vert, SAL_N_ELEMENTS( mso_sptIrregularSeal2Vert ),
3819 NULL, 0,
3820 NULL, 0,
3821 NULL,
3822 (SvxMSDffTextRectangles*)mso_sptIrregularSeal2TextRect, SAL_N_ELEMENTS( mso_sptIrregularSeal2TextRect ),
3823 21600, 21600,
3824 MIN_INT32, MIN_INT32,
3825 (SvxMSDffVertPair*)mso_sptIrregularSeal2GluePoints, SAL_N_ELEMENTS( mso_sptIrregularSeal2GluePoints ),
3826 NULL, 0 // handles
3829 static const SvxMSDffVertPair mso_sptSeal4Vert[] = // adjustment1 : 0 - 10800
3831 { 0, 10800 }, { 4 MSO_I, 4 MSO_I }, { 10800, 0 }, { 3 MSO_I, 4 MSO_I },
3832 { 21600, 10800 }, { 3 MSO_I, 3 MSO_I }, { 10800, 21600 }, { 4 MSO_I, 3 MSO_I },
3833 { 0, 10800 }
3835 static const SvxMSDffCalculationData mso_sptSeal4Calc[] =
3837 { 0x0000, { 7600, 0, 0 } },
3838 { 0x6001, { 0x400, DFF_Prop_adjustValue, 10800 } },
3839 { 0xa000, { 0x400, 0, 0x401 } },
3840 { 0x4000, { 10800, 0x402, 0 } },
3841 { 0x8000, { 10800, 0, 0x402 } }
3843 static const SvxMSDffTextRectangles mso_sptSeal4TextRect[] =
3845 { { 4 MSO_I, 4 MSO_I }, { 3 MSO_I, 3 MSO_I } }
3847 static const SvxMSDffHandle mso_sptSealHandle[] =
3849 { MSDFF_HANDLE_FLAGS_RANGE,
3850 0x100, 10800, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
3852 static const mso_CustomShape msoSeal4 =
3854 (SvxMSDffVertPair*)mso_sptSeal4Vert, SAL_N_ELEMENTS( mso_sptSeal4Vert ),
3855 NULL, 0,
3856 (SvxMSDffCalculationData*)mso_sptSeal4Calc, SAL_N_ELEMENTS( mso_sptSeal4Calc ),
3857 (sal_Int32*)mso_sptDefault8100,
3858 (SvxMSDffTextRectangles*)mso_sptSeal4TextRect, SAL_N_ELEMENTS( mso_sptSeal4TextRect ),
3859 21600, 21600,
3860 MIN_INT32, MIN_INT32,
3861 NULL, 0,
3862 (SvxMSDffHandle*)mso_sptSealHandle, SAL_N_ELEMENTS( mso_sptSealHandle ) // handles
3865 static const SvxMSDffVertPair mso_sptStarVert[] =
3867 { 10797, 0 }, { 8278, 8256 }, { 0, 8256 }, { 6722, 13405 },
3868 { 4198, 21600 }, { 10797, 16580 }, { 17401, 21600 }, { 14878, 13405 },
3869 { 21600, 8256 }, { 13321, 8256 }, { 10797, 0 }
3871 static const SvxMSDffTextRectangles mso_sptStarTextRect[] =
3873 { { 6722, 8256 }, { 14878, 15460 } }
3875 static const mso_CustomShape msoStar =
3877 (SvxMSDffVertPair*)mso_sptStarVert, SAL_N_ELEMENTS( mso_sptStarVert ),
3878 NULL, 0,
3879 NULL, 0,
3880 NULL,
3881 (SvxMSDffTextRectangles*)mso_sptStarTextRect, SAL_N_ELEMENTS( mso_sptStarTextRect ),
3882 21600, 21600,
3883 MIN_INT32, MIN_INT32,
3884 NULL, 0,
3885 NULL, 0 // handles
3888 static const SvxMSDffCalculationData mso_sptSeal24Calc[] =
3890 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0x00
3891 { 0x2081, { 0x400, 10800, 315 } }, // 0x01 ( textframe )
3892 { 0x2082, { 0x400, 10800, 315 } }, // 0x02
3893 { 0x2081, { 0x400, 10800, 135 } }, // 0x03
3894 { 0x2082, { 0x400, 10800, 135 } }, // 0x04
3895 { 0x0081, { 0, 10800, 0 } },
3896 { 0x0082, { 0, 10800, 0 } },
3897 { 0x2081, { 0x400, 10800, 7 } },
3898 { 0x2082, { 0x400, 10800, 7 } },
3899 { 0x0081, { 0, 10800, 15 } },
3900 { 0x0082, { 0, 10800, 15 } },
3901 { 0x2081, { 0x400, 10800, 22 } },
3902 { 0x2082, { 0x400, 10800, 22 } },
3903 { 0x0081, { 0, 10800, 30 } },
3904 { 0x0082, { 0, 10800, 30 } },
3905 { 0x2081, { 0x400, 10800, 37 } },
3906 { 0x2082, { 0x400, 10800, 37 } },
3907 { 0x0081, { 0, 10800, 45 } },
3908 { 0x0082, { 0, 10800, 45 } },
3909 { 0x2081, { 0x400, 10800, 52 } },
3910 { 0x2082, { 0x400, 10800, 52 } },
3911 { 0x0081, { 0, 10800, 60 } },
3912 { 0x0082, { 0, 10800, 60 } },
3913 { 0x2081, { 0x400, 10800, 67 } },
3914 { 0x2082, { 0x400, 10800, 67 } },
3915 { 0x0081, { 0, 10800, 75 } },
3916 { 0x0082, { 0, 10800, 75 } },
3917 { 0x2081, { 0x400, 10800, 82 } },
3918 { 0x2082, { 0x400, 10800, 82 } },
3919 { 0x0081, { 0, 10800, 90 } },
3920 { 0x0082, { 0, 10800, 90 } },
3921 { 0x2081, { 0x400, 10800, 97 } },
3922 { 0x2082, { 0x400, 10800, 97 } },
3923 { 0x0081, { 0, 10800, 105 } },
3924 { 0x0082, { 0, 10800, 105 } },
3925 { 0x2081, { 0x400, 10800, 112 } },
3926 { 0x2082, { 0x400, 10800, 112 } },
3927 { 0x0081, { 0, 10800, 120 } },
3928 { 0x0082, { 0, 10800, 120 } },
3929 { 0x2081, { 0x400, 10800, 127 } },
3930 { 0x2082, { 0x400, 10800, 127 } },
3931 { 0x0081, { 0, 10800, 135 } },
3932 { 0x0082, { 0, 10800, 135 } },
3933 { 0x2081, { 0x400, 10800, 142 } },
3934 { 0x2082, { 0x400, 10800, 142 } },
3935 { 0x0081, { 0, 10800, 150 } },
3936 { 0x0082, { 0, 10800, 150 } },
3937 { 0x2081, { 0x400, 10800, 157 } },
3938 { 0x2082, { 0x400, 10800, 157 } },
3939 { 0x0081, { 0, 10800, 165 } },
3940 { 0x0082, { 0, 10800, 165 } },
3941 { 0x2081, { 0x400, 10800, 172 } },
3942 { 0x2082, { 0x400, 10800, 172 } },
3943 { 0x0081, { 0, 10800, 180 } },
3944 { 0x0082, { 0, 10800, 180 } },
3945 { 0x2081, { 0x400, 10800, 187 } },
3946 { 0x2082, { 0x400, 10800, 187 } },
3947 { 0x0081, { 0, 10800, 195 } },
3948 { 0x0082, { 0, 10800, 195 } },
3949 { 0x2081, { 0x400, 10800, 202 } },
3950 { 0x2082, { 0x400, 10800, 202 } },
3951 { 0x0081, { 0, 10800, 210 } },
3952 { 0x0082, { 0, 10800, 210 } },
3953 { 0x2081, { 0x400, 10800, 217 } },
3954 { 0x2082, { 0x400, 10800, 217 } },
3955 { 0x0081, { 0, 10800, 225 } },
3956 { 0x0082, { 0, 10800, 225 } },
3957 { 0x2081, { 0x400, 10800, 232 } },
3958 { 0x2082, { 0x400, 10800, 232 } },
3959 { 0x0081, { 0, 10800, 240 } },
3960 { 0x0082, { 0, 10800, 240 } },
3961 { 0x2081, { 0x400, 10800, 247 } },
3962 { 0x2082, { 0x400, 10800, 247 } },
3963 { 0x0081, { 0, 10800, 255 } },
3964 { 0x0082, { 0, 10800, 255 } },
3965 { 0x2081, { 0x400, 10800, 262 } },
3966 { 0x2082, { 0x400, 10800, 262 } },
3967 { 0x0081, { 0, 10800, 270 } },
3968 { 0x0082, { 0, 10800, 270 } },
3969 { 0x2081, { 0x400, 10800, 277 } },
3970 { 0x2082, { 0x400, 10800, 277 } },
3971 { 0x0081, { 0, 10800, 285 } },
3972 { 0x0082, { 0, 10800, 285 } },
3973 { 0x2081, { 0x400, 10800, 292 } },
3974 { 0x2082, { 0x400, 10800, 292 } },
3975 { 0x0081, { 0, 10800, 300 } },
3976 { 0x0082, { 0, 10800, 300 } },
3977 { 0x2081, { 0x400, 10800, 307 } },
3978 { 0x2082, { 0x400, 10800, 307 } },
3979 { 0x0081, { 0, 10800, 315 } },
3980 { 0x0082, { 0, 10800, 315 } },
3981 { 0x2081, { 0x400, 10800, 322 } },
3982 { 0x2082, { 0x400, 10800, 322 } },
3983 { 0x0081, { 0, 10800, 330 } },
3984 { 0x0082, { 0, 10800, 330 } },
3985 { 0x2081, { 0x400, 10800, 337 } },
3986 { 0x2082, { 0x400, 10800, 337 } },
3987 { 0x0081, { 0, 10800, 345 } },
3988 { 0x0082, { 0, 10800, 345 } },
3989 { 0x2081, { 0x400, 10800, 352 } },
3990 { 0x2082, { 0x400, 10800, 352 } }
3992 static const SvxMSDffVertPair mso_sptSeal8Vert[] = // adj value 0 -> 10800
3994 { 5 MSO_I, 6 MSO_I }, { 11 MSO_I, 12 MSO_I }, { 17 MSO_I, 18 MSO_I }, { 23 MSO_I, 24 MSO_I },
3995 { 29 MSO_I, 30 MSO_I }, { 35 MSO_I, 36 MSO_I }, { 41 MSO_I, 42 MSO_I }, { 47 MSO_I, 48 MSO_I },
3996 { 53 MSO_I, 54 MSO_I }, { 59 MSO_I, 60 MSO_I }, { 65 MSO_I, 66 MSO_I }, { 71 MSO_I, 72 MSO_I },
3997 { 77 MSO_I, 78 MSO_I }, { 83 MSO_I, 84 MSO_I }, { 89 MSO_I, 90 MSO_I }, { 95 MSO_I, 96 MSO_I },
3998 { 5 MSO_I, 6 MSO_I }
4000 static const SvxMSDffTextRectangles mso_sptSealTextRect[] =
4002 { { 1 MSO_I, 2 MSO_I }, { 3 MSO_I, 4 MSO_I } }
4004 static const mso_CustomShape msoSeal8 =
4006 (SvxMSDffVertPair*)mso_sptSeal8Vert, SAL_N_ELEMENTS( mso_sptSeal8Vert ),
4007 NULL, 0,
4008 (SvxMSDffCalculationData*)mso_sptSeal24Calc, SAL_N_ELEMENTS( mso_sptSeal24Calc ),
4009 (sal_Int32*)mso_sptDefault2500,
4010 (SvxMSDffTextRectangles*)mso_sptSealTextRect, SAL_N_ELEMENTS( mso_sptSealTextRect ),
4011 21600, 21600,
4012 MIN_INT32, MIN_INT32,
4013 NULL, 0,
4014 (SvxMSDffHandle*)mso_sptSealHandle, SAL_N_ELEMENTS( mso_sptSealHandle ) // handles
4016 static const SvxMSDffVertPair mso_sptSeal16Vert[] = // adj value 0 -> 10800
4018 { 0x05 MSO_I, 0x06 MSO_I }, { 0x07 MSO_I, 0x08 MSO_I }, { 0x09 MSO_I, 0x0a MSO_I }, { 0x0b MSO_I, 0x0c MSO_I },
4019 { 0x0d MSO_I, 0x0e MSO_I }, { 0x0f MSO_I, 0x10 MSO_I }, { 0x11 MSO_I, 0x12 MSO_I }, { 0x13 MSO_I, 0x14 MSO_I },
4020 { 0x15 MSO_I, 0x16 MSO_I }, { 0x17 MSO_I, 0x18 MSO_I }, { 0x19 MSO_I, 0x1a MSO_I }, { 0x1b MSO_I, 0x1c MSO_I },
4021 { 0x1d MSO_I, 0x1e MSO_I }, { 0x1f MSO_I, 0x20 MSO_I }, { 0x21 MSO_I, 0x22 MSO_I }, { 0x23 MSO_I, 0x24 MSO_I },
4022 { 0x25 MSO_I, 0x26 MSO_I }, { 0x27 MSO_I, 0x28 MSO_I }, { 0x29 MSO_I, 0x2a MSO_I }, { 0x2b MSO_I, 0x2c MSO_I },
4023 { 0x2d MSO_I, 0x2e MSO_I }, { 0x2f MSO_I, 0x30 MSO_I }, { 0x31 MSO_I, 0x32 MSO_I }, { 0x33 MSO_I, 0x34 MSO_I },
4024 { 0x35 MSO_I, 0x36 MSO_I }, { 0x37 MSO_I, 0x38 MSO_I }, { 0x39 MSO_I, 0x3a MSO_I }, { 0x3b MSO_I, 0x3c MSO_I },
4025 { 0x3d MSO_I, 0x3e MSO_I }, { 0x3f MSO_I, 0x40 MSO_I }, { 0x41 MSO_I, 0x42 MSO_I }, { 0x43 MSO_I, 0x44 MSO_I },
4026 { 0x05 MSO_I, 0x06 MSO_I }
4028 static const SvxMSDffCalculationData mso_sptSeal16Calc[] =
4030 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0x00
4031 { 0x2081, { 0x400, 10800, 315 } }, // 0x01 ( textframe )
4032 { 0x2082, { 0x400, 10800, 315 } }, // 0x02
4033 { 0x2081, { 0x400, 10800, 135 } }, // 0x03
4034 { 0x2082, { 0x400, 10800, 135 } }, // 0x04
4035 { 0x0081, { 0, 10800, 0 } },
4036 { 0x0082, { 0, 10800, 0 } },
4037 { 0x2081, { 0x400, 10800, 11 } },
4038 { 0x2082, { 0x400, 10800, 11 } },
4039 { 0x0081, { 0, 10800, 22 } },
4040 { 0x0082, { 0, 10800, 22 } },
4041 { 0x2081, { 0x400, 10800, 33 } },
4042 { 0x2082, { 0x400, 10800, 33 } },
4043 { 0x0081, { 0, 10800, 45 } },
4044 { 0x0082, { 0, 10800, 45 } },
4045 { 0x2081, { 0x400, 10800, 56 } },
4046 { 0x2082, { 0x400, 10800, 56 } },
4047 { 0x0081, { 0, 10800, 67 } },
4048 { 0x0082, { 0, 10800, 67 } },
4049 { 0x2081, { 0x400, 10800, 78 } },
4050 { 0x2082, { 0x400, 10800, 78 } },
4051 { 0x0081, { 0, 10800, 90 } },
4052 { 0x0082, { 0, 10800, 90 } },
4053 { 0x2081, { 0x400, 10800, 101 } },
4054 { 0x2082, { 0x400, 10800, 101 } },
4055 { 0x0081, { 0, 10800, 112 } },
4056 { 0x0082, { 0, 10800, 112 } },
4057 { 0x2081, { 0x400, 10800, 123 } },
4058 { 0x2082, { 0x400, 10800, 123 } },
4059 { 0x0081, { 0, 10800, 135 } },
4060 { 0x0082, { 0, 10800, 135 } },
4061 { 0x2081, { 0x400, 10800, 146 } },
4062 { 0x2082, { 0x400, 10800, 146 } },
4063 { 0x0081, { 0, 10800, 157 } },
4064 { 0x0082, { 0, 10800, 157 } },
4065 { 0x2081, { 0x400, 10800, 168 } },
4066 { 0x2082, { 0x400, 10800, 168 } },
4067 { 0x0081, { 0, 10800, 180 } },
4068 { 0x0082, { 0, 10800, 180 } },
4069 { 0x2081, { 0x400, 10800, 191 } },
4070 { 0x2082, { 0x400, 10800, 191 } },
4071 { 0x0081, { 0, 10800, 202 } },
4072 { 0x0082, { 0, 10800, 202 } },
4073 { 0x2081, { 0x400, 10800, 213 } },
4074 { 0x2082, { 0x400, 10800, 213 } },
4075 { 0x0081, { 0, 10800, 225 } },
4076 { 0x0082, { 0, 10800, 225 } },
4077 { 0x2081, { 0x400, 10800, 236 } },
4078 { 0x2082, { 0x400, 10800, 236 } },
4079 { 0x0081, { 0, 10800, 247 } },
4080 { 0x0082, { 0, 10800, 247 } },
4081 { 0x2081, { 0x400, 10800, 258 } },
4082 { 0x2082, { 0x400, 10800, 258 } },
4083 { 0x0081, { 0, 10800, 270 } },
4084 { 0x0082, { 0, 10800, 270 } },
4085 { 0x2081, { 0x400, 10800, 281 } },
4086 { 0x2082, { 0x400, 10800, 281 } },
4087 { 0x0081, { 0, 10800, 292 } },
4088 { 0x0082, { 0, 10800, 292 } },
4089 { 0x2081, { 0x400, 10800, 303 } },
4090 { 0x2082, { 0x400, 10800, 303 } },
4091 { 0x0081, { 0, 10800, 315 } },
4092 { 0x0082, { 0, 10800, 315 } },
4093 { 0x2081, { 0x400, 10800, 326 } },
4094 { 0x2082, { 0x400, 10800, 326 } },
4095 { 0x0081, { 0, 10800, 337 } },
4096 { 0x0082, { 0, 10800, 337 } },
4097 { 0x2081, { 0x400, 10800, 348 } },
4098 { 0x2082, { 0x400, 10800, 348 } }
4100 static const mso_CustomShape msoSeal16 =
4102 (SvxMSDffVertPair*)mso_sptSeal16Vert, SAL_N_ELEMENTS( mso_sptSeal16Vert ),
4103 NULL, 0,
4104 (SvxMSDffCalculationData*)mso_sptSeal16Calc, SAL_N_ELEMENTS( mso_sptSeal16Calc ),
4105 (sal_Int32*)mso_sptDefault2500,
4106 (SvxMSDffTextRectangles*)mso_sptSealTextRect, SAL_N_ELEMENTS( mso_sptSealTextRect ),
4107 21600, 21600,
4108 MIN_INT32, MIN_INT32,
4109 NULL, 0,
4110 (SvxMSDffHandle*)mso_sptSealHandle, SAL_N_ELEMENTS( mso_sptSealHandle ) // handles
4112 static const SvxMSDffVertPair mso_sptSeal24Vert[] =
4114 { 0x05 MSO_I, 0x06 MSO_I }, { 0x07 MSO_I, 0x08 MSO_I }, { 0x09 MSO_I, 0x0a MSO_I }, { 0x0b MSO_I, 0x0c MSO_I },
4115 { 0x0d MSO_I, 0x0e MSO_I }, { 0x0f MSO_I, 0x10 MSO_I }, { 0x11 MSO_I, 0x12 MSO_I }, { 0x13 MSO_I, 0x14 MSO_I },
4116 { 0x15 MSO_I, 0x16 MSO_I }, { 0x17 MSO_I, 0x18 MSO_I }, { 0x19 MSO_I, 0x1a MSO_I }, { 0x1b MSO_I, 0x1c MSO_I },
4117 { 0x1d MSO_I, 0x1e MSO_I }, { 0x1f MSO_I, 0x20 MSO_I }, { 0x21 MSO_I, 0x22 MSO_I }, { 0x23 MSO_I, 0x24 MSO_I },
4118 { 0x25 MSO_I, 0x26 MSO_I }, { 0x27 MSO_I, 0x28 MSO_I }, { 0x29 MSO_I, 0x2a MSO_I }, { 0x2b MSO_I, 0x2c MSO_I },
4119 { 0x2d MSO_I, 0x2e MSO_I }, { 0x2f MSO_I, 0x30 MSO_I }, { 0x31 MSO_I, 0x32 MSO_I }, { 0x33 MSO_I, 0x34 MSO_I },
4120 { 0x35 MSO_I, 0x36 MSO_I }, { 0x37 MSO_I, 0x38 MSO_I }, { 0x39 MSO_I, 0x3a MSO_I }, { 0x3b MSO_I, 0x3c MSO_I },
4121 { 0x3d MSO_I, 0x3e MSO_I }, { 0x3f MSO_I, 0x40 MSO_I }, { 0x41 MSO_I, 0x42 MSO_I }, { 0x43 MSO_I, 0x44 MSO_I },
4122 { 0x45 MSO_I, 0x46 MSO_I }, { 0x47 MSO_I, 0x48 MSO_I }, { 0x49 MSO_I, 0x4a MSO_I }, { 0x4b MSO_I, 0x4c MSO_I },
4123 { 0x4d MSO_I, 0x4e MSO_I }, { 0x4f MSO_I, 0x50 MSO_I }, { 0x51 MSO_I, 0x52 MSO_I }, { 0x53 MSO_I, 0x54 MSO_I },
4124 { 0x55 MSO_I, 0x56 MSO_I }, { 0x57 MSO_I, 0x58 MSO_I }, { 0x59 MSO_I, 0x5a MSO_I }, { 0x5b MSO_I, 0x5c MSO_I },
4125 { 0x5d MSO_I, 0x5e MSO_I }, { 0x5f MSO_I, 0x60 MSO_I }, { 0x61 MSO_I, 0x62 MSO_I }, { 0x63 MSO_I, 0x64 MSO_I },
4126 { 0x05 MSO_I, 0x06 MSO_I }
4128 static const mso_CustomShape msoSeal24 =
4130 (SvxMSDffVertPair*)mso_sptSeal24Vert, SAL_N_ELEMENTS( mso_sptSeal24Vert ),
4131 NULL, 0,
4132 (SvxMSDffCalculationData*)mso_sptSeal24Calc, SAL_N_ELEMENTS( mso_sptSeal24Calc ),
4133 (sal_Int32*)mso_sptDefault2500,
4134 (SvxMSDffTextRectangles*)mso_sptSealTextRect, SAL_N_ELEMENTS( mso_sptSealTextRect ),
4135 21600, 21600,
4136 MIN_INT32, MIN_INT32,
4137 NULL, 0,
4138 (SvxMSDffHandle*)mso_sptSealHandle, SAL_N_ELEMENTS( mso_sptSealHandle ) // handles
4140 static const SvxMSDffCalculationData mso_sptSeal32Calc[] =
4142 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0x00
4143 { 0x2081, { 0x400, 10800, 315 } }, // 0x01 ( textframe )
4144 { 0x2082, { 0x400, 10800, 315 } }, // 0x02
4145 { 0x2081, { 0x400, 10800, 135 } }, // 0x03
4146 { 0x2082, { 0x400, 10800, 135 } }, // 0x04
4147 { 0x0081, { 0, 10800, 0 } },
4148 { 0x0082, { 0, 10800, 0 } },
4149 { 0x2081, { 0x400, 10800, 5 } },
4150 { 0x2082, { 0x400, 10800, 5 } },
4151 { 0x0081, { 0, 10800, 11 } },
4152 { 0x0082, { 0, 10800, 11 } },
4153 { 0x2081, { 0x400, 10800, 16 } },
4154 { 0x2082, { 0x400, 10800, 16 } },
4155 { 0x0081, { 0, 10800, 22 } },
4156 { 0x0082, { 0, 10800, 22 } },
4157 { 0x2081, { 0x400, 10800, 28 } },
4158 { 0x2082, { 0x400, 10800, 28 } },
4159 { 0x0081, { 0, 10800, 33 } },
4160 { 0x0082, { 0, 10800, 33 } },
4161 { 0x2081, { 0x400, 10800, 39 } },
4162 { 0x2082, { 0x400, 10800, 39 } },
4163 { 0x0081, { 0, 10800, 45 } },
4164 { 0x0082, { 0, 10800, 45 } },
4165 { 0x2081, { 0x400, 10800, 50 } },
4166 { 0x2082, { 0x400, 10800, 50 } },
4167 { 0x0081, { 0, 10800, 56 } },
4168 { 0x0082, { 0, 10800, 56 } },
4169 { 0x2081, { 0x400, 10800, 61 } },
4170 { 0x2082, { 0x400, 10800, 61 } },
4171 { 0x0081, { 0, 10800, 67 } },
4172 { 0x0082, { 0, 10800, 67 } },
4173 { 0x2081, { 0x400, 10800, 73 } },
4174 { 0x2082, { 0x400, 10800, 73 } },
4175 { 0x0081, { 0, 10800, 78 } },
4176 { 0x0082, { 0, 10800, 78 } },
4177 { 0x2081, { 0x400, 10800, 84 } },
4178 { 0x2082, { 0x400, 10800, 84 } },
4179 { 0x0081, { 0, 10800, 90 } },
4180 { 0x0082, { 0, 10800, 90 } },
4181 { 0x2081, { 0x400, 10800, 95 } },
4182 { 0x2082, { 0x400, 10800, 95 } },
4183 { 0x0081, { 0, 10800, 101 } },
4184 { 0x0082, { 0, 10800, 101 } },
4185 { 0x2081, { 0x400, 10800, 106 } },
4186 { 0x2082, { 0x400, 10800, 106 } },
4187 { 0x0081, { 0, 10800, 112 } },
4188 { 0x0082, { 0, 10800, 112 } },
4189 { 0x2081, { 0x400, 10800, 118 } },
4190 { 0x2082, { 0x400, 10800, 118 } },
4191 { 0x0081, { 0, 10800, 123 } },
4192 { 0x0082, { 0, 10800, 123 } },
4193 { 0x2081, { 0x400, 10800, 129 } },
4194 { 0x2082, { 0x400, 10800, 129 } },
4195 { 0x0081, { 0, 10800, 135 } },
4196 { 0x0082, { 0, 10800, 135 } },
4197 { 0x2081, { 0x400, 10800, 140 } },
4198 { 0x2082, { 0x400, 10800, 140 } },
4199 { 0x0081, { 0, 10800, 146 } },
4200 { 0x0082, { 0, 10800, 146 } },
4201 { 0x2081, { 0x400, 10800, 151 } },
4202 { 0x2082, { 0x400, 10800, 151 } },
4203 { 0x0081, { 0, 10800, 157 } },
4204 { 0x0082, { 0, 10800, 157 } },
4205 { 0x2081, { 0x400, 10800, 163 } },
4206 { 0x2082, { 0x400, 10800, 163 } },
4207 { 0x0081, { 0, 10800, 168 } },
4208 { 0x0082, { 0, 10800, 168 } },
4209 { 0x2081, { 0x400, 10800, 174 } },
4210 { 0x2082, { 0x400, 10800, 174 } },
4211 { 0x0081, { 0, 10800, 180 } },
4212 { 0x0082, { 0, 10800, 180 } },
4213 { 0x2081, { 0x400, 10800, 185 } },
4214 { 0x2082, { 0x400, 10800, 185 } },
4215 { 0x0081, { 0, 10800, 191 } },
4216 { 0x0082, { 0, 10800, 191 } },
4217 { 0x2081, { 0x400, 10800, 196 } },
4218 { 0x2082, { 0x400, 10800, 196 } },
4219 { 0x0081, { 0, 10800, 202 } },
4220 { 0x0082, { 0, 10800, 202 } },
4221 { 0x2081, { 0x400, 10800, 208 } },
4222 { 0x2082, { 0x400, 10800, 208 } },
4223 { 0x0081, { 0, 10800, 213 } },
4224 { 0x0082, { 0, 10800, 213 } },
4225 { 0x2081, { 0x400, 10800, 219 } },
4226 { 0x2082, { 0x400, 10800, 219 } },
4227 { 0x0081, { 0, 10800, 225 } },
4228 { 0x0082, { 0, 10800, 225 } },
4229 { 0x2081, { 0x400, 10800, 230 } },
4230 { 0x2082, { 0x400, 10800, 230 } },
4231 { 0x0081, { 0, 10800, 236 } },
4232 { 0x0082, { 0, 10800, 236 } },
4233 { 0x2081, { 0x400, 10800, 241 } },
4234 { 0x2082, { 0x400, 10800, 241 } },
4235 { 0x0081, { 0, 10800, 247 } },
4236 { 0x0082, { 0, 10800, 247 } },
4237 { 0x2081, { 0x400, 10800, 253 } },
4238 { 0x2082, { 0x400, 10800, 253 } },
4239 { 0x0081, { 0, 10800, 258 } },
4240 { 0x0082, { 0, 10800, 258 } },
4241 { 0x2081, { 0x400, 10800, 264 } },
4242 { 0x2082, { 0x400, 10800, 264 } },
4243 { 0x0081, { 0, 10800, 270 } },
4244 { 0x0082, { 0, 10800, 270 } },
4245 { 0x2081, { 0x400, 10800, 275 } },
4246 { 0x2082, { 0x400, 10800, 275 } },
4247 { 0x0081, { 0, 10800, 281 } },
4248 { 0x0082, { 0, 10800, 281 } },
4249 { 0x2081, { 0x400, 10800, 286 } },
4250 { 0x2082, { 0x400, 10800, 286 } },
4251 { 0x0081, { 0, 10800, 292 } },
4252 { 0x0082, { 0, 10800, 292 } },
4253 { 0x2081, { 0x400, 10800, 298 } },
4254 { 0x2082, { 0x400, 10800, 298 } },
4255 { 0x0081, { 0, 10800, 303 } },
4256 { 0x0082, { 0, 10800, 303 } },
4257 { 0x2081, { 0x400, 10800, 309 } },
4258 { 0x2082, { 0x400, 10800, 309 } },
4259 { 0x0081, { 0, 10800, 315 } },
4260 { 0x0082, { 0, 10800, 315 } },
4261 { 0x2081, { 0x400, 10800, 320 } },
4262 { 0x2082, { 0x400, 10800, 320 } },
4263 { 0x0081, { 0, 10800, 326 } },
4264 { 0x0082, { 0, 10800, 326 } },
4265 { 0x2081, { 0x400, 10800, 331 } },
4266 { 0x2082, { 0x400, 10800, 331 } },
4267 { 0x0081, { 0, 10800, 337 } },
4268 { 0x0082, { 0, 10800, 337 } },
4269 { 0x2081, { 0x400, 10800, 343 } },
4270 { 0x2082, { 0x400, 10800, 343 } },
4271 { 0x0081, { 0, 10800, 348 } },
4272 { 0x0082, { 0, 10800, 348 } },
4273 { 0x2081, { 0x400, 10800, 354 } },
4274 { 0x2082, { 0x400, 10800, 354 } }
4276 static const SvxMSDffVertPair mso_sptSeal32Vert[] =
4278 { 0x05 MSO_I, 0x06 MSO_I }, { 0x07 MSO_I, 0x08 MSO_I }, { 0x09 MSO_I, 0x0a MSO_I }, { 0x0b MSO_I, 0x0c MSO_I },
4279 { 0x0d MSO_I, 0x0e MSO_I }, { 0x0f MSO_I, 0x10 MSO_I }, { 0x11 MSO_I, 0x12 MSO_I }, { 0x13 MSO_I, 0x14 MSO_I },
4280 { 0x15 MSO_I, 0x16 MSO_I }, { 0x17 MSO_I, 0x18 MSO_I }, { 0x19 MSO_I, 0x1a MSO_I }, { 0x1b MSO_I, 0x1c MSO_I },
4281 { 0x1d MSO_I, 0x1e MSO_I }, { 0x1f MSO_I, 0x20 MSO_I }, { 0x21 MSO_I, 0x22 MSO_I }, { 0x23 MSO_I, 0x24 MSO_I },
4282 { 0x25 MSO_I, 0x26 MSO_I }, { 0x27 MSO_I, 0x28 MSO_I }, { 0x29 MSO_I, 0x2a MSO_I }, { 0x2b MSO_I, 0x2c MSO_I },
4283 { 0x2d MSO_I, 0x2e MSO_I }, { 0x2f MSO_I, 0x30 MSO_I }, { 0x31 MSO_I, 0x32 MSO_I }, { 0x33 MSO_I, 0x34 MSO_I },
4284 { 0x35 MSO_I, 0x36 MSO_I }, { 0x37 MSO_I, 0x38 MSO_I }, { 0x39 MSO_I, 0x3a MSO_I }, { 0x3b MSO_I, 0x3c MSO_I },
4285 { 0x3d MSO_I, 0x3e MSO_I }, { 0x3f MSO_I, 0x40 MSO_I }, { 0x41 MSO_I, 0x42 MSO_I }, { 0x43 MSO_I, 0x44 MSO_I },
4286 { 0x45 MSO_I, 0x46 MSO_I }, { 0x47 MSO_I, 0x48 MSO_I }, { 0x49 MSO_I, 0x4a MSO_I }, { 0x4b MSO_I, 0x4c MSO_I },
4287 { 0x4d MSO_I, 0x4e MSO_I }, { 0x4f MSO_I, 0x50 MSO_I }, { 0x51 MSO_I, 0x52 MSO_I }, { 0x53 MSO_I, 0x54 MSO_I },
4288 { 0x55 MSO_I, 0x56 MSO_I }, { 0x57 MSO_I, 0x58 MSO_I }, { 0x59 MSO_I, 0x5a MSO_I }, { 0x5b MSO_I, 0x5c MSO_I },
4289 { 0x5d MSO_I, 0x5e MSO_I }, { 0x5f MSO_I, 0x60 MSO_I }, { 0x61 MSO_I, 0x62 MSO_I }, { 0x63 MSO_I, 0x64 MSO_I },
4290 { 0x65 MSO_I, 0x66 MSO_I }, { 0x67 MSO_I, 0x68 MSO_I }, { 0x69 MSO_I, 0x6a MSO_I }, { 0x6b MSO_I, 0x6c MSO_I },
4291 { 0x6d MSO_I, 0x6e MSO_I }, { 0x6f MSO_I, 0x70 MSO_I }, { 0x71 MSO_I, 0x72 MSO_I }, { 0x73 MSO_I, 0x74 MSO_I },
4292 { 0x75 MSO_I, 0x76 MSO_I }, { 0x77 MSO_I, 0x78 MSO_I }, { 0x79 MSO_I, 0x7a MSO_I }, { 0x7b MSO_I, 0x7c MSO_I },
4293 { 0x7d MSO_I, 0x7e MSO_I }, { 0x7f MSO_I, 0x80 MSO_I }, { 0x81 MSO_I, 0x82 MSO_I }, { 0x83 MSO_I, 0x84 MSO_I },
4294 { 0x05 MSO_I, 0x06 MSO_I }
4296 static const mso_CustomShape msoSeal32 =
4298 (SvxMSDffVertPair*)mso_sptSeal32Vert, SAL_N_ELEMENTS( mso_sptSeal32Vert ),
4299 NULL, 0,
4300 (SvxMSDffCalculationData*)mso_sptSeal32Calc, SAL_N_ELEMENTS( mso_sptSeal32Calc ),
4301 (sal_Int32*)mso_sptDefault2500,
4302 (SvxMSDffTextRectangles*)mso_sptSealTextRect, SAL_N_ELEMENTS( mso_sptSealTextRect ),
4303 21600, 21600,
4304 MIN_INT32, MIN_INT32,
4305 NULL, 0,
4306 (SvxMSDffHandle*)mso_sptSealHandle, SAL_N_ELEMENTS( mso_sptSealHandle )
4309 static const SvxMSDffVertPair mso_sptRibbon2Vert[] = // adjustment1 : x 2700 - 8100 def 5400
4310 { // adjustment2 : y 14400 - 21600 def 18900
4311 { 12 MSO_I, 1 MSO_I }, { 12 MSO_I, 13 MSO_I }, // pp
4312 { 12 MSO_I, 14 MSO_I }, { 15 MSO_I, 21600 }, { 16 MSO_I, 21600 }, // ccp
4313 { 0, 21600 }, { 2750, 7 MSO_I }, { 0, 2 MSO_I }, { 0 MSO_I, 2 MSO_I }, // pppp
4314 { 0 MSO_I, 4 MSO_I }, // p
4315 { 0 MSO_I, 5 MSO_I }, { 10 MSO_I, 0 }, { 11 MSO_I, 0 }, // ccp
4316 { 17 MSO_I, 0 }, // p
4317 { 18 MSO_I, 0 }, { 19 MSO_I, 5 MSO_I }, { 19 MSO_I, 4 MSO_I }, // ccp
4318 { 19 MSO_I, 2 MSO_I }, { 21600, 2 MSO_I }, { 18850, 7 MSO_I }, { 21600, 21600 }, // pppp
4319 { 20 MSO_I, 21600 }, // p
4320 { 21 MSO_I, 21600 }, { 22 MSO_I, 14 MSO_I }, { 22 MSO_I, 13 MSO_I }, // ccp
4321 { 22 MSO_I, 1 MSO_I }, { 12 MSO_I, 1 MSO_I }, { 12 MSO_I, 13 MSO_I }, // ppp
4322 { 12 MSO_I, 23 MSO_I }, { 15 MSO_I, 24 MSO_I }, { 16 MSO_I, 24 MSO_I }, // ccp
4323 { 11 MSO_I, 24 MSO_I }, // p
4324 { 10 MSO_I, 24 MSO_I }, { 0 MSO_I, 26 MSO_I }, { 0 MSO_I, 25 MSO_I }, // ccp
4325 { 0 MSO_I, 27 MSO_I }, { 10 MSO_I, 1 MSO_I }, { 11 MSO_I, 1 MSO_I }, // ccp
4327 { 22 MSO_I, 1 MSO_I }, { 22 MSO_I, 13 MSO_I }, // pp
4328 { 22 MSO_I, 23 MSO_I }, { 21 MSO_I, 24 MSO_I }, { 20 MSO_I, 24 MSO_I }, // ccp
4329 { 17 MSO_I, 24 MSO_I }, // p
4330 { 18 MSO_I, 24 MSO_I }, { 19 MSO_I, 26 MSO_I }, { 19 MSO_I, 25 MSO_I }, // ccp
4331 { 19 MSO_I, 27 MSO_I }, { 18 MSO_I, 1 MSO_I }, { 17 MSO_I, 1 MSO_I }, // ccp
4333 { 0 MSO_I, 25 MSO_I }, { 0 MSO_I, 2 MSO_I }, // pp
4335 { 19 MSO_I, 25 MSO_I }, { 19 MSO_I, 2 MSO_I } // pp
4337 static const sal_uInt16 mso_sptRibbon2Segm[] =
4339 0x4000, 0x0001, 0x2001, 0x0005, 0x2001, 0x0001, 0x2001, 0x0005, 0x2001, 0x0001, 0x6001, 0x8000,
4340 0x4000, 0x0001, 0x2001, 0x0001, 0x2002, 0x6001, 0x8000,
4341 0x4000, 0x0001, 0x2001, 0x0001, 0x2002, 0x6001, 0x8000,
4342 0x4000, 0x0001, 0x8000,
4343 0x4000, 0x0001, 0x8000
4345 static const SvxMSDffCalculationData mso_sptRibbon2Calc[] =
4347 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 00
4348 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }, // 01
4349 { 0x8000, { 21600, 0, 0x401 } }, // 02
4350 { 0x2001, { 0x402, 1, 2 } }, // 03
4351 { 0x2001, { 0x403, 1, 2 } }, // 04
4352 { 0x2001, { 0x404, 1, 2 } }, // 05
4353 { 0x2001, { 0x401, 1, 2 } }, // 06
4354 { 0x8000, { 21600, 0, 0x406 } }, // 07
4355 { 0x0000, { 420, 0, 0 } }, // 08
4356 { 0x2001, { 0x408, 2, 1 } }, // 09
4357 { 0x6000, { 0x400, 0x408, 0 } }, // 10
4358 { 0x6000, { 0x400, 0x409, 0 } }, // 11
4359 { 0x2000, { 0x400, 2700, 0 } }, // 12
4360 { 0x8000, { 21600, 0, 0x404 } }, // 13
4361 { 0x8000, { 21600, 0, 0x405 } }, // 14
4362 { 0xa000, { 0x40c, 0, 0x408 } }, // 15
4363 { 0xa000, { 0x40c, 0, 0x409 } }, // 16
4365 { 0x8000, { 21600, 0, 0x40b } }, // 17
4366 { 0x8000, { 21600, 0, 0x40a } }, // 18
4367 { 0x8000, { 21600, 0, 0x400 } }, // 19
4368 { 0x8000, { 21600, 0, 0x410 } }, // 20
4369 { 0x8000, { 21600, 0, 0x40f } }, // 21
4370 { 0x8000, { 21600, 0, 0x40c } }, // 22
4372 { 0xa000, { 0x40d, 0, 0x405 } }, // 23
4373 { 0x6000, { 0x401, 0x403, 0 } }, // 24
4374 { 0x6000, { 0x401, 0x404, 0 } }, // 25
4375 { 0x6000, { 0x419, 0x405, 0 } }, // 26
4376 { 0xa000, { 0x419, 0, 0x405 } } // 27
4378 static const sal_Int32 mso_sptRibbon2Default[] =
4380 2, 5400, 18900
4382 static const SvxMSDffTextRectangles mso_sptRibbon2TextRect[] =
4384 { { 0 MSO_I, 0 }, { 19 MSO_I, 1 MSO_I } }
4386 static const SvxMSDffHandle mso_sptRibbon2Handle[] =
4388 { MSDFF_HANDLE_FLAGS_RANGE,
4389 0x100, 0, 10800, 10800, 2700, 8100, MIN_INT32, 0x7fffffff },
4390 { MSDFF_HANDLE_FLAGS_RANGE,
4391 10800, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 14400, 21600 }
4393 static const mso_CustomShape msoRibbon2 =
4395 (SvxMSDffVertPair*)mso_sptRibbon2Vert, SAL_N_ELEMENTS( mso_sptRibbon2Vert ),
4396 (sal_uInt16*)mso_sptRibbon2Segm, sizeof( mso_sptRibbon2Segm ) >> 1,
4397 (SvxMSDffCalculationData*)mso_sptRibbon2Calc, SAL_N_ELEMENTS( mso_sptRibbon2Calc ),
4398 (sal_Int32*)mso_sptRibbon2Default,
4399 (SvxMSDffTextRectangles*)mso_sptRibbon2TextRect, SAL_N_ELEMENTS( mso_sptRibbon2TextRect ),
4400 21600, 21600,
4401 MIN_INT32, MIN_INT32,
4402 NULL, 0,
4403 (SvxMSDffHandle*)mso_sptRibbon2Handle, SAL_N_ELEMENTS( mso_sptRibbon2Handle )
4406 static const SvxMSDffVertPair mso_sptRibbonVert[] =
4408 { 0, 0 }, { 3 MSO_I, 0 },
4409 { 4 MSO_I, 11 MSO_I }, { 4 MSO_I, 10 MSO_I }, { 5 MSO_I, 10 MSO_I }, { 5 MSO_I, 11 MSO_I },
4410 { 6 MSO_I, 0 }, { 21600, 0 }, { 18 MSO_I, 14 MSO_I }, { 21600, 15 MSO_I }, { 9 MSO_I, 15 MSO_I }, { 9 MSO_I, 16 MSO_I }, { 8 MSO_I, 21600 }, { 1 MSO_I, 21600 },
4411 { 0 MSO_I, 16 MSO_I }, { 0 MSO_I, 15 MSO_I }, { 0, 15 MSO_I }, { 2700, 14 MSO_I },
4413 { 4 MSO_I, 11 MSO_I },
4414 { 3 MSO_I, 12 MSO_I }, { 1 MSO_I, 12 MSO_I },
4415 { 0 MSO_I, 13 MSO_I }, { 1 MSO_I, 10 MSO_I }, { 4 MSO_I, 10 MSO_I },
4416 { 5 MSO_I, 11 MSO_I },
4417 { 6 MSO_I, 12 MSO_I }, { 8 MSO_I, 12 MSO_I },
4418 { 9 MSO_I, 13 MSO_I }, { 8 MSO_I, 10 MSO_I }, { 5 MSO_I, 10 MSO_I },
4419 { 0 MSO_I, 13 MSO_I },
4420 { 0 MSO_I, 15 MSO_I },
4421 { 9 MSO_I, 13 MSO_I },
4422 { 9 MSO_I, 15 MSO_I }
4424 static const sal_uInt16 mso_sptRibbonSegm[] =
4426 0x4000, 0x0001, 0xa701, 0x0003, 0xa801, 0x0005, 0xa801, 0x0001, 0xa701, 0x0003, 0x6000, 0x8000,
4427 0x4000, 0xaa00, 0xa801, 0x0001, 0xa702, 0x0001, 0x8000,
4428 0x4000, 0xaa00, 0xa801, 0x0001, 0xa702, 0x0001, 0x8000,
4429 0x4000, 0xaa00, 0x0001, 0x8000,
4430 0x4000, 0xaa00, 0x0001, 0x8000
4432 static const SvxMSDffCalculationData mso_sptRibbonCalc[] =
4434 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 00
4435 { 0x2000, { 0x400, 675, 0 } }, // 01
4436 { 0x2000, { 0x401, 675, 0 } }, // 02
4437 { 0x2000, { 0x402, 675, 0 } }, // 03
4438 { 0x2000, { 0x403, 675, 0 } }, // 04
4439 { 0x8000, { 21600, 0, 0x404 } }, // 05
4440 { 0x8000, { 21600, 0, 0x403 } }, // 06
4441 { 0x8000, { 21600, 0, 0x402 } }, // 07
4442 { 0x8000, { 21600, 0, 0x401 } }, // 08
4443 { 0x8000, { 21600, 0, 0x400 } }, // 09
4444 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }, // 10
4445 { 0x2001, { 0x40a, 1, 4 } }, // 11
4446 { 0x2001, { 0x40b, 2, 1 } }, // 12
4447 { 0x2001, { 0x40b, 3, 1 } }, // 13
4448 { 0x8000, { 10800, 0, 0x40c } }, // 14
4449 { 0x8000, { 21600, 0, 0x40a } }, // 15
4450 { 0x8000, { 21600, 0, 0x40b } }, // 16
4451 { 0x0001, { 21600, 1, 2 } }, // 17
4452 { 0x0000, { 21600, 0, 2700 } }, // 18
4453 { 0x2000, { 0x411, 0, 2700 } } // 19
4455 static const sal_Int32 mso_sptRibbonDefault[] =
4457 2, 5400, 2700
4459 static const SvxMSDffTextRectangles mso_sptRibbonTextRect[] =
4461 { { 0 MSO_I, 10 MSO_I }, { 9 MSO_I, 21600 } }
4463 static const SvxMSDffVertPair mso_sptRibbonGluePoints[] =
4465 { 17 MSO_I, 10 MSO_I }, { 2700, 14 MSO_I }, { 17 MSO_I, 21600 }, { 18 MSO_I, 14 MSO_I }
4467 static const SvxMSDffHandle mso_sptRibbonHandle[] =
4469 { MSDFF_HANDLE_FLAGS_RANGE,
4470 0x100, 0, 10800, 10800, 2700, 8100, MIN_INT32, 0x7fffffff },
4471 { MSDFF_HANDLE_FLAGS_RANGE,
4472 10800, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 7200 }
4474 static const mso_CustomShape msoRibbon =
4476 (SvxMSDffVertPair*)mso_sptRibbonVert, SAL_N_ELEMENTS( mso_sptRibbonVert ),
4477 (sal_uInt16*)mso_sptRibbonSegm, sizeof( mso_sptRibbonSegm ) >> 1,
4478 (SvxMSDffCalculationData*)mso_sptRibbonCalc, SAL_N_ELEMENTS( mso_sptRibbonCalc ),
4479 (sal_Int32*)mso_sptRibbonDefault,
4480 (SvxMSDffTextRectangles*)mso_sptRibbonTextRect, SAL_N_ELEMENTS( mso_sptRibbonTextRect ),
4481 21600, 21600,
4482 MIN_INT32, MIN_INT32,
4483 (SvxMSDffVertPair*)mso_sptRibbonGluePoints, SAL_N_ELEMENTS( mso_sptRibbonGluePoints ),
4484 (SvxMSDffHandle*)mso_sptRibbonHandle, SAL_N_ELEMENTS( mso_sptRibbonHandle )
4486 //msosptEllipseRibbon
4487 //svg path = ar@9@38@8@37,0@27@0@26@9@13@8@4@0@25@22@25@9@38@8@37@22@26@3@27l@7@40@3,wa@9@35@8@10@3,0@21@33@9@36@8@1@21@31@20@31@9@35@8@10@20@33,,l@5@40xewr@9@36@8@1@20@31@0@32nfl@20@33ear@9@36@8@1@21@31@22@32nfl@21@33em@0@26nfl@0@32em@22@26nfl@22@32e
4488 //odp path = A ?f9 ?f38 ?f8 ?f37 0 ?f27 ?f0 ?f26 ?f9 ?f13 ?f8 ?f4 ?f0 ?f25 ?f22 ?f25 ?f9 ?f38 ?f8 ?f37 ?f22 ?f26 ?f3 ?f27 L ?f7 ?f40 ?f3 0 W ?f9 ?f35 ?f8 ?f10 ?f3 0 ?f21 ?f33 ?f9 ?f36 ?f8 ?f1 ?f21 ?f31 ?f20 ?f31 ?f9 ?f35 ?f8 ?f10 ?f20 ?f33 0 0 L ?f5 ?f40 Z N W ?f9 ?f36 ?f8 ?f1 ?f20 ?f31 ?f0 ?f32 F L ?f20 ?f33 N A ?f9 ?f36 ?f8 ?f1 ?f21 ?f31 ?f22 ?f32 F L ?f21 ?f33 N M ?f0 ?f26 F L ?f0 ?f32 N M ?f22 ?f26 F L ?f22 ?f32 N
4489 static const SvxMSDffVertPair mso_sptEllipseRibbonVert[] =
4491 { 9 MSO_I , 38 MSO_I },
4492 { 8 MSO_I , 37 MSO_I },
4493 { 0 , 27 MSO_I },
4494 { 0 MSO_I , 26 MSO_I },
4495 { 9 MSO_I , 13 MSO_I },
4496 { 8 MSO_I , 4 MSO_I },
4497 { 0 MSO_I , 25 MSO_I },
4498 { 22 MSO_I , 25 MSO_I },
4499 { 9 MSO_I , 38 MSO_I },
4500 { 8 MSO_I , 37 MSO_I },
4501 { 22 MSO_I , 26 MSO_I },
4502 { 3 MSO_I , 27 MSO_I },
4503 { 7 MSO_I , 40 MSO_I },
4504 { 3 MSO_I , 0 },
4505 { 9 MSO_I , 35 MSO_I },
4506 { 8 MSO_I , 10 MSO_I },
4507 { 3 MSO_I , 0 },
4508 { 21 MSO_I , 33 MSO_I },
4509 { 9 MSO_I , 36 MSO_I },
4510 { 8 MSO_I , 1 MSO_I },
4511 { 21 MSO_I , 31 MSO_I },
4512 { 20 MSO_I , 31 MSO_I },
4513 { 9 MSO_I , 35 MSO_I },
4514 { 8 MSO_I , 10 MSO_I },
4515 { 20 MSO_I , 33 MSO_I },
4516 { 0 , 0 },
4517 { 5 MSO_I , 40 MSO_I },
4518 { 9 MSO_I , 36 MSO_I },
4519 { 8 MSO_I , 1 MSO_I },
4520 { 20 MSO_I , 31 MSO_I },
4521 { 0 MSO_I , 32 MSO_I },
4522 { 20 MSO_I , 33 MSO_I },
4523 { 9 MSO_I , 36 MSO_I },
4524 { 8 MSO_I , 1 MSO_I },
4525 { 21 MSO_I , 31 MSO_I },
4526 { 22 MSO_I , 32 MSO_I },
4527 { 21 MSO_I , 33 MSO_I },
4528 { 0 MSO_I , 26 MSO_I },
4529 { 0 MSO_I , 32 MSO_I },
4530 { 22 MSO_I , 26 MSO_I },
4531 { 22 MSO_I , 32 MSO_I }
4534 static const sal_uInt16 mso_sptEllipseRibbonSegm[] =
4536 0xa30c /*ar*/,0x0002/*l*/,0xa50c/*wa*/,0x0001/*l*/,
4537 0x6001/*x*/, 0x8000/*e*/,0xa504/*wr*/,0xaa00/*nf*/,
4538 0x0001/*l*/, 0x8000/*e*/,0xa304/*ar*/,0xaa00/*nf*/,
4539 0x0001/*l*/, 0x8000/*e*/,0x4000/*m*/,0xaa00/*nf*/,
4540 0x0001/*l*/, 0x8000/*e*/,0x4000/*m*/,0xaa00/*nf*/,
4541 0x0001/*l*/, 0x8000/*e*/
4544 static const SvxMSDffCalculationData mso_sptEllipseRibbonCalc[] =
4546 { 0x2000 , { DFF_Prop_adjustValue , 0 , 0 } }, //val #0
4547 { 0x2000 , { DFF_Prop_adjust2Value , 0 , 0 } }, //val #1
4548 { 0x2000 , { DFF_Prop_adjust3Value , 0 , 0 } }, //val #2
4549 { 0x2000 , { DFF_Prop_geoRight , 0 , 0 } }, //val width
4550 { 0x2000 , { DFF_Prop_geoBottom , 0 , 0 } }, //val height
4551 { 0x2001 , { DFF_Prop_geoRight , 1 , 8 } }, //prod width 1 8
4552 { 0x2001 , { DFF_Prop_geoRight , 1 , 2 } }, //prod width 1 2
4553 { 0x2001 , { DFF_Prop_geoRight , 7 , 8 } }, //prod width 7 8
4554 { 0x2001 , { DFF_Prop_geoRight , 3 , 2 } }, //prod width 3 2
4555 { 0x8000 , { 0 , 0 , 0x406 } }, //sum 0 0 @6
4556 { 0xa000 , { DFF_Prop_geoBottom , 0 , DFF_Prop_adjust3Value } }, //sum height 0 #2
4557 { 0x2001 , { 0x40a , 30573 , 4096 } }, //prod @10 30573 4096
4558 { 0x2001 , { 0x40b , 2 , 1 } }, //prod @11 2 1
4559 { 0xa000 , { DFF_Prop_geoBottom , 0 , 0x40c } }, //sum height 0 @12
4560 { 0x6000 , { 0x40b , DFF_Prop_adjust3Value , 0 } }, //sum @11 #2 0
4561 { 0xe000 , { 0x40b , DFF_Prop_geoBottom , DFF_Prop_adjust2Value } }, //sum @11 height #1
4562 { 0xa000 , { DFF_Prop_geoBottom , 0 , DFF_Prop_adjust2Value } }, //sum height 0 #1
4563 { 0x2001 , { 0x410 , 1 , 2 } }, //prod @16 1 2
4564 { 0x6000 , { 0x40b , 0x411 , 0 } }, //sum @11 @17 0
4565 { 0xe000 , { 0x40e , DFF_Prop_adjust2Value , DFF_Prop_geoBottom } }, //sum @14 #1 height
4566 { 0x6000 , { DFF_Prop_adjustValue , 0x405 , 0 } }, //sum #0 @5 0
4567 { 0xa000 , { DFF_Prop_geoRight , 0 , 0x414 } }, //sum width 0 @20
4568 { 0xa000 , { DFF_Prop_geoRight , 0 , DFF_Prop_adjustValue } }, //sum width 0 #0
4569 { 0xa000 , { 0x406 , 0 , DFF_Prop_adjustValue } }, //sum @6 0 #0
4570 { 0xe00f , { 0x417 , DFF_Prop_geoRight , 0x40b } }, //ellipse @23 width @11
4571 { 0xe000 , { 0x418 , DFF_Prop_geoBottom , 0x40b } }, //sum @24 height @11
4572 { 0xe000 , { 0x419 , 0x40b , 0x413 } }, //sum @25 @11 @19
4573 { 0xe000 , { DFF_Prop_adjust3Value , 0x40b , 0x413 } }, //sum #2 @11 @19
4574 { 0x2001 , { 0x40b , 2391 , 32768 } }, //prod @11 2391 32768
4575 { 0xa000 , { 0x406 , 0 , 0x414 } }, //sum @6 0 @20
4576 { 0xe00f , { 0x41d , DFF_Prop_geoRight , 0x40b } }, //ellipse @29 width @11
4577 { 0xe000 , { DFF_Prop_adjust2Value , 0x41e , 0x40b } }, //sum #1 @30 @11
4578 { 0xe000 , { 0x419 , DFF_Prop_adjust2Value , DFF_Prop_geoBottom } }, //sum @25 #1 height
4579 { 0xe000 , { DFF_Prop_geoBottom , 0x41e , 0x40e } }, //sum height @30 @14
4580 { 0x6000 , { 0x40b , 0x40e , 0 } }, //sum @11 @14 0
4581 { 0xa000 , { DFF_Prop_geoBottom , 0 , 0x422 } }, //sum height 0 @34
4582 { 0xe000 , { 0x423 , 0x413 , 0x40b } }, //sum @35 @19 @11
4583 { 0xe000 , { 0x40a , 0x40f , 0x40b } }, //sum @10 @15 @11
4584 { 0xe000 , { 0x423 , 0x40f , 0x40b } }, //sum @35 @15 @11
4585 { 0xe000 , { 0x41c , 0x40e , 0x412 } }, //sum @28 @14 @18
4586 { 0xa000 , { DFF_Prop_geoBottom , 0 , 0x427 } }, //sum height 0 @39
4587 { 0xa000 , { 0x413 , 0 , 0x412 } }, //sum @19 0 @18
4588 { 0x2001 , { 0x429 , 2 , 3 } }, //prod @41 2 3
4589 { 0xa000 , { DFF_Prop_adjust2Value , 0 , 0x42a } }, //sum #1 0 @42
4590 { 0xa000 , { DFF_Prop_adjust3Value , 0 , 0x42a } }, //sum #2 0 @42
4591 { 0x2004 , { 0x42c , 20925 , 0 } }, //min @44 20925
4592 { 0x2001 , { DFF_Prop_geoRight , 3 , 8 } }, //prod width 3 8
4593 { 0x2000 , { 0x42e , 0 , 4 } }, //sum @46 0 4
4596 static const SvxMSDffTextRectangles mso_sptEllipseRibbonTextRect[] =
4597 {//@0,@1,@22,@25
4598 { { 0 MSO_I, 1 MSO_I }, { 22 MSO_I, 25 MSO_I } }
4601 static const sal_Int32 mso_sptEllipseRibbonDefault[] =
4603 3,5400,5400,18900
4606 static const SvxMSDffHandle mso_sptEllipseRibbonHandle[] =
4608 //position="#0,bottomRight" xrange="@5,@47
4609 //position="center,#1" yrange="@10,@43
4610 //position="topLeft,#2" yrange="@27,@45
4611 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL| MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
4612 0x100, 21600, 0, 0, 0x8/*5+3*/, 0x32/*47+3*/, MIN_INT32, 0x7fffffff },
4613 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
4614 10800, 0x101, 0, 0, MIN_INT32, 0x7fffffff,0xd/*10+3*/, 0x2e /*43+3*/ },
4615 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
4616 0, 0x102, 0, 0, MIN_INT32, 0x7fffffff,0x1e/*27+3*/, 0x30 /*45+3*/ }
4619 static const mso_CustomShape msosptEllipseRibbon =
4621 (SvxMSDffVertPair*)mso_sptEllipseRibbonVert, sizeof( mso_sptEllipseRibbonVert ) / sizeof( SvxMSDffVertPair ),
4622 (sal_uInt16*)mso_sptEllipseRibbonSegm, sizeof( mso_sptEllipseRibbonSegm ) >> 1,
4623 (SvxMSDffCalculationData*)mso_sptEllipseRibbonCalc, sizeof( mso_sptEllipseRibbonCalc ) / sizeof( SvxMSDffCalculationData ),
4624 (sal_Int32*)mso_sptEllipseRibbonDefault,
4625 (SvxMSDffTextRectangles*)mso_sptEllipseRibbonTextRect, sizeof( mso_sptEllipseRibbonTextRect ) / sizeof( SvxMSDffTextRectangles ),
4626 21600, 21600,
4627 MIN_INT32, MIN_INT32,
4628 NULL, 0,
4629 (SvxMSDffHandle*)mso_sptEllipseRibbonHandle, sizeof( mso_sptEllipseRibbonHandle ) / sizeof( SvxMSDffHandle )
4632 //msosptEllipseRibbon2
4633 //svg path = wr@9@34@8@35,0@24@0@23@9,0@8@11@0@22@19@22@9@34@8@35@19@23@3@24l@7@36@3@4at@9@31@8@32@3@4@18@30@9@1@8@33@18@28@17@28@9@31@8@32@17@30,0@4l@5@36xear@9@1@8@33@17@28@0@29nfl@17@30ewr@9@1@8@33@18@28@19@29nfl@18@30em@0@23nfl@0@29em@19@23nfl@19@29e
4634 static const SvxMSDffVertPair mso_sptEllipseRibbon2Vert[] =
4636 { 9 MSO_I , 34 MSO_I },
4637 { 8 MSO_I , 35 MSO_I },
4638 { 0 , 24 MSO_I },
4639 { 0 MSO_I , 23 MSO_I },
4640 { 9 MSO_I , 0 },
4641 { 8 MSO_I , 11 MSO_I },
4642 { 0 MSO_I , 22 MSO_I },
4643 { 19 MSO_I , 22 MSO_I },
4644 { 9 MSO_I , 34 MSO_I },
4645 { 8 MSO_I , 35 MSO_I },
4646 { 19 MSO_I , 23 MSO_I },
4647 { 3 MSO_I , 24 MSO_I },
4648 { 7 MSO_I , 36 MSO_I },
4649 { 3 MSO_I , 4 MSO_I },
4650 { 9 MSO_I , 31 MSO_I },
4651 { 8 MSO_I , 32 MSO_I },
4652 { 3 MSO_I , 4 MSO_I },
4653 { 18 MSO_I , 30 MSO_I },
4654 { 9 MSO_I , 1 MSO_I },
4655 { 8 MSO_I , 33 MSO_I },
4656 { 18 MSO_I , 28 MSO_I },
4657 { 17 MSO_I , 28 MSO_I },
4658 { 9 MSO_I , 31 MSO_I },
4659 { 8 MSO_I , 32 MSO_I },
4660 { 17 MSO_I , 30 MSO_I },
4661 { 0 , 4l MSO_I },
4662 { 5 MSO_I , 36 MSO_I },
4663 { 9 MSO_I , 1 MSO_I },
4664 { 8 MSO_I , 33 MSO_I },
4665 { 17 MSO_I , 28 MSO_I },
4666 { 0 MSO_I , 29 MSO_I },
4667 { 17 MSO_I , 30 MSO_I },
4668 { 9 MSO_I , 1 MSO_I },
4669 { 8 MSO_I , 33 MSO_I },
4670 { 18 MSO_I , 28 MSO_I },
4671 { 19 MSO_I , 29 MSO_I },
4672 { 18 MSO_I , 30 MSO_I },
4673 { 0 MSO_I , 23 MSO_I },
4674 { 0 MSO_I , 29 MSO_I },
4675 { 19 MSO_I , 23 MSO_I },
4676 { 19 MSO_I , 29 MSO_I }
4678 static const sal_uInt16 mso_sptEllipseRibbon2Segm[] =
4680 0xa50c/*wr*/,0x0002/*l*/,0xa30c/*at*/,0x0001/*l*/,
4681 0x6001/*x*/, 0x8000/*e*/,0xa304/*ar*/,0xaa00/*nf*/,
4682 0x0001/*l*/, 0x8000/*e*/,0xa504/*wr*/,0xaa00/*nf*/,
4683 0x0001/*l*/, 0x8000/*e*/,0x4000/*m*/,0xaa00/*nf*/,
4684 0x0001/*l*/, 0x8000/*e*/,0x4000/*m*/,0xaa00/*nf*/,
4685 0x0001/*l*/, 0x8000/*e*/
4688 static const SvxMSDffCalculationData mso_sptEllipseRibbon2Calc[] =
4690 { 0x2000 , { DFF_Prop_adjustValue , 0 , 0 } }, //val #0
4691 { 0x2000 , { DFF_Prop_adjust2Value , 0 , 0 } }, //val #1
4692 { 0x2000 , { DFF_Prop_adjust3Value , 0 , 0 } }, //val #2
4693 { 0x2000 , { DFF_Prop_geoRight , 0 , 0 } }, //val width
4694 { 0x2000 , { DFF_Prop_geoBottom , 0 , 0 } }, //val height
4695 { 0x2001 , { DFF_Prop_geoRight , 1 , 8 } }, //prod width 1 8
4696 { 0x2001 , { DFF_Prop_geoRight , 1 , 2 } }, //prod width 1 2
4697 { 0x2001 , { DFF_Prop_geoRight , 7 , 8 } }, //prod width 7 8
4698 { 0x2001 , { DFF_Prop_geoRight , 3 , 2 } }, //prod width 3 2
4699 { 0x8000 , { 0 , 0 , 0x406 } }, //sum 0 0 @6
4700 { 0x2001 , { DFF_Prop_adjust3Value , 30573 , 4096 } }, //prod #2 30573 4096
4701 { 0x2001 , { 0x40a , 2 , 1 } }, //prod @10 2 1
4702 { 0xe000 , { 0x40a , DFF_Prop_geoBottom , DFF_Prop_adjust3Value } }, //sum @10 height #2
4703 { 0x6000 , { 0x40a , DFF_Prop_adjust2Value , 0 } }, //sum @10 #1 0
4704 { 0x2001 , { DFF_Prop_adjust2Value , 1 , 2 } }, //prod #1 1 2
4705 { 0x6000 , { 0x40a , 0x40e , 0 } }, //sum @10 @14 0
4706 { 0xa000 , { 0x40c , 0 , DFF_Prop_adjust2Value } }, //sum @12 0 #1
4707 { 0x6000 , { DFF_Prop_adjustValue , 0x405 , 0 } }, //sum #0 @5 0
4708 { 0xa000 , { DFF_Prop_geoRight , 0 , 0x411 } }, //sum width 0 @17
4709 { 0xa000 , { DFF_Prop_geoRight , 0 , DFF_Prop_adjustValue } }, //sum width 0 #0
4710 { 0xa000 , { 0x406 , 0 , DFF_Prop_adjustValue } }, //sum @6 0 #0
4711 { 0xe00f , { 0x414 , DFF_Prop_geoRight , 0x40a } }, //ellipse @20 width @10
4712 { 0xa000 , { 0x40a , 0 , 0x415 } }, //sum @10 0 @21
4713 { 0xe000 , { 0x416 , 0x410 , 0x40a } }, //sum @22 @16 @10
4714 { 0xe000 , { DFF_Prop_adjust3Value , 0x410 , 0x40a } }, //sum #2 @16 @10
4715 { 0x2001 , { 0x40a , 2391 , 32768 } }, //prod @10 2391 32768
4716 { 0xa000 , { 0x406 , 0 , 0x411 } }, //sum @6 0 @17
4717 { 0xe00f , { 0x41a , DFF_Prop_geoRight , 0x40a } }, //ellipse @26 width @10
4718 { 0xe000 , { 0x40a , DFF_Prop_adjust2Value , 0x41b } }, //sum @10 #1 @27
4719 { 0x6000 , { 0x416 , DFF_Prop_adjust2Value , 0 } }, //sum @22 #1 0
4720 { 0xa000 , { 0x40c , 0 , 0x41b } }, //sum @12 0 @27
4721 { 0xa000 , { DFF_Prop_geoBottom , 0 , DFF_Prop_adjust3Value } }, //sum height 0 #2
4722 { 0x6000 , { 0x40a , 0x40c , 0 } }, //sum @10 @12 0
4723 { 0xe000 , { 0x420 , 0x40a , 0x410 } }, //sum @32 @10 @16
4724 { 0xe000 , { 0x41f , 0x40a , 0x40d } }, //sum @31 @10 @13
4725 { 0xe000 , { 0x420 , 0x40a , 0x40d } }, //sum @32 @10 @13
4726 { 0xe000 , { 0x419 , 0x40c , 0x40f } }, //sum @25 @12 @15
4727 { 0xa000 , { 0x410 , 0 , 0x40f } }, //sum @16 0 @15
4728 { 0x2001 , { 0x425 , 2 , 3 } }, //prod @37 2 3
4729 { 0x6000 , { 0x401 , 0x426 , 0 } }, //sum @1 @38 0
4730 { 0x6000 , { DFF_Prop_adjust3Value , 0x426 , 0 } }, //sum #2 @38 0
4731 { 0x2005 , { 0x428 , 675 , 0 } }, //max @40 675
4732 { 0x2001 , { DFF_Prop_geoRight , 3 , 8 } }, //prod width 3 8
4733 { 0x2000 , { 0x42a , 0 , 4 } } //sum @42 0 4
4736 static const SvxMSDffTextRectangles mso_sptEllipseRibbon2TextRect[] =
4737 {//@0,@22,@19,@1
4738 { { 0 MSO_I, 22 MSO_I }, { 19 MSO_I, 1 MSO_I } }
4741 static const sal_Int32 mso_sptEllipseRibbon2Default[] =
4743 3,5400,16200,2700
4746 static const SvxMSDffHandle mso_sptEllipseRibbon2Handle[] =
4748 //position="#0,topLeft" xrange="@5,@43
4749 //position="center,#1" yrange="@39,@31
4750 //position="topLeft,#2" yrange="@41,@24
4751 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL| MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
4752 0x100, 0, 0, 0, 0x8/*5+3*/, 0x2e/*43+3*/, MIN_INT32, 0x7fffffff },
4753 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
4754 10800, 0x101, 0, 0, MIN_INT32, 0x7fffffff,0x2a/*39+3*/, 0x22 /*31+3*/ },
4755 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
4756 0, 0x102, 0, 0, MIN_INT32, 0x7fffffff,0x2c/*41+3*/, 0x1b /*24+3*/ }
4759 static const mso_CustomShape msosptEllipseRibbon2 =
4761 (SvxMSDffVertPair*)mso_sptEllipseRibbon2Vert, sizeof( mso_sptEllipseRibbon2Vert ) / sizeof( SvxMSDffVertPair ),
4762 (sal_uInt16*)mso_sptEllipseRibbon2Segm, sizeof( mso_sptEllipseRibbon2Segm ) >> 1,
4763 (SvxMSDffCalculationData*)mso_sptEllipseRibbon2Calc, sizeof( mso_sptEllipseRibbon2Calc ) / sizeof( SvxMSDffCalculationData ),
4764 (sal_Int32*)mso_sptEllipseRibbon2Default,
4765 (SvxMSDffTextRectangles*)mso_sptEllipseRibbon2TextRect, sizeof( mso_sptEllipseRibbon2TextRect ) / sizeof( SvxMSDffTextRectangles ),
4766 21600, 21600,
4767 MIN_INT32, MIN_INT32,
4768 NULL, 0,
4769 (SvxMSDffHandle*)mso_sptEllipseRibbon2Handle, sizeof( mso_sptEllipseRibbon2Handle ) / sizeof( SvxMSDffHandle )
4771 // End
4772 static const SvxMSDffVertPair mso_sptVerticalScrollVert[] = // adjustment1 : 0 - 5400
4774 { 1 MSO_I, 21600 }, { 0, 11 MSO_I }, { 1 MSO_I, 12 MSO_I }, { 0 MSO_I, 12 MSO_I },
4775 { 0 MSO_I, 1 MSO_I }, { 4 MSO_I, 0 }, { 2 MSO_I, 0 }, { 21600, 1 MSO_I },
4776 { 2 MSO_I, 0 MSO_I }, { 3 MSO_I, 0 MSO_I }, { 3 MSO_I, 11 MSO_I }, { 5 MSO_I, 21600 },
4778 { 6 MSO_I, 1 MSO_I }, { 4 MSO_I, 0 MSO_I }, { 8 MSO_I, 9 MSO_I }, { 4 MSO_I, 1 MSO_I },
4780 { 0 MSO_I, 11 MSO_I }, { 1 MSO_I, 21600 }, { 0, 11 MSO_I }, { 1 MSO_I, 12 MSO_I },
4781 { 9 MSO_I, 10 MSO_I }, { 1 MSO_I, 11 MSO_I },
4783 { 4 MSO_I, 0 }, { 6 MSO_I, 1 MSO_I },
4785 { 0 MSO_I, 12 MSO_I }, { 0 MSO_I, 11 MSO_I },
4787 { 4 MSO_I, 0 MSO_I },
4788 { 2 MSO_I, 0 MSO_I }
4790 static const sal_uInt16 mso_sptVerticalScrollSegm[] =
4792 0x4000, 0xa702, 0x0002, 0xa801, 0x0001, 0xa702, 0x0002, 0xa801, 0x6001, 0x8000,
4793 0x4000, 0xa801, 0xa702, 0x6000, 0x8000,
4794 0x4000, 0xa803, 0xa702, 0x6001, 0x8000,
4795 0x4000, 0xa701, 0x8000,
4796 0x4000, 0x0001, 0x8000,
4797 0x4000, 0x0001, 0x8000
4799 static const SvxMSDffCalculationData mso_sptScrollCalc[] =
4801 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
4802 { 0x2001, { 0x400, 1, 2 } },
4803 { 0xa000, { DFF_Prop_geoRight, 0, 0x401 } },
4804 { 0xa000, { DFF_Prop_geoRight, 0, 0x400 } },
4805 { 0x6000, { 0x400, 0x401, 0 } },
4806 { 0xa000, { DFF_Prop_geoRight, 0, 0x404 } },
4807 { 0x2001, { 0x400, 2, 1 } },
4808 { 0x2001, { 0x401, 1, 2 } },
4809 { 0x6000, { 0x400, 0x407, 0 } },
4810 { 0x6000, { 0x401, 0x407, 0 } },
4811 { 0xa000, { DFF_Prop_geoBottom, 0, 0x409 } },
4812 { 0xa000, { DFF_Prop_geoBottom, 0, 0x401 } },
4813 { 0xa000, { DFF_Prop_geoBottom, 0, 0x400 } },
4814 { 0xa000, { DFF_Prop_geoBottom, 0, 0x404 } }
4816 static const SvxMSDffTextRectangles mso_sptScrollTextRect[] =
4818 { { 0 MSO_I, 0 MSO_I }, { 3 MSO_I, 12 MSO_I } }
4820 static const SvxMSDffHandle mso_sptVerticalScrollHandle[] =
4822 { MSDFF_HANDLE_FLAGS_RANGE,
4823 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 5400 }
4825 static const mso_CustomShape msoVerticalScroll =
4827 (SvxMSDffVertPair*)mso_sptVerticalScrollVert, SAL_N_ELEMENTS( mso_sptVerticalScrollVert ),
4828 (sal_uInt16*)mso_sptVerticalScrollSegm, sizeof( mso_sptVerticalScrollSegm ) >> 1,
4829 (SvxMSDffCalculationData*)mso_sptScrollCalc, SAL_N_ELEMENTS( mso_sptScrollCalc ),
4830 (sal_Int32*)mso_sptDefault2700,
4831 (SvxMSDffTextRectangles*)mso_sptScrollTextRect, SAL_N_ELEMENTS( mso_sptScrollTextRect ),
4832 21600, 21600,
4833 11000, 10800,
4834 NULL, 0,
4835 (SvxMSDffHandle*)mso_sptVerticalScrollHandle, SAL_N_ELEMENTS( mso_sptVerticalScrollHandle )
4837 static const SvxMSDffVertPair mso_sptHorizontalScrollVert[] = // adjustment1 : 0 - 5400
4839 { 0, 4 MSO_I }, { 1 MSO_I, 0 MSO_I }, { 3 MSO_I, 0 MSO_I }, { 3 MSO_I, 1 MSO_I },
4840 { 2 MSO_I, 0 }, { 21600, 1 MSO_I }, { 21600, 13 MSO_I }, { 2 MSO_I, 12 MSO_I },
4841 { 0 MSO_I, 12 MSO_I }, { 0 MSO_I, 11 MSO_I }, { 1 MSO_I, 21600 }, { 0, 11 MSO_I },
4843 { 1 MSO_I, 4 MSO_I }, { 9 MSO_I, 8 MSO_I }, { 0 MSO_I, 4 MSO_I }, { 1 MSO_I, 6 MSO_I },
4845 { 2 MSO_I, 1 MSO_I }, { 3 MSO_I, 9 MSO_I }, { 3 MSO_I, 1 MSO_I }, { 2 MSO_I, 0 },
4846 { 21600, 1 MSO_I }, { 2 MSO_I, 0 MSO_I },
4848 { 1 MSO_I, 6 MSO_I },
4849 { 0, 4 MSO_I },
4851 { 2 MSO_I, 0 MSO_I },
4852 { 3 MSO_I, 0 MSO_I },
4854 { 0 MSO_I, 4 MSO_I },
4855 { 0 MSO_I, 11 MSO_I }
4857 static const sal_uInt16 mso_sptHorizontalScrollSegm[] =
4859 0x4000, 0xa801, 0x0002, 0xa802, 0x0001, 0xa801, 0x0002, 0xa802, 0x6001, 0x8000,
4860 0x4000, 0xa803, 0x6000, 0x8000,
4861 0x4000, 0xa803, 0xa702, 0x6000, 0x8000,
4862 0x4000, 0xa701, 0x8000,
4863 0x4000, 0x0001, 0x8000,
4864 0x4000, 0x0001, 0x8000
4866 static const SvxMSDffHandle mso_sptHorizontalScrollHandle[] =
4868 { MSDFF_HANDLE_FLAGS_RANGE,
4869 0x100, 0, 10800, 10800, 0, 5400, MIN_INT32, 0x7fffffff }
4871 static const mso_CustomShape msoHorizontalScroll =
4873 (SvxMSDffVertPair*)mso_sptHorizontalScrollVert, SAL_N_ELEMENTS( mso_sptHorizontalScrollVert ),
4874 (sal_uInt16*)mso_sptHorizontalScrollSegm, sizeof( mso_sptHorizontalScrollSegm ) >> 1,
4875 (SvxMSDffCalculationData*)mso_sptScrollCalc, SAL_N_ELEMENTS( mso_sptScrollCalc ),
4876 (sal_Int32*)mso_sptDefault2700,
4877 (SvxMSDffTextRectangles*)mso_sptScrollTextRect, SAL_N_ELEMENTS( mso_sptScrollTextRect ),
4878 21600, 21600,
4879 10800, 11000,
4880 NULL, 0,
4881 (SvxMSDffHandle*)mso_sptHorizontalScrollHandle, SAL_N_ELEMENTS( mso_sptHorizontalScrollHandle )
4884 static const SvxMSDffVertPair mso_sptFlowChartProcessVert[] =
4886 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0, 0 }
4888 static const mso_CustomShape msoFlowChartProcess =
4890 (SvxMSDffVertPair*)mso_sptFlowChartProcessVert, SAL_N_ELEMENTS( mso_sptFlowChartProcessVert ),
4891 NULL, 0,
4892 NULL, 0,
4893 NULL,
4894 NULL, 0,
4895 21600, 21600,
4896 MIN_INT32, MIN_INT32,
4897 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
4898 NULL, 0 // handles
4901 static const SvxMSDffVertPair mso_sptFlowChartAlternateProcessVert[] =
4903 { 0, 2 MSO_I }, { 0 MSO_I, 0 }, { 1 MSO_I, 0 }, { 21600, 2 MSO_I },
4904 { 21600, 3 MSO_I }, { 1 MSO_I, 21600 }, { 0 MSO_I, 21600 }, { 0, 3 MSO_I }
4906 static const sal_uInt16 mso_sptFlowChartAlternateProcessSegm[] =
4908 0x4000, 0xa801, 0x0001, 0xa701, 0x0001, 0xa801, 0x0001, 0xa701, 0x6000, 0x8000
4910 static const SvxMSDffCalculationData mso_sptFlowChartAlternateProcessCalc[] =
4912 { 0x2000, { DFF_Prop_geoLeft, 2540, 0 } },
4913 { 0x2000, { DFF_Prop_geoRight, 0, 2540 } },
4914 { 0x2000, { DFF_Prop_geoTop, 2540, 0 } },
4915 { 0x2000, { DFF_Prop_geoBottom, 0, 2540 } },
4916 { 0x2000, { DFF_Prop_geoLeft, 800, 0 } },
4917 { 0x2000, { DFF_Prop_geoRight, 0, 800 } },
4918 { 0x2000, { DFF_Prop_geoTop, 800, 0 } },
4919 { 0x2000, { DFF_Prop_geoBottom,0, 800 } }
4921 static const SvxMSDffTextRectangles mso_sptFlowChartAlternateProcessTextRect[] =
4923 { { 4 MSO_I, 6 MSO_I }, { 5 MSO_I, 7 MSO_I } }
4925 static const mso_CustomShape msoFlowChartAlternateProcess =
4927 (SvxMSDffVertPair*)mso_sptFlowChartAlternateProcessVert, SAL_N_ELEMENTS( mso_sptFlowChartAlternateProcessVert ),
4928 (sal_uInt16*)mso_sptFlowChartAlternateProcessSegm, sizeof( mso_sptFlowChartAlternateProcessSegm ) >> 1,
4929 (SvxMSDffCalculationData*)mso_sptFlowChartAlternateProcessCalc, SAL_N_ELEMENTS( mso_sptFlowChartAlternateProcessCalc ),
4930 NULL,
4931 (SvxMSDffTextRectangles*)mso_sptFlowChartAlternateProcessTextRect, SAL_N_ELEMENTS( mso_sptFlowChartAlternateProcessTextRect ),
4932 21600, 21600,
4933 MIN_INT32, MIN_INT32,
4934 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
4935 NULL, 0 // handles
4938 static const SvxMSDffVertPair mso_sptFlowChartDecisionVert[] =
4940 { 0, 10800 }, { 10800, 0 }, { 21600, 10800 }, { 10800, 21600 }, { 0, 10800 }
4942 static const SvxMSDffTextRectangles mso_sptFlowChartDecisionTextRect[] =
4944 { { 5400, 5400 }, { 16200, 16200 } }
4946 static const mso_CustomShape msoFlowChartDecision =
4948 (SvxMSDffVertPair*)mso_sptFlowChartDecisionVert, SAL_N_ELEMENTS( mso_sptFlowChartDecisionVert ),
4949 NULL, 0,
4950 NULL, 0,
4951 NULL,
4952 (SvxMSDffTextRectangles*)mso_sptFlowChartDecisionTextRect, SAL_N_ELEMENTS( mso_sptFlowChartDecisionTextRect ),
4953 21600, 21600,
4954 MIN_INT32, MIN_INT32,
4955 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
4956 NULL, 0 // handles
4959 static const SvxMSDffVertPair mso_sptFlowChartInputOutputVert[] =
4961 { 4230, 0 }, { 21600, 0 }, { 17370, 21600 }, { 0, 21600 }, { 4230, 0 }
4963 static const SvxMSDffTextRectangles mso_sptFlowChartInputOutputTextRect[] =
4965 { { 4230, 0 }, { 17370, 21600 } }
4967 static const SvxMSDffVertPair mso_sptFlowChartInputOutputGluePoints[] =
4969 { 12960, 0 }, { 10800, 0 }, { 2160, 10800 }, { 8600, 21600 }, { 10800, 21600 }, { 19400, 10800 }
4971 static const mso_CustomShape msoFlowChartInputOutput =
4973 (SvxMSDffVertPair*)mso_sptFlowChartInputOutputVert, SAL_N_ELEMENTS( mso_sptFlowChartInputOutputVert ),
4974 NULL, 0,
4975 NULL, 0,
4976 NULL,
4977 (SvxMSDffTextRectangles*)mso_sptFlowChartInputOutputTextRect, SAL_N_ELEMENTS( mso_sptFlowChartInputOutputTextRect ),
4978 21600, 21600,
4979 MIN_INT32, MIN_INT32,
4980 (SvxMSDffVertPair*)mso_sptFlowChartInputOutputGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartInputOutputGluePoints ),
4981 NULL, 0 // handles
4984 static const SvxMSDffVertPair mso_sptFlowChartPredefinedProcessVert[] =
4986 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
4988 { 2540, 0 }, { 2540, 21600 },
4990 { 21600 - 2540, 0 }, { 21600 - 2540, 21600 }
4992 static const sal_uInt16 mso_sptFlowChartPredefinedProcessSegm[] =
4994 0x4000, 0x0003, 0x6000, 0x8000,
4995 0x4000, 0x0001, 0x8000,
4996 0x4000, 0x0001, 0x8000
4998 static const SvxMSDffTextRectangles mso_sptFlowChartPredefinedProcessTextRect[] =
5000 { { 2540, 0 }, { 21600 - 2540, 21600 } }
5002 static const mso_CustomShape msoFlowChartPredefinedProcess =
5004 (SvxMSDffVertPair*)mso_sptFlowChartPredefinedProcessVert, SAL_N_ELEMENTS( mso_sptFlowChartPredefinedProcessVert ),
5005 (sal_uInt16*)mso_sptFlowChartPredefinedProcessSegm, sizeof( mso_sptFlowChartPredefinedProcessSegm ) >> 1,
5006 NULL, 0,
5007 NULL,
5008 (SvxMSDffTextRectangles*)mso_sptFlowChartPredefinedProcessTextRect, SAL_N_ELEMENTS( mso_sptFlowChartPredefinedProcessTextRect ),
5009 21600, 21600,
5010 MIN_INT32, MIN_INT32,
5011 NULL, 0,
5012 NULL, 0 // handles
5015 static const SvxMSDffVertPair mso_sptFlowChartInternalStorageVert[] =
5017 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
5019 { 4230, 0 }, { 4230, 21600 },
5021 { 0, 4230 }, { 21600, 4230 }
5023 static const sal_uInt16 mso_sptFlowChartInternalStorageSegm[] =
5025 0x4000, 0x0003, 0x6000, 0x8000,
5026 0x4000, 0x0001, 0x8000,
5027 0x4000, 0x0001, 0x8000
5029 static const SvxMSDffTextRectangles mso_sptFlowChartInternalStorageTextRect[] =
5031 { { 4230, 4230 }, { 21600, 21600 } }
5033 static const mso_CustomShape msoFlowChartInternalStorage =
5035 (SvxMSDffVertPair*)mso_sptFlowChartInternalStorageVert, SAL_N_ELEMENTS( mso_sptFlowChartInternalStorageVert ),
5036 (sal_uInt16*)mso_sptFlowChartInternalStorageSegm, sizeof( mso_sptFlowChartInternalStorageSegm ) >> 1,
5037 NULL, 0,
5038 NULL,
5039 (SvxMSDffTextRectangles*)mso_sptFlowChartInternalStorageTextRect, SAL_N_ELEMENTS( mso_sptFlowChartInternalStorageTextRect ),
5040 21600, 21600,
5041 MIN_INT32, MIN_INT32,
5042 NULL, 0,
5043 NULL, 0 // handles
5046 static const SvxMSDffVertPair mso_sptFlowChartDocumentVert[] =
5048 { 0, 0 }, { 21600, 0 }, { 21600, 17360 },
5049 { 13050, 17220 }, { 13340, 20770 }, { 5620, 21600 }, // ccp
5050 { 2860, 21100 }, { 1850, 20700 }, { 0, 20120 } // ccp
5052 static const sal_uInt16 mso_sptFlowChartDocumentSegm[] =
5054 0x4000, 0x0002, 0x2002, 0x6000, 0x8000
5056 static const SvxMSDffTextRectangles mso_sptFlowChartDocumentTextRect[] =
5058 { { 0, 0 }, { 21600, 17360 } }
5060 static const SvxMSDffVertPair mso_sptFlowChartDocumentGluePoints[] =
5062 { 10800, 0 }, { 0, 10800 }, { 10800, 20320 }, { 21600, 10800 }
5064 static const mso_CustomShape msoFlowChartDocument =
5066 (SvxMSDffVertPair*)mso_sptFlowChartDocumentVert, SAL_N_ELEMENTS( mso_sptFlowChartDocumentVert ),
5067 (sal_uInt16*)mso_sptFlowChartDocumentSegm, sizeof( mso_sptFlowChartDocumentSegm ) >> 1,
5068 NULL, 0,
5069 NULL,
5070 (SvxMSDffTextRectangles*)mso_sptFlowChartDocumentTextRect, SAL_N_ELEMENTS( mso_sptFlowChartDocumentTextRect ),
5071 21600, 21600,
5072 MIN_INT32, MIN_INT32,
5073 (SvxMSDffVertPair*)mso_sptFlowChartDocumentGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartDocumentGluePoints ),
5074 NULL, 0 // handles
5077 static const SvxMSDffVertPair mso_sptFlowChartMultidocumentVert[] =
5079 { 0, 3600 }, { 1500, 3600 }, { 1500, 1800 }, { 3000, 1800 },
5080 { 3000, 0 }, { 21600, 0 }, { 21600, 14409 }, { 21600 - 1500, 14409 },
5081 { 21600 - 1500, 14409 + 1800 }, { 21600 - 3000, 14409 + 1800 }, { 21600 - 3000, 14409 + 3600 },
5082 { 11610, 14293 + 3600 }, { 11472, 17239 + 3600 }, { 4833, 17928 + 3600 }, // ccp
5083 { 2450, 17513 + 3600 }, { 1591, 17181 + 3600 }, { 0, 16700 + 3600 }, // ccp
5085 { 1500, 3600 }, { 21600 - 3000, 3600 }, { 21600 - 3000, 14409 + 1800 },
5087 { 3000, 1800 }, { 21600 - 1500, 1800 }, { 21600 - 1500, 14409 }
5089 static const sal_uInt16 mso_sptFlowChartMultidocumentSegm[] =
5091 0x4000, 0x000a, 0x2002, 0x6000, 0x8000,
5092 0x4000, 0xaa00, 0x0002, 0x8000, // NO FILL
5093 0x4000, 0xaa00, 0x0002, 0x8000 // NO FILL
5095 static const SvxMSDffTextRectangles mso_sptFlowChartMultidocumentTextRect[] =
5097 { { 0, 3600 }, { 21600 - 3000, 14409 + 3600 } }
5099 static const SvxMSDffVertPair mso_sptFlowChartMultidocumentGluePoints[] =
5101 { 10800, 0 }, { 0, 10800 }, { 10800, 19890 }, { 21600, 10800 }
5103 static const mso_CustomShape msoFlowChartMultidocument =
5105 (SvxMSDffVertPair*)mso_sptFlowChartMultidocumentVert, SAL_N_ELEMENTS( mso_sptFlowChartMultidocumentVert ),
5106 (sal_uInt16*)mso_sptFlowChartMultidocumentSegm, sizeof( mso_sptFlowChartMultidocumentSegm ) >> 1,
5107 NULL, 0,
5108 NULL,
5109 (SvxMSDffTextRectangles*)mso_sptFlowChartMultidocumentTextRect, SAL_N_ELEMENTS( mso_sptFlowChartMultidocumentTextRect ),
5110 21600, 21600,
5111 MIN_INT32, MIN_INT32,
5112 (SvxMSDffVertPair*)mso_sptFlowChartMultidocumentGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartMultidocumentGluePoints ),
5113 NULL, 0 // handles
5116 static const SvxMSDffVertPair mso_sptFlowChartTerminatorVert[] =
5118 { 3470, 21600 }, { 0, 10800 }, { 3470, 0 }, { 18130, 0 },
5119 { 21600, 10800 }, { 18130, 21600 }
5121 static const sal_uInt16 mso_sptFlowChartTerminatorSegm[] =
5123 0x4000, 0xa702, 0x0001, 0xa702, 0x6000, 0x8000
5125 static const SvxMSDffTextRectangles mso_sptFlowChartTerminatorTextRect[] =
5127 { { 1060, 3180 }, { 20540, 18420 } }
5129 static const mso_CustomShape msoFlowChartTerminator =
5131 (SvxMSDffVertPair*)mso_sptFlowChartTerminatorVert, SAL_N_ELEMENTS( mso_sptFlowChartTerminatorVert ),
5132 (sal_uInt16*)mso_sptFlowChartTerminatorSegm, sizeof( mso_sptFlowChartTerminatorSegm ) >> 1,
5133 NULL, 0,
5134 NULL,
5135 (SvxMSDffTextRectangles*)mso_sptFlowChartTerminatorTextRect, SAL_N_ELEMENTS( mso_sptFlowChartTerminatorTextRect ),
5136 21600, 21600,
5137 MIN_INT32, MIN_INT32,
5138 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5139 NULL, 0 // handles
5142 static const SvxMSDffVertPair mso_sptFlowChartPreparationVert[] =
5144 { 4350, 0 }, { 17250, 0 }, { 21600, 10800 }, { 17250, 21600 },
5145 { 4350, 21600 }, { 0, 10800 }, { 4350, 0 }
5147 static const SvxMSDffTextRectangles mso_sptFlowChartPreparationTextRect[] =
5149 { { 4350, 0 }, { 17250, 21600 } }
5151 static const mso_CustomShape msoFlowChartPreparation =
5153 (SvxMSDffVertPair*)mso_sptFlowChartPreparationVert, SAL_N_ELEMENTS( mso_sptFlowChartPreparationVert ),
5154 NULL, 0,
5155 NULL, 0,
5156 NULL,
5157 (SvxMSDffTextRectangles*)mso_sptFlowChartPreparationTextRect, SAL_N_ELEMENTS( mso_sptFlowChartPreparationTextRect ),
5158 21600, 21600,
5159 MIN_INT32, MIN_INT32,
5160 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5161 NULL, 0 // handles
5164 static const SvxMSDffVertPair mso_sptFlowChartManualInputVert[] =
5166 { 0, 4300 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0, 4300 }
5168 static const SvxMSDffTextRectangles mso_sptFlowChartManualInputTextRect[] =
5170 { { 0, 4300 }, { 21600, 21600 } }
5172 static const SvxMSDffVertPair mso_sptFlowChartManualInputGluePoints[] =
5174 { 10800, 2150 }, { 0, 10800 }, { 10800, 19890 }, { 21600, 10800 }
5176 static const mso_CustomShape msoFlowChartManualInput =
5178 (SvxMSDffVertPair*)mso_sptFlowChartManualInputVert, SAL_N_ELEMENTS( mso_sptFlowChartManualInputVert ),
5179 NULL, 0,
5180 NULL, 0,
5181 NULL,
5182 (SvxMSDffTextRectangles*)mso_sptFlowChartManualInputTextRect, SAL_N_ELEMENTS( mso_sptFlowChartManualInputTextRect ),
5183 21600, 21600,
5184 MIN_INT32, MIN_INT32,
5185 (SvxMSDffVertPair*)mso_sptFlowChartManualInputGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartManualInputGluePoints ),
5186 NULL, 0 // handles
5189 static const SvxMSDffVertPair mso_sptFlowChartManualOperationVert[] =
5191 { 0, 0 }, { 21600, 0 }, { 17250, 21600 }, { 4350, 21600 }, { 0, 0 }
5193 static const SvxMSDffTextRectangles mso_sptFlowChartManualOperationTextRect[] =
5195 { { 4350, 0 }, { 17250, 21600 } }
5197 static const SvxMSDffVertPair mso_sptFlowChartManualOperationGluePoints[] =
5199 { 10800, 0 }, { 2160, 10800 }, { 10800, 21600 }, { 19440, 10800 }
5201 static const mso_CustomShape msoFlowChartManualOperation =
5203 (SvxMSDffVertPair*)mso_sptFlowChartManualOperationVert, SAL_N_ELEMENTS( mso_sptFlowChartManualOperationVert ),
5204 NULL, 0,
5205 NULL, 0,
5206 NULL,
5207 (SvxMSDffTextRectangles*)mso_sptFlowChartManualOperationTextRect, SAL_N_ELEMENTS( mso_sptFlowChartManualOperationTextRect ),
5208 21600, 21600,
5209 MIN_INT32, MIN_INT32,
5210 (SvxMSDffVertPair*)mso_sptFlowChartManualOperationGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartManualOperationGluePoints ),
5211 NULL, 0 // handles
5214 static const SvxMSDffVertPair mso_sptFlowChartConnectorVert[] =
5216 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 }
5218 static const sal_uInt16 mso_sptFlowChartConnectorSegm[] =
5220 0xa203, 0x6000, 0x8000
5222 static const SvxMSDffTextRectangles mso_sptFlowChartConnectorTextRect[] =
5224 { { 3180, 3180 }, { 18420, 18420 } }
5226 static const mso_CustomShape msoFlowChartConnector =
5228 (SvxMSDffVertPair*)mso_sptFlowChartConnectorVert, SAL_N_ELEMENTS( mso_sptFlowChartConnectorVert ),
5229 (sal_uInt16*)mso_sptFlowChartConnectorSegm, sizeof( mso_sptFlowChartConnectorSegm ) >> 1,
5230 NULL, 0,
5231 NULL,
5232 (SvxMSDffTextRectangles*)mso_sptFlowChartConnectorTextRect, SAL_N_ELEMENTS( mso_sptFlowChartConnectorTextRect ),
5233 21600, 21600,
5234 MIN_INT32, MIN_INT32,
5235 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
5236 NULL, 0 // handles
5239 static const SvxMSDffVertPair mso_sptFlowChartOffpageConnectorVert[] =
5241 { 0, 0 }, { 21600, 0 }, { 21600, 17150 }, { 10800, 21600 },
5242 { 0, 17150 }, { 0, 0 }
5244 static const SvxMSDffTextRectangles mso_sptFlowChartOffpageConnectorTextRect[] =
5246 { { 0, 0 }, { 21600, 17150 } }
5248 static const mso_CustomShape msoFlowChartOffpageConnector =
5250 (SvxMSDffVertPair*)mso_sptFlowChartOffpageConnectorVert, SAL_N_ELEMENTS( mso_sptFlowChartOffpageConnectorVert ),
5251 NULL, 0,
5252 NULL, 0,
5253 NULL,
5254 (SvxMSDffTextRectangles*)mso_sptFlowChartOffpageConnectorTextRect, SAL_N_ELEMENTS( mso_sptFlowChartOffpageConnectorTextRect ),
5255 21600, 21600,
5256 MIN_INT32, MIN_INT32,
5257 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5258 NULL, 0 // handles
5261 static const SvxMSDffVertPair mso_sptFlowChartPunchedCardVert[] =
5263 { 4300, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 },
5264 { 0, 4300 }, { 4300, 0 }
5266 static const SvxMSDffTextRectangles mso_sptFlowChartPunchedCardTextRect[] =
5268 { { 0, 4300 }, { 21600, 21600 } }
5270 static const mso_CustomShape msoFlowChartPunchedCard =
5272 (SvxMSDffVertPair*)mso_sptFlowChartPunchedCardVert, SAL_N_ELEMENTS( mso_sptFlowChartPunchedCardVert ),
5273 NULL, 0,
5274 NULL, 0,
5275 NULL,
5276 (SvxMSDffTextRectangles*)mso_sptFlowChartPunchedCardTextRect, SAL_N_ELEMENTS( mso_sptFlowChartPunchedCardTextRect ),
5277 21600, 21600,
5278 MIN_INT32, MIN_INT32,
5279 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5280 NULL, 0 // handles
5283 static const SvxMSDffVertPair mso_sptFlowChartPunchedTapeVert[] =
5285 { 0, 2230 }, // p
5286 { 820, 3990 }, { 3410, 3980 }, { 5370, 4360 }, // ccp
5287 { 7430, 4030 }, { 10110, 3890 }, { 10690, 2270 }, // ccp
5288 { 11440, 300 }, { 14200, 160 }, { 16150, 0 }, // ccp
5289 { 18670, 170 }, { 20690, 390 }, { 21600, 2230 }, // ccp
5290 { 21600, 19420 }, // p
5291 { 20640, 17510 }, { 18320, 17490 }, { 16140, 17240 }, // ccp
5292 { 14710, 17370 }, { 11310, 17510 }, { 10770, 19430 }, // ccp
5293 { 10150, 21150 }, { 7380, 21290 }, { 5290, 21600 }, // ccp
5294 { 3220, 21250 }, { 610, 21130 }, { 0, 19420 } // ccp
5296 static const sal_uInt16 mso_sptFlowChartPunchedTapeSegm[] =
5298 0x4000, 0x2004, 0x0001, 0x2004, 0x6000, 0x8000
5300 static const SvxMSDffTextRectangles mso_sptFlowChartPunchedTapeTextRect[] =
5302 { { 0, 4360 }, { 21600, 17240 } }
5304 static const SvxMSDffVertPair mso_sptFlowChartPunchedTapeGluePoints[] =
5306 { 10800, 2020 }, { 0, 10800 }, { 10800, 19320 }, { 21600, 10800 }
5308 static const mso_CustomShape msoFlowChartPunchedTape =
5310 (SvxMSDffVertPair*)mso_sptFlowChartPunchedTapeVert, SAL_N_ELEMENTS( mso_sptFlowChartPunchedTapeVert ),
5311 (sal_uInt16*)mso_sptFlowChartPunchedTapeSegm, sizeof( mso_sptFlowChartPunchedTapeSegm ) >> 1,
5312 NULL, 0,
5313 NULL,
5314 (SvxMSDffTextRectangles*)mso_sptFlowChartPunchedTapeTextRect, SAL_N_ELEMENTS( mso_sptFlowChartPunchedTapeTextRect ),
5315 21600, 21600,
5316 MIN_INT32, MIN_INT32,
5317 (SvxMSDffVertPair*)mso_sptFlowChartPunchedTapeGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartPunchedTapeGluePoints ),
5318 NULL, 0 // handles
5321 static const SvxMSDffVertPair mso_sptFlowChartSummingJunctionVert[] =
5323 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 },
5325 { 3100, 3100 },
5326 { 18500, 18500 },
5328 { 3100, 18500 },
5329 { 18500, 3100 }
5331 static const sal_uInt16 mso_sptFlowChartSummingJunctionSegm[] =
5333 0xa203, 0x6000, 0x8000,
5334 0x4000, 0x0001, 0x8000,
5335 0x4000, 0x0001, 0x8000
5337 static const SvxMSDffTextRectangles mso_sptFlowChartSummingJunctionTextRect[] =
5339 { { 3100, 3100 }, { 18500, 18500 } }
5341 static const mso_CustomShape msoFlowChartSummingJunction =
5343 (SvxMSDffVertPair*)mso_sptFlowChartSummingJunctionVert, SAL_N_ELEMENTS( mso_sptFlowChartSummingJunctionVert ),
5344 (sal_uInt16*)mso_sptFlowChartSummingJunctionSegm, sizeof( mso_sptFlowChartSummingJunctionSegm ) >> 1,
5345 NULL, 0,
5346 NULL,
5347 (SvxMSDffTextRectangles*)mso_sptFlowChartSummingJunctionTextRect, SAL_N_ELEMENTS( mso_sptFlowChartSummingJunctionTextRect ),
5348 21600, 21600,
5349 MIN_INT32, MIN_INT32,
5350 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
5351 NULL, 0 // handles
5354 static const SvxMSDffVertPair mso_sptFlowChartOrVert[] =
5356 { 10800, 10800 }, { 10800, 10800 }, { 0, 360 },
5358 { 0, 10800 }, { 21600, 10800 },
5360 { 10800, 0 }, { 10800, 21600 }
5362 static const sal_uInt16 mso_sptFlowChartOrSegm[] =
5364 0xa203, 0x6000, 0x8000,
5365 0x4000, 0x0001, 0x8000,
5366 0x4000, 0x0001, 0x8000
5368 static const SvxMSDffTextRectangles mso_sptFlowChartOrTextRect[] =
5370 { { 3100, 3100 }, { 18500, 18500 } }
5372 static const mso_CustomShape msoFlowChartOr =
5374 (SvxMSDffVertPair*)mso_sptFlowChartOrVert, SAL_N_ELEMENTS( mso_sptFlowChartOrVert ),
5375 (sal_uInt16*)mso_sptFlowChartOrSegm, sizeof( mso_sptFlowChartOrSegm ) >> 1,
5376 NULL, 0,
5377 NULL,
5378 (SvxMSDffTextRectangles*)mso_sptFlowChartOrTextRect, SAL_N_ELEMENTS( mso_sptFlowChartOrTextRect ),
5379 21600, 21600,
5380 MIN_INT32, MIN_INT32,
5381 (SvxMSDffVertPair*)mso_sptEllipseGluePoints, SAL_N_ELEMENTS( mso_sptEllipseGluePoints ),
5382 NULL, 0 // handles
5385 static const SvxMSDffVertPair mso_sptFlowChartCollateVert[] =
5387 { 0, 0 }, { 21600, 21600 }, { 0, 21600 }, { 21600, 0 }, { 0, 0 }
5389 static const SvxMSDffTextRectangles mso_sptFlowChartCollateTextRect[] =
5391 { { 5400, 5400 }, { 16200, 16200 } }
5393 static const SvxMSDffVertPair mso_sptFlowChartCollateGluePoints[] =
5395 { 10800, 0 }, { 10800, 10800 }, { 10800, 21600 }
5397 static const mso_CustomShape msoFlowChartCollate =
5399 (SvxMSDffVertPair*)mso_sptFlowChartCollateVert, SAL_N_ELEMENTS( mso_sptFlowChartCollateVert ),
5400 NULL, 0,
5401 NULL, 0,
5402 NULL,
5403 (SvxMSDffTextRectangles*)mso_sptFlowChartCollateTextRect, SAL_N_ELEMENTS( mso_sptFlowChartCollateTextRect ),
5404 21600, 21600,
5405 MIN_INT32, MIN_INT32,
5406 (SvxMSDffVertPair*)mso_sptFlowChartCollateGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartCollateGluePoints ),
5407 NULL, 0 // handles
5410 static const SvxMSDffVertPair mso_sptFlowChartSortVert[] =
5412 { 0, 10800 }, { 10800, 0 }, { 21600, 10800 }, { 10800, 21600 },
5414 { 0, 10800 }, { 21600, 10800 }
5416 static const sal_uInt16 mso_sptFlowChartSortSegm[] =
5418 0x4000, 0x0003, 0x6000, 0x8000,
5419 0x4000, 0x0001, 0x8000
5421 static const SvxMSDffTextRectangles mso_sptFlowChartSortTextRect[] =
5423 { { 5400, 5400 }, { 16200, 16200 } }
5425 static const mso_CustomShape msoFlowChartSort =
5427 (SvxMSDffVertPair*)mso_sptFlowChartSortVert, SAL_N_ELEMENTS( mso_sptFlowChartSortVert ),
5428 (sal_uInt16*)mso_sptFlowChartSortSegm, sizeof( mso_sptFlowChartSortSegm ) >> 1,
5429 NULL, 0,
5430 NULL,
5431 (SvxMSDffTextRectangles*)mso_sptFlowChartSortTextRect, SAL_N_ELEMENTS( mso_sptFlowChartSortTextRect ),
5432 21600, 21600,
5433 MIN_INT32, MIN_INT32,
5434 NULL, 0,
5435 NULL, 0 // handles
5438 static const SvxMSDffVertPair mso_sptFlowChartExtractVert[] =
5440 { 10800, 0 }, { 21600, 21600 }, { 0, 21600 }, { 10800, 0 }
5442 static const SvxMSDffTextRectangles mso_sptFlowChartExtractTextRect[] =
5444 { { 5400, 10800 }, { 16200, 21600 } }
5446 static const SvxMSDffVertPair mso_sptFlowChartExtractGluePoints[] =
5448 { 10800, 0 }, { 5400, 10800 }, { 10800, 21600 }, { 16200, 10800 }
5450 static const mso_CustomShape msoFlowChartExtract =
5452 (SvxMSDffVertPair*)mso_sptFlowChartExtractVert, SAL_N_ELEMENTS( mso_sptFlowChartExtractVert ),
5453 NULL, 0,
5454 NULL, 0,
5455 NULL,
5456 (SvxMSDffTextRectangles*)mso_sptFlowChartExtractTextRect, SAL_N_ELEMENTS( mso_sptFlowChartExtractTextRect ),
5457 21600, 21600,
5458 MIN_INT32, MIN_INT32,
5459 (SvxMSDffVertPair*)mso_sptFlowChartExtractGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartExtractGluePoints ),
5460 NULL, 0 // handles
5463 static const SvxMSDffVertPair mso_sptFlowChartMergeVert[] =
5465 { 0, 0 }, { 21600, 0 }, { 10800, 21600 }, { 0, 0 }
5467 static const SvxMSDffTextRectangles mso_sptFlowChartMergeTextRect[] =
5469 { { 5400, 0 }, { 16200, 10800 } }
5471 static const mso_CustomShape msoFlowChartMerge =
5473 (SvxMSDffVertPair*)mso_sptFlowChartMergeVert, SAL_N_ELEMENTS( mso_sptFlowChartMergeVert ),
5474 NULL, 0,
5475 NULL, 0,
5476 NULL,
5477 (SvxMSDffTextRectangles*)mso_sptFlowChartMergeTextRect, SAL_N_ELEMENTS( mso_sptFlowChartMergeTextRect ),
5478 21600, 21600,
5479 MIN_INT32, MIN_INT32,
5480 (SvxMSDffVertPair*)mso_sptFlowChartExtractGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartExtractGluePoints ),
5481 NULL, 0 // handles
5484 static const SvxMSDffVertPair mso_sptFlowChartOnlineStorageVert[] =
5486 { 3600, 21600 }, { 0, 10800 }, { 3600, 0 }, { 21600, 0 },
5487 { 18000, 10800 }, { 21600, 21600 }
5489 static const sal_uInt16 mso_sptFlowChartOnlineStorageSegm[] =
5491 0x4000, 0xa702, 0x0001, 0xa702, 0x6000, 0x8000
5493 static const SvxMSDffTextRectangles mso_sptFlowChartOnlineStorageTextRect[] =
5495 { { 3600, 0 }, { 18000, 21600 } }
5497 static const SvxMSDffVertPair mso_sptFlowChartOnlineStorageGluePoints[] =
5499 { 10800, 0 }, { 0, 10800 }, { 10800, 21600 }, { 18000, 10800 }
5501 static const mso_CustomShape msoFlowChartOnlineStorage =
5503 (SvxMSDffVertPair*)mso_sptFlowChartOnlineStorageVert, SAL_N_ELEMENTS( mso_sptFlowChartOnlineStorageVert ),
5504 (sal_uInt16*)mso_sptFlowChartOnlineStorageSegm, sizeof( mso_sptFlowChartOnlineStorageSegm ) >> 1,
5505 NULL, 0,
5506 NULL,
5507 (SvxMSDffTextRectangles*)mso_sptFlowChartOnlineStorageTextRect, SAL_N_ELEMENTS( mso_sptFlowChartOnlineStorageTextRect ),
5508 21600, 21600,
5509 MIN_INT32, MIN_INT32,
5510 (SvxMSDffVertPair*)mso_sptFlowChartOnlineStorageGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartOnlineStorageGluePoints ),
5511 NULL, 0 // handles
5514 static const SvxMSDffVertPair mso_sptFlowChartDelayVert[] =
5516 { 10800, 0 }, { 21600, 10800 }, { 10800, 21600 }, { 0, 21600 },
5517 { 0, 0 }
5519 static const sal_uInt16 mso_sptFlowChartDelaySegm[] =
5521 0x4000, 0xa702, 0x0002, 0x6000, 0x8000
5523 static const SvxMSDffTextRectangles mso_sptFlowChartDelayTextRect[] =
5525 { { 0, 3100 }, { 18500, 18500 } }
5527 static const mso_CustomShape msoFlowChartDelay =
5529 (SvxMSDffVertPair*)mso_sptFlowChartDelayVert, SAL_N_ELEMENTS( mso_sptFlowChartDelayVert ),
5530 (sal_uInt16*)mso_sptFlowChartDelaySegm, sizeof( mso_sptFlowChartDelaySegm ) >> 1,
5531 NULL, 0,
5532 NULL,
5533 (SvxMSDffTextRectangles*)mso_sptFlowChartDelayTextRect, SAL_N_ELEMENTS( mso_sptFlowChartDelayTextRect ),
5534 21600, 21600,
5535 MIN_INT32, MIN_INT32,
5536 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5537 NULL, 0 // handles
5540 static const SvxMSDffVertPair mso_sptFlowChartMagneticTapeVert[] =
5542 { 20980, 18150 }, { 20980, 21600 }, { 10670, 21600 },
5543 { 4770, 21540 }, { 0, 16720 }, { 0, 10800 }, // ccp
5544 { 0, 4840 }, { 4840, 0 }, { 10800, 0 }, // ccp
5545 { 16740, 0 }, { 21600, 4840 }, { 21600, 10800 }, // ccp
5546 { 21600, 13520 }, { 20550, 16160 }, { 18670, 18170 } // ccp
5548 static const sal_uInt16 mso_sptFlowChartMagneticTapeSegm[] =
5550 0x4000, 0x0002, 0x2004, 0x6000, 0x8000
5552 static const SvxMSDffTextRectangles mso_sptFlowChartMagneticTapeTextRect[] =
5554 { { 3100, 3100 }, { 18500, 18500 } }
5556 static const mso_CustomShape msoFlowChartMagneticTape =
5558 (SvxMSDffVertPair*)mso_sptFlowChartMagneticTapeVert, SAL_N_ELEMENTS( mso_sptFlowChartMagneticTapeVert ),
5559 (sal_uInt16*)mso_sptFlowChartMagneticTapeSegm, sizeof( mso_sptFlowChartMagneticTapeSegm ) >> 1,
5560 NULL, 0,
5561 NULL,
5562 (SvxMSDffTextRectangles*)mso_sptFlowChartMagneticTapeTextRect, SAL_N_ELEMENTS( mso_sptFlowChartMagneticTapeTextRect ),
5563 21600, 21600,
5564 MIN_INT32, MIN_INT32,
5565 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5566 NULL, 0 // handles
5569 static const SvxMSDffVertPair mso_sptFlowChartMagneticDiskVert[] =
5571 { 0, 3400 }, { 10800, 0 }, { 21600, 3400 }, { 21600, 18200 },
5572 { 10800, 21600 }, { 0, 18200 },
5574 { 0, 3400 }, { 10800, 6800 }, { 21600, 3400 }
5576 static const sal_uInt16 mso_sptFlowChartMagneticDiskSegm[] =
5578 0x4000, 0xa802, 0x0001, 0xa802, 0x6000, 0x8000,
5579 0x4000, 0xa802, 0x8000
5581 static const SvxMSDffTextRectangles mso_sptFlowChartMagneticDiskTextRect[] =
5583 { { 0, 6800 }, { 21600, 18200 } }
5585 static const SvxMSDffVertPair mso_sptFlowChartMagneticDiskGluePoints[] =
5587 { 10800, 6800 }, { 10800, 0 }, { 0, 10800 }, { 10800, 21600 }, { 21600, 10800 }
5589 static const mso_CustomShape msoFlowChartMagneticDisk =
5591 (SvxMSDffVertPair*)mso_sptFlowChartMagneticDiskVert, SAL_N_ELEMENTS( mso_sptFlowChartMagneticDiskVert ),
5592 (sal_uInt16*)mso_sptFlowChartMagneticDiskSegm, sizeof( mso_sptFlowChartMagneticDiskSegm ) >> 1,
5593 NULL, 0,
5594 NULL,
5595 (SvxMSDffTextRectangles*)mso_sptFlowChartMagneticDiskTextRect, SAL_N_ELEMENTS( mso_sptFlowChartMagneticDiskTextRect ),
5596 21600, 21600,
5597 MIN_INT32, MIN_INT32,
5598 (SvxMSDffVertPair*)mso_sptFlowChartMagneticDiskGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartMagneticDiskGluePoints ),
5599 NULL, 0 // handles
5602 static const SvxMSDffVertPair mso_sptFlowChartMagneticDrumVert[] =
5604 { 18200, 0 }, { 21600, 10800 }, { 18200, 21600 }, { 3400, 21600 },
5605 { 0, 10800 }, { 3400, 0 },
5607 { 18200, 0 }, { 14800, 10800 }, { 18200, 21600 }
5609 static const sal_uInt16 mso_sptFlowChartMagneticDrumSegm[] =
5611 0x4000, 0xa702, 0x0001, 0xa702, 0x6000, 0x8000,
5612 0x4000, 0xa702, 0x8000
5614 static const SvxMSDffTextRectangles mso_sptFlowChartMagneticDrumTextRect[] =
5616 { { 3400, 0 }, { 14800, 21600 } }
5618 static const SvxMSDffVertPair mso_sptFlowChartMagneticDrumGluePoints[] =
5620 { 10800, 0 }, { 0, 10800 }, { 10800, 21600 }, { 14800, 10800 }, { 21600, 10800 }
5622 static const mso_CustomShape msoFlowChartMagneticDrum =
5624 (SvxMSDffVertPair*)mso_sptFlowChartMagneticDrumVert, SAL_N_ELEMENTS( mso_sptFlowChartMagneticDrumVert ),
5625 (sal_uInt16*)mso_sptFlowChartMagneticDrumSegm, sizeof( mso_sptFlowChartMagneticDrumSegm ) >> 1,
5626 NULL, 0,
5627 NULL,
5628 (SvxMSDffTextRectangles*)mso_sptFlowChartMagneticDrumTextRect, SAL_N_ELEMENTS( mso_sptFlowChartMagneticDrumTextRect ),
5629 21600, 21600,
5630 MIN_INT32, MIN_INT32,
5631 (SvxMSDffVertPair*)mso_sptFlowChartMagneticDrumGluePoints, SAL_N_ELEMENTS( mso_sptFlowChartMagneticDrumGluePoints ),
5632 NULL, 0 // handles
5635 static const SvxMSDffVertPair mso_sptFlowChartDisplayVert[] =
5637 { 3600, 0 }, { 17800, 0 }, { 21600, 10800 }, { 17800, 21600 },
5638 { 3600, 21600 }, { 0, 10800 }
5640 static const sal_uInt16 mso_sptFlowChartDisplaySegm[] =
5642 0x4000, 0x0001, 0xa702, 0x0002, 0x6000, 0x8000
5644 static const SvxMSDffTextRectangles mso_sptFlowChartDisplayTextRect[] =
5646 { { 3600, 0 }, { 17800, 21600 } }
5648 static const mso_CustomShape msoFlowChartDisplay =
5650 (SvxMSDffVertPair*)mso_sptFlowChartDisplayVert, SAL_N_ELEMENTS( mso_sptFlowChartDisplayVert ),
5651 (sal_uInt16*)mso_sptFlowChartDisplaySegm, sizeof( mso_sptFlowChartDisplaySegm ) >> 1,
5652 NULL, 0,
5653 NULL,
5654 (SvxMSDffTextRectangles*)mso_sptFlowChartDisplayTextRect, SAL_N_ELEMENTS( mso_sptFlowChartDisplayTextRect ),
5655 21600, 21600,
5656 MIN_INT32, MIN_INT32,
5657 (SvxMSDffVertPair*)mso_sptStandardGluePoints, SAL_N_ELEMENTS( mso_sptStandardGluePoints ),
5658 NULL, 0 // handles
5661 static const SvxMSDffVertPair mso_sptWedgeRectCalloutVert[] =
5663 { 0, 0 },
5664 { 0, 3590 }, { 2 MSO_I, 3 MSO_I }, { 0, 8970 },
5665 { 0, 12630 },{ 4 MSO_I, 5 MSO_I }, { 0, 18010 },
5666 { 0, 21600 },
5667 { 3590, 21600 }, { 6 MSO_I, 7 MSO_I }, { 8970, 21600 },
5668 { 12630, 21600 }, { 8 MSO_I, 9 MSO_I }, { 18010, 21600 },
5669 { 21600, 21600 },
5670 { 21600, 18010 }, { 10 MSO_I, 11 MSO_I }, { 21600, 12630 },
5671 { 21600, 8970 }, { 12 MSO_I, 13 MSO_I }, { 21600, 3590 },
5672 { 21600, 0 },
5673 { 18010, 0 }, { 14 MSO_I, 15 MSO_I }, { 12630, 0 },
5674 { 8970, 0 }, { 16 MSO_I, 17 MSO_I }, { 3590, 0 },
5675 { 0, 0 }
5677 static const SvxMSDffCalculationData mso_sptWedgeRectCalloutCalc[] =
5679 { 0x2000, { DFF_Prop_adjustValue, 0, 10800 } }, //0x400
5680 { 0x2000, { DFF_Prop_adjust2Value, 0,10800 } },
5681 { 0x6006, { 0x412, DFF_Prop_adjustValue, 0 } }, //0x402
5682 { 0x6006, { 0x412, DFF_Prop_adjust2Value, 6280 } },
5683 { 0x6006, { 0x417, DFF_Prop_adjustValue, 0 } }, //0x404
5684 { 0x6006, { 0x417, DFF_Prop_adjust2Value, 15320 } },
5685 { 0x6006, { 0x41a, DFF_Prop_adjustValue, 6280 } }, //0x406
5686 { 0x6006, { 0x41a, DFF_Prop_adjust2Value, 21600 } },
5687 { 0x6006, { 0x41d, DFF_Prop_adjustValue, 15320 } }, //0x408
5688 { 0x6006, { 0x41d, DFF_Prop_adjust2Value, 21600 } },
5689 { 0x6006, { 0x420, DFF_Prop_adjustValue, 21600 } }, //0x40a
5690 { 0x6006, { 0x420, DFF_Prop_adjust2Value, 15320 } },
5691 { 0x6006, { 0x422, DFF_Prop_adjustValue, 21600 } }, //0x40c
5692 { 0x6006, { 0x422, DFF_Prop_adjust2Value, 6280 } },
5693 { 0x6006, { 0x424, DFF_Prop_adjustValue, 15320 } }, //0x40e
5694 { 0x6006, { 0x424, DFF_Prop_adjust2Value, 0 } },
5695 { 0x6006, { 0x426, DFF_Prop_adjustValue, 6280 } }, //0x410
5696 { 0x6006, { 0x426, DFF_Prop_adjust2Value, 0 } },
5697 { 0xa006, { DFF_Prop_adjustValue, -1, 0x413 } }, //0x412
5698 { 0xa006, { 0x401, -1, 0x416 } },
5699 { 0x2003, { 0x400, 0, 0 } }, //0x414
5700 { 0x2003, { 0x401, 0, 0 } },
5701 { 0xa000, { 0x414, 0, 0x415 } }, //0x416
5702 { 0xa006, { DFF_Prop_adjustValue, -1, 0x418 } },
5703 { 0x6006, { 0x401, 0x416, -1 } }, //0x418
5704 { 0x2000, { DFF_Prop_adjust2Value, 0, 21600 } },
5705 { 0x6006, { 0x419, 0x41b, -1 } }, //0x41a
5706 { 0xa006, { 0x400, -1, 0x41c } },
5707 { 0xa000, { 0x415, 0, 0x414 } }, //0x41c
5708 { 0x6006, { 0x419, 0x41e, -1 } },
5709 { 0x6006, { 0x400, 0x41c, -1 } }, //0x41e
5710 { 0x2000, { DFF_Prop_adjustValue, 0, 21600 } },
5711 { 0x6006, { 0x41f, 0x421, -1 } }, //0x420
5712 { 0x6006, { 0x401, 0x416, -1 } },
5713 { 0x6006, { 0x41f, 0x423, -1 } }, //0x422
5714 { 0xa006, { 0x401, -1, 0x416 } },
5715 { 0xa006, { DFF_Prop_adjust2Value, -1, 0x425 } }, //0x424
5716 { 0x6006, { 0x400, 0x41c, -1 } },
5717 { 0xa006, { DFF_Prop_adjust2Value, -1, 0x427 } }, //0x426
5718 { 0xa006, { 0x400, -1, 0x41c } },
5719 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, //0x428
5720 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }
5722 static const sal_Int32 mso_sptWedgeRectCalloutDefault[] =
5724 2, 1400, 25920
5726 static const SvxMSDffTextRectangles mso_sptWedgeRectCalloutTextRect[] =
5728 { { 0, 0 }, { 21600, 21600 } }
5730 static const SvxMSDffVertPair mso_sptWedgeRectCalloutGluePoints[] =
5732 { 10800, 0 }, { 0, 10800 }, { 10800, 21600 }, { 21600, 10800 }, { 40 MSO_I, 41 MSO_I }
5734 static const SvxMSDffHandle mso_sptCalloutHandle[] =
5738 0x100, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff
5741 static const mso_CustomShape msoWedgeRectCallout =
5743 (SvxMSDffVertPair*)mso_sptWedgeRectCalloutVert, SAL_N_ELEMENTS( mso_sptWedgeRectCalloutVert ),
5744 NULL, 0,
5745 (SvxMSDffCalculationData*)mso_sptWedgeRectCalloutCalc, SAL_N_ELEMENTS( mso_sptWedgeRectCalloutCalc ),
5746 (sal_Int32*)mso_sptWedgeRectCalloutDefault,
5747 (SvxMSDffTextRectangles*)mso_sptWedgeRectCalloutTextRect, SAL_N_ELEMENTS( mso_sptWedgeRectCalloutTextRect ),
5748 21600, 21600,
5749 MIN_INT32, MIN_INT32,
5750 (SvxMSDffVertPair*)mso_sptWedgeRectCalloutGluePoints, SAL_N_ELEMENTS( mso_sptWedgeRectCalloutGluePoints ),
5751 (SvxMSDffHandle*)mso_sptCalloutHandle, SAL_N_ELEMENTS( mso_sptCalloutHandle ) // handles
5753 static const SvxMSDffVertPair mso_sptWedgeRRectCalloutVert[] =
5755 { 3590, 0 },
5756 { 0, 3590 },
5757 { 2 MSO_I, 3 MSO_I }, { 0, 8970 },
5758 { 0, 12630 },{ 4 MSO_I, 5 MSO_I }, { 0, 18010 },
5759 { 3590, 21600 },
5760 { 6 MSO_I, 7 MSO_I }, { 8970, 21600 },
5761 { 12630, 21600 }, { 8 MSO_I, 9 MSO_I }, { 18010, 21600 },
5762 { 21600, 18010 },
5763 { 10 MSO_I, 11 MSO_I }, { 21600, 12630 },
5764 { 21600, 8970 }, { 12 MSO_I, 13 MSO_I }, { 21600, 3590 },
5765 { 18010, 0 },
5766 { 14 MSO_I, 15 MSO_I }, { 12630, 0 },
5767 { 8970, 0 }, { 16 MSO_I, 17 MSO_I }
5769 static const sal_uInt16 mso_sptWedgeRRectCalloutSegm[] =
5771 0x4000, 0xa701, 0x0005, 0xa801, 0x0005, 0xa701, 0x0005, 0xa801, 0x0004, 0x6001, 0x8000
5773 static const SvxMSDffTextRectangles mso_sptWedgeRRectCalloutTextRect[] =
5775 { { 800, 800 }, { 20800, 20800 } }
5777 static const mso_CustomShape msoWedgeRRectCallout =
5779 (SvxMSDffVertPair*)mso_sptWedgeRRectCalloutVert, SAL_N_ELEMENTS( mso_sptWedgeRRectCalloutVert ),
5780 (sal_uInt16*)mso_sptWedgeRRectCalloutSegm, sizeof( mso_sptWedgeRRectCalloutSegm ) >> 1,
5781 (SvxMSDffCalculationData*)mso_sptWedgeRectCalloutCalc, SAL_N_ELEMENTS( mso_sptWedgeRectCalloutCalc ),
5782 (sal_Int32*)mso_sptWedgeRectCalloutDefault,
5783 (SvxMSDffTextRectangles*)mso_sptWedgeRRectCalloutTextRect, SAL_N_ELEMENTS( mso_sptWedgeRRectCalloutTextRect ),
5784 21600, 21600,
5785 MIN_INT32, MIN_INT32,
5786 NULL, 0,
5787 (SvxMSDffHandle*)mso_sptCalloutHandle, SAL_N_ELEMENTS( mso_sptCalloutHandle ) // handles
5789 static const SvxMSDffVertPair mso_sptBalloonVert[] =
5791 { 3590, 0 },
5792 { 0, 3590 },
5793 { 0, 14460 },
5794 { 3590, 18050 },
5795 { 40 MSO_I, 21600 }, { 5420, 18050 },
5796 { 18010, 18050 },
5797 { 21600, 14460 },
5798 { 21600, 3590 },
5799 { 18010, 0 }
5801 static const sal_uInt16 mso_sptBalloonSegm[] =
5803 0x4000, 0xa701, 0x0001, 0xa801, 0x0003, 0xa701, 0x0001, 0xa801, 0x6001, 0x8000
5805 static const SvxMSDffHandle mso_sptBalloonHandle[] =
5808 MSDFF_HANDLE_FLAGS_RANGE,
5809 0x100, 1, 10800, 10800, 0, 8990, MIN_INT32, 0x7fffffff
5812 static const SvxMSDffTextRectangles mso_sptBalloonTextRect[] =
5814 { { 800, 800 }, { 20800, 17250 } }
5816 static const mso_CustomShape msoBalloon =
5818 (SvxMSDffVertPair*)mso_sptBalloonVert, SAL_N_ELEMENTS( mso_sptBalloonVert ),
5819 (sal_uInt16*)mso_sptBalloonSegm, sizeof( mso_sptBalloonSegm ) >> 1,
5820 (SvxMSDffCalculationData*)mso_sptWedgeRectCalloutCalc, SAL_N_ELEMENTS( mso_sptWedgeRectCalloutCalc ),
5821 (sal_Int32*)mso_sptWedgeRectCalloutDefault,
5822 (SvxMSDffTextRectangles*)mso_sptBalloonTextRect, SAL_N_ELEMENTS( mso_sptBalloonTextRect ),
5823 21600, 21600,
5824 MIN_INT32, MIN_INT32,
5825 NULL, 0,
5826 (SvxMSDffHandle*)mso_sptBalloonHandle, SAL_N_ELEMENTS( mso_sptBalloonHandle ) // handles
5828 static const SvxMSDffVertPair mso_sptWedgeEllipseCalloutVert[] =
5830 { 0, 0 }, { 21600, 21600 }, { 0x16 MSO_I, 0x17 MSO_I }, { 0x12 MSO_I, 0x13 MSO_I }, { 0xe MSO_I, 0xf MSO_I }
5832 static const sal_uInt16 mso_sptWedgeEllipseCalloutSegm[] =
5834 0xa504, 0x0001, 0x6001, 0x8000
5836 static const SvxMSDffCalculationData mso_sptWedgeEllipseCalloutCalc[] =
5838 { 0x2000, { DFF_Prop_adjustValue, 0, 10800 } }, // 00 rad x
5839 { 0x2000, { DFF_Prop_adjust2Value, 0, 10800 } }, // 01 rad y
5840 { 0x6001, { 0x400, 0x400, 1 } }, // 02 rad x^2
5841 { 0x6001, { 0x401, 0x401, 1 } }, // 03 rad y^2
5842 { 0x6000, { 0x402, 0x403, 0 } }, // 04
5843 { 0x200d, { 0x404, 0, 0 } }, // 05
5844 { 0x2000, { 0x405, 0, 10800 } }, // 06 > 0 ? spur needs to be drawn : 10800
5845 { 0x6008, { 0x400, 0x401, 0 } }, // 07 atan2 -> angle
5846 { 0x2000, { 0x407, 0, 10 } }, // 08
5847 { 0x2000, { 0x407, 10, 0 } }, // 09
5848 { 0x400a, { 10800, 0x407, 0 } }, // 0a
5849 { 0x4009, { 10800, 0x407, 0 } }, // 0b
5850 { 0x2000, { 0x40a, 10800, 0 } }, // 0c
5851 { 0x2000, { 0x40b, 10800, 0 } }, // 0d
5852 { 0xe006, { 0x406, DFF_Prop_adjustValue, 0x40c } }, // 0e
5853 { 0xe006, { 0x406, DFF_Prop_adjust2Value, 0x40d } },// 0f
5854 { 0x400a, { 10800, 0x408, 0 } }, // 10
5855 { 0x4009, { 10800, 0x408, 0 } }, // 11
5856 { 0x2000, { 0x410, 10800, 0 } }, // 12
5857 { 0x2000, { 0x411, 10800, 0 } }, // 13
5858 { 0x400a, { 10800, 0x409, 0 } }, // 14
5859 { 0x4009, { 10800, 0x409, 0 } }, // 15
5860 { 0x2000, { 0x414, 10800, 0 } }, // 16
5861 { 0x2000, { 0x415, 10800, 0 } } // 17
5863 static const sal_Int32 mso_sptWedgeEllipseCalloutDefault[] =
5865 2, 1350, 25920
5867 static const SvxMSDffVertPair mso_sptWedgeEllipseCalloutGluePoints[] =
5869 { 10800, 0 }, { 3160, 3160 }, { 0, 10800 }, { 3160, 18440 }, { 10800, 21600 }, { 18440, 18440 }, { 21600, 10800 }, { 18440, 3160 }, { 0xe MSO_I, 0xf MSO_I }
5871 static const SvxMSDffTextRectangles mso_sptWedgeEllipseCalloutTextRect[] =
5873 { { 3200, 3200 }, { 18400, 18400 } }
5875 static const mso_CustomShape msoWedgeEllipseCallout =
5877 (SvxMSDffVertPair*)mso_sptWedgeEllipseCalloutVert, SAL_N_ELEMENTS( mso_sptWedgeEllipseCalloutVert ),
5878 (sal_uInt16*)mso_sptWedgeEllipseCalloutSegm, sizeof( mso_sptWedgeEllipseCalloutSegm ) >> 1,
5879 (SvxMSDffCalculationData*)mso_sptWedgeEllipseCalloutCalc, SAL_N_ELEMENTS( mso_sptWedgeEllipseCalloutCalc ),
5880 (sal_Int32*)mso_sptWedgeEllipseCalloutDefault,
5881 (SvxMSDffTextRectangles*)mso_sptWedgeEllipseCalloutTextRect, SAL_N_ELEMENTS( mso_sptWedgeEllipseCalloutTextRect ),
5882 21600, 21600,
5883 MIN_INT32, MIN_INT32,
5884 (SvxMSDffVertPair*)mso_sptWedgeEllipseCalloutGluePoints, SAL_N_ELEMENTS( mso_sptWedgeEllipseCalloutGluePoints ),
5885 (SvxMSDffHandle*)mso_sptCalloutHandle, SAL_N_ELEMENTS( mso_sptCalloutHandle ) // handles
5888 static const SvxMSDffVertPair mso_sptCloudCalloutVert[] =
5890 { 1930,7160 }, // p
5891 { 1530,4490 }, { 3400,1970 }, { 5270,1970 }, // ccp
5892 { 5860,1950 }, { 6470,2210 }, { 6970,2600 }, // ccp
5893 { 7450,1390 }, { 8340,650 }, { 9340,650 }, // ccp
5894 { 10004,690 }, { 10710,1050 }, { 11210,1700 }, // ccp
5895 { 11570,630 }, { 12330,0 }, { 13150,0 }, // ccp
5896 { 13840,0 }, { 14470,460 }, { 14870,1160 }, // ccp
5897 { 15330,440 }, { 16020,0 }, { 16740,0 }, // ccp
5898 { 17910,0 }, { 18900,1130 }, { 19110,2710 }, // ccp
5899 { 20240,3150 }, { 21060,4580 }, { 21060,6220 }, // ccp
5900 { 21060,6720 }, { 21000,7200 }, { 20830,7660 }, // ccp
5901 { 21310,8460 }, { 21600,9450 }, { 21600,10460 }, // ccp
5902 { 21600,12750 }, { 20310,14680 }, { 18650,15010 }, // ccp
5903 { 18650,17200 }, { 17370,18920 }, { 15770,18920 }, // ccp
5904 { 15220,18920 }, { 14700,18710 }, { 14240,18310 }, // ccp
5905 { 13820,20240 }, { 12490,21600 }, { 11000,21600 }, // ccp
5906 { 9890,21600 }, { 8840,20790 }, { 8210,19510 }, // ccp
5907 { 7620,20000 }, { 7930,20290 }, { 6240,20290 }, // ccp
5908 { 4850,20290 }, { 3570,19280 }, { 2900,17640 }, // ccp
5909 { 1300,17600 }, { 480,16300 }, { 480,14660 }, // ccp
5910 { 480,13900 }, { 690,13210 }, { 1070,12640 }, // ccp
5911 { 380,12160 }, { 0,11210 }, { 0,10120 }, // ccp
5912 { 0,8590 }, { 840,7330 }, { 1930,7160 }, // ccp
5914 { 1930, 7160 }, { 1950, 7410 }, { 2040, 7690 }, { 2090, 7920 }, // pccp
5915 { 6970, 2600 }, { 7200, 2790 }, { 7480, 3050 }, { 7670, 3310 }, // pccp
5916 { 11210, 1700 }, { 11130, 1910 }, { 11080, 2160 }, { 11030, 2400 }, // pccp
5917 { 14870, 1160 }, { 14720, 1400 }, { 14640, 1720 }, { 14540, 2010 }, // pccp
5918 { 19110, 2710 }, { 19130, 2890 }, { 19230, 3290 }, { 19190, 3380 }, // pccp
5919 { 20830, 7660 }, { 20660, 8170 }, { 20430, 8620 }, { 20110, 8990 }, // pccp
5920 { 18660, 15010 }, { 18740, 14200 }, { 18280, 12200 }, { 17000, 11450 }, // pccp
5921 { 14240, 18310 }, { 14320, 17980 }, { 14350, 17680 }, { 14370, 17360 }, // pccp
5922 { 8220, 19510 }, { 8060, 19250 }, { 7960, 18950 }, { 7860, 18640 }, // pccp
5923 { 2900, 17640 }, { 3090, 17600 }, { 3280, 17540 }, { 3460, 17450 }, // pccp
5924 { 1070, 12640 }, { 1400, 12900 }, { 1780, 13130 }, { 2330, 13040 }, // pccp
5926 { 0x11 MSO_I, 0x12 MSO_I }, { 1800, 1800 }, { 0, 360 }, // circ1
5927 { 0x13 MSO_I, 0x14 MSO_I }, { 1200, 1200 }, { 0, 360 }, // circ2
5928 { 0xd MSO_I, 0xe MSO_I }, { 700, 700 }, { 0, 360 } // circ3
5930 static const sal_uInt16 mso_sptCloudCalloutSegm[] =
5932 0x4000, 0x2016, 0x6001, 0x8000,
5933 0x4000, 0x2001, 0xaa00, 0x8000,
5934 0x4000, 0x2001, 0xaa00, 0x8000,
5935 0x4000, 0x2001, 0xaa00, 0x8000,
5936 0x4000, 0x2001, 0xaa00, 0x8000,
5937 0x4000, 0x2001, 0xaa00, 0x8000,
5938 0x4000, 0x2001, 0xaa00, 0x8000,
5939 0x4000, 0x2001, 0xaa00, 0x8000,
5940 0x4000, 0x2001, 0xaa00, 0x8000,
5941 0x4000, 0x2001, 0xaa00, 0x8000,
5942 0x4000, 0x2001, 0xaa00, 0x8000,
5943 0x4000, 0x2001, 0xaa00, 0x8000,
5944 0xa203, 0x6001, 0x8000,
5945 0xa203, 0x6001, 0x8000,
5946 0xa203, 0x6001, 0x8000
5948 static const SvxMSDffCalculationData mso_sptCloudCalloutCalc[] =
5950 { 0x2000, { DFF_Prop_adjustValue, 0, 10800 } },
5951 { 0x2000, { DFF_Prop_adjust2Value, 0, 10800 } },
5952 { 0x6008, { 0x400, 0x401, 0 } },
5953 { 0x400a, { 10800, 0x402, 0 } }, // 3
5954 { 0x4009, { 10800, 0x402, 0 } }, // 4
5955 { 0x2000, { 0x403, 10800, 0 } }, // 5
5956 { 0x2000, { 0x404, 10800, 0 } }, // 6
5957 { 0xa000, { DFF_Prop_adjustValue, 0, 0x405 } }, // 7
5958 { 0xa000, { DFF_Prop_adjust2Value,0, 0x406 } }, // 8
5959 { 0x2001, { 0x407, 1, 3 } }, // 9
5960 { 0x2001, { 0x408, 1, 3 } }, // 0xa
5961 { 0x2001, { 0x407, 2, 3 } }, // 0xb
5962 { 0x2001, { 0x408, 2, 3 } }, // 0xc
5963 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 0xd
5964 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } }, // 0xe
5965 { 0x2001, { 0x403, 1, 10800 / 900 } }, // 0xf taking half x distance of the radius from the first bobble
5966 { 0x2001, { 0x404, 1, 10800 / 900 } }, // 0x10
5967 { 0xe000, { 0x409, 0x405, 0x40f } }, // 0x11
5968 { 0xe000, { 0x40a, 0x406, 0x410 } }, // 0x12
5969 { 0x6000, { 0x40b, 0x405, 0 } }, // 0x13
5970 { 0x6000, { 0x40c, 0x406, 0 } } // 0x14
5972 static const sal_Int32 mso_sptCloudCalloutDefault[] =
5974 2, 1350, 25920
5976 static const SvxMSDffTextRectangles mso_sptCloudCalloutTextRect[] =
5978 { { 3000, 3320 }, { 17110, 17330 } }
5980 static const mso_CustomShape msoCloudCallout =
5982 (SvxMSDffVertPair*)mso_sptCloudCalloutVert, SAL_N_ELEMENTS( mso_sptCloudCalloutVert ),
5983 (sal_uInt16*)mso_sptCloudCalloutSegm, sizeof( mso_sptCloudCalloutSegm ) >> 1,
5984 (SvxMSDffCalculationData*)mso_sptCloudCalloutCalc, SAL_N_ELEMENTS( mso_sptCloudCalloutCalc ),
5985 (sal_Int32*)mso_sptCloudCalloutDefault,
5986 (SvxMSDffTextRectangles*)mso_sptCloudCalloutTextRect, SAL_N_ELEMENTS( mso_sptCloudCalloutTextRect ),
5987 21600, 21600,
5988 MIN_INT32, MIN_INT32,
5989 NULL, 0,
5990 (SvxMSDffHandle*)mso_sptCalloutHandle, SAL_N_ELEMENTS( mso_sptCalloutHandle ) // handles
5993 static const SvxMSDffVertPair mso_sptWaveVert[] = // adjustment1 : 0 - 4460
5994 { // adjustment2 : 8640 - 12960
5995 { 7 MSO_I, 0 MSO_I }, { 15 MSO_I, 9 MSO_I }, { 16 MSO_I, 10 MSO_I }, { 12 MSO_I, 0 MSO_I },
5996 { 24 MSO_I, 1 MSO_I }, { 25 MSO_I, 26 MSO_I }, { 27 MSO_I, 28 MSO_I }, { 29 MSO_I, 1 MSO_I }
5998 static const SvxMSDffCalculationData mso_sptWaveCalc[] =
6000 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, //400 (vert.adj)
6001 { 0x8000, { 21600, 0, 0x400 } }, //401
6002 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },//402 (horz.adj)
6003 { 0x2000, { 0x402, 0, 10800 } }, //403 -2160 -> 2160 (horz.adj)
6004 { 0x2001, { 0x403, 2, 1 } }, //404 -4320 -> 4320 (horz.adj)
6005 { 0x2003, { 0x404, 0, 0 } }, //405 abs( 0x404 ) (horz.adj)
6006 { 0x8000, { 4320, 0, 0x405 } }, //406
6007 { 0xa006, { 0x403, 0, 0x405 } }, //407
6008 { 0x4001, { 15800, 0x400, 4460 } }, //408 0 -> 15800 (vert.adj)
6009 { 0xa000, { 0x400, 0, 0x408 } }, //409
6010 { 0x6000, { 0x400, 0x408, 0 } }, //40a
6011 { 0x8000, { 21600, 0, 0x404 } }, //40b
6012 { 0x6006, { 0x403, 0x40b, 21600 } }, //40c
6013 { 0xa000, { 0x40c, 0, 0x407 } }, //40d width between p0 and p1
6014 { 0x2001, { 0x405, 1, 2 } }, //40e
6015 { 0xa000, { 0x407, 7200, 0x40e } }, //40f
6016 { 0x6000, { 0x40c, 0x40e, 7200 } }, //410
6017 { 0x2001, { 0x40d, 1, 2 } }, //411 1/2 width
6018 { 0x6000, { 0x407, 0x411, 0 } }, //412 top center glue xpos
6019 { 0x8000, { 21600, 0, 0x412 } }, //413 bottom center glue xpos
6020 { 0x2001, { 0x405, 1, 2 } }, //414 left glue x pos
6021 { 0x8000, { 21600, 0, 0x414 } }, //415 right glue x pos
6022 { 0x2001, { 0x400, 2, 1 } }, //416 y1 (textbox)
6023 { 0x8000, { 21600, 0, 0x416 } }, //417 y2 (textbox)
6025 { 0x8000, { 21600, 0, 0x407 } }, //418 p2
6027 { 0x8000, { 21600, 0, 0x40f } }, //419 c
6028 { 0x6000, { 0x401, 0x408, 0 } }, //41a
6030 { 0x8000, { 21600, 0, 0x410 } }, //41b c
6031 { 0xa000, { 0x401, 0, 0x408 } }, //41c
6033 { 0x8000, { 21600, 0, 0x40c } } //41d p3
6035 static const SvxMSDffVertPair mso_sptWaveGluePoints[] =
6037 { 0x12 MSO_I, 0 MSO_I }, { 0x14 MSO_I, 10800 }, { 0x13 MSO_I, 1 MSO_I }, { 0x15 MSO_I, 10800 }
6039 static const sal_uInt16 mso_sptWaveSegm[] =
6041 0x4000, 0x2001, 0x0001, 0x2001, 0x6000, 0x8000
6043 static const SvxMSDffHandle mso_sptWaveHandle[] =
6045 { MSDFF_HANDLE_FLAGS_RANGE,
6046 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 4460 },
6047 { MSDFF_HANDLE_FLAGS_RANGE,
6048 0x101, 21600, 10800, 10800, 8640, 12960, MIN_INT32, 0x7fffffff }
6050 static const sal_Int32 mso_sptWaveDefault[] =
6052 2, 1400, 10800
6054 static const SvxMSDffTextRectangles mso_sptWaveTextRect[] =
6056 { { 5 MSO_I, 22 MSO_I }, { 11 MSO_I, 23 MSO_I } }
6058 static const mso_CustomShape msoWave =
6060 (SvxMSDffVertPair*)mso_sptWaveVert, SAL_N_ELEMENTS( mso_sptWaveVert ),
6061 (sal_uInt16*)mso_sptWaveSegm, sizeof( mso_sptWaveSegm ) >> 1,
6062 (SvxMSDffCalculationData*)mso_sptWaveCalc, SAL_N_ELEMENTS( mso_sptWaveCalc ),
6063 (sal_Int32*)mso_sptWaveDefault,
6064 (SvxMSDffTextRectangles*)mso_sptWaveTextRect, SAL_N_ELEMENTS( mso_sptWaveTextRect ),
6065 21600, 21600,
6066 MIN_INT32, MIN_INT32,
6067 (SvxMSDffVertPair*)mso_sptWaveGluePoints, SAL_N_ELEMENTS( mso_sptWaveGluePoints ),
6068 (SvxMSDffHandle*)mso_sptWaveHandle, SAL_N_ELEMENTS( mso_sptWaveHandle )
6071 static const SvxMSDffVertPair mso_sptDoubleWaveVert[] = // adjustment1 : 0 - 2230
6072 { // adjustment2 : 8640 - 12960
6073 { 7 MSO_I, 0 MSO_I }, { 15 MSO_I, 9 MSO_I }, { 0x1e MSO_I, 10 MSO_I }, { 0x12 MSO_I, 0 MSO_I }, { 0x1f MSO_I, 9 MSO_I }, { 16 MSO_I, 10 MSO_I }, { 12 MSO_I, 0 MSO_I },
6074 { 24 MSO_I, 1 MSO_I }, { 25 MSO_I, 26 MSO_I }, { 0x21 MSO_I, 28 MSO_I }, { 0x13 MSO_I, 1 MSO_I }, { 0x20 MSO_I, 26 MSO_I }, { 27 MSO_I, 28 MSO_I }, { 29 MSO_I, 1 MSO_I }
6076 static const SvxMSDffCalculationData mso_sptDoubleWaveCalc[] =
6078 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, //400 (vert.adj)
6079 { 0x8000, { 21600, 0, 0x400 } }, //401
6080 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },//402 (horz.adj)
6081 { 0x2000, { 0x402, 0, 10800 } }, //403 -2160 -> 2160 (horz.adj)
6082 { 0x2001, { 0x403, 2, 1 } }, //404 -4320 -> 4320 (horz.adj)
6083 { 0x2003, { 0x404, 0, 0 } }, //405 abs( 0x404 ) (horz.adj)
6084 { 0x8000, { 4320, 0, 0x405 } }, //406 -> not used
6085 { 0xa006, { 0x403, 0, 0x405 } }, //407
6086 { 0x4001, { 7900, 0x400, 2230 } }, //408 0 -> 7900 (vert.adj)
6087 { 0xa000, { 0x400, 0, 0x408 } }, //409
6088 { 0x6000, { 0x400, 0x408, 0 } }, //40a
6089 { 0x8000, { 21600, 0, 0x404 } }, //40b
6090 { 0x6006, { 0x403, 0x40b, 21600 } }, //40c
6091 { 0xa000, { 0x40c, 0, 0x407 } }, //40d width between p0 and p1
6092 { 0x2001, { 0x405, 1, 2 } }, //40e
6093 { 0xa000, { 0x407, 3600, 0x40e } }, //40f
6094 { 0x6000, { 0x40c, 0x40e, 3600 } }, //410
6095 { 0x2001, { 0x40d, 1, 2 } }, //411 1/2 width
6096 { 0x6000, { 0x407, 0x411, 0 } }, //412 top center glue xpos
6097 { 0x8000, { 21600, 0, 0x412 } }, //413 bottom center glue xpos
6098 { 0x2001, { 0x405, 1, 2 } }, //414 left glue x pos
6099 { 0x8000, { 21600, 0, 0x414 } }, //415 right glue x pos
6100 { 0x2001, { 0x400, 2, 1 } }, //416 y1 (textbox)
6101 { 0x8000, { 21600, 0, 0x416 } }, //417 y2 (textbox)
6103 { 0x8000, { 21600, 0, 0x407 } }, //418 p2
6105 { 0x8000, { 21600, 0, 0x40f } }, //419 c
6106 { 0x6000, { 0x401, 0x408, 0 } }, //41a
6108 { 0x8000, { 21600, 0, 0x410 } }, //41b c
6109 { 0xa000, { 0x401, 0, 0x408 } }, //41c
6111 { 0x8000, { 21600, 0, 0x40c } }, //41d p3
6112 { 0xa000, { 0x412, 0, 0x40e } }, //41e
6113 { 0x6000, { 0x412, 0x40e, 0 } }, //41f
6114 { 0xa000, { 0x413, 0, 0x40e } }, //420
6115 { 0x6000, { 0x413, 0x40e, 0 } } //421
6117 static const SvxMSDffVertPair mso_sptDoubleWaveGluePoints[] =
6119 { 0x12 MSO_I, 0 MSO_I }, { 0x14 MSO_I, 10800 }, { 0x13 MSO_I, 1 MSO_I }, { 0x15 MSO_I, 10800 }
6121 static const sal_uInt16 mso_sptDoubleWaveSegm[] =
6123 0x4000, 0x2002, 0x0001, 0x2002, 0x6000, 0x8000
6125 static const SvxMSDffHandle mso_sptDoubleWaveHandle[] =
6127 { MSDFF_HANDLE_FLAGS_RANGE,
6128 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 2230 },
6129 { MSDFF_HANDLE_FLAGS_RANGE,
6130 0x101, 21600, 10800, 10800, 8640, 12960, MIN_INT32, 0x7fffffff }
6132 static const sal_Int32 mso_sptDoubleWaveDefault[] =
6134 2, 1400, 10800
6136 static const SvxMSDffTextRectangles mso_sptDoubleWaveTextRect[] =
6138 { { 5 MSO_I, 22 MSO_I }, { 11 MSO_I, 23 MSO_I } }
6140 static const mso_CustomShape msoDoubleWave =
6142 (SvxMSDffVertPair*)mso_sptDoubleWaveVert, SAL_N_ELEMENTS( mso_sptDoubleWaveVert ),
6143 (sal_uInt16*)mso_sptDoubleWaveSegm, sizeof( mso_sptDoubleWaveSegm ) >> 1,
6144 (SvxMSDffCalculationData*)mso_sptDoubleWaveCalc, SAL_N_ELEMENTS( mso_sptDoubleWaveCalc ),
6145 (sal_Int32*)mso_sptDoubleWaveDefault,
6146 (SvxMSDffTextRectangles*)mso_sptDoubleWaveTextRect, SAL_N_ELEMENTS( mso_sptDoubleWaveTextRect ),
6147 21600, 21600,
6148 MIN_INT32, MIN_INT32,
6149 (SvxMSDffVertPair*)mso_sptDoubleWaveGluePoints, SAL_N_ELEMENTS( mso_sptDoubleWaveGluePoints ),
6150 (SvxMSDffHandle*)mso_sptDoubleWaveHandle, SAL_N_ELEMENTS( mso_sptDoubleWaveHandle )
6153 // for each shapetype a bit of 1 is indicating that the shape is NOT filled by default
6154 static const sal_uInt16 mso_DefaultFillingTable[] =
6156 0x0000, 0x0018, 0x01ff, 0x0000, 0x0c00, 0x01e0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0600, 0x0000, 0x0000, 0x0000, 0x0000
6158 sal_Bool IsCustomShapeFilledByDefault( MSO_SPT eSpType )
6160 sal_Bool bIsFilledByDefault = sal_True;
6161 sal_uInt32 i = (sal_uInt32)eSpType;
6162 if ( i < 0x100 )
6163 bIsFilledByDefault = ( mso_DefaultFillingTable[ i >> 4 ] & ( 1 << ( i & 0xf ) ) ) == 0;
6164 return bIsFilledByDefault;
6166 sal_Int16 GetCustomShapeConnectionTypeDefault( MSO_SPT eSpType )
6168 sal_Int16 nGluePointType = com::sun::star::drawing::EnhancedCustomShapeGluePointType::SEGMENTS;
6169 const mso_CustomShape* pDefCustomShape = GetCustomShapeContent( eSpType );
6170 if ( pDefCustomShape && pDefCustomShape->nGluePoints )
6171 nGluePointType = com::sun::star::drawing::EnhancedCustomShapeGluePointType::CUSTOM;
6172 else
6174 switch( eSpType )
6176 case mso_sptRectangle :
6177 case mso_sptRoundRectangle :
6178 case mso_sptPictureFrame :
6179 case mso_sptFlowChartProcess :
6180 case mso_sptFlowChartPredefinedProcess :
6181 case mso_sptFlowChartInternalStorage :
6182 case mso_sptTextPlainText :
6183 case mso_sptTextBox :
6184 case mso_sptVerticalScroll :
6185 case mso_sptHorizontalScroll :
6186 nGluePointType = com::sun::star::drawing::EnhancedCustomShapeGluePointType::RECT;
6187 default: break;
6190 return nGluePointType;
6193 // for each shapetype a bit of 1 is indicating that the shape is NOT stroked by default
6194 // #i28269#
6195 static const sal_uInt16 mso_DefaultStrokingTable[] =
6197 0x0000, 0x0000, 0x0000, 0x0000,
6198 0x0800, 0x0000, 0x0000, 0x0000, // #i28269# Added shape 75 (mso_sptPictureFrame)
6199 0x0000, 0x0000, 0x0000, 0x0000,
6200 0x0000, 0x0000, 0x0000, 0x0000
6202 // #i28269#
6203 sal_Bool IsCustomShapeStrokedByDefault( MSO_SPT eSpType )
6205 sal_Bool bIsStrokedByDefault = sal_True;
6206 sal_uInt32 i = (sal_uInt32)eSpType;
6207 if ( i < 0x100 )
6208 bIsStrokedByDefault = ( mso_DefaultStrokingTable[ i >> 4 ] & ( 1 << ( i & 0xf ) ) ) == 0;
6209 return bIsStrokedByDefault;
6212 static const sal_uInt16 msoSortFilledObjectsToBackTable[] =
6214 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
6216 sal_Bool SortFilledObjectsToBackByDefault( MSO_SPT eSpType )
6218 sal_Bool bSortFilledObjectsToBackByDefault = sal_True;
6219 sal_uInt32 i = (sal_uInt32)eSpType;
6220 if ( i < 0x100 )
6221 bSortFilledObjectsToBackByDefault = ( msoSortFilledObjectsToBackTable[ i >> 4 ] & ( 1 << ( i & 0xf ) ) ) != 0;
6222 return bSortFilledObjectsToBackByDefault;
6225 static const SvxMSDffVertPair mso_sptFontWorkVert[] =
6227 { 0, 0 }, { 21600, 0 }, { 0, 21600 }, { 21600, 21600 }
6229 static const sal_uInt16 mso_sptFontWorkSegm[] =
6231 0x4000, 0x0001, 0x8000,
6232 0x4000, 0x0001, 0x8000
6234 static const SvxMSDffTextRectangles mso_sptFontWorkTextRect[] =
6236 { { 0, 0 }, { 21600, 21600 } }
6238 static const mso_CustomShape msoFontWork =
6240 (SvxMSDffVertPair*)mso_sptFontWorkVert, SAL_N_ELEMENTS( mso_sptFontWorkVert ),
6241 (sal_uInt16*)mso_sptFontWorkSegm, sizeof( mso_sptFontWorkSegm ) >> 1,
6242 NULL, 0,
6243 NULL,
6244 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6245 21600, 21600,
6246 MIN_INT32, MIN_INT32,
6247 NULL, 0,
6248 NULL, 0 // Handles
6251 static const SvxMSDffVertPair mso_sptTextPlainTextVert[] =
6253 { 3 MSO_I, 0 }, { 5 MSO_I, 0 }, { 6 MSO_I, 21600 }, { 7 MSO_I, 21600 }
6255 static const SvxMSDffCalculationData mso_sptTextPlainTextCalc[] = // adjustment1 : 6629 - 14971
6257 { 0x2000, { DFF_Prop_adjustValue, 0, 10800 } },
6258 { 0x2001, { 0x400, 2, 1 } },
6259 { 0x2003, { 0x401, 0, 0 } },
6260 { 0xa006, { 0x401, 0, 0x402 } }, // x1(3)
6261 { 0x8000, { 21600, 0, 0x402 } },
6262 { 0x6006, { 0x401, 0x404, 21600 } }, // x2(5)
6263 { 0x6006, { 0x401, 0x402, 0 } }, // x2
6264 { 0xa006, { 0x401, 21600, 0x404 } } // x3(7)
6266 static const sal_uInt16 mso_sptTextPlainTextSegm[] =
6268 0x4000, 0x0001, 0x8000,
6269 0x4000, 0x0001, 0x8000
6271 static const SvxMSDffHandle mso_sptTextPlainTextHandle[] =
6273 { MSDFF_HANDLE_FLAGS_RANGE,
6274 0x100, 21600, 10800, 10800, 6629, 14971, MIN_INT32, 0x7fffffff }
6276 static const mso_CustomShape msoTextPlainText =
6278 (SvxMSDffVertPair*)mso_sptTextPlainTextVert, SAL_N_ELEMENTS( mso_sptTextPlainTextVert ),
6279 (sal_uInt16*)mso_sptTextPlainTextSegm, sizeof( mso_sptTextPlainTextSegm ) >> 1,
6280 (SvxMSDffCalculationData*)mso_sptTextPlainTextCalc, SAL_N_ELEMENTS( mso_sptTextPlainTextCalc ),
6281 (sal_Int32*)mso_sptDefault10800,
6282 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6283 21600, 21600,
6284 MIN_INT32, MIN_INT32,
6285 NULL, 0,
6286 (SvxMSDffHandle*)mso_sptTextPlainTextHandle, SAL_N_ELEMENTS( mso_sptTextPlainTextHandle )
6289 static const SvxMSDffVertPair mso_sptTextStopVert[] =
6291 { 0, 0 MSO_I }, { 7200, 0 }, { 14400, 0 }, { 21600, 0 MSO_I },
6292 { 0, 1 MSO_I }, { 7200, 21600 }, { 14400, 21600 }, { 21600, 1 MSO_I }
6294 static const SvxMSDffCalculationData mso_sptTextStopCalc[] = // adjustment1 : 3080 - 10800
6296 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
6297 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }
6299 static const sal_uInt16 mso_sptTextStopSegm[] =
6301 0x4000, 0x0003, 0x8000,
6302 0x4000, 0x0003, 0x8000
6304 static const sal_Int32 mso_sptTextStopDefault[] =
6306 1, 2700
6308 static const SvxMSDffHandle mso_sptTextStopHandle[] =
6310 { MSDFF_HANDLE_FLAGS_RANGE,
6311 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 3080, 10800 }
6313 static const mso_CustomShape msoTextStop =
6315 (SvxMSDffVertPair*)mso_sptTextStopVert, SAL_N_ELEMENTS( mso_sptTextStopVert ),
6316 (sal_uInt16*)mso_sptTextStopSegm, sizeof( mso_sptTextStopSegm ) >> 1,
6317 (SvxMSDffCalculationData*)mso_sptTextStopCalc, SAL_N_ELEMENTS( mso_sptTextStopCalc ),
6318 (sal_Int32*)mso_sptTextStopDefault,
6319 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6320 21600, 21600,
6321 MIN_INT32, MIN_INT32,
6322 NULL, 0,
6323 (SvxMSDffHandle*)mso_sptTextStopHandle, SAL_N_ELEMENTS( mso_sptTextStopHandle )
6326 static const SvxMSDffVertPair mso_sptTextTriangleVert[] =
6328 { 0, 0 MSO_I }, { 10800, 0 }, { 21600, 0 MSO_I }, { 0, 21600 }, { 21600, 21600 }
6330 static const SvxMSDffCalculationData mso_sptTextTriangleCalc[] = // adjustment1 : 6629 - 14971
6332 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }
6334 static const sal_uInt16 mso_sptTextTriangleSegm[] =
6336 0x4000, 0x0002, 0x8000,
6337 0x4000, 0x0001, 0x8000
6339 static const SvxMSDffHandle mso_sptTextTriangleHandle[] =
6341 { MSDFF_HANDLE_FLAGS_RANGE,
6342 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 21600 }
6344 static const mso_CustomShape msoTextTriangle =
6346 (SvxMSDffVertPair*)mso_sptTextTriangleVert, SAL_N_ELEMENTS( mso_sptTextTriangleVert ),
6347 (sal_uInt16*)mso_sptTextTriangleSegm, sizeof( mso_sptTextTriangleSegm ) >> 1,
6348 (SvxMSDffCalculationData*)mso_sptTextTriangleCalc, SAL_N_ELEMENTS( mso_sptTextTriangleCalc ),
6349 (sal_Int32*)mso_sptDefault10800,
6350 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6351 21600, 21600,
6352 MIN_INT32, MIN_INT32,
6353 NULL, 0,
6354 (SvxMSDffHandle*)mso_sptTextTriangleHandle, SAL_N_ELEMENTS( mso_sptTextTriangleHandle )
6356 static const SvxMSDffVertPair mso_sptTextTriangleInvertedVert[] =
6358 { 0, 0 }, { 21600, 0 }, { 0, 0 MSO_I }, { 10800, 21600 }, { 21600, 0 MSO_I }
6360 static const sal_uInt16 mso_sptTextTriangleInvertedSegm[] =
6362 0x4000, 0x0001, 0x8000,
6363 0x4000, 0x0002, 0x8000
6365 static const mso_CustomShape msoTextTriangleInverted =
6367 (SvxMSDffVertPair*)mso_sptTextTriangleInvertedVert, SAL_N_ELEMENTS( mso_sptTextTriangleInvertedVert ),
6368 (sal_uInt16*)mso_sptTextTriangleInvertedSegm, sizeof( mso_sptTextTriangleInvertedSegm ) >> 1,
6369 (SvxMSDffCalculationData*)mso_sptTextTriangleCalc, SAL_N_ELEMENTS( mso_sptTextTriangleCalc ),
6370 (sal_Int32*)mso_sptDefault10800,
6371 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6372 21600, 21600,
6373 MIN_INT32, MIN_INT32,
6374 NULL, 0,
6375 (SvxMSDffHandle*)mso_sptTextTriangleHandle, SAL_N_ELEMENTS( mso_sptTextTriangleHandle )
6378 static const SvxMSDffVertPair mso_sptTextChevronVert[] =
6380 { 0, 0 MSO_I }, { 10800, 0 }, { 21600, 0 MSO_I }, { 0, 21600 }, { 10800, 1 MSO_I }, { 21600, 21600 }
6382 static const SvxMSDffCalculationData mso_sptTextChevronCalc[] = // adjustment1 : 6629 - 14971
6384 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
6385 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }
6387 static const sal_uInt16 mso_sptTextChevronSegm[] =
6389 0x4000, 0x0002, 0x8000,
6390 0x4000, 0x0002, 0x8000
6392 static const SvxMSDffHandle mso_sptTextChevronHandle[] =
6394 { MSDFF_HANDLE_FLAGS_RANGE,
6395 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 10800 }
6397 static const mso_CustomShape msoTextChevron =
6399 (SvxMSDffVertPair*)mso_sptTextChevronVert, SAL_N_ELEMENTS( mso_sptTextChevronVert ),
6400 (sal_uInt16*)mso_sptTextChevronSegm, sizeof( mso_sptTextChevronSegm ) >> 1,
6401 (SvxMSDffCalculationData*)mso_sptTextChevronCalc, SAL_N_ELEMENTS( mso_sptTextChevronCalc ),
6402 (sal_Int32*)mso_sptDefault5400,
6403 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6404 21600, 21600,
6405 MIN_INT32, MIN_INT32,
6406 NULL, 0,
6407 (SvxMSDffHandle*)mso_sptTextChevronHandle, SAL_N_ELEMENTS( mso_sptTextChevronHandle )
6410 static const SvxMSDffVertPair mso_sptTextChevronInvertedVert[] =
6412 { 0, 0 }, { 10800, 1 MSO_I }, { 21600, 0 }, { 0, 0 MSO_I }, { 10800, 21600 }, { 21600, 0 MSO_I }
6414 static const SvxMSDffCalculationData mso_sptTextChevronInvertedCalc[] = // adjustment1 : 6629 - 14971
6416 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
6417 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }
6419 static const sal_uInt16 mso_sptTextChevronInvertedSegm[] =
6421 0x4000, 0x0002, 0x8000,
6422 0x4000, 0x0002, 0x8000
6424 static const SvxMSDffHandle mso_sptTextChevronInvertedHandle[] =
6426 { MSDFF_HANDLE_FLAGS_RANGE,
6427 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 10800, 21600 }
6429 static const mso_CustomShape msoTextChevronInverted =
6431 (SvxMSDffVertPair*)mso_sptTextChevronInvertedVert, SAL_N_ELEMENTS( mso_sptTextChevronInvertedVert ),
6432 (sal_uInt16*)mso_sptTextChevronInvertedSegm, sizeof( mso_sptTextChevronInvertedSegm ) >> 1,
6433 (SvxMSDffCalculationData*)mso_sptTextChevronInvertedCalc, SAL_N_ELEMENTS( mso_sptTextChevronInvertedCalc ),
6434 (sal_Int32*)mso_sptDefault16200,
6435 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6436 21600, 21600,
6437 MIN_INT32, MIN_INT32,
6438 NULL, 0,
6439 (SvxMSDffHandle*)mso_sptTextChevronInvertedHandle, SAL_N_ELEMENTS( mso_sptTextChevronInvertedHandle )
6441 //V 0 0 21600 ?f2 0 ?f0 21600 ?f0
6442 //W 0 0 21600 ?f2 21600 ?f0 0 ?f0 N
6443 //V 0 ?f3 21600 21600 0 ?f1 21600 ?f1
6444 //W 0 ?f3 21600 21600 21600 ?f1 0 ?f1 N
6445 //mso_sptTextRingInside
6446 static const SvxMSDffVertPair mso_sptTextRingInsideVert[] =
6448 { 0, 0 }, { 21600, 2 MSO_I }, { 0, 0 MSO_I },{ 21600, 0 MSO_I },//V
6449 { 0, 0 }, { 21600, 2 MSO_I }, { 21600, 0 MSO_I },{ 0, 0 MSO_I },//W
6450 { 0, 3 MSO_I }, { 21600, 21600 }, { 0, 1 MSO_I },{ 21600, 1 MSO_I },//V
6451 { 0, 3 MSO_I }, { 21600, 21600 }, { 21600, 1 MSO_I },{ 0, 1 MSO_I }//W
6453 static const SvxMSDffCalculationData mso_sptTextRingInsideCalc[] = // adjustment1 : 6629 - 14971
6455 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
6456 { 0x8000, { 21600, 0, 0x400 } },
6457 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, //$0
6458 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }//21600-$0
6460 static const sal_uInt16 mso_sptTextRingInsideSegm[] =
6462 0xa604, 0xa504,0x8000,
6463 0xa604, 0xa504,0x8000
6465 static const SvxMSDffHandle mso_sptTextRingInsideHandle[] =
6467 { MSDFF_HANDLE_FLAGS_RANGE| MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
6468 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 10800, 21600 }
6470 static const mso_CustomShape msoTextRingInside =
6472 (SvxMSDffVertPair*)mso_sptTextRingInsideVert, sizeof( mso_sptTextRingInsideVert ) / sizeof( SvxMSDffVertPair ),
6473 (sal_uInt16*)mso_sptTextRingInsideSegm, sizeof( mso_sptTextRingInsideSegm ) >> 1,
6474 (SvxMSDffCalculationData*)mso_sptTextRingInsideCalc, sizeof( mso_sptTextRingInsideCalc ) / sizeof( SvxMSDffCalculationData ),
6475 (sal_Int32*)mso_sptDefault13500,
6476 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, sizeof( mso_sptFontWorkTextRect ) / sizeof( SvxMSDffTextRectangles ),
6477 21600, 21600,
6478 MIN_INT32, MIN_INT32,
6479 NULL, 0,
6480 (SvxMSDffHandle*)mso_sptTextRingInsideHandle, sizeof( mso_sptTextRingInsideHandle ) / sizeof( SvxMSDffHandle )
6482 //mso_sptTextRingOutside
6483 //path = U 10800 ?f0 21600 ?f2 180 539 N U 10800 ?f1 21600 ?f2 180 539 N
6484 static const SvxMSDffVertPair mso_sptTextRingOutsideVert[] =
6486 { 10800, 0 MSO_I }, { 21600, 2 MSO_I }, { 180, 539},//U
6487 { 10800, 1 MSO_I }, { 21600, 2 MSO_I }, { 180, 539 }//U
6488 //{ 10800, 0 MSO_I }, { 10800, 0 MSO_I }, { 180, 359 },
6489 //{ 10800, 1 MSO_I }, { 10800, 0 MSO_I }, { 180, 359 }
6491 static const SvxMSDffCalculationData mso_sptTextRingOutsideCalc[] = // adjustment1 : 6629 - 14971
6493 { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
6494 { 0x8000, { 21600, 0, 0x400 } },
6495 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, //$0
6496 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }//21600-$0
6498 static const sal_uInt16 mso_sptTextRingOutsideSegm[] =
6500 0xA203, 0x8000,
6501 0xA203, 0x8000
6503 static const SvxMSDffHandle mso_sptTextRingOutsideHandle[] =
6505 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
6506 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 10800, 21600 }
6508 static const mso_CustomShape msoTextRingOutside =
6510 (SvxMSDffVertPair*)mso_sptTextRingOutsideVert, SAL_N_ELEMENTS( mso_sptTextRingOutsideVert ),
6511 (sal_uInt16*)mso_sptTextRingOutsideSegm, sizeof( mso_sptTextRingOutsideSegm ) >> 1,
6512 (SvxMSDffCalculationData*)mso_sptTextRingOutsideCalc, SAL_N_ELEMENTS( mso_sptTextRingOutsideCalc ),
6513 (sal_Int32*)mso_sptDefault13500,
6514 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6515 21600, 21600,
6516 MIN_INT32, MIN_INT32,
6517 NULL, 0,
6518 (SvxMSDffHandle*)mso_sptTextRingOutsideHandle, SAL_N_ELEMENTS( mso_sptTextRingOutsideHandle )
6521 static const SvxMSDffVertPair mso_sptTextFadeRightVert[] =
6523 { 0, 0 }, { 21600, 0 MSO_I }, { 0, 21600 }, { 21600, 1 MSO_I }
6525 static const SvxMSDffCalculationData mso_sptTextFadeCalc[] =
6527 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
6528 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }
6530 static const sal_uInt16 mso_sptTextFadeSegm[] =
6532 0x4000, 0x0001, 0x8000,
6533 0x4000, 0x0001, 0x8000
6535 static const SvxMSDffHandle mso_sptTextFadeRightHandle[] =
6537 { MSDFF_HANDLE_FLAGS_RANGE,
6538 21600, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 10800 }
6540 static const mso_CustomShape msoTextFadeRight =
6542 (SvxMSDffVertPair*)mso_sptTextFadeRightVert, SAL_N_ELEMENTS( mso_sptTextFadeRightVert ),
6543 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6544 (SvxMSDffCalculationData*)mso_sptTextFadeCalc, SAL_N_ELEMENTS( mso_sptTextFadeCalc ),
6545 (sal_Int32*)mso_sptDefault7200,
6546 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6547 21600, 21600,
6548 MIN_INT32, MIN_INT32,
6549 NULL, 0,
6550 (SvxMSDffHandle*)mso_sptTextFadeRightHandle, SAL_N_ELEMENTS( mso_sptTextFadeRightHandle )
6553 static const SvxMSDffVertPair mso_sptTextFadeLeftVert[] =
6555 { 0, 0 MSO_I }, { 21600, 0 }, { 0, 1 MSO_I }, { 21600, 21600 }
6557 static const SvxMSDffHandle mso_sptTextFadeLeftHandle[] =
6559 { MSDFF_HANDLE_FLAGS_RANGE,
6560 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 10800 }
6562 static const mso_CustomShape msoTextFadeLeft =
6564 (SvxMSDffVertPair*)mso_sptTextFadeLeftVert, SAL_N_ELEMENTS( mso_sptTextFadeLeftVert ),
6565 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6566 (SvxMSDffCalculationData*)mso_sptTextFadeCalc, SAL_N_ELEMENTS( mso_sptTextFadeCalc ),
6567 (sal_Int32*)mso_sptDefault7200,
6568 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6569 21600, 21600,
6570 MIN_INT32, MIN_INT32,
6571 NULL, 0,
6572 (SvxMSDffHandle*)mso_sptTextFadeLeftHandle, SAL_N_ELEMENTS( mso_sptTextFadeLeftHandle )
6575 static const SvxMSDffVertPair mso_sptTextFadeUpVert[] =
6577 { 0 MSO_I, 0 }, { 1 MSO_I, 0 }, { 0, 21600 }, { 21600, 21600 }
6579 static const SvxMSDffHandle mso_sptTextFadeUpHandle[] =
6581 { MSDFF_HANDLE_FLAGS_RANGE,
6582 0x100, 0, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6584 static const mso_CustomShape msoTextFadeUp =
6586 (SvxMSDffVertPair*)mso_sptTextFadeUpVert, SAL_N_ELEMENTS( mso_sptTextFadeUpVert ),
6587 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6588 (SvxMSDffCalculationData*)mso_sptTextFadeCalc, SAL_N_ELEMENTS( mso_sptTextFadeCalc ),
6589 (sal_Int32*)mso_sptDefault7200,
6590 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6591 21600, 21600,
6592 MIN_INT32, MIN_INT32,
6593 NULL, 0,
6594 (SvxMSDffHandle*)mso_sptTextFadeUpHandle, SAL_N_ELEMENTS( mso_sptTextFadeUpHandle )
6597 static const SvxMSDffVertPair mso_sptTextFadeDownVert[] =
6599 { 0, 0 }, { 21600, 0 }, { 0 MSO_I, 21600 }, { 1 MSO_I, 21600 }
6601 static const SvxMSDffHandle mso_sptTextFadeDownHandle[] =
6603 { MSDFF_HANDLE_FLAGS_RANGE,
6604 0x100, 21600, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6606 static const mso_CustomShape msoTextFadeDown =
6608 (SvxMSDffVertPair*)mso_sptTextFadeDownVert, SAL_N_ELEMENTS( mso_sptTextFadeDownVert ),
6609 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6610 (SvxMSDffCalculationData*)mso_sptTextFadeCalc, SAL_N_ELEMENTS( mso_sptTextFadeCalc ),
6611 (sal_Int32*)mso_sptDefault7200,
6612 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6613 21600, 21600,
6614 MIN_INT32, MIN_INT32,
6615 NULL, 0,
6616 (SvxMSDffHandle*)mso_sptTextFadeDownHandle, SAL_N_ELEMENTS( mso_sptTextFadeDownHandle )
6619 static const SvxMSDffVertPair mso_sptTextSlantUpVert[] =
6621 { 0, 0 MSO_I }, { 21600, 0 }, { 0, 21600 }, { 21600, 1 MSO_I }
6623 static const SvxMSDffHandle mso_sptTextSlantUpHandle[] =
6625 { MSDFF_HANDLE_FLAGS_RANGE,
6626 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 15400 }
6628 static const mso_CustomShape msoTextSlantUp =
6630 (SvxMSDffVertPair*)mso_sptTextSlantUpVert, SAL_N_ELEMENTS( mso_sptTextSlantUpVert ),
6631 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6632 (SvxMSDffCalculationData*)mso_sptTextFadeCalc, SAL_N_ELEMENTS( mso_sptTextFadeCalc ),
6633 (sal_Int32*)mso_sptDefault12000,
6634 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6635 21600, 21600,
6636 MIN_INT32, MIN_INT32,
6637 NULL, 0,
6638 (SvxMSDffHandle*)mso_sptTextSlantUpHandle, SAL_N_ELEMENTS( mso_sptTextSlantUpHandle )
6641 static const SvxMSDffVertPair mso_sptTextSlantDownVert[] =
6643 { 0, 0 }, { 21600, 1 MSO_I }, { 0, 0 MSO_I }, { 21600, 21600 }
6645 static const SvxMSDffHandle mso_sptTextSlantDownHandle[] =
6647 { MSDFF_HANDLE_FLAGS_RANGE,
6648 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 6200, 21600 }
6650 static const mso_CustomShape msoTextSlantDown =
6652 (SvxMSDffVertPair*)mso_sptTextSlantDownVert, SAL_N_ELEMENTS( mso_sptTextSlantDownVert ),
6653 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6654 (SvxMSDffCalculationData*)mso_sptTextFadeCalc, SAL_N_ELEMENTS( mso_sptTextFadeCalc ),
6655 (sal_Int32*)mso_sptDefault12000,
6656 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6657 21600, 21600,
6658 MIN_INT32, MIN_INT32,
6659 NULL, 0,
6660 (SvxMSDffHandle*)mso_sptTextSlantDownHandle, SAL_N_ELEMENTS( mso_sptTextSlantDownHandle )
6663 static const SvxMSDffVertPair mso_sptTextCascadeUpVert[] =
6665 { 0, 2 MSO_I }, { 21600, 0 }, { 0, 21600 }, { 21600, 0 MSO_I }
6667 static const SvxMSDffCalculationData mso_sptTextCascadeCalc[] =
6669 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
6670 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
6671 { 0x2001, { 0x401, 1, 4 } }
6673 static const SvxMSDffHandle mso_sptTextCascadeUpHandle[] =
6675 { MSDFF_HANDLE_FLAGS_RANGE,
6676 21600, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 6200, 21600 }
6678 static const mso_CustomShape msoTextCascadeUp =
6680 (SvxMSDffVertPair*)mso_sptTextCascadeUpVert, SAL_N_ELEMENTS( mso_sptTextCascadeUpVert ),
6681 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6682 (SvxMSDffCalculationData*)mso_sptTextCascadeCalc, SAL_N_ELEMENTS( mso_sptTextCascadeCalc ),
6683 (sal_Int32*)mso_sptDefault9600,
6684 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6685 21600, 21600,
6686 MIN_INT32, MIN_INT32,
6687 NULL, 0,
6688 (SvxMSDffHandle*)mso_sptTextCascadeUpHandle, SAL_N_ELEMENTS( mso_sptTextCascadeUpHandle )
6691 static const SvxMSDffVertPair mso_sptTextCascadeDownVert[] =
6693 { 0, 0 }, { 21600, 2 MSO_I }, { 0, 0 MSO_I }, { 21600, 21600 }
6695 static const SvxMSDffHandle mso_sptTextCascadeDownHandle[] =
6697 { MSDFF_HANDLE_FLAGS_RANGE,
6698 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 6200, 21600 }
6700 static const mso_CustomShape msoTextCascadeDown =
6702 (SvxMSDffVertPair*)mso_sptTextCascadeDownVert, SAL_N_ELEMENTS( mso_sptTextCascadeDownVert ),
6703 (sal_uInt16*)mso_sptTextFadeSegm, sizeof( mso_sptTextFadeSegm ) >> 1,
6704 (SvxMSDffCalculationData*)mso_sptTextCascadeCalc, SAL_N_ELEMENTS( mso_sptTextCascadeCalc ),
6705 (sal_Int32*)mso_sptDefault9600,
6706 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6707 21600, 21600,
6708 MIN_INT32, MIN_INT32,
6709 NULL, 0,
6710 (SvxMSDffHandle*)mso_sptTextCascadeDownHandle, SAL_N_ELEMENTS( mso_sptTextCascadeDownHandle )
6713 static const SvxMSDffVertPair mso_sptTextArchUpCurveVert[] =
6715 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 3 MSO_I }
6717 static const SvxMSDffCalculationData mso_sptTextArchCurveCalc[] =
6719 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
6720 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
6721 { 0x2000, { 0x400, 10800, 0 } },
6722 { 0x2000, { 0x401, 10800, 0 } },
6723 { 0x8000, { 21600, 0, 0x402 } }
6725 static const sal_uInt16 mso_sptTextArchUpCurveSegm[] =
6727 0xA504, 0x8000 // clockwíse arc
6729 static const SvxMSDffHandle mso_sptTextArchUpCurveHandle[] =
6731 { MSDFF_HANDLE_FLAGS_POLAR,
6732 10800, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6734 static const sal_Int32 mso_sptTextArchUpCurveDefault[] =
6736 1, 180
6738 static const mso_CustomShape msoTextArchUpCurve =
6740 (SvxMSDffVertPair*)mso_sptTextArchUpCurveVert, SAL_N_ELEMENTS( mso_sptTextArchUpCurveVert ),
6741 (sal_uInt16*)mso_sptTextArchUpCurveSegm, sizeof( mso_sptTextArchUpCurveSegm ) >> 1,
6742 (SvxMSDffCalculationData*)mso_sptTextArchCurveCalc, SAL_N_ELEMENTS( mso_sptTextArchCurveCalc ),
6743 (sal_Int32*)mso_sptTextArchUpCurveDefault,
6744 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6745 21600, 21600,
6746 MIN_INT32, MIN_INT32,
6747 NULL, 0,
6748 (SvxMSDffHandle*)mso_sptTextArchUpCurveHandle, SAL_N_ELEMENTS( mso_sptTextArchUpCurveHandle )
6751 static const SvxMSDffVertPair mso_sptTextArchDownCurveVert[] =
6753 { 0, 0 }, { 21600, 21600 }, { 4 MSO_I, 3 MSO_I }, { 2 MSO_I, 3 MSO_I }
6755 static const sal_uInt16 mso_sptTextArchDownCurveSegm[] =
6757 0xA304, 0x8000 // counter clockwise arc to
6759 static const SvxMSDffHandle mso_sptTextArchDownCurveHandle[] =
6761 { MSDFF_HANDLE_FLAGS_POLAR,
6762 10800, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6764 static const sal_Int32 mso_sptTextArchDownCurveDefault[] =
6766 1, 0
6768 static const mso_CustomShape msoTextArchDownCurve =
6770 (SvxMSDffVertPair*)mso_sptTextArchDownCurveVert, SAL_N_ELEMENTS( mso_sptTextArchDownCurveVert ),
6771 (sal_uInt16*)mso_sptTextArchDownCurveSegm, sizeof( mso_sptTextArchDownCurveSegm ) >> 1,
6772 (SvxMSDffCalculationData*)mso_sptTextArchCurveCalc, SAL_N_ELEMENTS( mso_sptTextArchCurveCalc ),
6773 (sal_Int32*)mso_sptTextArchDownCurveDefault,
6774 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6775 21600, 21600,
6776 MIN_INT32, MIN_INT32,
6777 NULL, 0,
6778 (SvxMSDffHandle*)mso_sptTextArchDownCurveHandle, SAL_N_ELEMENTS( mso_sptTextArchDownCurveHandle )
6781 static const SvxMSDffVertPair mso_sptTextCircleCurveVert[] =
6783 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 3 MSO_I }, { 2 MSO_I, 4 MSO_I }
6785 static const SvxMSDffCalculationData mso_sptTextCircleCurveCalc[] =
6787 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
6788 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
6789 { 0x2000, { 0x400, 10800, 0 } },
6790 { 0x2000, { 0x401, 10800, 0 } },
6791 { 0x8000, { 21600, 0, 0x403 } }
6793 static const sal_uInt16 mso_sptTextCircleCurveSegm[] =
6795 0xA504, 0x8000 // clockwise arc to
6797 static const SvxMSDffHandle mso_sptTextCircleCurveHandle[] =
6799 { MSDFF_HANDLE_FLAGS_POLAR,
6800 10800, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6802 static const sal_Int32 mso_sptTextCircleCurveDefault[] =
6804 1, -179
6806 static const mso_CustomShape msoTextCircleCurve =
6808 (SvxMSDffVertPair*)mso_sptTextCircleCurveVert, SAL_N_ELEMENTS( mso_sptTextCircleCurveVert ),
6809 (sal_uInt16*)mso_sptTextCircleCurveSegm, sizeof( mso_sptTextCircleCurveSegm ) >> 1,
6810 (SvxMSDffCalculationData*)mso_sptTextCircleCurveCalc, SAL_N_ELEMENTS( mso_sptTextCircleCurveCalc ),
6811 (sal_Int32*)mso_sptTextCircleCurveDefault,
6812 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6813 21600, 21600,
6814 MIN_INT32, MIN_INT32,
6815 NULL, 0,
6816 (SvxMSDffHandle*)mso_sptTextCircleCurveHandle, SAL_N_ELEMENTS( mso_sptTextCircleCurveHandle )
6819 static const SvxMSDffVertPair mso_sptTextButtonCurveVert[] =
6821 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 3 MSO_I },
6822 { 0, 10800 }, { 21600, 10800 },
6823 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 5 MSO_I }, { 4 MSO_I, 5 MSO_I }
6825 static const SvxMSDffCalculationData mso_sptTextButtonCurveCalc[] =
6827 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
6828 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
6829 { 0x2000, { 0x400, 10800, 0 } },
6830 { 0x2000, { 0x401, 10800, 0 } },
6831 { 0x8000, { 21600, 0, 0x402 } },
6832 { 0x8000, { 21600, 0, 0x403 } }
6834 static const sal_uInt16 mso_sptTextButtonCurveSegm[] =
6836 0xA504, 0x8000, // clockwise arc
6837 0x4000, 0x0001, 0x8000,
6838 0xA304, 0x8000 // counter clockwise
6840 static const SvxMSDffHandle mso_sptTextButtonCurveHandle[] =
6842 { MSDFF_HANDLE_FLAGS_POLAR,
6843 10800, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6845 static const sal_Int32 mso_sptTextButtonCurveDefault[] =
6847 1, 180
6849 static const mso_CustomShape msoTextButtonCurve =
6851 (SvxMSDffVertPair*)mso_sptTextButtonCurveVert, SAL_N_ELEMENTS( mso_sptTextButtonCurveVert ),
6852 (sal_uInt16*)mso_sptTextButtonCurveSegm, sizeof( mso_sptTextButtonCurveSegm ) >> 1,
6853 (SvxMSDffCalculationData*)mso_sptTextButtonCurveCalc, SAL_N_ELEMENTS( mso_sptTextButtonCurveCalc ),
6854 (sal_Int32*)mso_sptTextButtonCurveDefault,
6855 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6856 21600, 21600,
6857 MIN_INT32, MIN_INT32,
6858 NULL, 0,
6859 (SvxMSDffHandle*)mso_sptTextButtonCurveHandle, SAL_N_ELEMENTS( mso_sptTextButtonCurveHandle )
6862 static const SvxMSDffVertPair mso_sptTextArchUpPourVert[] =
6864 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 3 MSO_I },
6865 { 5 MSO_I, 5 MSO_I }, { 11 MSO_I, 11 MSO_I }, { 8 MSO_I, 9 MSO_I }, { 0xa MSO_I, 9 MSO_I }
6867 static const SvxMSDffCalculationData mso_sptTextArchPourCalc[] =
6869 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
6870 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
6871 { 0x2000, { 0x400, 10800, 0 } },
6872 { 0x2000, { 0x401, 10800, 0 } },
6873 { 0x8000, { 21600, 0, 0x402 } },
6874 { 0x8000, { 10800, 0, DFF_Prop_adjust2Value } },
6875 { 0x600a, { 0x405, DFF_Prop_adjustValue, 0 } }, // 6
6876 { 0x6009, { 0x405, DFF_Prop_adjustValue, 0 } },
6877 { 0x2000, { 0x406, 10800, 0 } }, // 8
6878 { 0x2000, { 0x407, 10800, 0 } },
6879 { 0x8000, { 21600, 0, 0x408 } }, // 10
6880 { 0x8000, { 21600, 0, 0x405 } }
6882 static const sal_uInt16 mso_sptTextArchUpPourSegm[] =
6884 0xA504, 0x8000, 0xA504, 0x8000
6886 static const SvxMSDffHandle mso_sptTextArchPourHandle[] =
6888 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
6889 0x101, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6891 static const sal_Int32 mso_sptTextArchUpPourDefault[] =
6893 2, 180, 5400
6895 static const mso_CustomShape msoTextArchUpPour =
6897 (SvxMSDffVertPair*)mso_sptTextArchUpPourVert, SAL_N_ELEMENTS( mso_sptTextArchUpPourVert ),
6898 (sal_uInt16*)mso_sptTextArchUpPourSegm, sizeof( mso_sptTextArchUpPourSegm ) >> 1,
6899 (SvxMSDffCalculationData*)mso_sptTextArchPourCalc, SAL_N_ELEMENTS( mso_sptTextArchPourCalc ),
6900 (sal_Int32*)mso_sptTextArchUpPourDefault,
6901 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6902 21600, 21600,
6903 MIN_INT32, MIN_INT32,
6904 NULL, 0,
6905 (SvxMSDffHandle*)mso_sptTextArchPourHandle, SAL_N_ELEMENTS( mso_sptTextArchPourHandle )
6908 static const SvxMSDffVertPair mso_sptTextArchDownPourVert[] =
6910 { 5 MSO_I, 5 MSO_I }, { 11 MSO_I, 11 MSO_I }, { 0xa MSO_I, 9 MSO_I }, { 8 MSO_I, 9 MSO_I },
6911 { 0, 0 }, { 21600, 21600 }, { 4 MSO_I, 3 MSO_I }, { 2 MSO_I, 3 MSO_I }
6913 static const sal_uInt16 mso_sptTextArchDownPourSegm[] =
6915 0xA304, 0x8000, 0xA304, 0x8000
6917 static const sal_Int32 mso_sptTextArchDownPourDefault[] =
6919 2, 0, 5400
6921 static const mso_CustomShape msoTextArchDownPour =
6923 (SvxMSDffVertPair*)mso_sptTextArchDownPourVert, SAL_N_ELEMENTS( mso_sptTextArchDownPourVert ),
6924 (sal_uInt16*)mso_sptTextArchDownPourSegm, sizeof( mso_sptTextArchDownPourSegm ) >> 1,
6925 (SvxMSDffCalculationData*)mso_sptTextArchPourCalc, SAL_N_ELEMENTS( mso_sptTextArchPourCalc ),
6926 (sal_Int32*)mso_sptTextArchDownPourDefault,
6927 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6928 21600, 21600,
6929 MIN_INT32, MIN_INT32,
6930 NULL, 0,
6931 (SvxMSDffHandle*)mso_sptTextArchPourHandle, SAL_N_ELEMENTS( mso_sptTextArchPourHandle )
6934 static const SvxMSDffVertPair mso_sptTextCirclePourVert[] =
6936 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 3 MSO_I }, { 2 MSO_I, 4 MSO_I },
6937 { 5 MSO_I, 5 MSO_I }, { 11 MSO_I, 11 MSO_I }, { 8 MSO_I, 9 MSO_I }, { 8 MSO_I, 0xa MSO_I }
6939 static const SvxMSDffCalculationData mso_sptTextCirclePourCalc[] =
6941 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } },
6942 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } },
6943 { 0x2000, { 0x400, 10800, 0 } },
6944 { 0x2000, { 0x401, 10800, 0 } },
6945 { 0x8000, { 21600, 0, 0x403 } },
6946 { 0x8000, { 10800, 0, DFF_Prop_adjust2Value } },
6947 { 0x600a, { 0x405, DFF_Prop_adjustValue, 0 } }, // 6
6948 { 0x6009, { 0x405, DFF_Prop_adjustValue, 0 } },
6949 { 0x2000, { 0x406, 10800, 0 } }, // 8
6950 { 0x2000, { 0x407, 10800, 0 } },
6951 { 0x8000, { 21600, 0, 0x409 } }, // 10
6952 { 0x8000, { 21600, 0, 0x405 } },
6953 { 0x000, { 21600, 0, 0 } }
6955 static const sal_uInt16 mso_sptTextCirclePourSegm[] =
6957 0xA504, 0x8000, 0xA504, 0x8000
6959 static const SvxMSDffHandle mso_sptTextCirclePourHandle[] =
6961 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
6962 0x101, 0x100, 10800, 10800, 0, 10800, MIN_INT32, 0x7fffffff }
6964 static const sal_Int32 mso_sptTextCirclePourDefault[] =
6966 2, -179, 5400
6968 static const mso_CustomShape msoTextCirclePour =
6970 (SvxMSDffVertPair*)mso_sptTextCirclePourVert, SAL_N_ELEMENTS( mso_sptTextCirclePourVert ),
6971 (sal_uInt16*)mso_sptTextCirclePourSegm, sizeof( mso_sptTextCirclePourSegm ) >> 1,
6972 (SvxMSDffCalculationData*)mso_sptTextCirclePourCalc, SAL_N_ELEMENTS( mso_sptTextCirclePourCalc ),
6973 (sal_Int32*)mso_sptTextCirclePourDefault,
6974 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
6975 21600, 21600,
6976 MIN_INT32, MIN_INT32,
6977 NULL, 0,
6978 (SvxMSDffHandle*)mso_sptTextCirclePourHandle, SAL_N_ELEMENTS( mso_sptTextCirclePourHandle )
6981 static const SvxMSDffVertPair mso_sptTextButtonPourVert[] =
6983 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 3 MSO_I },
6984 { 6 MSO_I, 6 MSO_I }, { 7 MSO_I, 7 MSO_I }, { 10 MSO_I, 11 MSO_I }, { 12 MSO_I, 11 MSO_I },
6985 { 0x16 MSO_I, 16 MSO_I }, { 0x15 MSO_I, 16 MSO_I },
6986 { 0x16 MSO_I, 15 MSO_I }, { 0x15 MSO_I, 15 MSO_I },
6987 { 6 MSO_I, 6 MSO_I }, { 7 MSO_I, 7 MSO_I }, { 10 MSO_I, 13 MSO_I }, { 12 MSO_I, 13 MSO_I },
6988 { 0, 0 }, { 21600, 21600 }, { 2 MSO_I, 5 MSO_I }, { 4 MSO_I, 5 MSO_I }
6990 static const SvxMSDffCalculationData mso_sptTextButtonPourCalc[] =
6992 { 0x400a, { 10800, DFF_Prop_adjustValue, 0 } }, // 0x00
6993 { 0x4009, { 10800, DFF_Prop_adjustValue, 0 } }, // 0x01
6994 { 0x2000, { 0x400, 10800, 0 } }, // 0x02
6995 { 0x2000, { 0x401, 10800, 0 } }, // 0x03
6996 { 0x8000, { 21600, 0, 0x402 } }, // 0x04
6997 { 0x8000, { 21600, 0, 0x403 } }, // 0x05
6999 { 0x8000, { 10800, 0, DFF_Prop_adjust2Value } }, // 0x06
7000 { 0x8000, { 21600, 0, 0x406 } }, // 0x07
7002 { 0x600a, { DFF_Prop_adjust2Value, DFF_Prop_adjustValue, 0 } }, // 0x08
7003 { 0x6009, { DFF_Prop_adjust2Value, DFF_Prop_adjustValue, 0 } }, // 0x09
7004 { 0x2000, { 0x408, 10800, 0 } }, // 0x0a
7005 { 0x2000, { 0x409, 10800, 0 } }, // 0x0b
7006 { 0x8000, { 21600, 0, 0x40a } }, // 0x0c
7007 { 0x8000, { 21600, 0, 0x40b } }, // 0x0d
7008 { 0x2001, { 0x406, 1, 2 } }, // 0x0e
7009 { 0x4000, { 10800, 0x40e, 0 } }, // 0x0f
7010 { 0x8000, { 10800, 0, 0x40e } }, // 0x10
7011 { 0x6001, { 0x40e, 0x40e, 1 } }, // 0x11
7012 { 0x6001, { DFF_Prop_adjust2Value, DFF_Prop_adjust2Value, 1 } }, // 0x12
7013 { 0xA000, { 0x412, 0, 0x411 } }, // 0x13
7014 { 0x200d, { 0x413, 0, 0 } }, // 0x14
7015 { 0x4000, { 10800, 0x414, 0 } }, // 0x15
7016 { 0x8000, { 10800, 0, 0x414 } } // 0x16
7018 static const sal_uInt16 mso_sptTextButtonPourSegm[] =
7020 0xA504, 0x8000, // clockwise arc
7021 0xA504, 0x8000, // clockwise arc
7022 0x4000, 0x0001, 0x8000,
7023 0x4000, 0x0001, 0x8000,
7024 0xA304, 0x8000, // counter clockwise
7025 0xA304, 0x8000 // counter clockwise
7027 static const SvxMSDffHandle mso_sptTextButtonPourHandle[] =
7029 { MSDFF_HANDLE_FLAGS_POLAR | MSDFF_HANDLE_FLAGS_RADIUS_RANGE,
7030 0x101, 0x100, 10800, 10800, 4320, 10800, MIN_INT32, 0x7fffffff }
7032 static const sal_Int32 mso_sptTextButtonPourDefault[] =
7034 2, 180, 5400
7036 static const mso_CustomShape msoTextButtonPour =
7038 (SvxMSDffVertPair*)mso_sptTextButtonPourVert, SAL_N_ELEMENTS( mso_sptTextButtonPourVert ),
7039 (sal_uInt16*)mso_sptTextButtonPourSegm, sizeof( mso_sptTextButtonPourSegm ) >> 1,
7040 (SvxMSDffCalculationData*)mso_sptTextButtonPourCalc, SAL_N_ELEMENTS( mso_sptTextButtonPourCalc ),
7041 (sal_Int32*)mso_sptTextButtonPourDefault,
7042 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7043 21600, 21600,
7044 MIN_INT32, MIN_INT32,
7045 NULL, 0,
7046 (SvxMSDffHandle*)mso_sptTextButtonPourHandle, SAL_N_ELEMENTS( mso_sptTextButtonPourHandle )
7049 static const SvxMSDffVertPair mso_sptTextCurveUpVert[] =
7051 { 0, 0 MSO_I }, { 4900, 1 MSO_I /*12170->0 14250 ->0*/ }, { 11640, 2 MSO_I /*12170->0 12800 ->0*/ }, { 21600, 0 },
7052 { 0, 4 MSO_I /*12170->0 17220 ->21600*/ }, { 3700, 21600 }, { 8500, 21600 }, { 10100, 21600 }, { 14110, 21600 }, { 15910, 21600 }, { 21600, 4 MSO_I /*12170->0 17220 ->21600*/ }
7054 static const SvxMSDffCalculationData mso_sptTextCurveUpCalc[] =
7056 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7057 { 0x4001, { 14250, 0x400, 12170 } }, // 401
7058 { 0x4001, { 12800, 0x400, 12170 } }, // 402
7059 { 0x4001, { 6380, 0x400, 12170 } }, // 403
7060 { 0x8000, { 21600, 0, 0x403 } } // 404
7062 static const sal_uInt16 mso_sptTextCurveUpSegm[] =
7064 0x4000, 0x2001, 0x8000,
7065 0x4000, 0x2002, 0x8000
7067 static const SvxMSDffHandle mso_sptTextCurveUpHandle[] =
7069 { MSDFF_HANDLE_FLAGS_RANGE,
7070 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 12170 }
7072 static const sal_Int32 mso_sptTextCurveUpDefault[] =
7074 1, 9900
7076 static const mso_CustomShape msoTextCurveUp =
7078 (SvxMSDffVertPair*)mso_sptTextCurveUpVert, SAL_N_ELEMENTS( mso_sptTextCurveUpVert ),
7079 (sal_uInt16*)mso_sptTextCurveUpSegm, sizeof( mso_sptTextCurveUpSegm ) >> 1,
7080 (SvxMSDffCalculationData*)mso_sptTextCurveUpCalc, SAL_N_ELEMENTS( mso_sptTextCurveUpCalc ),
7081 (sal_Int32*)mso_sptTextCurveUpDefault,
7082 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7083 21600, 21600,
7084 MIN_INT32, MIN_INT32,
7085 NULL, 0,
7086 (SvxMSDffHandle*)mso_sptTextCurveUpHandle, SAL_N_ELEMENTS( mso_sptTextCurveUpHandle )
7089 static const SvxMSDffVertPair mso_sptTextCurveDownVert[] =
7091 // { 0, 0 MSO_I }, { 4900, 1 MSO_I /*12170->0 14250 ->0*/ }, { 11640, 2 MSO_I /*12170->0 12800 ->0*/ }, { 21600, 0 },
7092 { 0, 0 }, { 9960, 2 MSO_I }, { 16700, 1 MSO_I }, { 21600, 0 MSO_I },
7094 // { 0, 4 MSO_I /*12170->0 17220 ->21600*/ }, { 3700, 21600 }, { 8500, 21600 }, { 10100, 21600 }, { 14110, 21600 }, { 15910, 21600 }, { 21600, 4 MSO_I /*12170->0 17220 ->21600*/ }
7095 { 0, 4 MSO_I }, { 5690, 21600 }, { 7490, 21600 }, { 11500, 21600 }, { 13100, 21600 }, { 17900, 21600 }, { 21600, 4 MSO_I }
7097 static const SvxMSDffHandle mso_sptTextCurveDownHandle[] =
7099 { MSDFF_HANDLE_FLAGS_RANGE,
7100 21600, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 12170 }
7102 static const mso_CustomShape msoTextCurveDown =
7104 (SvxMSDffVertPair*)mso_sptTextCurveDownVert, SAL_N_ELEMENTS( mso_sptTextCurveDownVert ),
7105 (sal_uInt16*)mso_sptTextCurveUpSegm, sizeof( mso_sptTextCurveUpSegm ) >> 1,
7106 (SvxMSDffCalculationData*)mso_sptTextCurveUpCalc, SAL_N_ELEMENTS( mso_sptTextCurveUpCalc ),
7107 (sal_Int32*)mso_sptTextCurveUpDefault,
7108 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7109 21600, 21600,
7110 MIN_INT32, MIN_INT32,
7111 NULL, 0,
7112 (SvxMSDffHandle*)mso_sptTextCurveDownHandle, SAL_N_ELEMENTS( mso_sptTextCurveDownHandle )
7115 static const SvxMSDffVertPair mso_sptTextCanUpVert[] =
7117 { 0, 1 MSO_I }, { 900, 0 }, { 7100, 0 }, { 10800, 0 }, { 14500, 0 }, { 20700, 0 }, { 21600, 1 MSO_I },
7118 { 0, 21600 }, { 900, 4 MSO_I }, { 7100, 0 MSO_I }, { 10800, 0 MSO_I }, { 14500, 0 MSO_I }, { 20700, 4 MSO_I }, { 21600, 21600 }
7120 static const SvxMSDffCalculationData mso_sptTextCanUpCalc[] =
7122 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7123 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }, // 401
7124 { 0x2000, { DFF_Prop_adjustValue, 0, 14400 } }, // 402
7125 { 0x4001, { 5470, 0x402, 7200 } }, // 403
7126 { 0x4000, { 16130, 0x403, 0 } } // 404
7128 static const sal_uInt16 mso_sptTextCanUpSegm[] =
7130 0x4000, 0x2002, 0x8000,
7131 0x4000, 0x2002, 0x8000
7133 static const SvxMSDffHandle mso_sptTextCanUpHandle[] =
7135 { MSDFF_HANDLE_FLAGS_RANGE,
7136 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 14400, 21600 }
7138 static const sal_Int32 mso_sptTextCanUpDefault[] =
7140 1, 18500
7142 static const mso_CustomShape msoTextCanUp =
7144 (SvxMSDffVertPair*)mso_sptTextCanUpVert, SAL_N_ELEMENTS( mso_sptTextCanUpVert ),
7145 (sal_uInt16*)mso_sptTextCanUpSegm, sizeof( mso_sptTextCanUpSegm ) >> 1,
7146 (SvxMSDffCalculationData*)mso_sptTextCanUpCalc, SAL_N_ELEMENTS( mso_sptTextCanUpCalc ),
7147 (sal_Int32*)mso_sptTextCanUpDefault,
7148 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7149 21600, 21600,
7150 MIN_INT32, MIN_INT32,
7151 NULL, 0,
7152 (SvxMSDffHandle*)mso_sptTextCanUpHandle, SAL_N_ELEMENTS( mso_sptTextCanUpHandle )
7155 static const SvxMSDffVertPair mso_sptTextCanDownVert[] =
7157 { 0, 0 }, { 900, 2 MSO_I }, { 7100, 0 MSO_I }, { 10800, 0 MSO_I }, { 14500, 0 MSO_I }, { 20700, 2 MSO_I }, { 21600, 0 },
7158 { 0, 1 MSO_I }, { 900, 21600 }, { 7100, 21600 }, { 10800, 21600 }, { 14500, 21600 }, { 20700, 21600 }, { 21600, 1 MSO_I }
7160 static const SvxMSDffCalculationData mso_sptTextCanDownCalc[] =
7162 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7163 { 0x8000, { 21600, 0, DFF_Prop_adjustValue } }, // 401
7164 { 0x4001, { 5470, 0x400, 7200 } } // 402
7166 static const SvxMSDffHandle mso_sptTextCanDownHandle[] =
7168 { MSDFF_HANDLE_FLAGS_RANGE,
7169 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 7200 }
7171 static const sal_Int32 mso_sptTextCanDownDefault[] =
7173 1, 3100
7175 static const mso_CustomShape msoTextCanDown =
7177 (SvxMSDffVertPair*)mso_sptTextCanDownVert, SAL_N_ELEMENTS( mso_sptTextCanDownVert ),
7178 (sal_uInt16*)mso_sptTextCanUpSegm, sizeof( mso_sptTextCanUpSegm ) >> 1,
7179 (SvxMSDffCalculationData*)mso_sptTextCanDownCalc, SAL_N_ELEMENTS( mso_sptTextCanDownCalc ),
7180 (sal_Int32*)mso_sptTextCanDownDefault,
7181 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7182 21600, 21600,
7183 MIN_INT32, MIN_INT32,
7184 NULL, 0,
7185 (SvxMSDffHandle*)mso_sptTextCanDownHandle, SAL_N_ELEMENTS( mso_sptTextCanDownHandle )
7188 static const SvxMSDffVertPair mso_sptTextInflateVert[] =
7190 { 0, 0 MSO_I }, { 4100, 1 MSO_I }, { 7300, 0 }, { 10800, 0 }, { 14300, 0 }, { 17500, 1 MSO_I }, { 21600, 0 MSO_I },
7191 { 0, 2 MSO_I }, { 4100, 3 MSO_I }, { 7300, 21600 }, { 10800, 21600 }, { 14300, 21600 }, { 17500, 3 MSO_I }, { 21600, 2 MSO_I }
7193 static const SvxMSDffCalculationData mso_sptTextInflateCalc[] =
7195 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7196 { 0x4001, { 1530, 0x400, 4650 } }, // 401
7197 { 0x8000, { 21600, 0, 0x400 } }, // 402
7198 { 0x8000, { 21600, 0, 0x401 } } // 403
7200 static const SvxMSDffHandle mso_sptTextInflateHandle[] =
7202 { MSDFF_HANDLE_FLAGS_RANGE,
7203 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 4650 }
7205 static const sal_Int32 mso_sptTextInflateDefault[] =
7207 1, 2950
7209 static const mso_CustomShape msoTextInflate =
7211 (SvxMSDffVertPair*)mso_sptTextInflateVert, SAL_N_ELEMENTS( mso_sptTextInflateVert ),
7212 (sal_uInt16*)mso_sptTextCanUpSegm, sizeof( mso_sptTextCanUpSegm ) >> 1,
7213 (SvxMSDffCalculationData*)mso_sptTextInflateCalc, SAL_N_ELEMENTS( mso_sptTextInflateCalc ),
7214 (sal_Int32*)mso_sptTextInflateDefault,
7215 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7216 21600, 21600,
7217 MIN_INT32, MIN_INT32,
7218 NULL, 0,
7219 (SvxMSDffHandle*)mso_sptTextInflateHandle, SAL_N_ELEMENTS( mso_sptTextInflateHandle )
7222 static const SvxMSDffVertPair mso_sptTextDeflateVert[] =
7224 { 0, 0 }, { 3500, 1 MSO_I }, { 7100, 0 MSO_I }, { 10800, 0 MSO_I }, { 14500, 0 MSO_I }, { 18100, 1 MSO_I }, { 21600, 0 },
7225 { 0, 21600 }, { 3500, 3 MSO_I }, { 7100, 2 MSO_I }, { 10800, 2 MSO_I }, { 14500, 2 MSO_I }, { 18100, 3 MSO_I }, { 21600, 21600 }
7227 static const SvxMSDffCalculationData mso_sptTextDeflateCalc[] =
7229 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7230 { 0x2001, { 0x400, 5320, 7100 } }, // 401
7231 { 0x8000, { 21600, 0, 0x400 } }, // 402
7232 { 0x8000, { 21600, 0, 0x401 } } // 403
7234 static const SvxMSDffHandle mso_sptTextDeflateHandle[] =
7236 { MSDFF_HANDLE_FLAGS_RANGE,
7237 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 8100 }
7239 static const mso_CustomShape msoTextDeflate =
7241 (SvxMSDffVertPair*)mso_sptTextDeflateVert, SAL_N_ELEMENTS( mso_sptTextDeflateVert ),
7242 (sal_uInt16*)mso_sptTextCanUpSegm, sizeof( mso_sptTextCanUpSegm ) >> 1,
7243 (SvxMSDffCalculationData*)mso_sptTextDeflateCalc, SAL_N_ELEMENTS( mso_sptTextDeflateCalc ),
7244 (sal_Int32*)mso_sptDefault8100,
7245 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7246 21600, 21600,
7247 MIN_INT32, MIN_INT32,
7248 NULL, 0,
7249 (SvxMSDffHandle*)mso_sptTextDeflateHandle, SAL_N_ELEMENTS( mso_sptTextDeflateHandle )
7252 static const SvxMSDffVertPair mso_sptTextInflateBottomVert[] =
7254 { 0, 0 }, { 21600, 0 },
7255 { 0, 0 MSO_I }, { 3500, 3 MSO_I }, { 7300, 21600 }, { 10800, 21600 }, { 14300, 21600 }, { 18100, 3 MSO_I }, { 21600, 0 MSO_I }
7257 static const SvxMSDffCalculationData mso_sptTextInflateBottomCalc[] =
7259 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7260 { 0x2000, { 0x400, 0, 11150 } }, // 401 0->10450
7261 { 0x2001, { 0x401, 3900, 10450 } }, // 402
7262 { 0x2000, { 0x402, 17700, 0 } } // 403
7264 static const sal_uInt16 mso_sptTextInflateBottomSegm[] =
7266 0x4000, 0x0001, 0x8000,
7267 0x4000, 0x2002, 0x8000
7269 static const SvxMSDffHandle mso_sptTextInflateBottomHandle[] =
7271 { MSDFF_HANDLE_FLAGS_RANGE,
7272 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 11150, 21600 }
7274 static const sal_Int32 mso_sptTextInflateBottomDefault[] =
7276 1, 14700
7278 static const mso_CustomShape msoTextInflateBottom =
7280 (SvxMSDffVertPair*)mso_sptTextInflateBottomVert, SAL_N_ELEMENTS( mso_sptTextInflateBottomVert ),
7281 (sal_uInt16*)mso_sptTextInflateBottomSegm, sizeof( mso_sptTextInflateBottomSegm ) >> 1,
7282 (SvxMSDffCalculationData*)mso_sptTextInflateBottomCalc, SAL_N_ELEMENTS( mso_sptTextInflateBottomCalc ),
7283 (sal_Int32*)mso_sptTextInflateBottomDefault,
7284 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7285 21600, 21600,
7286 MIN_INT32, MIN_INT32,
7287 NULL, 0,
7288 (SvxMSDffHandle*)mso_sptTextInflateBottomHandle, SAL_N_ELEMENTS( mso_sptTextInflateBottomHandle )
7291 static const SvxMSDffVertPair mso_sptTextDeflateBottomVert[] =
7293 { 0, 0 }, { 21600, 0 },
7294 { 0, 21600 }, { 2900, 3 MSO_I }, { 7200, 0 MSO_I }, { 10800, 0 MSO_I }, { 14400, 0 MSO_I }, { 18700, 3 MSO_I }, { 21600, 21600 }
7296 static const SvxMSDffCalculationData mso_sptTextDeflateBottomCalc[] =
7298 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7299 { 0x2000, { 0x400, 0, 1350 } }, // 401 0->20250
7300 { 0x2001, { 0x401, 12070, 20250 } }, // 402
7301 { 0x2000, { 0x402, 9530, 0 } } // 403
7303 static const sal_uInt16 mso_sptTextDeflateBottomSegm[] =
7305 0x4000, 0x0001, 0x8000,
7306 0x4000, 0x2002, 0x8000
7308 static const SvxMSDffHandle mso_sptTextDeflateBottomHandle[] =
7310 { MSDFF_HANDLE_FLAGS_RANGE,
7311 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 1350, 21600 }
7313 static const sal_Int32 mso_sptTextDeflateBottomDefault[] =
7315 1, 11500
7317 static const mso_CustomShape msoTextDeflateBottom =
7319 (SvxMSDffVertPair*)mso_sptTextDeflateBottomVert, SAL_N_ELEMENTS( mso_sptTextDeflateBottomVert ),
7320 (sal_uInt16*)mso_sptTextDeflateBottomSegm, sizeof( mso_sptTextDeflateBottomSegm ) >> 1,
7321 (SvxMSDffCalculationData*)mso_sptTextDeflateBottomCalc, SAL_N_ELEMENTS( mso_sptTextDeflateBottomCalc ),
7322 (sal_Int32*)mso_sptTextDeflateBottomDefault,
7323 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7324 21600, 21600,
7325 MIN_INT32, MIN_INT32,
7326 NULL, 0,
7327 (SvxMSDffHandle*)mso_sptTextDeflateBottomHandle, SAL_N_ELEMENTS( mso_sptTextDeflateBottomHandle )
7330 static const SvxMSDffVertPair mso_sptTextInflateTopVert[] =
7332 { 0, 0 MSO_I }, { 3500, 1 MSO_I }, { 7300, 0 }, { 10800, 0 }, { 14300, 0 }, { 18100, 1 MSO_I }, { 21600, 0 MSO_I },
7333 { 0, 21600 }, { 21600, 21600 }
7335 static const SvxMSDffCalculationData mso_sptTextInflateTopCalc[] =
7337 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7338 { 0x2001, { 0x400, 3900, 10450 } } // 401
7340 static const sal_uInt16 mso_sptTextInflateTopSegm[] =
7342 0x4000, 0x2002, 0x8000,
7343 0x4000, 0x0001, 0x8000
7345 static const SvxMSDffHandle mso_sptTextInflateTopHandle[] =
7347 { MSDFF_HANDLE_FLAGS_RANGE,
7348 0, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 10450 }
7350 static const sal_Int32 mso_sptTextInflateTopDefault[] =
7352 1, 6900
7354 static const mso_CustomShape msoTextInflateTop =
7356 (SvxMSDffVertPair*)mso_sptTextInflateTopVert, SAL_N_ELEMENTS( mso_sptTextInflateTopVert ),
7357 (sal_uInt16*)mso_sptTextInflateTopSegm, sizeof( mso_sptTextInflateTopSegm ) >> 1,
7358 (SvxMSDffCalculationData*)mso_sptTextInflateTopCalc, SAL_N_ELEMENTS( mso_sptTextInflateTopCalc ),
7359 (sal_Int32*)mso_sptTextInflateTopDefault,
7360 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7361 21600, 21600,
7362 MIN_INT32, MIN_INT32,
7363 NULL, 0,
7364 (SvxMSDffHandle*)mso_sptTextInflateTopHandle, SAL_N_ELEMENTS( mso_sptTextInflateTopHandle )
7367 static const SvxMSDffVertPair mso_sptTextDeflateTopVert[] =
7369 { 0, 0 }, { 2900, 1 MSO_I }, { 7200, 0 MSO_I }, { 10800, 0 MSO_I }, { 14400, 0 MSO_I }, { 18700, 1 MSO_I }, { 21600, 0 },
7370 { 0, 21600 }, { 21600, 21600 }
7372 static const SvxMSDffCalculationData mso_sptTextDeflateTopCalc[] =
7374 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7375 { 0x2001, { 0x400, 12070, 20250 } } // 402
7377 static const sal_uInt16 mso_sptTextDeflateTopSegm[] =
7379 0x4000, 0x2002, 0x8000,
7380 0x4000, 0x0001, 0x8000
7382 static const SvxMSDffHandle mso_sptTextDeflateTopHandle[] =
7384 { MSDFF_HANDLE_FLAGS_RANGE,
7385 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 0, 20250 }
7387 static const sal_Int32 mso_sptTextDeflateTopDefault[] =
7389 1, 10100
7391 static const mso_CustomShape msoTextDeflateTop =
7393 (SvxMSDffVertPair*)mso_sptTextDeflateTopVert, SAL_N_ELEMENTS( mso_sptTextDeflateTopVert ),
7394 (sal_uInt16*)mso_sptTextDeflateTopSegm, sizeof( mso_sptTextDeflateTopSegm ) >> 1,
7395 (SvxMSDffCalculationData*)mso_sptTextDeflateTopCalc, SAL_N_ELEMENTS( mso_sptTextDeflateTopCalc ),
7396 (sal_Int32*)mso_sptTextDeflateTopDefault,
7397 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7398 21600, 21600,
7399 MIN_INT32, MIN_INT32,
7400 NULL, 0,
7401 (SvxMSDffHandle*)mso_sptTextDeflateTopHandle, SAL_N_ELEMENTS( mso_sptTextDeflateTopHandle )
7404 static const SvxMSDffVertPair mso_sptTextDeflateInflateVert[] =
7406 { 0, 0 }, { 21600, 0 },
7407 { 0, 10100 }, { 3300, 3 MSO_I }, { 7100, 5 MSO_I }, { 10800, 5 MSO_I }, { 14500, 5 MSO_I }, { 18300, 3 MSO_I }, { 21600, 10100 },
7408 { 0, 11500 }, { 3300, 4 MSO_I }, { 7100, 6 MSO_I }, { 10800, 6 MSO_I }, { 14500, 6 MSO_I }, { 18300, 4 MSO_I }, { 21600, 11500 },
7409 { 0, 21600 }, { 21600, 21600 }
7411 static const SvxMSDffCalculationData mso_sptTextDeflateInflateCalc[] =
7413 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }, // 400
7414 { 0x8000, { 10800, 0, 0x400 } }, // 401
7415 { 0x2001, { 0x401, 5770, 9500 } }, // 402
7416 { 0x8000, { 10100, 0, 0x402 } }, // 403
7417 { 0x8000, { 11500, 0, 0x402 } }, // 404
7418 { 0x2000, { 0x400, 0, 700 } }, // 405
7419 { 0x2000, { 0x400, 700, 0 } } // 406
7421 static const sal_uInt16 mso_sptTextDeflateInflateSegm[] =
7423 0x4000, 0x0001, 0x8000,
7424 0x4000, 0x2002, 0x8000,
7425 0x4000, 0x2002, 0x8000,
7426 0x4000, 0x0001, 0x8000
7428 static const SvxMSDffHandle mso_sptTextDeflateInflateHandle[] =
7430 { MSDFF_HANDLE_FLAGS_RANGE,
7431 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 1300, 20300 }
7433 static const sal_Int32 mso_sptTextDeflateInflateDefault[] =
7435 1, 6500
7437 static const mso_CustomShape msoTextDeflateInflate =
7439 (SvxMSDffVertPair*)mso_sptTextDeflateInflateVert, SAL_N_ELEMENTS( mso_sptTextDeflateInflateVert ),
7440 (sal_uInt16*)mso_sptTextDeflateInflateSegm, sizeof( mso_sptTextDeflateInflateSegm ) >> 1,
7441 (SvxMSDffCalculationData*)mso_sptTextDeflateInflateCalc, SAL_N_ELEMENTS( mso_sptTextDeflateInflateCalc ),
7442 (sal_Int32*)mso_sptTextDeflateInflateDefault,
7443 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7444 21600, 21600,
7445 MIN_INT32, MIN_INT32,
7446 NULL, 0,
7447 (SvxMSDffHandle*)mso_sptTextDeflateInflateHandle, SAL_N_ELEMENTS( mso_sptTextDeflateInflateHandle )
7450 static const SvxMSDffVertPair mso_sptTextDeflateInflateDeflateVert[] =
7452 { 0, 0 }, { 21600, 0 },
7453 { 0, 6600 }, { 3600, 3 MSO_I }, { 7250, 4 MSO_I }, { 10800, 4 MSO_I }, { 14350, 4 MSO_I }, { 18000, 3 MSO_I }, { 21600, 6600 },
7454 { 0, 7500 }, { 3600, 5 MSO_I }, { 7250, 6 MSO_I }, { 10800, 6 MSO_I }, { 14350, 6 MSO_I }, { 18000, 5 MSO_I }, { 21600, 7500 },
7455 { 0, 14100 }, { 3600, 9 MSO_I }, { 7250, 10 MSO_I }, { 10800, 10 MSO_I }, { 14350, 10 MSO_I }, { 18000, 9 MSO_I }, { 21600, 14100 },
7456 { 0, 15000 }, { 3600, 7 MSO_I }, { 7250, 8 MSO_I }, { 10800, 8 MSO_I }, { 14350, 8 MSO_I }, { 18000, 7 MSO_I }, { 21600, 15000 },
7457 { 0, 21600 }, { 21600, 21600 }
7459 static const SvxMSDffCalculationData mso_sptTextDeflateInflateDeflateCalc[] =
7461 { 0x2000, { DFF_Prop_adjustValue, 0, 850 } }, // 400
7462 { 0x2001, { 0x400, 6120, 8700 } },
7463 { 0x2000, { 0x401, 0, 4280 } },
7464 { 0x4000, { 6600, 0x402, 0 } },
7465 { 0x2000, { DFF_Prop_adjustValue, 0, 450 } }, // 404
7466 { 0x2000, { 0x403, 900, 0 } }, // 405
7467 { 0x2000, { 0x404, 900, 0 } }, // 406
7468 { 0x8000, { 21600, 0, 0x403 } }, // 407
7469 { 0x8000, { 21600, 0, 0x404 } }, // 408
7470 { 0x8000, { 21600, 0, 0x405 } }, // 409
7471 { 0x8000, { 21600, 0, 0x406 } } // 410
7473 static const sal_uInt16 mso_sptTextDeflateInflateDeflateSegm[] =
7475 0x4000, 0x0001, 0x8000,
7476 0x4000, 0x2002, 0x8000,
7477 0x4000, 0x2002, 0x8000,
7478 0x4000, 0x2002, 0x8000,
7479 0x4000, 0x2002, 0x8000,
7480 0x4000, 0x0001, 0x8000
7482 static const SvxMSDffHandle mso_sptTextDeflateInflateDeflateHandle[] =
7484 { MSDFF_HANDLE_FLAGS_RANGE,
7485 10800, 0x100, 10800, 10800, MIN_INT32, 0x7fffffff, 850, 9550 }
7487 static const sal_Int32 mso_sptTextDeflateInflateDeflateDefault[] =
7489 1, 6050
7491 static const mso_CustomShape msoTextDeflateInflateDeflate =
7493 (SvxMSDffVertPair*)mso_sptTextDeflateInflateDeflateVert, SAL_N_ELEMENTS( mso_sptTextDeflateInflateDeflateVert ),
7494 (sal_uInt16*)mso_sptTextDeflateInflateDeflateSegm, sizeof( mso_sptTextDeflateInflateDeflateSegm ) >> 1,
7495 (SvxMSDffCalculationData*)mso_sptTextDeflateInflateDeflateCalc, SAL_N_ELEMENTS( mso_sptTextDeflateInflateDeflateCalc ),
7496 (sal_Int32*)mso_sptTextDeflateInflateDeflateDefault,
7497 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7498 21600, 21600,
7499 MIN_INT32, MIN_INT32,
7500 NULL, 0,
7501 (SvxMSDffHandle*)mso_sptTextDeflateInflateDeflateHandle, SAL_N_ELEMENTS( mso_sptTextDeflateInflateDeflateHandle )
7504 static const SvxMSDffVertPair mso_sptTextWave1Vert[] = // adjustment1 : 0 - 4459
7505 { // adjustment2 : 8640 - 12960
7506 { 7 MSO_I, 0 MSO_I }, { 15 MSO_I, 9 MSO_I }, { 16 MSO_I, 10 MSO_I }, { 12 MSO_I, 0 MSO_I },
7507 { 29 MSO_I, 1 MSO_I }, { 27 MSO_I, 28 MSO_I }, { 25 MSO_I, 26 MSO_I }, { 24 MSO_I, 1 MSO_I }
7509 static const sal_uInt16 mso_sptTextWave1Segm[] =
7511 0x4000, 0x2001, 0x8000,
7512 0x4000, 0x2001, 0x8000
7514 static const mso_CustomShape msoTextWave1 =
7516 (SvxMSDffVertPair*)mso_sptTextWave1Vert, SAL_N_ELEMENTS( mso_sptTextWave1Vert ),
7517 (sal_uInt16*)mso_sptTextWave1Segm, sizeof( mso_sptTextWave1Segm ) >> 1,
7518 (SvxMSDffCalculationData*)mso_sptWaveCalc, SAL_N_ELEMENTS( mso_sptWaveCalc ),
7519 (sal_Int32*)mso_sptWaveDefault,
7520 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7521 21600, 21600,
7522 MIN_INT32, MIN_INT32,
7523 (SvxMSDffVertPair*)mso_sptWaveGluePoints, SAL_N_ELEMENTS( mso_sptWaveGluePoints ),
7524 (SvxMSDffHandle*)mso_sptWaveHandle, SAL_N_ELEMENTS( mso_sptWaveHandle )
7527 static const SvxMSDffVertPair mso_sptTextWave2Vert[] = // adjustment1 : 0 - 4459
7528 { // adjustment2 : 8640 - 12960
7529 { 7 MSO_I, 0 MSO_I }, { 15 MSO_I, 10 MSO_I }, { 16 MSO_I, 9 MSO_I }, { 12 MSO_I, 0 MSO_I },
7530 { 29 MSO_I, 1 MSO_I }, { 27 MSO_I, 26 MSO_I }, { 25 MSO_I, 28 MSO_I }, { 24 MSO_I, 1 MSO_I }
7532 static const mso_CustomShape msoTextWave2 =
7534 (SvxMSDffVertPair*)mso_sptTextWave2Vert, SAL_N_ELEMENTS( mso_sptTextWave2Vert ),
7535 (sal_uInt16*)mso_sptTextWave1Segm, sizeof( mso_sptTextWave1Segm ) >> 1,
7536 (SvxMSDffCalculationData*)mso_sptWaveCalc, SAL_N_ELEMENTS( mso_sptWaveCalc ),
7537 (sal_Int32*)mso_sptWaveDefault,
7538 (SvxMSDffTextRectangles*)mso_sptFontWorkTextRect, SAL_N_ELEMENTS( mso_sptFontWorkTextRect ),
7539 21600, 21600,
7540 MIN_INT32, MIN_INT32,
7541 (SvxMSDffVertPair*)mso_sptWaveGluePoints, SAL_N_ELEMENTS( mso_sptWaveGluePoints ),
7542 (SvxMSDffHandle*)mso_sptWaveHandle, SAL_N_ELEMENTS( mso_sptWaveHandle )
7545 static const SvxMSDffVertPair mso_sptTextWave3Vert[] = // adjustment1 : 0 - 2230
7546 { // adjustment2 : 8640 - 12960
7547 { 7 MSO_I, 0 MSO_I }, { 15 MSO_I, 9 MSO_I }, { 0x1e MSO_I, 10 MSO_I }, { 0x12 MSO_I, 0 MSO_I }, { 0x1f MSO_I, 9 MSO_I }, { 16 MSO_I, 10 MSO_I }, { 12 MSO_I, 0 MSO_I },
7548 { 29 MSO_I, 1 MSO_I }, { 27 MSO_I, 28 MSO_I }, { 0x20 MSO_I, 26 MSO_I }, { 0x13 MSO_I, 1 MSO_I }, { 0x21 MSO_I, 28 MSO_I }, { 25 MSO_I, 26 MSO_I }, { 24 MSO_I, 1 MSO_I }
7550 static const sal_uInt16 mso_sptTextWave3Segm[] =
7552 0x4000, 0x2002, 0x8000,
7553 0x4000, 0x2002, 0x8000
7555 static const mso_CustomShape msoTextWave3 =
7557 (SvxMSDffVertPair*)mso_sptTextWave3Vert, SAL_N_ELEMENTS( mso_sptTextWave3Vert ),
7558 (sal_uInt16*)mso_sptTextWave3Segm, sizeof( mso_sptTextWave3Segm ) >> 1,
7559 (SvxMSDffCalculationData*)mso_sptDoubleWaveCalc, SAL_N_ELEMENTS( mso_sptDoubleWaveCalc ),
7560 (sal_Int32*)mso_sptDoubleWaveDefault,
7561 (SvxMSDffTextRectangles*)mso_sptDoubleWaveTextRect, SAL_N_ELEMENTS( mso_sptDoubleWaveTextRect ),
7562 21600, 21600,
7563 MIN_INT32, MIN_INT32,
7564 (SvxMSDffVertPair*)mso_sptDoubleWaveGluePoints, SAL_N_ELEMENTS( mso_sptDoubleWaveGluePoints ),
7565 (SvxMSDffHandle*)mso_sptDoubleWaveHandle, SAL_N_ELEMENTS( mso_sptDoubleWaveHandle )
7568 static const SvxMSDffVertPair mso_sptTextWave4Vert[] = // adjustment1 : 0 - 2230
7569 { // adjustment2 : 8640 - 12960
7570 { 7 MSO_I, 0 MSO_I }, { 15 MSO_I, 10 MSO_I }, { 0x1e MSO_I, 9 MSO_I }, { 0x12 MSO_I, 0 MSO_I }, { 0x1f MSO_I, 10 MSO_I }, { 16 MSO_I, 9 MSO_I }, { 12 MSO_I, 0 MSO_I },
7571 { 29 MSO_I, 1 MSO_I }, { 27 MSO_I, 26 MSO_I }, { 0x20 MSO_I, 28 MSO_I }, { 0x13 MSO_I, 1 MSO_I }, { 0x21 MSO_I, 26 MSO_I }, { 25 MSO_I, 28 MSO_I }, { 24 MSO_I, 1 MSO_I }
7573 static const mso_CustomShape msoTextWave4 =
7575 (SvxMSDffVertPair*)mso_sptTextWave4Vert, SAL_N_ELEMENTS( mso_sptTextWave4Vert ),
7576 (sal_uInt16*)mso_sptTextWave3Segm, sizeof( mso_sptTextWave3Segm ) >> 1,
7577 (SvxMSDffCalculationData*)mso_sptDoubleWaveCalc, SAL_N_ELEMENTS( mso_sptDoubleWaveCalc ),
7578 (sal_Int32*)mso_sptDoubleWaveDefault,
7579 (SvxMSDffTextRectangles*)mso_sptDoubleWaveTextRect, SAL_N_ELEMENTS( mso_sptDoubleWaveTextRect ),
7580 21600, 21600,
7581 MIN_INT32, MIN_INT32,
7582 (SvxMSDffVertPair*)mso_sptDoubleWaveGluePoints, SAL_N_ELEMENTS( mso_sptDoubleWaveGluePoints ),
7583 (SvxMSDffHandle*)mso_sptDoubleWaveHandle, SAL_N_ELEMENTS( mso_sptDoubleWaveHandle )
7586 static const sal_Int32 mso_sptCalloutDefault1[] =
7588 4, -1800, 24500, -1800, 4000
7590 static const sal_Int32 mso_sptCalloutDefault2[] =
7592 4, -8300, 24500, -1800, 4000
7594 static const sal_Int32 mso_sptCalloutDefault3[] =
7596 6, -10000, 24500, -3600, 4000, -1800, 4000
7598 static const sal_Int32 mso_sptCalloutDefault4[] =
7600 8, 23400, 24500, 25200, 21600, 25200, 4000, 23400, 4000
7602 static const SvxMSDffVertPair mso_sptCalloutVert1[] =
7604 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I }
7606 static const SvxMSDffHandle mso_sptCalloutHandle1[] =
7608 { 0,
7609 0x100, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff },
7610 { 0,
7611 0x102, 0x103, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff }
7613 static const sal_uInt16 mso_sptCalloutSegm1a[] =
7615 0x4000, 0x0003, 0x6000, 0x8000,
7616 0x4000, 0x0001, 0x8000
7618 static const sal_uInt16 mso_sptCalloutSegm1b[] =
7620 0x4000, 0xab00, 0x0003, 0x6000, 0x8000, // NO STROKE
7621 0x4000, 0x0001, 0x8000
7623 static const SvxMSDffVertPair mso_sptCallout1Vert[] =
7625 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 2 MSO_I, 0 }, { 2 MSO_I, 21600 }
7627 static const sal_uInt16 mso_sptCallout1Segm1a[] =
7629 0x4000, 0x0003, 0x6000, 0x8000,
7630 0x4000, 0x0001, 0x8000,
7631 0x4000, 0x0001, 0x8000
7633 static const sal_uInt16 mso_sptCallout1Segm1b[] =
7635 0x4000, 0xab00, 0x0003, 0x6000, 0x8000, // NO STROKE
7636 0x4000, 0x0001, 0x8000,
7637 0x4000, 0x0001, 0x8000
7639 static const SvxMSDffVertPair mso_sptCallout2Verta[] =
7641 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 5 MSO_I }
7643 static const SvxMSDffVertPair mso_sptCallout2Vertb[] =
7645 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 0 MSO_I, 1 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 4 MSO_I, 5 MSO_I }, { 4 MSO_I, 0 }, { 4 MSO_I, 21600 }
7647 static const SvxMSDffHandle mso_sptCalloutHandle2[] =
7649 { 0,
7650 0x100, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff },
7651 { 0,
7652 0x102, 0x103, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff },
7653 { 0,
7654 0x104, 0x105, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff }
7656 static const sal_uInt16 mso_sptCallout2Segm1a[] =
7658 0x4000, 0x0003, 0x6000, 0x8000,
7659 0x4000, 0x0001, 0x8000,
7660 0x4000, 0x0001, 0x8000,
7661 0x4000, 0x0001, 0x8000
7663 static const sal_uInt16 mso_sptCallout2Segm1b[] =
7665 0x4000, 0xab00, 0x0003, 0x6000, 0x8000, // NO STROKE
7666 0x4000, 0x0001, 0x8000,
7667 0x4000, 0x0001, 0x8000,
7668 0x4000, 0x0001, 0x8000
7670 static const sal_uInt16 mso_sptCallout2Segm1c[] =
7672 0x4000, 0x0003, 0x6000, 0x8000,
7673 0x4000, 0x0001, 0x8000,
7674 0x4000, 0x0001, 0x8000,
7675 0x4000, 0x0001, 0x8000,
7676 0x4000, 0x0001, 0x8000
7678 static const sal_uInt16 mso_sptCallout2Segm1d[] =
7680 0x4000, 0xab00, 0x0003, 0x6000, 0x8000, // NO STROKE
7681 0x4000, 0x0001, 0x8000,
7682 0x4000, 0x0001, 0x8000,
7683 0x4000, 0x0001, 0x8000,
7684 0x4000, 0x0001, 0x8000
7686 static const SvxMSDffVertPair mso_sptCallout3Verta[] =
7688 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 6 MSO_I, 7 MSO_I }, { 4 MSO_I, 5 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 0 MSO_I, 1 MSO_I }
7690 static const SvxMSDffVertPair mso_sptCallout3Vertb[] =
7692 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }, { 0, 21600 }, { 6 MSO_I, 7 MSO_I }, { 4 MSO_I, 5 MSO_I }, { 2 MSO_I, 3 MSO_I }, { 0 MSO_I, 1 MSO_I }, { 6 MSO_I, 0 }, { 6 MSO_I, 21600 }
7694 static const SvxMSDffHandle mso_sptCalloutHandle3[] =
7696 { 0,
7697 0x100, 0x101, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff },
7698 { 0,
7699 0x102, 0x103, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff },
7700 { 0,
7701 0x104, 0x105, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff },
7702 { 0,
7703 0x106, 0x107, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff }
7705 static const sal_uInt16 mso_sptCallout3Segm1a[] =
7707 0x4000, 0x0003, 0x6000, 0x8000,
7708 0x4000, 0xaa00, 0x0003, 0x8000 // NO_FILL
7710 static const sal_uInt16 mso_sptCallout3Segm1b[] =
7712 0x4000, 0xab00, 0x0003, 0x6000, 0x8000, // NO STROKE
7713 0x4000, 0xaa00, 0x0003, 0x8000 // NO FILL
7715 static const sal_uInt16 mso_sptCallout3Segm1c[] =
7717 0x4000, 0x0003, 0x6000, 0x8000,
7718 0x4000, 0xaa00, 0x0003, 0x8000, // NO FILL
7719 0x4000, 0x0001, 0x8000
7721 static const sal_uInt16 mso_sptCallout3Segm1d[] =
7723 0x4000, 0xab00, 0x0003, 0x6000, 0x8000, // NO STROKE
7724 0x4000, 0xaa00, 0x0003, 0x8000, // NO FILL
7725 0x4000, 0x0001, 0x8000
7728 static const SvxMSDffCalculationData mso_sptCalloutCalc[] =
7730 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
7731 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
7732 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
7733 { 0x2000, { DFF_Prop_adjust4Value, 0, 0 } },
7734 { 0x2000, { DFF_Prop_adjust5Value, 0, 0 } },
7735 { 0x2000, { DFF_Prop_adjust6Value, 0, 0 } },
7736 { 0x2000, { DFF_Prop_adjust7Value, 0, 0 } },
7737 { 0x2000, { DFF_Prop_adjust8Value, 0, 0 } }
7740 static const mso_CustomShape msoCallout90 =
7742 (SvxMSDffVertPair*)mso_sptCalloutVert1, SAL_N_ELEMENTS( mso_sptCalloutVert1 ),
7743 (sal_uInt16*)mso_sptCalloutSegm1b, sizeof( mso_sptCalloutSegm1b ) >> 1,
7744 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7745 (sal_Int32*)mso_sptCalloutDefault1,
7746 NULL, 0,
7747 21600, 21600,
7748 MIN_INT32, MIN_INT32,
7749 NULL, 0,
7750 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7752 static const mso_CustomShape msoCallout1 =
7754 (SvxMSDffVertPair*)mso_sptCalloutVert1, SAL_N_ELEMENTS( mso_sptCalloutVert1 ),
7755 (sal_uInt16*)mso_sptCalloutSegm1b, sizeof( mso_sptCalloutSegm1b ) >> 1,
7756 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7757 (sal_Int32*)mso_sptCalloutDefault2,
7758 NULL, 0,
7759 21600, 21600,
7760 MIN_INT32, MIN_INT32,
7761 NULL, 0,
7762 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7764 static const mso_CustomShape msoCallout2 =
7766 (SvxMSDffVertPair*)mso_sptCallout2Verta, SAL_N_ELEMENTS( mso_sptCallout2Verta ),
7767 (sal_uInt16*)mso_sptCallout2Segm1b, sizeof( mso_sptCallout2Segm1b ) >> 1,
7768 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7769 (sal_Int32*)mso_sptCalloutDefault3,
7770 NULL, 0,
7771 21600, 21600,
7772 MIN_INT32, MIN_INT32,
7773 NULL, 0,
7774 (SvxMSDffHandle*)mso_sptCalloutHandle2, SAL_N_ELEMENTS( mso_sptCalloutHandle2 )
7776 static const mso_CustomShape msoCallout3 =
7778 (SvxMSDffVertPair*)mso_sptCallout3Verta, SAL_N_ELEMENTS( mso_sptCallout3Verta ),
7779 (sal_uInt16*)mso_sptCallout3Segm1b, sizeof( mso_sptCallout3Segm1b ) >> 1,
7780 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7781 (sal_Int32*)mso_sptCalloutDefault4,
7782 NULL, 0,
7783 21600, 21600,
7784 MIN_INT32, MIN_INT32,
7785 NULL, 0,
7786 (SvxMSDffHandle*)mso_sptCalloutHandle3, SAL_N_ELEMENTS( mso_sptCalloutHandle3 )
7788 static const mso_CustomShape msoAccentCallout90 =
7790 (SvxMSDffVertPair*)mso_sptCalloutVert1, SAL_N_ELEMENTS( mso_sptCalloutVert1 ),
7791 (sal_uInt16*)mso_sptCalloutSegm1b, sizeof( mso_sptCalloutSegm1b ) >> 1,
7792 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7793 (sal_Int32*)mso_sptCalloutDefault1,
7794 NULL, 0,
7795 21600, 21600,
7796 MIN_INT32, MIN_INT32,
7797 NULL, 0,
7798 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7800 static const mso_CustomShape msoAccentCallout1 =
7802 (SvxMSDffVertPair*)mso_sptCallout1Vert, SAL_N_ELEMENTS( mso_sptCallout1Vert ),
7803 (sal_uInt16*)mso_sptCallout1Segm1b, sizeof( mso_sptCallout1Segm1b ) >> 1,
7804 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7805 (sal_Int32*)mso_sptCalloutDefault2,
7806 NULL, 0,
7807 21600, 21600,
7808 MIN_INT32, MIN_INT32,
7809 NULL, 0,
7810 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7812 static const mso_CustomShape msoAccentCallout2 =
7814 (SvxMSDffVertPair*)mso_sptCallout2Vertb, SAL_N_ELEMENTS( mso_sptCallout2Vertb ),
7815 (sal_uInt16*)mso_sptCallout2Segm1d, sizeof( mso_sptCallout2Segm1d ) >> 1,
7816 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7817 (sal_Int32*)mso_sptCalloutDefault3,
7818 NULL, 0,
7819 21600, 21600,
7820 MIN_INT32, MIN_INT32,
7821 NULL, 0,
7822 (SvxMSDffHandle*)mso_sptCalloutHandle2, SAL_N_ELEMENTS( mso_sptCalloutHandle2 )
7824 static const mso_CustomShape msoAccentCallout3 =
7826 (SvxMSDffVertPair*)mso_sptCallout3Vertb, SAL_N_ELEMENTS( mso_sptCallout3Vertb ),
7827 (sal_uInt16*)mso_sptCallout3Segm1d, sizeof( mso_sptCallout3Segm1d ) >> 1,
7828 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7829 (sal_Int32*)mso_sptCalloutDefault4,
7830 NULL, 0,
7831 21600, 21600,
7832 MIN_INT32, MIN_INT32,
7833 NULL, 0,
7834 (SvxMSDffHandle*)mso_sptCalloutHandle3, SAL_N_ELEMENTS( mso_sptCalloutHandle3 )
7836 static const mso_CustomShape msoBorderCallout90 =
7838 (SvxMSDffVertPair*)mso_sptCalloutVert1, SAL_N_ELEMENTS( mso_sptCalloutVert1 ),
7839 (sal_uInt16*)mso_sptCalloutSegm1a, sizeof( mso_sptCalloutSegm1a ) >> 1,
7840 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7841 (sal_Int32*)mso_sptCalloutDefault1,
7842 NULL, 0,
7843 21600, 21600,
7844 MIN_INT32, MIN_INT32,
7845 NULL, 0,
7846 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7848 static const mso_CustomShape msoBorderCallout1 =
7850 (SvxMSDffVertPair*)mso_sptCalloutVert1, SAL_N_ELEMENTS( mso_sptCalloutVert1 ),
7851 (sal_uInt16*)mso_sptCalloutSegm1a, sizeof( mso_sptCalloutSegm1a ) >> 1,
7852 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7853 (sal_Int32*)mso_sptCalloutDefault2,
7854 NULL, 0,
7855 21600, 21600,
7856 MIN_INT32, MIN_INT32,
7857 NULL, 0,
7858 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7860 static const mso_CustomShape msoBorderCallout2 =
7862 (SvxMSDffVertPair*)mso_sptCallout2Verta, SAL_N_ELEMENTS( mso_sptCallout2Verta ),
7863 (sal_uInt16*)mso_sptCallout2Segm1a, sizeof( mso_sptCallout2Segm1a ) >> 1,
7864 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7865 (sal_Int32*)mso_sptCalloutDefault3,
7866 NULL, 0,
7867 21600, 21600,
7868 MIN_INT32, MIN_INT32,
7869 NULL, 0,
7870 (SvxMSDffHandle*)mso_sptCalloutHandle2, SAL_N_ELEMENTS( mso_sptCalloutHandle2 )
7872 static const mso_CustomShape msoBorderCallout3 =
7874 (SvxMSDffVertPair*)mso_sptCallout3Verta, SAL_N_ELEMENTS( mso_sptCallout3Verta ),
7875 (sal_uInt16*)mso_sptCallout3Segm1a, sizeof( mso_sptCallout3Segm1a ) >> 1,
7876 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7877 (sal_Int32*)mso_sptCalloutDefault4,
7878 NULL, 0,
7879 21600, 21600,
7880 MIN_INT32, MIN_INT32,
7881 NULL, 0,
7882 (SvxMSDffHandle*)mso_sptCalloutHandle3, SAL_N_ELEMENTS( mso_sptCalloutHandle3 )
7884 static const mso_CustomShape msoAccentBorderCallout90 =
7886 (SvxMSDffVertPair*)mso_sptCalloutVert1, SAL_N_ELEMENTS( mso_sptCalloutVert1 ),
7887 (sal_uInt16*)mso_sptCalloutSegm1a, sizeof( mso_sptCalloutSegm1a ) >> 1,
7888 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7889 (sal_Int32*)mso_sptCalloutDefault1,
7890 NULL, 0,
7891 21600, 21600,
7892 MIN_INT32, MIN_INT32,
7893 NULL, 0,
7894 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7896 static const mso_CustomShape msoAccentBorderCallout1 =
7898 (SvxMSDffVertPair*)mso_sptCallout1Vert, SAL_N_ELEMENTS( mso_sptCallout1Vert ),
7899 (sal_uInt16*)mso_sptCallout1Segm1a, sizeof( mso_sptCallout1Segm1a ) >> 1,
7900 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7901 (sal_Int32*)mso_sptCalloutDefault2,
7902 NULL, 0,
7903 21600, 21600,
7904 MIN_INT32, MIN_INT32,
7905 NULL, 0,
7906 (SvxMSDffHandle*)mso_sptCalloutHandle1, SAL_N_ELEMENTS( mso_sptCalloutHandle1 )
7908 static const mso_CustomShape msoAccentBorderCallout2 =
7910 (SvxMSDffVertPair*)mso_sptCallout2Vertb, SAL_N_ELEMENTS( mso_sptCallout2Vertb ),
7911 (sal_uInt16*)mso_sptCallout2Segm1c, sizeof( mso_sptCallout2Segm1c ) >> 1,
7912 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7913 (sal_Int32*)mso_sptCalloutDefault3,
7914 NULL, 0,
7915 21600, 21600,
7916 MIN_INT32, MIN_INT32,
7917 NULL, 0,
7918 (SvxMSDffHandle*)mso_sptCalloutHandle2, SAL_N_ELEMENTS( mso_sptCalloutHandle2 )
7920 static const mso_CustomShape msoAccentBorderCallout3 =
7922 (SvxMSDffVertPair*)mso_sptCallout3Vertb, SAL_N_ELEMENTS( mso_sptCallout3Vertb ),
7923 (sal_uInt16*)mso_sptCallout3Segm1c, sizeof( mso_sptCallout3Segm1c ) >> 1,
7924 (SvxMSDffCalculationData*)mso_sptCalloutCalc, SAL_N_ELEMENTS( mso_sptCalloutCalc ),
7925 (sal_Int32*)mso_sptCalloutDefault4,
7926 NULL, 0,
7927 21600, 21600,
7928 MIN_INT32, MIN_INT32,
7929 NULL, 0,
7930 (SvxMSDffHandle*)mso_sptCalloutHandle3, SAL_N_ELEMENTS( mso_sptCalloutHandle3 )
7933 static const SvxMSDffVertPair mso_sptStraightConnector1Vert[] =
7935 { 0, 0 }, { 21600, 21600 }
7937 static const sal_uInt16 mso_sptStraightConnector1Segm[] =
7939 0x4000, 0x0001, 0x8000
7941 static const mso_CustomShape msoStraightConnector1 =
7943 (SvxMSDffVertPair*)mso_sptStraightConnector1Vert, SAL_N_ELEMENTS( mso_sptStraightConnector1Vert ),
7944 (sal_uInt16*)mso_sptStraightConnector1Segm, sizeof( mso_sptStraightConnector1Segm ) >> 1,
7945 (SvxMSDffCalculationData*)NULL, 0,
7946 (sal_Int32*)NULL,
7947 NULL, 0,
7948 21600, 21600,
7949 MIN_INT32, MIN_INT32,
7950 NULL, 0,
7951 (SvxMSDffHandle*)NULL, 0
7954 static const SvxMSDffVertPair mso_sptBentConnector2Vert[] =
7956 { 0, 0 }, { 21600, 0 }, { 21600, 21600 }
7958 static const sal_uInt16 mso_sptBentConnector2Segm[] =
7960 0x4000, 0x0002, 0x8000
7962 static const mso_CustomShape msoBentConnector2 =
7964 (SvxMSDffVertPair*)mso_sptBentConnector2Vert, SAL_N_ELEMENTS( mso_sptBentConnector2Vert ),
7965 (sal_uInt16*)mso_sptBentConnector2Segm, sizeof( mso_sptBentConnector2Segm ) >> 1,
7966 (SvxMSDffCalculationData*)NULL, 0,
7967 (sal_Int32*)NULL,
7968 NULL, 0,
7969 21600, 21600,
7970 MIN_INT32, MIN_INT32,
7971 NULL, 0,
7972 (SvxMSDffHandle*)NULL, 0
7975 static const SvxMSDffVertPair mso_sptBentConnector3Vert[] =
7977 { 0, 0 }, { 0 MSO_I, 0 }, { 0 MSO_I, 21600 }, { 21600, 21600 }
7979 static const sal_uInt16 mso_sptBentConnector3Segm[] =
7981 0x4000, 0x0003, 0x8000
7983 static const SvxMSDffCalculationData mso_sptBentConnector3Calc[] =
7985 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } }
7987 static const sal_Int32 mso_sptBentConnector3Default[] =
7989 1, 10800
7991 static const SvxMSDffHandle mso_sptBentConnector3Handle[] =
7993 { MSDFF_HANDLE_FLAGS_RANGE,
7994 0x100, 10800, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff }
7996 static const mso_CustomShape msoBentConnector3 =
7998 (SvxMSDffVertPair*)mso_sptBentConnector3Vert, SAL_N_ELEMENTS( mso_sptBentConnector3Vert ),
7999 (sal_uInt16*)mso_sptBentConnector3Segm, sizeof( mso_sptBentConnector3Segm ) >> 1,
8000 (SvxMSDffCalculationData*)mso_sptBentConnector3Calc, SAL_N_ELEMENTS( mso_sptBentConnector3Calc ),
8001 (sal_Int32*)mso_sptBentConnector3Default,
8002 NULL, 0,
8003 21600, 21600,
8004 MIN_INT32, MIN_INT32,
8005 NULL, 0,
8006 (SvxMSDffHandle*)mso_sptBentConnector3Handle, SAL_N_ELEMENTS( mso_sptBentConnector3Handle )
8009 static const SvxMSDffVertPair mso_sptBentConnector4Vert[] =
8011 { 0, 0 }, { 0 MSO_I, 0 }, { 0 MSO_I, 1 MSO_I }, { 21600, 1 MSO_I }, { 21600, 21600 }
8013 static const sal_uInt16 mso_sptBentConnector4Segm[] =
8015 0x4000, 0x0004, 0x8000
8017 static const SvxMSDffCalculationData mso_sptBentConnector4Calc[] =
8019 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
8020 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
8021 { 0x2000, { 0x400, 21600, 0 } },
8022 { 0x2001, { 0x402, 1, 2 } },
8023 { 0x2001, { 0x401, 1, 2 } }
8025 static const sal_Int32 mso_sptBentConnector4Default[] =
8027 2, 10800, 10800
8029 static const SvxMSDffHandle mso_sptBentConnector4Handle[] =
8031 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
8032 0x100, 4 + 3, 10800, 10800, MIN_INT32, 0x7fffffff, 4 + 3, 4 + 3 },
8033 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
8034 3 + 3, 0x101, 10800, 10800, 3 + 3, 3 + 3, MIN_INT32, 0x7fffffff }
8036 static const mso_CustomShape msoBentConnector4 =
8038 (SvxMSDffVertPair*)mso_sptBentConnector4Vert, SAL_N_ELEMENTS( mso_sptBentConnector4Vert ),
8039 (sal_uInt16*)mso_sptBentConnector4Segm, sizeof( mso_sptBentConnector4Segm ) >> 1,
8040 (SvxMSDffCalculationData*)mso_sptBentConnector4Calc, SAL_N_ELEMENTS( mso_sptBentConnector4Calc ),
8041 (sal_Int32*)mso_sptBentConnector4Default,
8042 NULL, 0,
8043 21600, 21600,
8044 MIN_INT32, MIN_INT32,
8045 NULL, 0,
8046 (SvxMSDffHandle*)mso_sptBentConnector4Handle, SAL_N_ELEMENTS( mso_sptBentConnector4Handle )
8049 static const SvxMSDffVertPair mso_sptBentConnector5Vert[] =
8051 { 0, 0 }, { 0 MSO_I, 0 }, { 0 MSO_I, 4 MSO_I }, { 1 MSO_I, 4 MSO_I }, { 1 MSO_I, 21600 }, { 21600, 21600 }
8053 static const sal_uInt16 mso_sptBentConnector5Segm[] =
8055 0x4000, 0x0005, 0x8000
8057 static const SvxMSDffCalculationData mso_sptBentConnector5Calc[] =
8059 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
8060 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
8061 { 0x6000, { 0x400, 0x401, 0 } },
8062 { 0x2001, { 0x402, 1, 2 } },
8063 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
8064 { 0x2001, { 0x404, 1, 2 } },
8065 { 0x4000, { 21600, 0x404, 0 } },
8066 { 0x2001, { 0x406, 1, 2 } }
8068 static const sal_Int32 mso_sptBentConnector5Default[] =
8070 3, 10800, 10800, 10800
8072 static const SvxMSDffHandle mso_sptBentConnector5Handle[] =
8074 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
8075 0x100, 5 + 3, 10800, 10800, MIN_INT32, 0x7fffffff, 5 + 3, 5 + 3 },
8076 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
8077 3 + 3, 0x101, 10800, 10800, 3 + 3, 3 + 3, MIN_INT32, 0x7fffffff },
8078 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
8079 0x102, 7 + 3, 10800, 10800, MIN_INT32, 0x7fffffff, 7 + 3, 7 + 3 }
8081 static const mso_CustomShape msoBentConnector5 =
8083 (SvxMSDffVertPair*)mso_sptBentConnector5Vert, SAL_N_ELEMENTS( mso_sptBentConnector5Vert ),
8084 (sal_uInt16*)mso_sptBentConnector5Segm, sizeof( mso_sptBentConnector5Segm ) >> 1,
8085 (SvxMSDffCalculationData*)mso_sptBentConnector5Calc, SAL_N_ELEMENTS( mso_sptBentConnector5Calc ),
8086 (sal_Int32*)mso_sptBentConnector5Default,
8087 NULL, 0,
8088 21600, 21600,
8089 MIN_INT32, MIN_INT32,
8090 NULL, 0,
8091 (SvxMSDffHandle*)mso_sptBentConnector5Handle, SAL_N_ELEMENTS( mso_sptBentConnector5Handle )
8094 static const SvxMSDffVertPair mso_sptCurvedConnector2Vert[] =
8096 { 0, 0 }, { 10800, 0 }, { 21600, 10800 }, { 21600, 21600 }
8098 static const sal_uInt16 mso_sptCurvedConnector2Segm[] =
8100 0x4000, 0x2001, 0x8000
8102 static const mso_CustomShape msoCurvedConnector2 =
8104 (SvxMSDffVertPair*)mso_sptCurvedConnector2Vert, SAL_N_ELEMENTS( mso_sptCurvedConnector2Vert ),
8105 (sal_uInt16*)mso_sptCurvedConnector2Segm, sizeof( mso_sptCurvedConnector2Segm ) >> 1,
8106 (SvxMSDffCalculationData*)NULL, 0,
8107 (sal_Int32*)NULL,
8108 NULL, 0,
8109 21600, 21600,
8110 MIN_INT32, MIN_INT32,
8111 NULL, 0,
8112 (SvxMSDffHandle*)NULL, 0
8115 static const SvxMSDffVertPair mso_sptCurvedConnector3Vert[] =
8117 { 0, 0 }, { 1 MSO_I, 0 }, { 0 MSO_I, 5400 }, { 0 MSO_I, 10800 }, { 0 MSO_I, 16200 }, { 3 MSO_I, 21600 }, { 21600, 21600 }
8119 static const sal_uInt16 mso_sptCurvedConnector3Segm[] =
8121 0x4000, 0x2002, 0x8000
8123 static const SvxMSDffCalculationData mso_sptCurvedConnector3Calc[] =
8125 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
8126 { 0x2001, { 0x400, 1, 2 } },
8127 { 0x2000, { 0x400, 21600, 0 } },
8128 { 0x2001, { 0x402, 1, 2 } }
8130 static const sal_Int32 mso_sptCurvedConnector3Default[] =
8132 1, 10800
8134 static const SvxMSDffHandle mso_sptCurvedConnector3Handle[] =
8136 { MSDFF_HANDLE_FLAGS_RANGE,
8137 0x100, 10800, 10800, 10800, MIN_INT32, 0x7fffffff, MIN_INT32, 0x7fffffff }
8139 static const mso_CustomShape msoCurvedConnector3 =
8141 (SvxMSDffVertPair*)mso_sptCurvedConnector3Vert, SAL_N_ELEMENTS( mso_sptCurvedConnector3Vert ),
8142 (sal_uInt16*)mso_sptCurvedConnector3Segm, sizeof( mso_sptCurvedConnector3Segm ) >> 1,
8143 (SvxMSDffCalculationData*)mso_sptCurvedConnector3Calc, SAL_N_ELEMENTS( mso_sptCurvedConnector3Calc ),
8144 (sal_Int32*)mso_sptCurvedConnector3Default,
8145 NULL, 0,
8146 21600, 21600,
8147 MIN_INT32, MIN_INT32,
8148 NULL, 0,
8149 (SvxMSDffHandle*)mso_sptCurvedConnector3Handle, SAL_N_ELEMENTS( mso_sptCurvedConnector3Handle )
8152 static const SvxMSDffVertPair mso_sptCurvedConnector4Vert[] =
8154 { 0, 0 }, { 1 MSO_I, 0 }, { 0 MSO_I, 10 MSO_I }, { 0 MSO_I, 9 MSO_I },
8155 { 0 MSO_I, 12 MSO_I }, { 5 MSO_I, 8 MSO_I }, { 3 MSO_I, 8 MSO_I },
8156 { 7 MSO_I, 8 MSO_I }, { 21600, 14 MSO_I }, { 21600, 21600 }
8159 static const sal_uInt16 mso_sptCurvedConnector4Segm[] =
8161 0x4000, 0x2003, 0x8000
8163 static const SvxMSDffCalculationData mso_sptCurvedConnector4Calc[] =
8165 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
8166 { 0x2001, { 0x400, 1, 2 } },
8167 { 0x4000, { 21600, 0x400, 0 } },
8168 { 0x2001, { 0x402, 1, 2 } },
8169 { 0x6000, { 0x400, 0x403, 0 } },
8170 { 0x2001, { 0x404, 1, 2 } },
8171 { 0x2000, { 0x403, 21600, 0 } },
8172 { 0x2001, { 0x406, 1, 2 } },
8173 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
8174 { 0x2001, { DFF_Prop_adjust2Value, 1, 2 } },
8175 { 0x2001, { DFF_Prop_adjust2Value, 1, 4 } },
8176 { 0x6000, { 0x408, 0x409, 0 } },
8177 { 0x2001, { 0x40b, 1, 2 } },
8178 { 0x2000, { 0x408, 21600, 0 } },
8179 { 0x2001, { 0x40d, 1, 2 } }
8181 static const sal_Int32 mso_sptCurvedConnector4Default[] =
8183 2, 10800, 10800
8185 static const SvxMSDffHandle mso_sptCurvedConnector4Handle[] =
8187 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
8188 0x100, 9 + 3, 10800, 10800, MIN_INT32, 0x7fffffff, 9 + 3, 9 + 3 },
8189 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
8190 3 + 3, 0x101, 10800, 10800, 3 + 3, 3 + 3, MIN_INT32, 0x7fffffff }
8192 static const mso_CustomShape msoCurvedConnector4 =
8194 (SvxMSDffVertPair*)mso_sptCurvedConnector4Vert, SAL_N_ELEMENTS( mso_sptCurvedConnector4Vert ),
8195 (sal_uInt16*)mso_sptCurvedConnector4Segm, sizeof( mso_sptCurvedConnector4Segm ) >> 1,
8196 (SvxMSDffCalculationData*)mso_sptCurvedConnector4Calc, SAL_N_ELEMENTS( mso_sptCurvedConnector4Calc ),
8197 (sal_Int32*)mso_sptCurvedConnector4Default,
8198 NULL, 0,
8199 21600, 21600,
8200 MIN_INT32, MIN_INT32,
8201 NULL, 0,
8202 (SvxMSDffHandle*)mso_sptCurvedConnector4Handle, SAL_N_ELEMENTS( mso_sptCurvedConnector4Handle )
8205 static const SvxMSDffVertPair mso_sptCurvedConnector5Vert[] =
8207 { 0, 0 },
8208 { 21 MSO_I, 0 }, { 0 MSO_I, 12 MSO_I }, { 0 MSO_I, 11 MSO_I },
8209 { 0 MSO_I, 14 MSO_I }, { 6 MSO_I, 4 MSO_I }, { 3 MSO_I, 4 MSO_I },
8210 { 8 MSO_I, 4 MSO_I }, { 1 MSO_I, 18 MSO_I }, { 1 MSO_I, 16 MSO_I },
8211 { 1 MSO_I, 20 MSO_I }, { 10 MSO_I, 21600 }, { 21600, 21600 }
8213 static const sal_uInt16 mso_sptCurvedConnector5Segm[] =
8215 0x4000, 0x2004, 0x8000
8217 static const SvxMSDffCalculationData mso_sptCurvedConnector5Calc[] =
8219 { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
8220 { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
8221 { 0x6000, { 0x400, 0x401, 0 } },
8222 { 0x2001, { 0x402, 1, 2 } },
8223 { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
8224 { 0x6000, { 0x400, 0x403, 0 } },
8225 { 0x2001, { 0x405, 1, 2 } },
8226 { 0x6000, { 0x401, 0x403, 0 } },
8227 { 0x2001, { 0x407, 1, 2 } },
8228 { 0x2000, { 0x401, 21600, 0 } },
8229 { 0x2001, { 0x409, 1, 2 } },
8230 { 0x2001, { 0x404, 1, 2 } },
8231 { 0x2001, { 0x40b, 1, 2 } },
8232 { 0x6000, { 0x404, 0x40b, 0 } },
8233 { 0x2001, { 0x40d, 1, 2 } },
8234 { 0x2000, { 0x404, 21600, 0 } },
8235 { 0x2001, { 0x40f, 1, 2 } },
8236 { 0x6000, { 0x404, 0x410, 0 } },
8237 { 0x2001, { 0x411, 1, 2 } },
8238 { 0x2000, { 0x410, 21600, 0 } },
8239 { 0x2001, { 0x413, 1, 2 } },
8240 { 0x2001, { 0x400, 1, 2 } }
8242 static const sal_Int32 mso_sptCurvedConnector5Default[] =
8244 3, 10800, 10800, 10800
8246 static const SvxMSDffHandle mso_sptCurvedConnector5Handle[] =
8248 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
8249 0x100, 11 + 3, 10800, 10800, MIN_INT32, 0x7fffffff, 11 + 3, 11 + 3 },
8250 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
8251 3 + 3, 0x101, 10800, 10800, 3 + 3, 3 + 3, MIN_INT32, 0x7fffffff },
8252 { MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
8253 0x102, 16 + 3, 10800, 10800, MIN_INT32, 0x7fffffff, 16 + 3, 16 + 3 }
8255 static const mso_CustomShape msoCurvedConnector5 =
8257 (SvxMSDffVertPair*)mso_sptCurvedConnector5Vert, SAL_N_ELEMENTS( mso_sptCurvedConnector5Vert ),
8258 (sal_uInt16*)mso_sptCurvedConnector5Segm, sizeof( mso_sptCurvedConnector5Segm ) >> 1,
8259 (SvxMSDffCalculationData*)mso_sptCurvedConnector5Calc, SAL_N_ELEMENTS( mso_sptCurvedConnector5Calc ),
8260 (sal_Int32*)mso_sptCurvedConnector5Default,
8261 NULL, 0,
8262 21600, 21600,
8263 MIN_INT32, MIN_INT32,
8264 NULL, 0,
8265 (SvxMSDffHandle*)mso_sptCurvedConnector5Handle, SAL_N_ELEMENTS( mso_sptCurvedConnector5Handle )
8268 const mso_CustomShape* GetCustomShapeContent( MSO_SPT eSpType )
8270 const mso_CustomShape* pCustomShape = NULL;
8271 switch( eSpType )
8273 case mso_sptArc : pCustomShape = &msoArc; break;
8274 case mso_sptLine: pCustomShape = &msoStraightConnector1; break;
8275 case mso_sptRectangle : pCustomShape = &msoRectangle; break;
8276 case mso_sptParallelogram : pCustomShape = &msoParallelogram; break;
8277 case mso_sptTrapezoid : pCustomShape = &msoTrapezoid; break;
8278 case mso_sptDiamond : pCustomShape = &msoDiamond; break;
8279 case mso_sptRoundRectangle : pCustomShape = &msoRoundRectangle; break;
8280 case mso_sptOctagon : pCustomShape = &msoOctagon; break;
8281 case mso_sptIsocelesTriangle : pCustomShape = &msoIsocelesTriangle; break;
8282 case mso_sptRightTriangle : pCustomShape = &msoRightTriangle; break;
8283 case mso_sptEllipse : pCustomShape = &msoEllipse; break;
8284 case mso_sptHexagon : pCustomShape = &msoHexagon; break;
8285 case mso_sptPlus : pCustomShape = &msoPlus; break;
8286 case mso_sptPentagon : pCustomShape = &msoPentagon; break;
8287 case mso_sptCan : pCustomShape = &msoCan; break;
8288 case mso_sptCube : pCustomShape = &msoCube; break;
8289 case mso_sptBalloon : pCustomShape = &msoBalloon; break;
8290 case mso_sptActionButtonBlank : pCustomShape = &msoActionButtonBlank; break;
8291 case mso_sptActionButtonHome : pCustomShape = &msoActionButtonHome; break;
8292 case mso_sptActionButtonHelp : pCustomShape = &msoActionButtonHelp; break;
8293 case mso_sptActionButtonInformation : pCustomShape = &msoActionButtonInformation; break;
8294 case mso_sptActionButtonBackPrevious : pCustomShape = &msoActionButtonBackPrevious; break;
8295 case mso_sptActionButtonForwardNext : pCustomShape = &msoActionButtonForwardNext; break;
8296 case mso_sptActionButtonBeginning : pCustomShape = &msoActionButtonBeginning; break;
8297 case mso_sptActionButtonEnd : pCustomShape = &msoActionButtonEnd; break;
8298 case mso_sptActionButtonReturn : pCustomShape = &msoActionButtonReturn; break;
8299 case mso_sptActionButtonDocument : pCustomShape = &msoActionButtonDocument; break;
8300 case mso_sptActionButtonSound : pCustomShape = &msoActionButtonSound; break;
8301 case mso_sptActionButtonMovie : pCustomShape = &msoActionButtonMovie; break;
8302 case mso_sptBevel : pCustomShape = &msoBevel; break;
8303 case mso_sptFoldedCorner : pCustomShape = &msoFoldedCorner; break;
8304 case mso_sptSmileyFace : pCustomShape = &msoSmileyFace; break;
8305 case mso_sptDonut : pCustomShape = &msoDonut; break;
8306 case mso_sptNoSmoking : pCustomShape = &msoNoSmoking; break;
8307 case mso_sptBlockArc : pCustomShape = &msoBlockArc; break;
8308 case mso_sptHeart : pCustomShape = &msoHeart; break;
8309 case mso_sptLightningBolt : pCustomShape = &msoLightningBold; break;
8310 case mso_sptSun : pCustomShape = &msoSun; break;
8311 case mso_sptMoon : pCustomShape = &msoMoon; break;
8312 case mso_sptBracketPair : pCustomShape = &msoBracketPair; break;
8313 case mso_sptBracePair : pCustomShape = &msoBracePair; break;
8314 case mso_sptPlaque : pCustomShape = &msoPlaque; break;
8315 case mso_sptLeftBracket : pCustomShape = &msoLeftBracket; break;
8316 case mso_sptRightBracket : pCustomShape = &msoRightBracket; break;
8317 case mso_sptLeftBrace : pCustomShape = &msoLeftBrace; break;
8318 case mso_sptRightBrace : pCustomShape = &msoRightBrace; break;
8319 case mso_sptArrow : pCustomShape = &msoArrow; break;
8320 case mso_sptUpArrow : pCustomShape = &msoUpArrow; break;
8321 case mso_sptDownArrow : pCustomShape = &msoDownArrow; break;
8322 case mso_sptLeftArrow : pCustomShape = &msoLeftArrow; break;
8323 case mso_sptLeftRightArrow : pCustomShape = &msoLeftRightArrow; break;
8324 case mso_sptUpDownArrow : pCustomShape = &msoUpDownArrow; break;
8325 case mso_sptQuadArrow : pCustomShape = &msoQuadArrow; break;
8326 case mso_sptLeftRightUpArrow : pCustomShape = &msoLeftRightUpArrow; break;
8327 case mso_sptBentArrow : pCustomShape = &msoBentArrow; break;
8328 case mso_sptUturnArrow : pCustomShape = &msoUturnArrow; break;
8329 case mso_sptLeftUpArrow : pCustomShape = &msoLeftUpArrow; break;
8330 case mso_sptBentUpArrow : pCustomShape = &msoBentUpArrow; break;
8331 case mso_sptCurvedRightArrow : pCustomShape = &msoCurvedRightArrow; break;
8332 case mso_sptCurvedLeftArrow : pCustomShape = &msoCurvedLeftArrow; break;
8333 case mso_sptCurvedUpArrow : pCustomShape = &msoCurvedUpArrow; break;
8334 case mso_sptCurvedDownArrow : pCustomShape = &msoCurvedDownArrow; break;
8335 case mso_sptStripedRightArrow : pCustomShape = &msoStripedRightArrow; break;
8336 case mso_sptNotchedRightArrow : pCustomShape = &msoNotchedRightArrow; break;
8337 case mso_sptHomePlate : pCustomShape = &msoHomePlate; break;
8338 case mso_sptChevron : pCustomShape = &msoChevron; break;
8339 case mso_sptRightArrowCallout : pCustomShape = &msoRightArrowCallout; break;
8340 case mso_sptLeftArrowCallout : pCustomShape = &msoLeftArrowCallout; break;
8341 case mso_sptUpArrowCallout : pCustomShape = &msoUpArrowCallout; break;
8342 case mso_sptDownArrowCallout : pCustomShape = &msoDownArrowCallout; break;
8343 case mso_sptLeftRightArrowCallout : pCustomShape = &msoLeftRightArrowCallout; break;
8344 case mso_sptUpDownArrowCallout : pCustomShape = &msoUpDownArrowCallout; break;
8345 case mso_sptQuadArrowCallout : pCustomShape = &msoQuadArrowCallout; break;
8346 case mso_sptCircularArrow : pCustomShape = &msoCircularArrow; break;
8347 case mso_sptIrregularSeal1 : pCustomShape = &msoIrregularSeal1; break;
8348 case mso_sptIrregularSeal2 : pCustomShape = &msoIrregularSeal2; break;
8349 case mso_sptSeal4 : pCustomShape = &msoSeal4; break;
8350 case mso_sptStar : pCustomShape = &msoStar; break;
8351 case mso_sptSeal8 : pCustomShape = &msoSeal8; break;
8352 case mso_sptSeal :
8353 case mso_sptSeal16 : pCustomShape = &msoSeal16; break;
8354 case mso_sptSeal24 : pCustomShape = &msoSeal24; break;
8355 case mso_sptSeal32 : pCustomShape = &msoSeal32; break;
8356 case mso_sptRibbon2 : pCustomShape = &msoRibbon2; break;
8357 case mso_sptRibbon : pCustomShape = &msoRibbon; break;
8358 case mso_sptEllipseRibbon2 : pCustomShape = &msosptEllipseRibbon2; break; // SJ: TODO
8359 case mso_sptEllipseRibbon : pCustomShape = &msosptEllipseRibbon; break; // SJ: TODO
8360 case mso_sptVerticalScroll : pCustomShape = &msoVerticalScroll; break;
8361 case mso_sptHorizontalScroll : pCustomShape = &msoHorizontalScroll; break;
8362 case mso_sptFlowChartProcess : pCustomShape = &msoFlowChartProcess; break;
8363 case mso_sptFlowChartAlternateProcess : pCustomShape = &msoFlowChartAlternateProcess; break;
8364 case mso_sptFlowChartDecision : pCustomShape = &msoFlowChartDecision; break;
8365 case mso_sptFlowChartInputOutput : pCustomShape = &msoFlowChartInputOutput; break;
8366 case mso_sptFlowChartPredefinedProcess :pCustomShape = &msoFlowChartPredefinedProcess; break;
8367 case mso_sptFlowChartInternalStorage : pCustomShape = &msoFlowChartInternalStorage; break;
8368 case mso_sptFlowChartDocument : pCustomShape = &msoFlowChartDocument; break;
8369 case mso_sptFlowChartMultidocument : pCustomShape = &msoFlowChartMultidocument; break;
8370 case mso_sptFlowChartTerminator : pCustomShape = &msoFlowChartTerminator; break;
8371 case mso_sptFlowChartPreparation : pCustomShape = &msoFlowChartPreparation; break;
8372 case mso_sptFlowChartManualInput : pCustomShape = &msoFlowChartManualInput; break;
8373 case mso_sptFlowChartManualOperation : pCustomShape = &msoFlowChartManualOperation; break;
8374 case mso_sptFlowChartConnector : pCustomShape = &msoFlowChartConnector; break;
8375 case mso_sptFlowChartOffpageConnector : pCustomShape = &msoFlowChartOffpageConnector; break;
8376 case mso_sptFlowChartPunchedCard : pCustomShape = &msoFlowChartPunchedCard; break;
8377 case mso_sptFlowChartPunchedTape : pCustomShape = &msoFlowChartPunchedTape; break;
8378 case mso_sptFlowChartSummingJunction : pCustomShape = &msoFlowChartSummingJunction; break;
8379 case mso_sptFlowChartOr : pCustomShape = &msoFlowChartOr; break;
8380 case mso_sptFlowChartCollate : pCustomShape = &msoFlowChartCollate; break;
8381 case mso_sptFlowChartSort : pCustomShape = &msoFlowChartSort; break;
8382 case mso_sptFlowChartExtract : pCustomShape = &msoFlowChartExtract; break;
8383 case mso_sptFlowChartMerge : pCustomShape = &msoFlowChartMerge; break;
8384 case mso_sptFlowChartOnlineStorage : pCustomShape = &msoFlowChartOnlineStorage; break;
8385 case mso_sptFlowChartDelay : pCustomShape = &msoFlowChartDelay; break;
8386 case mso_sptFlowChartMagneticTape : pCustomShape = &msoFlowChartMagneticTape; break;
8387 case mso_sptFlowChartMagneticDisk : pCustomShape = &msoFlowChartMagneticDisk; break;
8388 case mso_sptFlowChartMagneticDrum : pCustomShape = &msoFlowChartMagneticDrum; break;
8389 case mso_sptFlowChartDisplay : pCustomShape = &msoFlowChartDisplay; break;
8390 case mso_sptWedgeRectCallout : pCustomShape = &msoWedgeRectCallout; break;
8391 case mso_sptWedgeRRectCallout : pCustomShape = &msoWedgeRRectCallout; break;
8392 case mso_sptWedgeEllipseCallout : pCustomShape = &msoWedgeEllipseCallout; break;
8393 case mso_sptCloudCallout : pCustomShape = &msoCloudCallout; break;
8394 case mso_sptWave : pCustomShape = &msoWave; break;
8395 case mso_sptDoubleWave : pCustomShape = &msoDoubleWave; break;
8397 // callout
8398 case mso_sptCallout1 : pCustomShape = &msoCallout1; break;
8399 case mso_sptCallout2 : pCustomShape = &msoCallout2; break;
8400 case mso_sptCallout3 : pCustomShape = &msoCallout3; break;
8401 case mso_sptAccentCallout1 : pCustomShape = &msoAccentCallout1; break;
8402 case mso_sptAccentCallout2 : pCustomShape = &msoAccentCallout2; break;
8403 case mso_sptAccentCallout3 : pCustomShape = &msoAccentCallout3; break;
8404 case mso_sptBorderCallout1 : pCustomShape = &msoBorderCallout1; break;
8405 case mso_sptBorderCallout2 : pCustomShape = &msoBorderCallout2; break;
8406 case mso_sptBorderCallout3 : pCustomShape = &msoBorderCallout3; break;
8407 case mso_sptAccentBorderCallout1 : pCustomShape = &msoAccentBorderCallout1; break;
8408 case mso_sptAccentBorderCallout2 : pCustomShape = &msoAccentBorderCallout2; break;
8409 case mso_sptAccentBorderCallout3 : pCustomShape = &msoAccentBorderCallout3; break;
8410 case mso_sptCallout90 : pCustomShape = &msoCallout90; break;
8411 case mso_sptAccentCallout90 : pCustomShape = &msoAccentCallout90; break;
8412 case mso_sptBorderCallout90 : pCustomShape = &msoBorderCallout90; break;
8413 case mso_sptAccentBorderCallout90 : pCustomShape = &msoAccentBorderCallout90; break;
8415 // connectors
8416 case mso_sptStraightConnector1 : pCustomShape = &msoStraightConnector1; break;
8417 case mso_sptBentConnector2 : pCustomShape = &msoBentConnector2; break;
8418 case mso_sptBentConnector3 : pCustomShape = &msoBentConnector3; break;
8419 case mso_sptBentConnector4 : pCustomShape = &msoBentConnector4; break;
8420 case mso_sptBentConnector5 : pCustomShape = &msoBentConnector5; break;
8421 case mso_sptCurvedConnector2 : pCustomShape = &msoCurvedConnector2; break;
8422 case mso_sptCurvedConnector3 : pCustomShape = &msoCurvedConnector3; break;
8423 case mso_sptCurvedConnector4 : pCustomShape = &msoCurvedConnector4; break;
8424 case mso_sptCurvedConnector5 : pCustomShape = &msoCurvedConnector5; break;
8426 // Dont know, simply mapping to TextSimple
8427 case mso_sptTextOnRing :
8428 case mso_sptTextOnCurve :
8429 case mso_sptTextRing :
8430 case mso_sptTextWave :
8431 case mso_sptTextCurve :
8432 case mso_sptTextHexagon :
8433 case mso_sptTextOctagon :
8434 case mso_sptTextBox : pCustomShape = &msoTextSimple; break;
8436 // FontWork
8437 case mso_sptTextSimple :
8438 case mso_sptTextPlainText : pCustomShape = &msoTextPlainText; break;
8439 case mso_sptTextStop : pCustomShape = &msoTextStop; break;
8440 case mso_sptTextTriangle : pCustomShape = &msoTextTriangle; break;
8441 case mso_sptTextTriangleInverted : pCustomShape = &msoTextTriangleInverted; break;
8442 case mso_sptTextChevron : pCustomShape = &msoTextChevron; break;
8443 case mso_sptTextChevronInverted : pCustomShape = &msoTextChevronInverted; break;
8444 case mso_sptTextRingInside : pCustomShape = &msoTextRingInside; break; // SJ: TODO->the orientation of the ellipse needs to be changed
8445 case mso_sptTextRingOutside : pCustomShape = &msoTextRingOutside; break;
8446 case mso_sptTextFadeRight : pCustomShape = &msoTextFadeRight; break;
8447 case mso_sptTextFadeLeft : pCustomShape = &msoTextFadeLeft; break;
8448 case mso_sptTextFadeUp : pCustomShape = &msoTextFadeUp; break;
8449 case mso_sptTextFadeDown : pCustomShape = &msoTextFadeDown; break;
8450 case mso_sptTextSlantUp : pCustomShape = &msoTextSlantUp; break;
8451 case mso_sptTextSlantDown : pCustomShape = &msoTextSlantDown; break;
8452 case mso_sptTextCascadeUp : pCustomShape = &msoTextCascadeUp; break;
8453 case mso_sptTextCascadeDown : pCustomShape = &msoTextCascadeDown; break;
8454 case mso_sptTextArchUpCurve : pCustomShape = &msoTextArchUpCurve; break;
8455 case mso_sptTextArchDownCurve : pCustomShape = &msoTextArchDownCurve; break;
8456 case mso_sptTextCircleCurve : pCustomShape = &msoTextCircleCurve; break;
8457 case mso_sptTextButtonCurve : pCustomShape = &msoTextButtonCurve; break;
8458 case mso_sptTextArchUpPour : pCustomShape = &msoTextArchUpPour; break;
8459 case mso_sptTextArchDownPour : pCustomShape = &msoTextArchDownPour; break;
8460 case mso_sptTextCirclePour : pCustomShape = &msoTextCirclePour; break;
8461 case mso_sptTextButtonPour : pCustomShape = &msoTextButtonPour; break;
8462 case mso_sptTextCurveUp : pCustomShape = &msoTextCurveUp; break;
8463 case mso_sptTextCurveDown : pCustomShape = &msoTextCurveDown; break;
8464 case mso_sptTextCanUp : pCustomShape = &msoTextCanUp; break;
8465 case mso_sptTextCanDown : pCustomShape = &msoTextCanDown; break;
8466 case mso_sptTextInflate : pCustomShape = &msoTextInflate; break;
8467 case mso_sptTextDeflate : pCustomShape = &msoTextDeflate; break;
8468 case mso_sptTextInflateBottom : pCustomShape = &msoTextInflateBottom; break;
8469 case mso_sptTextDeflateBottom : pCustomShape = &msoTextDeflateBottom; break;
8470 case mso_sptTextInflateTop : pCustomShape = &msoTextInflateTop; break;
8471 case mso_sptTextDeflateTop : pCustomShape = &msoTextDeflateTop; break;
8472 case mso_sptTextDeflateInflate : pCustomShape = &msoTextDeflateInflate; break;
8473 case mso_sptTextDeflateInflateDeflate : pCustomShape = &msoTextDeflateInflateDeflate; break;
8474 case mso_sptTextWave1 : pCustomShape = &msoTextWave1; break;
8475 case mso_sptTextWave2 : pCustomShape = &msoTextWave2; break;
8476 case mso_sptTextWave3 : pCustomShape = &msoTextWave3; break;
8477 case mso_sptTextWave4 : pCustomShape = &msoTextWave4; break;
8478 default :
8479 break;
8481 return pCustomShape;
8484 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */