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