1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 #ifndef INCLUDED_SVX_UNOSHPRP_HXX
21 #define INCLUDED_SVX_UNOSHPRP_HXX
23 #include <com/sun/star/container/XNameContainer.hpp>
24 #include <com/sun/star/drawing/PointSequence.hpp>
25 #include <com/sun/star/drawing/PointSequenceSequence.hpp>
26 #include <com/sun/star/uno/Sequence.hxx>
27 #include <com/sun/star/drawing/RectanglePoint.hpp>
28 #include <com/sun/star/awt/XBitmap.hpp>
29 #include <com/sun/star/awt/Gradient.hpp>
30 #include <com/sun/star/drawing/Hatch.hpp>
31 #include <com/sun/star/drawing/FillStyle.hpp>
32 #include <com/sun/star/drawing/LineCap.hpp>
33 #include <com/sun/star/drawing/LineDash.hpp>
34 #include <com/sun/star/drawing/LineJoint.hpp>
35 #include <com/sun/star/drawing/LineStyle.hpp>
36 #include <com/sun/star/beans/PropertyAttribute.hpp>
37 #include <com/sun/star/awt/Rectangle.hpp>
38 #include <com/sun/star/drawing/TextAnimationDirection.hpp>
39 #include <com/sun/star/drawing/TextAnimationKind.hpp>
40 #include <com/sun/star/drawing/TextFitToSizeType.hpp>
41 #include <com/sun/star/drawing/TextVerticalAdjust.hpp>
42 #include <com/sun/star/drawing/TextHorizontalAdjust.hpp>
43 #include <com/sun/star/drawing/ConnectorType.hpp>
44 #include <com/sun/star/drawing/XShape.hpp>
45 #include <com/sun/star/drawing/MeasureKind.hpp>
46 #include <com/sun/star/drawing/MeasureTextHorzPos.hpp>
47 #include <com/sun/star/drawing/MeasureTextVertPos.hpp>
48 #include <com/sun/star/drawing/HomogenMatrix3.hpp>
49 #include <com/sun/star/drawing/CircleKind.hpp>
50 #include <com/sun/star/drawing/PolygonKind.hpp>
51 #include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
52 #include <com/sun/star/drawing/ColorMode.hpp>
53 #include <com/sun/star/drawing/HomogenMatrix.hpp>
54 #include <com/sun/star/drawing/Direction3D.hpp>
55 #include <com/sun/star/drawing/ProjectionMode.hpp>
56 #include <com/sun/star/drawing/ShadeMode.hpp>
57 #include <com/sun/star/drawing/Position3D.hpp>
58 #include <com/sun/star/drawing/NormalsKind.hpp>
59 #include <com/sun/star/drawing/TextureKind.hpp>
60 #include <com/sun/star/drawing/TextureMode.hpp>
61 #include <com/sun/star/drawing/TextureProjectionMode.hpp>
62 #include <com/sun/star/drawing/PolyPolygonShape3D.hpp>
63 #include <com/sun/star/text/GraphicCrop.hpp>
64 #include <com/sun/star/drawing/BitmapMode.hpp>
65 #include <com/sun/star/drawing/CameraGeometry.hpp>
66 #include <com/sun/star/text/WritingMode.hpp>
67 #include <com/sun/star/graphic/XGraphic.hpp>
69 #include <svx/unoprov.hxx>
70 #include <editeng/unoprnms.hxx>
71 #include <svx/unomid.hxx>
72 #include <editeng/unotext.hxx>
73 #include <svl/itemprop.hxx>
75 #include <svx/svxids.hrc>
77 #define OWN_ATTR_VALUE_START_TEXT (OWN_ATTR_VALUE_START+0) // the next 10 entries are reserved for text
78 #define OWN_ATTR_VALUE_POLYGONKIND (OWN_ATTR_VALUE_START+10)
79 #define OWN_ATTR_VALUE_POLYPOLYGON (OWN_ATTR_VALUE_START+11)
80 #define OWN_ATTR_VALUE_POLYPOLYGONBEZIER (OWN_ATTR_VALUE_START+12)
81 #define OWN_ATTR_VALUE_FILLBITMAP (OWN_ATTR_VALUE_START+13)
82 #define OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX (OWN_ATTR_VALUE_START+14)
83 #define OWN_ATTR_3D_VALUE_POSITION (OWN_ATTR_VALUE_START+15)
84 #define OWN_ATTR_3D_VALUE_SIZE (OWN_ATTR_VALUE_START+16)
85 #define OWN_ATTR_3D_VALUE_POS_IS_CENTER (OWN_ATTR_VALUE_START+17)
86 #define OWN_ATTR_3D_VALUE_POLYPOLYGON3D (OWN_ATTR_VALUE_START+18)
87 #define OWN_ATTR_3D_VALUE_LINEONLY (OWN_ATTR_VALUE_START+19)
88 #define OWN_ATTR_BITMAP (OWN_ATTR_VALUE_START+20)
89 #define OWN_ATTR_EDGE_START_OBJ (OWN_ATTR_VALUE_START+21)
90 #define OWN_ATTR_EDGE_START_POS (OWN_ATTR_VALUE_START+22)
91 #define OWN_ATTR_EDGE_END_OBJ (OWN_ATTR_VALUE_START+23)
92 #define OWN_ATTR_EDGE_END_POS (OWN_ATTR_VALUE_START+24)
93 #define OWN_ATTR_FRAMERECT (OWN_ATTR_VALUE_START+25)
94 #define OWN_ATTR_VALUE_POLYGON (OWN_ATTR_VALUE_START+26)
95 #define OWN_ATTR_METAFILE (OWN_ATTR_VALUE_START+27)
96 #define OWN_ATTR_ISFONTWORK (OWN_ATTR_VALUE_START+28)
97 #define OWN_ATTR_BOUNDRECT (OWN_ATTR_VALUE_START+29)
98 #define OWN_ATTR_LDNAME (OWN_ATTR_VALUE_START+30)
99 #define OWN_ATTR_LDBITMAP (OWN_ATTR_VALUE_START+31)
100 #define OWN_ATTR_OLESIZE (OWN_ATTR_VALUE_START+32)
101 #define OWN_ATTR_GRAPHIC_URL (OWN_ATTR_VALUE_START+33)
102 #define OWN_ATTR_OLEMODEL (OWN_ATTR_VALUE_START+34)
103 #define OWN_ATTR_MIRRORED (OWN_ATTR_VALUE_START+35)
104 #define OWN_ATTR_CLSID (OWN_ATTR_VALUE_START+36)
105 #define OWN_ATTR_GLUEID_TAIL (OWN_ATTR_VALUE_START+37)
106 #define OWN_ATTR_GLUEID_HEAD (OWN_ATTR_VALUE_START+38)
107 #define OWN_ATTR_ZORDER (OWN_ATTR_VALUE_START+39)
108 #define OWN_ATTR_MEASURE_START_POS (OWN_ATTR_VALUE_START+40)
109 #define OWN_ATTR_MEASURE_END_POS (OWN_ATTR_VALUE_START+41)
110 #define OWN_ATTR_3D_VALUE_CAMERA_GEOMETRY (OWN_ATTR_VALUE_START+42)
111 #define OWN_ATTR_WRITINGMODE (OWN_ATTR_VALUE_START+43)
112 #define OWN_ATTR_GRAFSTREAMURL (OWN_ATTR_VALUE_START+44)
113 #define OWN_ATTR_FILLBMP_MODE (OWN_ATTR_VALUE_START+45)
114 #define OWN_ATTR_TRANSFORMATION (OWN_ATTR_VALUE_START+46)
115 #define OWN_ATTR_BASE_GEOMETRY (OWN_ATTR_VALUE_START+47)
117 /// reuse attr slots for GraphicObject which will never be used together with graphic object
118 #define OWN_ATTR_REPLACEMENT_GRAPHIC (OWN_ATTR_VALUE_START+14)
120 #define OWN_ATTR_APPLET_DOCBASE (OWN_ATTR_VALUE_START+48)
121 #define OWN_ATTR_APPLET_CODEBASE (OWN_ATTR_VALUE_START+49)
122 #define OWN_ATTR_APPLET_NAME (OWN_ATTR_VALUE_START+50)
123 #define OWN_ATTR_APPLET_CODE (OWN_ATTR_VALUE_START+51)
124 #define OWN_ATTR_APPLET_COMMANDS (OWN_ATTR_VALUE_START+52)
125 #define OWN_ATTR_APPLET_ISSCRIPT (OWN_ATTR_VALUE_START+53)
126 #define OWN_ATTR_PLUGIN_MIMETYPE (OWN_ATTR_VALUE_START+54)
127 #define OWN_ATTR_PLUGIN_URL (OWN_ATTR_VALUE_START+55)
128 #define OWN_ATTR_PLUGIN_COMMANDS (OWN_ATTR_VALUE_START+56)
129 #define OWN_ATTR_FRAME_URL (OWN_ATTR_VALUE_START+57)
130 #define OWN_ATTR_FRAME_NAME (OWN_ATTR_VALUE_START+58)
131 #define OWN_ATTR_FRAME_ISAUTOSCROLL (OWN_ATTR_VALUE_START+59)
132 #define OWN_ATTR_FRAME_ISBORDER (OWN_ATTR_VALUE_START+60)
133 #define OWN_ATTR_FRAME_MARGIN_WIDTH (OWN_ATTR_VALUE_START+61)
134 #define OWN_ATTR_FRAME_MARGIN_HEIGHT (OWN_ATTR_VALUE_START+62)
136 // reuse own attr from ole shapes for tables
137 #define OWN_ATTR_TABLETEMPLATE (OWN_ATTR_VALUE_START+48)
138 #define OWN_ATTR_TABLETEMPLATE_FIRSTROW (OWN_ATTR_VALUE_START+49)
139 #define OWN_ATTR_TABLETEMPLATE_LASTROW (OWN_ATTR_VALUE_START+50)
140 #define OWN_ATTR_TABLETEMPLATE_FIRSTCOLUMN (OWN_ATTR_VALUE_START+51)
141 #define OWN_ATTR_TABLETEMPLATE_LASTCOLUMN (OWN_ATTR_VALUE_START+52)
142 #define OWN_ATTR_TABLETEMPLATE_BANDINGROWS (OWN_ATTR_VALUE_START+53)
143 #define OWN_ATTR_TABLETEMPLATE_BANDINGCOULUMNS (OWN_ATTR_VALUE_START+54)
144 #define OWN_ATTR_TABLEBORDER (OWN_ATTR_VALUE_START+55)
146 #define OWN_ATTR_OLE_VISAREA (OWN_ATTR_VALUE_START+63)
147 #define OWN_ATTR_CAPTION_POINT (OWN_ATTR_VALUE_START+64)
148 #define OWN_ATTR_PAGE_NUMBER (OWN_ATTR_VALUE_START+65)
149 #define OWN_ATTR_THUMBNAIL (OWN_ATTR_VALUE_START+66)
150 #define OWN_ATTR_PERSISTNAME (OWN_ATTR_VALUE_START+67)
151 #define OWN_ATTR_OLE_EMBEDDED_OBJECT_NONEWCLIENT (OWN_ATTR_VALUE_START+68)
152 #define OWN_ATTR_MEDIA_URL (OWN_ATTR_VALUE_START+69)
153 #define OWN_ATTR_MEDIA_PREFERREDSIZE (OWN_ATTR_VALUE_START+70)
154 #define OWN_ATTR_MEDIA_LOOP (OWN_ATTR_VALUE_START+71)
155 #define OWN_ATTR_MEDIA_MUTE (OWN_ATTR_VALUE_START+72)
156 #define OWN_ATTR_MEDIA_VOLUMEDB (OWN_ATTR_VALUE_START+73)
157 #define OWN_ATTR_MEDIA_ZOOM (OWN_ATTR_VALUE_START+74)
158 #define OWN_ATTR_UINAME_SINGULAR (OWN_ATTR_VALUE_START+75)
159 #define OWN_ATTR_UINAME_PLURAL (OWN_ATTR_VALUE_START+76)
160 #define OWN_ATTR_VALUE_GRAPHIC (OWN_ATTR_VALUE_START+77)
161 #define OWN_ATTR_INTERNAL_OLE (OWN_ATTR_VALUE_START+78)
162 #define OWN_ATTR_OLE_EMBEDDED_OBJECT (OWN_ATTR_VALUE_START+79)
163 #define OWN_ATTR_OLE_ASPECT (OWN_ATTR_VALUE_START+80)
166 #define OWN_ATTR_MISC_OBJ_TITLE (OWN_ATTR_VALUE_START+81)
167 #define OWN_ATTR_MISC_OBJ_DESCRIPTION (OWN_ATTR_VALUE_START+82)
169 #define OWN_ATTR_GRAPHIC_STREAM (OWN_ATTR_VALUE_START+83)
170 #define OWN_ATTR_3D_VALUE_NORMALSPOLYGON3D (OWN_ATTR_VALUE_START+84)
171 #define OWN_ATTR_3D_VALUE_TEXTUREPOLYGON3D (OWN_ATTR_VALUE_START+85)
173 #define OWN_ATTR_OLE_LINKURL (OWN_ATTR_VALUE_START+86)
175 #define OWN_ATTR_STYLE (OWN_ATTR_VALUE_START+87)
177 #define OWN_ATTR_EDGE_POLYPOLYGONBEZIER (OWN_ATTR_VALUE_START+88)
179 #define OWN_ATTR_MEDIA_STREAM (OWN_ATTR_VALUE_START+89)
180 #define OWN_ATTR_MEDIA_TEMPFILEURL (OWN_ATTR_VALUE_START+90)
181 #define OWN_ATTR_INTEROPGRABBAG (OWN_ATTR_VALUE_START+91)
182 #define OWN_ATTR_MEDIA_MIMETYPE (OWN_ATTR_VALUE_START+92)
183 #define OWN_ATTR_FALLBACK_GRAPHIC (OWN_ATTR_VALUE_START+93)
184 #define OWN_ATTR_IS_SIGNATURELINE (OWN_ATTR_VALUE_START+94)
185 #define OWN_ATTR_SIGNATURELINE_ID (OWN_ATTR_VALUE_START+95)
186 #define OWN_ATTR_SIGNATURELINE_SUGGESTED_SIGNER_NAME (OWN_ATTR_VALUE_START+96)
187 #define OWN_ATTR_SIGNATURELINE_SUGGESTED_SIGNER_TITLE (OWN_ATTR_VALUE_START+97)
188 #define OWN_ATTR_SIGNATURELINE_SUGGESTED_SIGNER_EMAIL (OWN_ATTR_VALUE_START+98)
189 #define OWN_ATTR_SIGNATURELINE_SIGNING_INSTRUCTIONS (OWN_ATTR_VALUE_START+99)
190 #define OWN_ATTR_SIGNATURELINE_SHOW_SIGN_DATE (OWN_ATTR_VALUE_START+100)
191 #define OWN_ATTR_SIGNATURELINE_CAN_ADD_COMMENT (OWN_ATTR_VALUE_START+101)
192 #define OWN_ATTR_SIGNATURELINE_UNSIGNED_IMAGE (OWN_ATTR_VALUE_START+102)
193 #define OWN_ATTR_SIGNATURELINE_IS_SIGNED (OWN_ATTR_VALUE_START+103)
194 // ATTENTION: maximum is OWN_ATTR_VALUE_START+103 svx, see include/svl/solar.hrc
197 #define FONTWORK_PROPERTIES \
198 { OUString("FontWorkStyle"), XATTR_FORMTXTSTYLE, /*ENUM*/::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
199 { OUString("FontWorkAdjust"), XATTR_FORMTXTADJUST, /*ENUM*/::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
200 { OUString("FontWorkDistance"), XATTR_FORMTXTDISTANCE, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
201 { OUString("FontWorkStart"), XATTR_FORMTXTSTART, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
202 { OUString("FontWorkMirror"), XATTR_FORMTXTMIRROR, cppu::UnoType<bool>::get(), 0, 0}, \
203 { OUString("FontWorkOutline"), XATTR_FORMTXTOUTLINE, cppu::UnoType<bool>::get(), 0, 0}, \
204 { OUString("FontWorkShadow"), XATTR_FORMTXTSHADOW, /*ENUM*/::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
205 { OUString("FontWorkShadowColor"), XATTR_FORMTXTSHDWCOLOR, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
206 { OUString("FontWorkShadowOffsetX"), XATTR_FORMTXTSHDWXVAL, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
207 { OUString("FontWorkShadowOffsetY"), XATTR_FORMTXTSHDWYVAL, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
208 { OUString("FontWorkHideForm"), XATTR_FORMTXTHIDEFORM, cppu::UnoType<bool>::get(), 0, 0}, \
209 { OUString("FontWorkShadowTransparence"),XATTR_FORMTXTSHDWTRANSP, ::cppu::UnoType<sal_Int16>::get(), 0, 0},
211 #define SHADOW_PROPERTIES \
212 { OUString(UNO_NAME_SHADOW), SDRATTR_SHADOW, cppu::UnoType<bool>::get(), 0, 0}, \
213 { OUString(UNO_NAME_SHADOWCOLOR), SDRATTR_SHADOWCOLOR, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
214 { OUString(UNO_NAME_SHADOWTRANSPARENCE),SDRATTR_SHADOWTRANSPARENCE, ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
215 { OUString(UNO_NAME_SHADOWXDIST), SDRATTR_SHADOWXDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
216 { OUString(UNO_NAME_SHADOWYDIST), SDRATTR_SHADOWYDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM},
218 #define LINE_PROPERTIES_DEFAULTS\
219 { OUString(UNO_NAME_LINECAP), XATTR_LINECAP, ::cppu::UnoType<css::drawing::LineCap>::get(), 0, 0}, \
220 { OUString(UNO_NAME_LINECOLOR), XATTR_LINECOLOR, ::cppu::UnoType<sal_Int32>::get() , 0, 0}, \
221 { OUString(UNO_NAME_LINEENDCENTER), XATTR_LINEENDCENTER, cppu::UnoType<bool>::get() , 0, 0}, \
222 { OUString(UNO_NAME_LINEENDWIDTH), XATTR_LINEENDWIDTH, ::cppu::UnoType<sal_Int32>::get() , 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
223 { OUString(UNO_NAME_LINEJOINT), XATTR_LINEJOINT, ::cppu::UnoType<css::drawing::LineJoint>::get(), 0, 0}, \
224 { OUString(UNO_NAME_LINESTARTCENTER), XATTR_LINESTARTCENTER, cppu::UnoType<bool>::get() , 0, 0}, \
225 { OUString(UNO_NAME_LINESTARTWIDTH), XATTR_LINESTARTWIDTH, ::cppu::UnoType<sal_Int32>::get() , 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
226 { OUString(UNO_NAME_LINESTYLE), XATTR_LINESTYLE, cppu::UnoType<css::drawing::LineStyle>::get() , 0, 0}, \
227 { OUString(UNO_NAME_LINETRANSPARENCE), XATTR_LINETRANSPARENCE, ::cppu::UnoType<sal_Int16>::get() , 0, 0}, \
228 { OUString(UNO_NAME_LINEWIDTH), XATTR_LINEWIDTH, ::cppu::UnoType<sal_Int32>::get() , 0, 0, PropertyMoreFlags::METRIC_ITEM},
230 #define LINE_PROPERTIES \
231 { OUString(UNO_NAME_LINEDASH), XATTR_LINEDASH, ::cppu::UnoType<css::drawing::LineDash>::get() , 0, MID_LINEDASH}, \
232 { OUString("LineDashName"), XATTR_LINEDASH, ::cppu::UnoType<OUString>::get() , 0, MID_NAME}, \
233 LINE_PROPERTIES_DEFAULTS
235 #define LINE_PROPERTIES_START_END \
236 { OUString(UNO_NAME_LINEEND), XATTR_LINEEND, ::cppu::UnoType<css::drawing::PolyPolygonBezierCoords>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0}, \
237 { OUString("LineEndName"), XATTR_LINEEND, ::cppu::UnoType<OUString>::get(), 0, MID_NAME }, \
238 { OUString(UNO_NAME_LINESTART), XATTR_LINESTART, ::cppu::UnoType<css::drawing::PolyPolygonBezierCoords>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0}, \
239 { OUString("LineStartName"), XATTR_LINESTART, ::cppu::UnoType<OUString>::get(), 0, MID_NAME },
241 #define FILL_PROPERTIES_BMP \
242 { OUString(UNO_NAME_FILLBMP_LOGICAL_SIZE), XATTR_FILLBMP_SIZELOG, cppu::UnoType<bool>::get() , 0, 0}, \
243 { OUString(UNO_NAME_FILLBMP_OFFSET_X), XATTR_FILLBMP_TILEOFFSETX, ::cppu::UnoType<sal_Int32>::get() , 0, 0}, \
244 { OUString(UNO_NAME_FILLBMP_OFFSET_Y), XATTR_FILLBMP_TILEOFFSETY, ::cppu::UnoType<sal_Int32>::get() , 0, 0}, \
245 { OUString(UNO_NAME_FILLBMP_POSITION_OFFSET_X), XATTR_FILLBMP_POSOFFSETX, ::cppu::UnoType<sal_Int32>::get() , 0, 0}, \
246 { OUString(UNO_NAME_FILLBMP_POSITION_OFFSET_Y), XATTR_FILLBMP_POSOFFSETY, ::cppu::UnoType<sal_Int32>::get() , 0, 0}, \
247 { OUString(UNO_NAME_FILLBMP_RECTANGLE_POINT), XATTR_FILLBMP_POS, ::cppu::UnoType<css::drawing::RectanglePoint>::get() , 0, 0}, \
248 { OUString(UNO_NAME_FILLBMP_SIZE_X), XATTR_FILLBMP_SIZEX, ::cppu::UnoType<sal_Int32>::get() , 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
249 { OUString(UNO_NAME_FILLBMP_SIZE_Y), XATTR_FILLBMP_SIZEY, ::cppu::UnoType<sal_Int32>::get() , 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
250 { OUString(UNO_NAME_FILLBMP_STRETCH), XATTR_FILLBMP_STRETCH, cppu::UnoType<bool>::get() , 0, 0}, \
251 { OUString(UNO_NAME_FILLBMP_TILE), XATTR_FILLBMP_TILE, cppu::UnoType<bool>::get() , 0, 0},\
252 { OUString(UNO_NAME_FILLBMP_MODE), OWN_ATTR_FILLBMP_MODE, ::cppu::UnoType<css::drawing::BitmapMode>::get(), 0, 0},
254 #define FILL_PROPERTIES_DEFAULTS \
255 { OUString(UNO_NAME_FILLCOLOR), XATTR_FILLCOLOR, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
257 #define FILL_PROPERTIES \
258 FILL_PROPERTIES_BMP \
259 FILL_PROPERTIES_DEFAULTS \
260 { OUString(UNO_NAME_FILLBACKGROUND), XATTR_FILLBACKGROUND , cppu::UnoType<bool>::get(), 0, 0}, \
261 { OUString(UNO_NAME_FILLBITMAP), XATTR_FILLBITMAP , cppu::UnoType<css::awt::XBitmap>::get() , 0, MID_BITMAP}, \
262 { OUString(UNO_NAME_FILLBITMAPURL), XATTR_FILLBITMAP , cppu::UnoType<OUString>::get(), 0, MID_BITMAP }, \
263 { OUString(UNO_NAME_FILLBITMAPNAME), XATTR_FILLBITMAP , ::cppu::UnoType<OUString>::get(), 0, MID_NAME }, \
264 { OUString(UNO_NAME_FILLGRADIENTSTEPCOUNT), XATTR_GRADIENTSTEPCOUNT , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
265 { OUString(UNO_NAME_FILLGRADIENT), XATTR_FILLGRADIENT , ::cppu::UnoType<css::awt::Gradient>::get(), 0, MID_FILLGRADIENT}, \
266 { OUString(UNO_NAME_FILLGRADIENTNAME), XATTR_FILLGRADIENT , ::cppu::UnoType<OUString>::get(), 0, MID_NAME }, \
267 { OUString(UNO_NAME_FILLHATCH), XATTR_FILLHATCH , ::cppu::UnoType<css::drawing::Hatch>::get(), 0, MID_FILLHATCH}, \
268 { OUString(UNO_NAME_FILLHATCHNAME), XATTR_FILLHATCH , ::cppu::UnoType<OUString>::get(), 0, MID_NAME }, \
269 { OUString(UNO_NAME_FILLSTYLE), XATTR_FILLSTYLE , ::cppu::UnoType<css::drawing::FillStyle>::get() , 0, 0}, \
270 { OUString(UNO_NAME_FILL_TRANSPARENCE), XATTR_FILLTRANSPARENCE, ::cppu::UnoType<sal_Int16>::get() , 0, 0}, \
271 { OUString(UNO_NAME_FILLTRANSPARENCEGRADIENT), XATTR_FILLFLOATTRANSPARENCE, ::cppu::UnoType<css::awt::Gradient>::get(), 0, MID_FILLGRADIENT}, \
272 { OUString(UNO_NAME_FILLTRANSPARENCEGRADIENTNAME), XATTR_FILLFLOATTRANSPARENCE, ::cppu::UnoType<OUString>::get(), 0, MID_NAME }, \
273 { OUString(UNO_NAME_FILLCOLOR_2), XATTR_SECONDARYFILLCOLOR, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
274 { OUString(UNO_NAME_GRAPHIC_GRAPHICCROP), SDRATTR_GRAFCROP , ::cppu::UnoType<css::text::GraphicCrop>::get(), 0, 0 },
276 #define EDGERADIUS_PROPERTIES \
277 { OUString(UNO_NAME_EDGERADIUS), SDRATTR_ECKENRADIUS , ::cppu::UnoType<sal_Int32>::get() , 0, 0, PropertyMoreFlags::METRIC_ITEM},
279 #define TEXT_PROPERTIES_DEFAULTS\
280 { OUString(UNO_NAME_TEXT_WRITINGMODE), SDRATTR_TEXTDIRECTION, ::cppu::UnoType<css::text::WritingMode>::get(), 0, 0},\
281 { OUString(UNO_NAME_TEXT_ANIAMOUNT), SDRATTR_TEXT_ANIAMOUNT, ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
282 { OUString(UNO_NAME_TEXT_ANICOUNT), SDRATTR_TEXT_ANICOUNT, ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
283 { OUString(UNO_NAME_TEXT_ANIDELAY), SDRATTR_TEXT_ANIDELAY, ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
284 { OUString(UNO_NAME_TEXT_ANIDIRECTION), SDRATTR_TEXT_ANIDIRECTION, cppu::UnoType<css::drawing::TextAnimationDirection>::get(), 0, 0}, \
285 { OUString(UNO_NAME_TEXT_ANIKIND), SDRATTR_TEXT_ANIKIND, cppu::UnoType<css::drawing::TextAnimationKind>::get(), 0, 0}, \
286 { OUString(UNO_NAME_TEXT_ANISTARTINSIDE), SDRATTR_TEXT_ANISTARTINSIDE, cppu::UnoType<bool>::get(), 0, 0}, \
287 { OUString(UNO_NAME_TEXT_ANISTOPINSIDE), SDRATTR_TEXT_ANISTOPINSIDE, cppu::UnoType<bool>::get(), 0, 0}, \
288 { OUString(UNO_NAME_TEXT_AUTOGROWHEIGHT), SDRATTR_TEXT_AUTOGROWHEIGHT, cppu::UnoType<bool>::get(), 0, 0}, \
289 { OUString(UNO_NAME_TEXT_AUTOGROWWIDTH), SDRATTR_TEXT_AUTOGROWWIDTH, cppu::UnoType<bool>::get(), 0, 0}, \
290 { OUString(UNO_NAME_TEXT_CONTOURFRAME), SDRATTR_TEXT_CONTOURFRAME, cppu::UnoType<bool>::get(), 0, 0}, \
291 { OUString(UNO_NAME_TEXT_FITTOSIZE), SDRATTR_TEXT_FITTOSIZE, cppu::UnoType<css::drawing::TextFitToSizeType>::get(), 0, 0}, \
292 { OUString(UNO_NAME_TEXT_HORZADJUST), SDRATTR_TEXT_HORZADJUST, cppu::UnoType<css::drawing::TextHorizontalAdjust>::get(), 0, 0}, \
293 { OUString(UNO_NAME_TEXT_LEFTDIST), SDRATTR_TEXT_LEFTDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
294 { OUString(UNO_NAME_TEXT_LOWERDIST), SDRATTR_TEXT_LOWERDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
295 { OUString(UNO_NAME_TEXT_MAXFRAMEHEIGHT), SDRATTR_TEXT_MAXFRAMEHEIGHT, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
296 { OUString(UNO_NAME_TEXT_MAXFRAMEWIDTH), SDRATTR_TEXT_MAXFRAMEWIDTH, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
297 { OUString(UNO_NAME_TEXT_MINFRAMEHEIGHT), SDRATTR_TEXT_MINFRAMEHEIGHT, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
298 { OUString(UNO_NAME_TEXT_MINFRAMEWIDTH), SDRATTR_TEXT_MINFRAMEWIDTH, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
299 { OUString(UNO_NAME_TEXT_RIGHTDIST), SDRATTR_TEXT_RIGHTDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
300 { OUString(UNO_NAME_TEXT_UPPERDIST), SDRATTR_TEXT_UPPERDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
301 { OUString(UNO_NAME_TEXT_FONTINDEPENDENTLINESPACING),SDRATTR_TEXT_USEFIXEDCELLHEIGHT,cppu::UnoType<bool>::get(), 0, 0}, \
302 { OUString(UNO_NAME_TEXT_VERTADJUST), SDRATTR_TEXT_VERTADJUST, cppu::UnoType<css::drawing::TextVerticalAdjust>::get(), 0, 0},\
303 { OUString(UNO_NAME_TEXT_WORDWRAP), SDRATTR_TEXT_WORDWRAP, cppu::UnoType<bool>::get(), 0, 0}, \
304 { OUString(UNO_NAME_TEXT_CHAINNEXTNAME), SDRATTR_TEXT_CHAINNEXTNAME, ::cppu::UnoType<OUString>::get(), 0, 0}, \
305 SVX_UNOEDIT_CHAR_PROPERTIES, \
306 SVX_UNOEDIT_PARA_PROPERTIES,
308 #define TEXT_PROPERTIES \
309 SVX_UNOEDIT_NUMBERING_PROPERTIE, \
310 TEXT_PROPERTIES_DEFAULTS
312 // { "HasLevels", OWN_ATTR_HASLEVELS, cppu::UnoType<bool>::get(), css::beans::PropertyAttribute::READONLY, 0},
314 #define MISC_OBJ_PROPERTIES_NO_SHEAR \
315 { OUString("Transformation"), OWN_ATTR_TRANSFORMATION, cppu::UnoType<css::drawing::HomogenMatrix3>::get(), 0, 0 }, \
316 { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
317 { OUString(UNO_NAME_MISC_OBJ_FRAMERECT), OWN_ATTR_FRAMERECT, cppu::UnoType<css::awt::Rectangle>::get(), 0, 0 }, \
318 { OUString(UNO_NAME_MISC_OBJ_ROTATEANGLE), SDRATTR_ROTATEANGLE, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
319 { OUString(UNO_NAME_BITMAP), OWN_ATTR_BITMAP, cppu::UnoType<css::awt::XBitmap>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
320 { OUString(UNO_NAME_OLE2_METAFILE), OWN_ATTR_METAFILE, cppu::UnoType<css::uno::Sequence<sal_Int8>>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
321 { OUString("IsFontwork"), OWN_ATTR_ISFONTWORK, cppu::UnoType<bool>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
322 { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType<css::awt::Rectangle>::get(), css::beans::PropertyAttribute::READONLY, 0},
324 #define MISC_OBJ_PROPERTIES \
325 { OUString(UNO_NAME_MISC_OBJ_INTEROPGRABBAG), OWN_ATTR_INTEROPGRABBAG, cppu::UnoType<css::uno::Sequence< css::beans::PropertyValue >>::get(), 0, 0}, \
326 MISC_OBJ_PROPERTIES_NO_SHEAR \
327 { OUString(UNO_NAME_MISC_OBJ_SHEARANGLE), SDRATTR_SHEARANGLE, ::cppu::UnoType<sal_Int32>::get(), 0, 0},
330 #define SHAPE_DESCRIPTOR_PROPERTIES \
331 { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
332 { OUString(UNO_NAME_MISC_OBJ_LAYERNAME), SDRATTR_LAYERNAME , ::cppu::UnoType<OUString>::get(), 0, 0}, \
333 { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT , cppu::UnoType<bool>::get(), 0, 0}, \
334 { OUString(UNO_NAME_MISC_OBJ_NAME), SDRATTR_OBJECTNAME , ::cppu::UnoType<OUString>::get(), 0, 0}, \
335 { OUString(UNO_NAME_MISC_OBJ_PRINTABLE), SDRATTR_OBJPRINTABLE , cppu::UnoType<bool>::get(), 0, 0}, \
336 { OUString("Visible"), SDRATTR_OBJVISIBLE , cppu::UnoType<bool>::get(), 0, 0}, \
337 { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT , cppu::UnoType<bool>::get(), 0, 0},\
338 { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType<OUString>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
339 { OUString("UINamePlural"), OWN_ATTR_UINAME_PLURAL , ::cppu::UnoType<OUString>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
341 { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , ::cppu::UnoType<OUString>::get(), 0, 0}, \
342 { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , ::cppu::UnoType<OUString>::get(), 0, 0},
344 #define LINKTARGET_PROPERTIES \
345 { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME , ::cppu::UnoType<OUString>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
346 { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP , cppu::UnoType<css::awt::XBitmap>::get(), css::beans::PropertyAttribute::READONLY, 0},
349 #define CONNECTOR_PROPERTIES \
350 { OUString(UNO_NAME_EDGEKIND), SDRATTR_EDGEKIND, ::cppu::UnoType<css::drawing::ConnectorType>::get(), 0, 0}, \
351 { OUString(UNO_NAME_EDGENODE1HORZDIST), SDRATTR_EDGENODE1HORZDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
352 { OUString(UNO_NAME_EDGENODE1VERTDIST), SDRATTR_EDGENODE1VERTDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
353 { OUString(UNO_NAME_EDGENODE2HORZDIST), SDRATTR_EDGENODE2HORZDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
354 { OUString(UNO_NAME_EDGENODE2VERTDIST), SDRATTR_EDGENODE2VERTDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0},
356 #define SPECIAL_CONNECTOR_PROPERTIES \
357 CONNECTOR_PROPERTIES \
358 { OUString(UNO_NAME_EDGELINE1DELTA), SDRATTR_EDGELINE1DELTA, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
359 { OUString(UNO_NAME_EDGELINE2DELTA), SDRATTR_EDGELINE2DELTA, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
360 { OUString(UNO_NAME_EDGELINE3DELTA), SDRATTR_EDGELINE3DELTA, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
361 { OUString("StartShape"), OWN_ATTR_EDGE_START_OBJ, cppu::UnoType<css::drawing::XShape>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0}, \
362 { OUString("StartGluePointIndex"), OWN_ATTR_GLUEID_HEAD, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
363 { OUString("StartPosition"), OWN_ATTR_EDGE_START_POS, ::cppu::UnoType<css::awt::Point>::get(), 0, 0}, \
364 { OUString("EndShape"), OWN_ATTR_EDGE_END_OBJ, cppu::UnoType<css::drawing::XShape>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0}, \
365 { OUString("EndPosition"), OWN_ATTR_EDGE_END_POS, ::cppu::UnoType<css::awt::Point>::get(), 0, 0},\
366 { OUString("EndGluePointIndex"), OWN_ATTR_GLUEID_TAIL, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
368 { OUString("EdgeStartConnection"), OWN_ATTR_EDGE_START_OBJ, cppu::UnoType<css::drawing::XShape>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0}, \
369 { OUString("EdgeStartPoint"), OWN_ATTR_EDGE_START_POS, ::cppu::UnoType<css::awt::Point>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
370 { OUString("EdgeEndConnection"), OWN_ATTR_EDGE_END_OBJ, cppu::UnoType<css::drawing::XShape>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0}, \
371 { OUString("EdgeEndPoint"), OWN_ATTR_EDGE_END_POS, ::cppu::UnoType<css::awt::Point>::get(), css::beans::PropertyAttribute::READONLY, 0}, \
373 { OUString(UNO_NAME_POLYPOLYGONBEZIER), OWN_ATTR_EDGE_POLYPOLYGONBEZIER, ::cppu::UnoType<css::drawing::PolyPolygonBezierCoords>::get(), 0, 0},
375 #define SPECIAL_DIMENSIONING_PROPERTIES_DEFAULTS \
376 { OUString(UNO_NAME_MEASUREBELOWREFEDGE), SDRATTR_MEASUREBELOWREFEDGE, cppu::UnoType<bool>::get(), 0, 0}, \
377 { OUString(UNO_NAME_MEASUREFORMATSTRING), SDRATTR_MEASUREFORMATSTRING, ::cppu::UnoType<OUString>::get(), 0, 0}, \
378 { OUString(UNO_NAME_MEASUREHELPLINE1LEN), SDRATTR_MEASUREHELPLINE1LEN, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
379 { OUString(UNO_NAME_MEASUREHELPLINE2LEN), SDRATTR_MEASUREHELPLINE2LEN, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
380 { OUString(UNO_NAME_MEASUREHELPLINEDIST), SDRATTR_MEASUREHELPLINEDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
381 { OUString(UNO_NAME_MEASUREHELPLINEOVERHANG), SDRATTR_MEASUREHELPLINEOVERHANG, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
382 { OUString(UNO_NAME_MEASUREKIND), SDRATTR_MEASUREKIND, ::cppu::UnoType<css::drawing::MeasureKind>::get(), 0, 0}, \
383 { OUString(UNO_NAME_MEASURELINEDIST), SDRATTR_MEASURELINEDIST, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
384 { OUString(UNO_NAME_MEASUREOVERHANG), SDRATTR_MEASUREOVERHANG, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
385 { OUString(UNO_NAME_MEASUREUNIT), SDRATTR_MEASUREUNIT, ::cppu::UnoType<sal_Int32>::get(), 0, 0},\
386 { OUString(UNO_NAME_MEASURESHOWUNIT), SDRATTR_MEASURESHOWUNIT, cppu::UnoType<bool>::get(), 0, 0}, \
387 { OUString(UNO_NAME_MEASURETEXTAUTOANGLE), SDRATTR_MEASURETEXTAUTOANGLE, cppu::UnoType<bool>::get(), 0, 0}, \
388 { OUString(UNO_NAME_MEASURETEXTAUTOANGLEVIEW), SDRATTR_MEASURETEXTAUTOANGLEVIEW, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
389 { OUString(UNO_NAME_MEASURETEXTFIXEDANGLE), SDRATTR_MEASURETEXTFIXEDANGLE, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
390 { OUString(UNO_NAME_MEASURETEXTHPOS), SDRATTR_MEASURETEXTHPOS, ::cppu::UnoType<css::drawing::MeasureTextHorzPos>::get(), 0, 0}, \
391 { OUString(UNO_NAME_MEASURETEXTISFIXEDANGLE), SDRATTR_MEASURETEXTISFIXEDANGLE, cppu::UnoType<bool>::get(), 0, 0}, \
392 { OUString(UNO_NAME_MEASURETEXTROTA90), SDRATTR_MEASURETEXTROTA90, cppu::UnoType<bool>::get(), 0, 0}, \
393 { OUString(UNO_NAME_MEASURETEXTUPSIDEDOWN), SDRATTR_MEASURETEXTUPSIDEDOWN, cppu::UnoType<bool>::get(), 0, 0}, \
394 { OUString(UNO_NAME_MEASURETEXTVPOS), SDRATTR_MEASURETEXTVPOS, ::cppu::UnoType<css::drawing::MeasureTextVertPos>::get(), 0, 0}, \
395 { OUString("MeasureDecimalPlaces"), SDRATTR_MEASUREDECIMALPLACES, ::cppu::UnoType<sal_Int16>::get(), 0, 0},
398 #define SPECIAL_DIMENSIONING_PROPERTIES \
399 SPECIAL_DIMENSIONING_PROPERTIES_DEFAULTS \
400 { OUString("StartPosition"), OWN_ATTR_MEASURE_START_POS, ::cppu::UnoType<css::awt::Point>::get(), 0, 0},\
401 { OUString("EndPosition"), OWN_ATTR_MEASURE_END_POS, ::cppu::UnoType<css::awt::Point>::get(), 0, 0},
403 #define SPECIAL_CIRCLE_PROPERTIES \
404 { OUString(UNO_NAME_CIRCENDANGLE), SDRATTR_CIRCENDANGLE, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
405 { OUString(UNO_NAME_CIRCKIND), SDRATTR_CIRCKIND, ::cppu::UnoType<css::drawing::CircleKind>::get(), 0, 0}, \
406 { OUString(UNO_NAME_CIRCSTARTANGLE),SDRATTR_CIRCSTARTANGLE, ::cppu::UnoType<sal_Int32>::get(), 0, 0},
408 #define SPECIAL_POLYGON_PROPERTIES \
409 { OUString(UNO_NAME_POLYGONKIND), OWN_ATTR_VALUE_POLYGONKIND, ::cppu::UnoType<css::drawing::PolygonKind>::get(), css::beans::PropertyAttribute::READONLY, 0},
411 #define SPECIAL_POLYPOLYGON_PROPERTIES \
412 { OUString(UNO_NAME_POLYPOLYGON), OWN_ATTR_VALUE_POLYPOLYGON, ::cppu::UnoType<css::drawing::PointSequenceSequence>::get(), 0, 0}, \
413 { OUString(UNO_NAME_POLYGON), OWN_ATTR_VALUE_POLYGON, ::cppu::UnoType<css::drawing::PointSequence>::get(), 0, 0},
415 #define SPECIAL_POLYPOLYGONBEZIER_PROPERTIES \
416 { OUString(UNO_NAME_POLYPOLYGONBEZIER), OWN_ATTR_VALUE_POLYPOLYGONBEZIER, ::cppu::UnoType<css::drawing::PolyPolygonBezierCoords>::get(), 0, 0},
418 #define SPECIAL_GRAPHOBJ_PROPERTIES_DEFAULTS \
419 { OUString(UNO_NAME_GRAPHIC_LUMINANCE), SDRATTR_GRAFLUMINANCE , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
420 { OUString(UNO_NAME_GRAPHIC_CONTRAST), SDRATTR_GRAFCONTRAST , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
421 { OUString(UNO_NAME_GRAPHIC_RED), SDRATTR_GRAFRED , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
422 { OUString(UNO_NAME_GRAPHIC_GREEN), SDRATTR_GRAFGREEN , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
423 { OUString(UNO_NAME_GRAPHIC_BLUE), SDRATTR_GRAFBLUE , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
424 { OUString(UNO_NAME_GRAPHIC_GAMMA), SDRATTR_GRAFGAMMA , cppu::UnoType<double>::get(), 0, 0}, \
425 { OUString(UNO_NAME_GRAPHIC_TRANSPARENCY), SDRATTR_GRAFTRANSPARENCE , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
426 { OUString(UNO_NAME_GRAPHIC_COLOR_MODE), SDRATTR_GRAFMODE , ::cppu::UnoType<css::drawing::ColorMode>::get(), 0, 0},
428 #define SPECIAL_GRAPHOBJ_PROPERTIES \
429 SPECIAL_GRAPHOBJ_PROPERTIES_DEFAULTS \
430 { OUString(UNO_NAME_GRAPHIC_GRAPHICCROP), SDRATTR_GRAFCROP , ::cppu::UnoType<css::text::GraphicCrop>::get(), 0, 0 }, \
431 { OUString(UNO_NAME_GRAPHOBJ_REPLACEMENT_GRAPHIC), OWN_ATTR_REPLACEMENT_GRAPHIC, cppu::UnoType<css::graphic::XGraphic>::get() , 0, 0}, \
432 { OUString(UNO_NAME_GRAPHOBJ_GRAFSTREAMURL), OWN_ATTR_GRAFSTREAMURL , ::cppu::UnoType<OUString>::get(), css::beans::PropertyAttribute::MAYBEVOID, 0 }, \
433 { OUString(UNO_NAME_GRAPHOBJ_FILLBITMAP), OWN_ATTR_VALUE_FILLBITMAP , cppu::UnoType<css::awt::XBitmap>::get() , 0, 0}, \
434 { OUString(UNO_NAME_GRAPHOBJ_GRAPHIC), OWN_ATTR_VALUE_GRAPHIC , cppu::UnoType<css::graphic::XGraphic>::get() , 0, 0}, \
435 { OUString(UNO_NAME_GRAPHOBJ_GRAPHIC_URL), OWN_ATTR_GRAPHIC_URL , cppu::UnoType<css::uno::Any>::get(), 0, 0 }, \
436 { OUString(UNO_NAME_GRAPHOBJ_IS_SIGNATURELINE), OWN_ATTR_IS_SIGNATURELINE , cppu::UnoType<bool>::get(), 0, 0}, \
437 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_ID), OWN_ATTR_SIGNATURELINE_ID , cppu::UnoType<OUString>::get(), 0, 0}, \
438 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_SUGGESTED_SIGNER_NAME), OWN_ATTR_SIGNATURELINE_SUGGESTED_SIGNER_NAME, cppu::UnoType<OUString>::get(), 0, 0}, \
439 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_SUGGESTED_SIGNER_TITLE), OWN_ATTR_SIGNATURELINE_SUGGESTED_SIGNER_TITLE, cppu::UnoType<OUString>::get(), 0, 0}, \
440 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_SUGGESTED_SIGNER_EMAIL), OWN_ATTR_SIGNATURELINE_SUGGESTED_SIGNER_EMAIL, cppu::UnoType<OUString>::get(), 0, 0}, \
441 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_SIGNING_INSTRUCTIONS), OWN_ATTR_SIGNATURELINE_SIGNING_INSTRUCTIONS, cppu::UnoType<OUString>::get(), 0, 0}, \
442 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_SHOW_SIGN_DATE), OWN_ATTR_SIGNATURELINE_SHOW_SIGN_DATE, cppu::UnoType<bool>::get(), 0, 0}, \
443 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_CAN_ADD_COMMENT), OWN_ATTR_SIGNATURELINE_CAN_ADD_COMMENT, cppu::UnoType<bool>::get(), 0, 0}, \
444 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_UNSIGNED_IMAGE), OWN_ATTR_SIGNATURELINE_UNSIGNED_IMAGE, cppu::UnoType<css::graphic::XGraphic>::get(), 0, 0}, \
445 { OUString(UNO_NAME_GRAPHOBJ_SIGNATURELINE_IS_SIGNED), OWN_ATTR_SIGNATURELINE_IS_SIGNED, cppu::UnoType<bool>::get(), 0, 0},
447 #define SPECIAL_3DSCENEOBJECT_PROPERTIES_DEFAULTS \
448 { OUString(UNO_NAME_3D_SCENE_AMBIENTCOLOR), SDRATTR_3DSCENE_AMBIENTCOLOR , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
449 { OUString(UNO_NAME_3D_SCENE_DISTANCE), SDRATTR_3DSCENE_DISTANCE , ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
450 { OUString(UNO_NAME_3D_SCENE_FOCAL_LENGTH), SDRATTR_3DSCENE_FOCAL_LENGTH , ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
451 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_1), SDRATTR_3DSCENE_LIGHTCOLOR_1 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
452 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_2), SDRATTR_3DSCENE_LIGHTCOLOR_2 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
453 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_3), SDRATTR_3DSCENE_LIGHTCOLOR_3 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
454 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_4), SDRATTR_3DSCENE_LIGHTCOLOR_4 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
455 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_5), SDRATTR_3DSCENE_LIGHTCOLOR_5 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
456 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_6), SDRATTR_3DSCENE_LIGHTCOLOR_6 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
457 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_7), SDRATTR_3DSCENE_LIGHTCOLOR_7 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
458 { OUString(UNO_NAME_3D_SCENE_LIGHTCOLOR_8), SDRATTR_3DSCENE_LIGHTCOLOR_8 , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
459 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_1), SDRATTR_3DSCENE_LIGHTDIRECTION_1 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
460 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_2), SDRATTR_3DSCENE_LIGHTDIRECTION_2 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
461 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_3), SDRATTR_3DSCENE_LIGHTDIRECTION_3 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
462 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_4), SDRATTR_3DSCENE_LIGHTDIRECTION_4 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
463 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_5), SDRATTR_3DSCENE_LIGHTDIRECTION_5 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
464 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_6), SDRATTR_3DSCENE_LIGHTDIRECTION_6 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
465 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_7), SDRATTR_3DSCENE_LIGHTDIRECTION_7 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
466 { OUString(UNO_NAME_3D_SCENE_LIGHTDIRECTION_8), SDRATTR_3DSCENE_LIGHTDIRECTION_8 , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
467 { OUString(UNO_NAME_3D_SCENE_LIGHTON_1), SDRATTR_3DSCENE_LIGHTON_1 , cppu::UnoType<bool>::get(), 0, 0}, \
468 { OUString(UNO_NAME_3D_SCENE_LIGHTON_2), SDRATTR_3DSCENE_LIGHTON_2 , cppu::UnoType<bool>::get(), 0, 0}, \
469 { OUString(UNO_NAME_3D_SCENE_LIGHTON_3), SDRATTR_3DSCENE_LIGHTON_3 , cppu::UnoType<bool>::get(), 0, 0}, \
470 { OUString(UNO_NAME_3D_SCENE_LIGHTON_4), SDRATTR_3DSCENE_LIGHTON_4 , cppu::UnoType<bool>::get(), 0, 0}, \
471 { OUString(UNO_NAME_3D_SCENE_LIGHTON_5), SDRATTR_3DSCENE_LIGHTON_5 , cppu::UnoType<bool>::get(), 0, 0}, \
472 { OUString(UNO_NAME_3D_SCENE_LIGHTON_6), SDRATTR_3DSCENE_LIGHTON_6 , cppu::UnoType<bool>::get(), 0, 0}, \
473 { OUString(UNO_NAME_3D_SCENE_LIGHTON_7), SDRATTR_3DSCENE_LIGHTON_7 , cppu::UnoType<bool>::get(), 0, 0}, \
474 { OUString(UNO_NAME_3D_SCENE_LIGHTON_8), SDRATTR_3DSCENE_LIGHTON_8 , cppu::UnoType<bool>::get(), 0, 0}, \
475 { OUString(UNO_NAME_3D_SCENE_PERSPECTIVE), SDRATTR_3DSCENE_PERSPECTIVE , cppu::UnoType<css::drawing::ProjectionMode>::get(), 0, 0}, \
476 { OUString(UNO_NAME_3D_SCENE_SHADOW_SLANT), SDRATTR_3DSCENE_SHADOW_SLANT , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
477 { OUString(UNO_NAME_3D_SCENE_SHADE_MODE), SDRATTR_3DSCENE_SHADE_MODE , ::cppu::UnoType<css::drawing::ShadeMode>::get(), 0, 0}, \
478 { OUString(UNO_NAME_3D_SCENE_TWO_SIDED_LIGHTING),SDRATTR_3DSCENE_TWO_SIDED_LIGHTING, cppu::UnoType<bool>::get(), 0, 0},
480 #define SPECIAL_3DSCENEOBJECT_PROPERTIES \
481 SPECIAL_3DSCENEOBJECT_PROPERTIES_DEFAULTS \
482 { OUString(UNO_NAME_3D_TRANSFORM_MATRIX), OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX , ::cppu::UnoType<css::drawing::HomogenMatrix>::get(), 0, 0}, \
483 { OUString(UNO_NAME_3D_CAMERA_GEOMETRY), OWN_ATTR_3D_VALUE_CAMERA_GEOMETRY , ::cppu::UnoType<css::drawing::CameraGeometry>::get(), 0, 0},
486 // Added extra Item (Bool) for chart2 to be able to show reduced line geometry (SDRATTR_3DOBJ_REDUCED_LINE_GEOMETRY)
487 #define MISC_3D_OBJ_PROPERTIES \
488 { OUString(UNO_NAME_3D_DOUBLE_SIDED) ,SDRATTR_3DOBJ_DOUBLE_SIDED , cppu::UnoType<bool>::get(), 0, 0}, \
489 { OUString(UNO_NAME_3D_MAT_COLOR) ,SDRATTR_3DOBJ_MAT_COLOR , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
490 { OUString(UNO_NAME_3D_MAT_EMISSION) ,SDRATTR_3DOBJ_MAT_EMISSION , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
491 { OUString(UNO_NAME_3D_MAT_SPECULAR) ,SDRATTR_3DOBJ_MAT_SPECULAR , ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
492 { OUString(UNO_NAME_3D_MAT_SPECULAR_INTENSITY) ,SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
493 { OUString(UNO_NAME_3D_NORMALS_INVERT) ,SDRATTR_3DOBJ_NORMALS_INVERT , cppu::UnoType<bool>::get(), 0, 0}, \
494 { OUString(UNO_NAME_3D_NORMALS_KIND) ,SDRATTR_3DOBJ_NORMALS_KIND , ::cppu::UnoType<css::drawing::NormalsKind>::get(), 0, 0}, \
495 { OUString(UNO_NAME_3D_SHADOW_3D) ,SDRATTR_3DOBJ_SHADOW_3D , cppu::UnoType<bool>::get(), 0, 0}, \
496 { OUString(UNO_NAME_3D_TEXTURE_FILTER) ,SDRATTR_3DOBJ_TEXTURE_FILTER , cppu::UnoType<bool>::get(), 0, 0}, \
497 { OUString(UNO_NAME_3D_TEXTURE_KIND) ,SDRATTR_3DOBJ_TEXTURE_KIND , ::cppu::UnoType<css::drawing::TextureKind>::get(), 0, 0}, \
498 { OUString(UNO_NAME_3D_TEXTURE_MODE) ,SDRATTR_3DOBJ_TEXTURE_MODE , ::cppu::UnoType<css::drawing::TextureMode>::get(), 0, 0}, \
499 { OUString(UNO_NAME_3D_TEXTURE_PROJ_X) ,SDRATTR_3DOBJ_TEXTURE_PROJ_X , ::cppu::UnoType<css::drawing::TextureProjectionMode>::get(), 0, 0}, \
500 { OUString(UNO_NAME_3D_TEXTURE_PROJ_Y) ,SDRATTR_3DOBJ_TEXTURE_PROJ_Y , ::cppu::UnoType<css::drawing::TextureProjectionMode>::get(), 0, 0}, \
501 { OUString(UNO_NAME_3D_REDUCED_LINE_GEOMETRY) ,SDRATTR_3DOBJ_REDUCED_LINE_GEOMETRY , cppu::UnoType<bool>::get(), 0, 0},
503 #define SPECIAL_3DCUBEOBJECT_PROPERTIES \
504 { OUString(UNO_NAME_3D_TRANSFORM_MATRIX) ,OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX , ::cppu::UnoType<css::drawing::HomogenMatrix>::get(), 0, 0}, \
505 { OUString(UNO_NAME_3D_POS) ,OWN_ATTR_3D_VALUE_POSITION , cppu::UnoType<css::drawing::Position3D>::get(), 0, 0}, \
506 { OUString(UNO_NAME_3D_SIZE) ,OWN_ATTR_3D_VALUE_SIZE , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
507 { OUString(UNO_NAME_3D_POS_IS_CENTER) ,OWN_ATTR_3D_VALUE_POS_IS_CENTER , cppu::UnoType<bool>::get(), 0, 0},
509 #define SPECIAL_3DSPHEREOBJECT_PROPERTIES \
510 { OUString(UNO_NAME_3D_TRANSFORM_MATRIX) ,OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX , ::cppu::UnoType<css::drawing::HomogenMatrix>::get(), 0, 0}, \
511 { OUString(UNO_NAME_3D_POS) ,OWN_ATTR_3D_VALUE_POSITION , cppu::UnoType<css::drawing::Position3D>::get(), 0, 0}, \
512 { OUString(UNO_NAME_3D_SIZE) ,OWN_ATTR_3D_VALUE_SIZE , ::cppu::UnoType<css::drawing::Direction3D>::get(), 0, 0}, \
513 { OUString(UNO_NAME_3D_HORZ_SEGS) ,SDRATTR_3DOBJ_HORZ_SEGS, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
514 { OUString(UNO_NAME_3D_VERT_SEGS) ,SDRATTR_3DOBJ_VERT_SEGS, ::cppu::UnoType<sal_Int32>::get(), 0, 0},
516 // #107245# New 3D properties which are possible for lathe and extrude 3d objects
517 #define SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES \
518 { OUString(UNO_NAME_3D_SMOOTH_NORMALS) , SDRATTR_3DOBJ_SMOOTH_NORMALS, cppu::UnoType<bool>::get(), 0, 0}, \
519 { OUString(UNO_NAME_3D_SMOOTH_LIDS) , SDRATTR_3DOBJ_SMOOTH_LIDS, cppu::UnoType<bool>::get(), 0, 0}, \
520 { OUString(UNO_NAME_3D_CHARACTER_MODE) , SDRATTR_3DOBJ_CHARACTER_MODE, cppu::UnoType<bool>::get(), 0, 0}, \
521 { OUString(UNO_NAME_3D_CLOSE_FRONT) , SDRATTR_3DOBJ_CLOSE_FRONT, cppu::UnoType<bool>::get(), 0, 0}, \
522 { OUString(UNO_NAME_3D_CLOSE_BACK) , SDRATTR_3DOBJ_CLOSE_BACK, cppu::UnoType<bool>::get(), 0, 0},
524 #define SPECIAL_3DLATHEOBJECT_PROPERTIES \
525 { OUString(UNO_NAME_3D_TRANSFORM_MATRIX) ,OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX,::cppu::UnoType<css::drawing::HomogenMatrix>::get(), 0, 0}, \
526 { OUString(UNO_NAME_3D_POLYPOLYGON3D) ,OWN_ATTR_3D_VALUE_POLYPOLYGON3D ,::cppu::UnoType<css::drawing::PolyPolygonShape3D>::get(), 0, 0}, \
527 { OUString(UNO_NAME_3D_LATHE_END_ANGLE) ,SDRATTR_3DOBJ_END_ANGLE ,::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
528 { OUString(UNO_NAME_3D_HORZ_SEGS) ,SDRATTR_3DOBJ_HORZ_SEGS ,::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
529 { OUString(UNO_NAME_3D_PERCENT_DIAGONAL) ,SDRATTR_3DOBJ_PERCENT_DIAGONAL ,::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
530 { OUString(UNO_NAME_3D_VERT_SEGS) ,SDRATTR_3DOBJ_VERT_SEGS ,::cppu::UnoType<sal_Int32>::get(), 0, 0},
532 #define SPECIAL_3DEXTRUDEOBJECT_PROPERTIES \
533 { OUString(UNO_NAME_3D_TRANSFORM_MATRIX) ,OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX,::cppu::UnoType<css::drawing::HomogenMatrix>::get(), 0, 0}, \
534 { OUString(UNO_NAME_3D_POLYPOLYGON3D) ,OWN_ATTR_3D_VALUE_POLYPOLYGON3D ,::cppu::UnoType<css::drawing::PolyPolygonShape3D>::get(), 0, 0}, \
535 { OUString(UNO_NAME_3D_EXTRUDE_DEPTH) ,SDRATTR_3DOBJ_DEPTH ,::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
536 { OUString(UNO_NAME_3D_PERCENT_DIAGONAL) ,SDRATTR_3DOBJ_PERCENT_DIAGONAL ,::cppu::UnoType<sal_Int16>::get(), 0, 0},
538 #define SPECIAL_3DPOLYGONOBJECT_PROPERTIES \
539 { OUString(UNO_NAME_3D_TRANSFORM_MATRIX) ,OWN_ATTR_3D_VALUE_TRANSFORM_MATRIX, ::cppu::UnoType<css::drawing::HomogenMatrix>::get(), 0, 0}, \
540 { OUString(UNO_NAME_3D_POLYPOLYGON3D) ,OWN_ATTR_3D_VALUE_POLYPOLYGON3D , ::cppu::UnoType<css::drawing::PolyPolygonShape3D>::get(), 0, 0}, \
541 { OUString(UNO_NAME_3D_NORMALSPOLYGON3D) ,OWN_ATTR_3D_VALUE_NORMALSPOLYGON3D, ::cppu::UnoType<css::drawing::PolyPolygonShape3D>::get(), 0, 0}, \
542 { OUString(UNO_NAME_3D_TEXTUREPOLYGON3D) ,OWN_ATTR_3D_VALUE_TEXTUREPOLYGON3D, ::cppu::UnoType<css::drawing::PolyPolygonShape3D>::get(), 0, 0}, \
543 { OUString(UNO_NAME_3D_LINEONLY) ,OWN_ATTR_3D_VALUE_LINEONLY , cppu::UnoType<bool>::get(), 0, 0},
545 #define SPECIAL_3DBACKSCALE_PROPERTIES \
546 { OUString(UNO_NAME_3D_BACKSCALE) ,SDRATTR_3DOBJ_BACKSCALE , ::cppu::UnoType<sal_Int16>::get(), 0, 0}, \
550 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */