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