xref: /aoo41x/main/svx/source/unodraw/unoprov.cxx (revision cdf0e10c)
1*cdf0e10cSrcweir /*************************************************************************
2*cdf0e10cSrcweir  *
3*cdf0e10cSrcweir  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir  *
5*cdf0e10cSrcweir  * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir  *
7*cdf0e10cSrcweir  * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir  *
9*cdf0e10cSrcweir  * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir  *
11*cdf0e10cSrcweir  * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir  * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir  * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir  *
15*cdf0e10cSrcweir  * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir  * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir  * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir  *
21*cdf0e10cSrcweir  * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir  * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir  * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir  * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir  *
26*cdf0e10cSrcweir  ************************************************************************/
27*cdf0e10cSrcweir 
28*cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
29*cdf0e10cSrcweir #include "precompiled_svx.hxx"
30*cdf0e10cSrcweir 
31*cdf0e10cSrcweir #define _SVX_USE_UNOGLOBALS_
32*cdf0e10cSrcweir 
33*cdf0e10cSrcweir #include <com/sun/star/table/XTable.hpp>
34*cdf0e10cSrcweir #include <com/sun/star/container/XIndexAccess.hpp>
35*cdf0e10cSrcweir #include <com/sun/star/frame/XModel.hpp>
36*cdf0e10cSrcweir #include <com/sun/star/embed/XEmbeddedObject.hpp>
37*cdf0e10cSrcweir #include <com/sun/star/util/MeasureUnit.hpp>
38*cdf0e10cSrcweir #include <com/sun/star/drawing/TextVerticalAdjust.hpp>
39*cdf0e10cSrcweir #include <com/sun/star/media/ZoomLevel.hpp>
40*cdf0e10cSrcweir #include <com/sun/star/io/XInputStream.hpp>
41*cdf0e10cSrcweir #include <com/sun/star/beans/PropertyAttribute.hpp>
42*cdf0e10cSrcweir #include <tools/fldunit.hxx>
43*cdf0e10cSrcweir #include <tools/shl.hxx>
44*cdf0e10cSrcweir #include <vos/mutex.hxx>
45*cdf0e10cSrcweir #include <vcl/svapp.hxx>
46*cdf0e10cSrcweir #include <comphelper/propertysetinfo.hxx>
47*cdf0e10cSrcweir #include <svx/dialmgr.hxx>
48*cdf0e10cSrcweir #include "svx/unoapi.hxx"
49*cdf0e10cSrcweir #include <editeng/unotext.hxx>
50*cdf0e10cSrcweir #include <svx/unoshprp.hxx>
51*cdf0e10cSrcweir #include <editeng/editeng.hxx>
52*cdf0e10cSrcweir #include "svx/globl3d.hxx"
53*cdf0e10cSrcweir #include <svx/dialogs.hrc>
54*cdf0e10cSrcweir #include <svx/svdpool.hxx>
55*cdf0e10cSrcweir #include <svx/svdobj.hxx>
56*cdf0e10cSrcweir 
57*cdf0e10cSrcweir using namespace ::rtl;
58*cdf0e10cSrcweir using namespace ::com::sun::star;
59*cdf0e10cSrcweir using namespace ::com::sun::star::beans::PropertyAttribute;
60*cdf0e10cSrcweir using ::com::sun::star::drawing::TextVerticalAdjust;
61*cdf0e10cSrcweir 
62*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxShapePropertyMap()
63*cdf0e10cSrcweir {
64*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aShapePropertyMap_Impl[] =
65*cdf0e10cSrcweir 	{
66*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
67*cdf0e10cSrcweir 		FILL_PROPERTIES
68*cdf0e10cSrcweir 		LINE_PROPERTIES
69*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
70*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
71*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
72*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
73*cdf0e10cSrcweir 		SHADOW_PROPERTIES
74*cdf0e10cSrcweir 		TEXT_PROPERTIES
75*cdf0e10cSrcweir 		// #FontWork#
76*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
77*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
78*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
79*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
80*cdf0e10cSrcweir 		{0,0,0,0,0,0}
81*cdf0e10cSrcweir 
82*cdf0e10cSrcweir 	};
83*cdf0e10cSrcweir 
84*cdf0e10cSrcweir 	return aShapePropertyMap_Impl;
85*cdf0e10cSrcweir }
86*cdf0e10cSrcweir 
87*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxTextShapePropertyMap()
88*cdf0e10cSrcweir {
89*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aTextShapePropertyMap_Impl[] =
90*cdf0e10cSrcweir 	{
91*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
92*cdf0e10cSrcweir 		FILL_PROPERTIES
93*cdf0e10cSrcweir 		LINE_PROPERTIES
94*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
95*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
96*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES_NO_SHEAR
97*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
98*cdf0e10cSrcweir 		SHADOW_PROPERTIES
99*cdf0e10cSrcweir 		TEXT_PROPERTIES
100*cdf0e10cSrcweir 		// #FontWork#
101*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
102*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
103*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
104*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
105*cdf0e10cSrcweir 		{0,0,0,0,0,0}
106*cdf0e10cSrcweir 
107*cdf0e10cSrcweir 	};
108*cdf0e10cSrcweir 
109*cdf0e10cSrcweir 	return aTextShapePropertyMap_Impl;
110*cdf0e10cSrcweir }
111*cdf0e10cSrcweir 
112*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxConnectorPropertyMap()
113*cdf0e10cSrcweir {
114*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aConnectorPropertyMap_Impl[] =
115*cdf0e10cSrcweir 	{
116*cdf0e10cSrcweir 		SPECIAL_CONNECTOR_PROPERTIES
117*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
118*cdf0e10cSrcweir 		FILL_PROPERTIES
119*cdf0e10cSrcweir 		LINE_PROPERTIES
120*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
121*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
122*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
123*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
124*cdf0e10cSrcweir 		SHADOW_PROPERTIES
125*cdf0e10cSrcweir 		TEXT_PROPERTIES
126*cdf0e10cSrcweir 		// #FontWork#
127*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
128*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
129*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
130*cdf0e10cSrcweir 		{0,0,0,0,0,0}
131*cdf0e10cSrcweir 
132*cdf0e10cSrcweir 	};
133*cdf0e10cSrcweir 
134*cdf0e10cSrcweir 	return aConnectorPropertyMap_Impl;
135*cdf0e10cSrcweir }
136*cdf0e10cSrcweir 
137*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxDimensioningPropertyMap()
138*cdf0e10cSrcweir {
139*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aDimensioningPropertyMap_Impl[] =
140*cdf0e10cSrcweir 	{
141*cdf0e10cSrcweir 		SPECIAL_DIMENSIONING_PROPERTIES
142*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
143*cdf0e10cSrcweir 		FILL_PROPERTIES
144*cdf0e10cSrcweir 		LINE_PROPERTIES
145*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
146*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
147*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
148*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
149*cdf0e10cSrcweir 		SHADOW_PROPERTIES
150*cdf0e10cSrcweir 		TEXT_PROPERTIES
151*cdf0e10cSrcweir 		// #FontWork#
152*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
153*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
154*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
155*cdf0e10cSrcweir 		{0,0,0,0,0,0}
156*cdf0e10cSrcweir 
157*cdf0e10cSrcweir 	};
158*cdf0e10cSrcweir 
159*cdf0e10cSrcweir 	return aDimensioningPropertyMap_Impl;
160*cdf0e10cSrcweir }
161*cdf0e10cSrcweir 
162*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxCirclePropertyMap()
163*cdf0e10cSrcweir {
164*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aCirclePropertyMap_Impl[] =
165*cdf0e10cSrcweir 	{
166*cdf0e10cSrcweir 		SPECIAL_CIRCLE_PROPERTIES
167*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
168*cdf0e10cSrcweir 		FILL_PROPERTIES
169*cdf0e10cSrcweir 		LINE_PROPERTIES
170*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
171*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
172*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
173*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
174*cdf0e10cSrcweir 		SHADOW_PROPERTIES
175*cdf0e10cSrcweir 		TEXT_PROPERTIES
176*cdf0e10cSrcweir 		// #FontWork#
177*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
178*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
179*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
180*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
181*cdf0e10cSrcweir 		{0,0,0,0,0,0}
182*cdf0e10cSrcweir 
183*cdf0e10cSrcweir 	};
184*cdf0e10cSrcweir 
185*cdf0e10cSrcweir 	return aCirclePropertyMap_Impl;
186*cdf0e10cSrcweir }
187*cdf0e10cSrcweir 
188*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxPolyPolygonPropertyMap()
189*cdf0e10cSrcweir {
190*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aPolyPolygonPropertyMap_Impl[] =
191*cdf0e10cSrcweir 	{
192*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Geometry"),	OWN_ATTR_BASE_GEOMETRY,	SEQTYPE(::getCppuType((const ::com::sun::star::drawing::PointSequenceSequence*)0)),	0, 0 },
193*cdf0e10cSrcweir 		SPECIAL_POLYGON_PROPERTIES
194*cdf0e10cSrcweir 		SPECIAL_POLYPOLYGON_PROPERTIES
195*cdf0e10cSrcweir 		FILL_PROPERTIES
196*cdf0e10cSrcweir 		LINE_PROPERTIES
197*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
198*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
199*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
200*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
201*cdf0e10cSrcweir 		SHADOW_PROPERTIES
202*cdf0e10cSrcweir 		TEXT_PROPERTIES
203*cdf0e10cSrcweir 		// #FontWork#
204*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
205*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
206*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
207*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
208*cdf0e10cSrcweir 		{0,0,0,0,0,0}
209*cdf0e10cSrcweir 
210*cdf0e10cSrcweir 	};
211*cdf0e10cSrcweir 
212*cdf0e10cSrcweir 	return aPolyPolygonPropertyMap_Impl;
213*cdf0e10cSrcweir }
214*cdf0e10cSrcweir 
215*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxPolyPolygonBezierPropertyMap()
216*cdf0e10cSrcweir {
217*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aPolyPolygonBezierPropertyMap_Impl[] =
218*cdf0e10cSrcweir 	{
219*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Geometry"),	OWN_ATTR_BASE_GEOMETRY,	&::getCppuType((const ::com::sun::star::drawing::PolyPolygonBezierCoords*)0), 0, 0 },
220*cdf0e10cSrcweir 		SPECIAL_POLYGON_PROPERTIES
221*cdf0e10cSrcweir 		SPECIAL_POLYPOLYGONBEZIER_PROPERTIES
222*cdf0e10cSrcweir 		FILL_PROPERTIES
223*cdf0e10cSrcweir 		LINE_PROPERTIES
224*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
225*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
226*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
227*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
228*cdf0e10cSrcweir 		SHADOW_PROPERTIES
229*cdf0e10cSrcweir 		TEXT_PROPERTIES
230*cdf0e10cSrcweir 		// #FontWork#
231*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
232*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
233*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
234*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
235*cdf0e10cSrcweir 		{0,0,0,0,0,0}
236*cdf0e10cSrcweir 
237*cdf0e10cSrcweir 	};
238*cdf0e10cSrcweir 
239*cdf0e10cSrcweir 	return aPolyPolygonBezierPropertyMap_Impl;
240*cdf0e10cSrcweir }
241*cdf0e10cSrcweir 
242*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxGraphicObjectPropertyMap()
243*cdf0e10cSrcweir {
244*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aGraphicObjectPropertyMap_Impl[] =
245*cdf0e10cSrcweir 	{
246*cdf0e10cSrcweir 		SPECIAL_GRAPHOBJ_PROPERTIES
247*cdf0e10cSrcweir 
248*cdf0e10cSrcweir 		// #i25616#
249*cdf0e10cSrcweir 		FILL_PROPERTIES
250*cdf0e10cSrcweir 
251*cdf0e10cSrcweir 		LINE_PROPERTIES
252*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
253*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
254*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES_NO_SHEAR
255*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
256*cdf0e10cSrcweir 		SHADOW_PROPERTIES
257*cdf0e10cSrcweir 		TEXT_PROPERTIES
258*cdf0e10cSrcweir 		// #FontWork#
259*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
260*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("IsMirrored"),				OWN_ATTR_MIRRORED			, &::getCppuBooleanType(), 0, 0},
261*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
262*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
263*cdf0e10cSrcweir 		{MAP_CHAR_LEN("GraphicStream"),	OWN_ATTR_GRAPHIC_STREAM, &::com::sun::star::io::XInputStream::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
264*cdf0e10cSrcweir 		{0,0,0,0,0,0}
265*cdf0e10cSrcweir 
266*cdf0e10cSrcweir 	};
267*cdf0e10cSrcweir 
268*cdf0e10cSrcweir 	return aGraphicObjectPropertyMap_Impl;
269*cdf0e10cSrcweir }
270*cdf0e10cSrcweir 
271*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvx3DSceneObjectPropertyMap()
272*cdf0e10cSrcweir {
273*cdf0e10cSrcweir     static SfxItemPropertyMapEntry a3DSceneObjectPropertyMap_Impl[] =
274*cdf0e10cSrcweir 	{
275*cdf0e10cSrcweir 		SPECIAL_3DSCENEOBJECT_PROPERTIES
276*cdf0e10cSrcweir 		FILL_PROPERTIES
277*cdf0e10cSrcweir 		LINE_PROPERTIES
278*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
279*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
280*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
281*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
282*cdf0e10cSrcweir 		SHADOW_PROPERTIES
283*cdf0e10cSrcweir 		{0,0,0,0,0,0}
284*cdf0e10cSrcweir 
285*cdf0e10cSrcweir 	};
286*cdf0e10cSrcweir 
287*cdf0e10cSrcweir 	return a3DSceneObjectPropertyMap_Impl;
288*cdf0e10cSrcweir }
289*cdf0e10cSrcweir 
290*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvx3DCubeObjectPropertyMap()
291*cdf0e10cSrcweir {
292*cdf0e10cSrcweir     static SfxItemPropertyMapEntry a3DCubeObjectPropertyMap_Impl[] =
293*cdf0e10cSrcweir 	{
294*cdf0e10cSrcweir 		SPECIAL_3DCUBEOBJECT_PROPERTIES
295*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
296*cdf0e10cSrcweir 		FILL_PROPERTIES
297*cdf0e10cSrcweir 		LINE_PROPERTIES
298*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
299*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
300*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
301*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
302*cdf0e10cSrcweir 		SHADOW_PROPERTIES
303*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
304*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
305*cdf0e10cSrcweir 		{0,0,0,0,0,0}
306*cdf0e10cSrcweir 
307*cdf0e10cSrcweir 	};
308*cdf0e10cSrcweir 
309*cdf0e10cSrcweir 	return a3DCubeObjectPropertyMap_Impl;
310*cdf0e10cSrcweir }
311*cdf0e10cSrcweir 
312*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvx3DSphereObjectPropertyMap()
313*cdf0e10cSrcweir {
314*cdf0e10cSrcweir     static SfxItemPropertyMapEntry a3DSphereObjectPropertyMap_Impl[] =
315*cdf0e10cSrcweir 	{
316*cdf0e10cSrcweir 		SPECIAL_3DSPHEREOBJECT_PROPERTIES
317*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
318*cdf0e10cSrcweir 		FILL_PROPERTIES
319*cdf0e10cSrcweir 		LINE_PROPERTIES
320*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
321*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
322*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
323*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
324*cdf0e10cSrcweir 		SHADOW_PROPERTIES
325*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
326*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
327*cdf0e10cSrcweir 		{0,0,0,0,0,0}
328*cdf0e10cSrcweir 
329*cdf0e10cSrcweir 	};
330*cdf0e10cSrcweir 	return a3DSphereObjectPropertyMap_Impl;
331*cdf0e10cSrcweir }
332*cdf0e10cSrcweir 
333*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvx3DLatheObjectPropertyMap()
334*cdf0e10cSrcweir {
335*cdf0e10cSrcweir     static SfxItemPropertyMapEntry a3DLatheObjectPropertyMap_Impl[] =
336*cdf0e10cSrcweir 	{
337*cdf0e10cSrcweir 		SPECIAL_3DLATHEOBJECT_PROPERTIES
338*cdf0e10cSrcweir 
339*cdf0e10cSrcweir 		// #107245# New 3D properties which are possible for lathe and extrude 3d objects
340*cdf0e10cSrcweir 		SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES
341*cdf0e10cSrcweir 
342*cdf0e10cSrcweir 		SPECIAL_3DBACKSCALE_PROPERTIES
343*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
344*cdf0e10cSrcweir 		FILL_PROPERTIES
345*cdf0e10cSrcweir 		LINE_PROPERTIES
346*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
347*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
348*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
349*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
350*cdf0e10cSrcweir 		SHADOW_PROPERTIES
351*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
352*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
353*cdf0e10cSrcweir 		{0,0,0,0,0,0}
354*cdf0e10cSrcweir 
355*cdf0e10cSrcweir 	};
356*cdf0e10cSrcweir 
357*cdf0e10cSrcweir 	return a3DLatheObjectPropertyMap_Impl;
358*cdf0e10cSrcweir }
359*cdf0e10cSrcweir 
360*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvx3DExtrudeObjectPropertyMap()
361*cdf0e10cSrcweir {
362*cdf0e10cSrcweir     static SfxItemPropertyMapEntry a3DExtrudeObjectPropertyMap_Impl[] =
363*cdf0e10cSrcweir 	{
364*cdf0e10cSrcweir 		SPECIAL_3DEXTRUDEOBJECT_PROPERTIES
365*cdf0e10cSrcweir 
366*cdf0e10cSrcweir 		// #107245# New 3D properties which are possible for lathe and extrude 3d objects
367*cdf0e10cSrcweir 		SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES
368*cdf0e10cSrcweir 
369*cdf0e10cSrcweir 		SPECIAL_3DBACKSCALE_PROPERTIES
370*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
371*cdf0e10cSrcweir 		FILL_PROPERTIES
372*cdf0e10cSrcweir 		LINE_PROPERTIES
373*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
374*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
375*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
376*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
377*cdf0e10cSrcweir 		SHADOW_PROPERTIES
378*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
379*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
380*cdf0e10cSrcweir 		{0,0,0,0,0,0}
381*cdf0e10cSrcweir 
382*cdf0e10cSrcweir 	};
383*cdf0e10cSrcweir 
384*cdf0e10cSrcweir 	return a3DExtrudeObjectPropertyMap_Impl;
385*cdf0e10cSrcweir }
386*cdf0e10cSrcweir 
387*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvx3DPolygonObjectPropertyMap()
388*cdf0e10cSrcweir {
389*cdf0e10cSrcweir     static SfxItemPropertyMapEntry a3DPolygonObjectPropertyMap_Impl[] =
390*cdf0e10cSrcweir 	{
391*cdf0e10cSrcweir 		SPECIAL_3DPOLYGONOBJECT_PROPERTIES
392*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
393*cdf0e10cSrcweir 		FILL_PROPERTIES
394*cdf0e10cSrcweir 		LINE_PROPERTIES
395*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
396*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
397*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
398*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
399*cdf0e10cSrcweir 		SHADOW_PROPERTIES
400*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
401*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
402*cdf0e10cSrcweir 		{0,0,0,0,0,0}
403*cdf0e10cSrcweir 
404*cdf0e10cSrcweir 	};
405*cdf0e10cSrcweir 
406*cdf0e10cSrcweir 	return a3DPolygonObjectPropertyMap_Impl;
407*cdf0e10cSrcweir }
408*cdf0e10cSrcweir 
409*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxAllPropertyMap()
410*cdf0e10cSrcweir {
411*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aAllPropertyMap_Impl[] =
412*cdf0e10cSrcweir 	{
413*cdf0e10cSrcweir 		SHADOW_PROPERTIES
414*cdf0e10cSrcweir 		LINE_PROPERTIES
415*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
416*cdf0e10cSrcweir 		FILL_PROPERTIES
417*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
418*cdf0e10cSrcweir 		TEXT_PROPERTIES
419*cdf0e10cSrcweir 		// #FontWork#
420*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
421*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
422*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
423*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
424*cdf0e10cSrcweir 		SPECIAL_CONNECTOR_PROPERTIES
425*cdf0e10cSrcweir 		SPECIAL_DIMENSIONING_PROPERTIES
426*cdf0e10cSrcweir 		SPECIAL_CIRCLE_PROPERTIES
427*cdf0e10cSrcweir 		SPECIAL_POLYGON_PROPERTIES
428*cdf0e10cSrcweir 		SPECIAL_POLYPOLYGON_PROPERTIES
429*cdf0e10cSrcweir 		SPECIAL_POLYPOLYGONBEZIER_PROPERTIES
430*cdf0e10cSrcweir 		SPECIAL_GRAPHOBJ_PROPERTIES
431*cdf0e10cSrcweir 		SPECIAL_3DSCENEOBJECT_PROPERTIES
432*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
433*cdf0e10cSrcweir 		SPECIAL_3DCUBEOBJECT_PROPERTIES
434*cdf0e10cSrcweir 		SPECIAL_3DSPHEREOBJECT_PROPERTIES
435*cdf0e10cSrcweir 		SPECIAL_3DLATHEOBJECT_PROPERTIES
436*cdf0e10cSrcweir 		SPECIAL_3DEXTRUDEOBJECT_PROPERTIES
437*cdf0e10cSrcweir 
438*cdf0e10cSrcweir 		// #107245# New 3D properties which are possible for lathe and extrude 3d objects
439*cdf0e10cSrcweir 		SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES
440*cdf0e10cSrcweir 
441*cdf0e10cSrcweir 		SPECIAL_3DBACKSCALE_PROPERTIES
442*cdf0e10cSrcweir 		SPECIAL_3DPOLYGONOBJECT_PROPERTIES
443*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
444*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
445*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
446*cdf0e10cSrcweir 		{0,0,0,0,0,0}
447*cdf0e10cSrcweir 
448*cdf0e10cSrcweir 	};
449*cdf0e10cSrcweir 
450*cdf0e10cSrcweir 	return aAllPropertyMap_Impl;
451*cdf0e10cSrcweir }
452*cdf0e10cSrcweir 
453*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxGroupPropertyMap()
454*cdf0e10cSrcweir {
455*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aGroupPropertyMap_Impl[] =
456*cdf0e10cSrcweir 	{
457*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
458*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
459*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
460*cdf0e10cSrcweir 		{0,0,0,0,0,0}
461*cdf0e10cSrcweir 
462*cdf0e10cSrcweir 	};
463*cdf0e10cSrcweir 
464*cdf0e10cSrcweir 	return aGroupPropertyMap_Impl;
465*cdf0e10cSrcweir }
466*cdf0e10cSrcweir 
467*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxOle2PropertyMap()
468*cdf0e10cSrcweir {
469*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aOle2PropertyMap_Impl[] =
470*cdf0e10cSrcweir 	{
471*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),			OWN_ATTR_TRANSFORMATION		, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 }, \
472*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),	OWN_ATTR_ZORDER				, &::getCppuType((const sal_Int32*)0),		0,		0},
473*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),	SDRATTR_LAYERID				, &::getCppuType((const sal_Int16*)0),		0,	0},
474*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
475*cdf0e10cSrcweir 		{ 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},
476*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),	OWN_ATTR_LDNAME				, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
477*cdf0e10cSrcweir 		{ 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},
478*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ThumbnailGraphicURL"),		OWN_ATTR_THUMBNAIL			, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
479*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Model"),					OWN_ATTR_OLEMODEL			, &::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
480*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("EmbeddedObject"),			OWN_ATTR_OLE_EMBEDDED_OBJECT	, &::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedObject >*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
481*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("EmbeddedObjectNoNewClient"),OWN_ATTR_OLE_EMBEDDED_OBJECT_NONEWCLIENT, &::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedObject >*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
482*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("OriginalSize"),				OWN_ATTR_OLESIZE			, &::getCppuType(( const ::com::sun::star::awt::Size*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
483*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CLSID"),					OWN_ATTR_CLSID				, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
484*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("IsInternal"),				OWN_ATTR_INTERNAL_OLE		, &::getBooleanCppuType() , ::com::sun::star::beans::PropertyAttribute::READONLY,     0},
485*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("VisibleArea"),				OWN_ATTR_OLE_VISAREA		, &::getCppuType((const ::com::sun::star::awt::Rectangle*)0), 0, 0},
486*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Aspect"),					OWN_ATTR_OLE_ASPECT			, &::getCppuType((const sal_Int64*)0), 0, 0},
487*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
488*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
489*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_OLE2_PERSISTNAME),	OWN_ATTR_PERSISTNAME		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
490*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("LinkURL"),					OWN_ATTR_OLE_LINKURL		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
491*cdf0e10cSrcweir 	    { 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},
492*cdf0e10cSrcweir 		{ 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},
493*cdf0e10cSrcweir 		// #i68101#
494*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
495*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
496*cdf0e10cSrcweir 		{0,0,0,0,0,0}
497*cdf0e10cSrcweir 
498*cdf0e10cSrcweir 	};
499*cdf0e10cSrcweir 
500*cdf0e10cSrcweir 	return aOle2PropertyMap_Impl;
501*cdf0e10cSrcweir }
502*cdf0e10cSrcweir 
503*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxPluginPropertyMap()
504*cdf0e10cSrcweir {
505*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aPluginPropertyMap_Impl[] =
506*cdf0e10cSrcweir 	{
507*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("PluginMimeType"),			OWN_ATTR_PLUGIN_MIMETYPE	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
508*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("PluginURL"),				OWN_ATTR_PLUGIN_URL			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
509*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("PluginCommands"),			OWN_ATTR_PLUGIN_COMMANDS	, SEQTYPE(::getCppuType((::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >*)0)), 0, 0},
510*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),			OWN_ATTR_TRANSFORMATION		, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 }, \
511*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),	OWN_ATTR_ZORDER				, &::getCppuType((const sal_Int32*)0),		0,		0},
512*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),	SDRATTR_LAYERID				, &::getCppuType((const sal_Int16*)0),		0,	0},
513*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
514*cdf0e10cSrcweir 		{ 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},
515*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),	OWN_ATTR_LDNAME				, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
516*cdf0e10cSrcweir 		{ 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},
517*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ThumbnailGraphicURL"),		OWN_ATTR_THUMBNAIL			, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
518*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT),		SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
519*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT),		SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
520*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_OLE2_PERSISTNAME),	OWN_ATTR_PERSISTNAME		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
521*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("LinkURL"),					OWN_ATTR_OLE_LINKURL		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
522*cdf0e10cSrcweir 	    { 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},
523*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("VisibleArea"),				OWN_ATTR_OLE_VISAREA		, &::getCppuType((const ::com::sun::star::awt::Rectangle*)0), 0, 0},
524*cdf0e10cSrcweir 		// #i68101#
525*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
526*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
527*cdf0e10cSrcweir 		{0,0,0,0,0,0}
528*cdf0e10cSrcweir 
529*cdf0e10cSrcweir 	};
530*cdf0e10cSrcweir 
531*cdf0e10cSrcweir 	return aPluginPropertyMap_Impl;
532*cdf0e10cSrcweir }
533*cdf0e10cSrcweir 
534*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxFramePropertyMap()
535*cdf0e10cSrcweir {
536*cdf0e10cSrcweir     //TODO/LATER: new properties for ScrollingMode and DefaultBorder
537*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aFramePropertyMap_Impl[] =
538*cdf0e10cSrcweir 	{
539*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("FrameURL"),					OWN_ATTR_FRAME_URL			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
540*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("FrameName"),				OWN_ATTR_FRAME_NAME			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
541*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("FrameIsAutoScroll"),		OWN_ATTR_FRAME_ISAUTOSCROLL , &::getBooleanCppuType() , ::com::sun::star::beans::PropertyAttribute::MAYBEVOID, 0},
542*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("FrameIsBorder"),			OWN_ATTR_FRAME_ISBORDER		, &::getBooleanCppuType() , 0, 0},
543*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("FrameMarginWidth"),			OWN_ATTR_FRAME_MARGIN_WIDTH , &::getCppuType((const sal_Int32*)0),		0,		0},
544*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("FrameMarginHeight"),		OWN_ATTR_FRAME_MARGIN_HEIGHT, &::getCppuType((const sal_Int32*)0),		0,		0},
545*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),			OWN_ATTR_TRANSFORMATION		, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 }, \
546*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),	OWN_ATTR_ZORDER				, &::getCppuType((const sal_Int32*)0),		0,		0},
547*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),	SDRATTR_LAYERID				, &::getCppuType((const sal_Int16*)0),		0,	0},
548*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
549*cdf0e10cSrcweir 		{ 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},
550*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),	OWN_ATTR_LDNAME				, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
551*cdf0e10cSrcweir 		{ 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},
552*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ThumbnailGraphicURL"),		OWN_ATTR_THUMBNAIL			, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
553*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT),		SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
554*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT),		SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
555*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_OLE2_PERSISTNAME),	OWN_ATTR_PERSISTNAME		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
556*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("LinkURL"),					OWN_ATTR_OLE_LINKURL		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
557*cdf0e10cSrcweir 	    { 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},
558*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("VisibleArea"),				OWN_ATTR_OLE_VISAREA		, &::getCppuType((const ::com::sun::star::awt::Rectangle*)0), 0, 0},
559*cdf0e10cSrcweir 		// #i68101#
560*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
561*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
562*cdf0e10cSrcweir 		{0,0,0,0,0,0}
563*cdf0e10cSrcweir 
564*cdf0e10cSrcweir 	};
565*cdf0e10cSrcweir 
566*cdf0e10cSrcweir 	return aFramePropertyMap_Impl;
567*cdf0e10cSrcweir }
568*cdf0e10cSrcweir 
569*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxAppletPropertyMap()
570*cdf0e10cSrcweir {
571*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aAppletPropertyMap_Impl[] =
572*cdf0e10cSrcweir 	{
573*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("AppletCodeBase"),			OWN_ATTR_APPLET_CODEBASE	, &::getCppuType(( const ::rtl::OUString*)0), 0, 0},
574*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("AppletName"),				OWN_ATTR_APPLET_NAME		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0},
575*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("AppletCode"),				OWN_ATTR_APPLET_CODE		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0},
576*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("AppletCommands"),			OWN_ATTR_APPLET_COMMANDS	, SEQTYPE(::getCppuType((::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >*)0)), 0, 0},
577*cdf0e10cSrcweir         { MAP_CHAR_LEN("AppletDocBase"),            OWN_ATTR_APPLET_DOCBASE     , &::getCppuType(( const ::rtl::OUString*)0), 0, 0},
578*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("AppletIsScript"),			OWN_ATTR_APPLET_ISSCRIPT	, &::getBooleanCppuType(), 0, 0 },
579*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),			OWN_ATTR_TRANSFORMATION		, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 }, \
580*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),	OWN_ATTR_ZORDER				, &::getCppuType((const sal_Int32*)0),		0,		0},
581*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),	SDRATTR_LAYERID				, &::getCppuType((const sal_Int16*)0),		0,	0},
582*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
583*cdf0e10cSrcweir 		{ 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},
584*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),	OWN_ATTR_LDNAME				, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
585*cdf0e10cSrcweir 		{ 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},
586*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ThumbnailGraphicURL"),		OWN_ATTR_THUMBNAIL			, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
587*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT),		SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
588*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT),		SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
589*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_OLE2_PERSISTNAME),	OWN_ATTR_PERSISTNAME		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
590*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("LinkURL"),					OWN_ATTR_OLE_LINKURL		, &::getCppuType(( const ::rtl::OUString*)0), 0, 0 },
591*cdf0e10cSrcweir 	    { 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},
592*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("VisibleArea"),				OWN_ATTR_OLE_VISAREA		, &::getCppuType((const ::com::sun::star::awt::Rectangle*)0), 0, 0},
593*cdf0e10cSrcweir 		// #i68101#
594*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
595*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
596*cdf0e10cSrcweir 		{0,0,0,0,0,0}
597*cdf0e10cSrcweir 
598*cdf0e10cSrcweir 	};
599*cdf0e10cSrcweir 
600*cdf0e10cSrcweir 	return aAppletPropertyMap_Impl;
601*cdf0e10cSrcweir }
602*cdf0e10cSrcweir 
603*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxControlShapePropertyMap()
604*cdf0e10cSrcweir {
605*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aControlPropertyMap_Impl[] =
606*cdf0e10cSrcweir 	{
607*cdf0e10cSrcweir 		// the following properties are mapped to the XControl Model of this shape
608*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_FONTNAME),		0,	&::getCppuType((const ::rtl::OUString*)0),	0, 0 },
609*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_FONTSTYLENAME),	0,	&::getCppuType((const ::rtl::OUString*)0),	0, 0 },
610*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_FONTFAMILY),		0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
611*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_FONTCHARSET),		0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
612*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_HEIGHT),			0,	&::getCppuType((const float*)0),			0, 0 },
613*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_FONTPITCH),		0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
614*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_POSTURE),			0,	&::getCppuType((const ::com::sun::star::awt::FontSlant*)0),0, 0 },
615*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_WEIGHT),			0,	&::getCppuType((const float*)0),			0, 0 },
616*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_UNDERLINE),		0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
617*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_STRIKEOUT),		0,  &::getCppuType((const sal_Int16*)0),		0, 0},
618*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_CHAR_COLOR),			0,	&::getCppuType((const sal_Int32*)0),		0, 0 },
619*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CharRelief"),						0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
620*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CharUnderlineColor"),				0,	&::getCppuType((const sal_Int32*)0),		0, 0 },
621*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CharKerning"),						0,	&::getCppuType((const sal_Int16*)0),	  	0, 0 },
622*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CharWordMode"),						0,	&::getBooleanCppuType(),					0, 0 },
623*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_EDIT_PARA_ADJUST),			0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
624*cdf0e10cSrcweir         { MAP_CHAR_LEN("TextVerticalAdjust"),               0,  &::getCppuType((const TextVerticalAdjust*)0), MAYBEVOID, 0 },
625*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ControlBackground"),				0,	&::getCppuType((const sal_Int32*)0),		0, 0 },
626*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ControlBorder"),					0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
627*cdf0e10cSrcweir         { MAP_CHAR_LEN("ControlBorderColor"),               0,  &::getCppuType((const sal_Int32*)0),        0, 0 },
628*cdf0e10cSrcweir         { MAP_CHAR_LEN("ControlSymbolColor"),               0,  &::getCppuType((const sal_Int16*)0),        0, 0 },
629*cdf0e10cSrcweir         { MAP_CHAR_LEN("ImageScaleMode"),                   0,  &::getCppuType((const sal_Int16*)0),        0, 0 },
630*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT),		SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
631*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT),		SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
632*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ControlTextEmphasis"),				0,	&::getCppuType((const sal_Int16*)0),		0, 0 },
633*cdf0e10cSrcweir         { MAP_CHAR_LEN("ControlWritingMode"),               0,  &::cppu::UnoType< sal_Int16 >::get(), 0, 0},
634*cdf0e10cSrcweir 		// the following properties are handled by SvxShape
635*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),			OWN_ATTR_TRANSFORMATION		, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 },
636*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),	OWN_ATTR_ZORDER				, &::getCppuType((const sal_Int32*)0),		0,		0},
637*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),	SDRATTR_LAYERID				, &::getCppuType((const sal_Int16*)0),		0,	0},
638*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
639*cdf0e10cSrcweir 		{ 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},
640*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),	OWN_ATTR_LDNAME				, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
641*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
642*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
643*cdf0e10cSrcweir 	    { 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},
644*cdf0e10cSrcweir 		// #i68101#
645*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
646*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
647*cdf0e10cSrcweir 		// #i112587#
648*cdf0e10cSrcweir         { MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_PRINTABLE),	SDRATTR_OBJPRINTABLE			, &::getBooleanCppuType(),						0,	0},
649*cdf0e10cSrcweir         { MAP_CHAR_LEN("Visible"),						SDRATTR_OBJVISIBLE				, &::getBooleanCppuType(),						0,	0},
650*cdf0e10cSrcweir 		{0,0,0,0,0,0}
651*cdf0e10cSrcweir 	};
652*cdf0e10cSrcweir 
653*cdf0e10cSrcweir 	return aControlPropertyMap_Impl;
654*cdf0e10cSrcweir }
655*cdf0e10cSrcweir 
656*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxPageShapePropertyMap()
657*cdf0e10cSrcweir {
658*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aPageShapePropertyMap_Impl[] =
659*cdf0e10cSrcweir 	{
660*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("PageNumber"),				OWN_ATTR_PAGE_NUMBER		, &::getCppuType((const sal_Int32*)0),		0, 0},
661*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),			OWN_ATTR_TRANSFORMATION		, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 }, \
662*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),	OWN_ATTR_ZORDER				, &::getCppuType((const sal_Int32*)0),		0, 0},
663*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),	SDRATTR_LAYERID				, &::getCppuType((const sal_Int16*)0),		0, 0},
664*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME			, &::getCppuType((const ::rtl::OUString*)0), 0,	0},
665*cdf0e10cSrcweir 		{ 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},
666*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),	OWN_ATTR_LDNAME				, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
667*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT),		SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
668*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT),		SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
669*cdf0e10cSrcweir 	    { 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},
670*cdf0e10cSrcweir 		// #i68101#
671*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
672*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
673*cdf0e10cSrcweir 		{0,0,0,0,0,0}
674*cdf0e10cSrcweir 
675*cdf0e10cSrcweir 	};
676*cdf0e10cSrcweir 
677*cdf0e10cSrcweir 	return aPageShapePropertyMap_Impl;
678*cdf0e10cSrcweir }
679*cdf0e10cSrcweir 
680*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxCaptionPropertyMap()
681*cdf0e10cSrcweir {
682*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aCaptionPropertyMap_Impl[] =
683*cdf0e10cSrcweir 	{
684*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionPoint"),				OWN_ATTR_CAPTION_POINT,		&::getCppuType((const com::sun::star::awt::Point*)0),	0, 0 },
685*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionType"),				SDRATTR_CAPTIONTYPE,		&::getCppuType((const sal_Int16*)0), 0, 0},
686*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionIsFixedAngle"),		SDRATTR_CAPTIONFIXEDANGLE,	&::getBooleanCppuType(), 0, 0},
687*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionAngle"),				SDRATTR_CAPTIONANGLE,		&::getCppuType((const sal_Int32*)0),	0,	0},
688*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionGap"),				SDRATTR_CAPTIONGAP,			&::getCppuType((const sal_Int32*)0),	0,	SFX_METRIC_ITEM},
689*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionEscapeDirection"),	SDRATTR_CAPTIONESCDIR,		&::getCppuType((const sal_Int32*)0),	0,	0},
690*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionIsEscapeRelative"),	SDRATTR_CAPTIONESCISREL,	&::getBooleanCppuType(), 0, 0},
691*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionEscapeRelative"),	SDRATTR_CAPTIONESCREL,		&::getCppuType((const sal_Int32*)0),	0,	0},
692*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionEscapeAbsolute"),	SDRATTR_CAPTIONESCABS,		&::getCppuType((const sal_Int32*)0),	0,	SFX_METRIC_ITEM},
693*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionLineLength"),		SDRATTR_CAPTIONLINELEN,		&::getCppuType((const sal_Int32*)0),	0,	SFX_METRIC_ITEM},
694*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CaptionIsFitLineLength"),	SDRATTR_CAPTIONFITLINELEN,	&::getBooleanCppuType(), 0, 0},
695*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
696*cdf0e10cSrcweir 		FILL_PROPERTIES
697*cdf0e10cSrcweir 		LINE_PROPERTIES
698*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
699*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
700*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
701*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
702*cdf0e10cSrcweir 		SHADOW_PROPERTIES
703*cdf0e10cSrcweir 		TEXT_PROPERTIES
704*cdf0e10cSrcweir 		// #FontWork#
705*cdf0e10cSrcweir 		FONTWORK_PROPERTIES
706*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
707*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),			EE_PARA_XMLATTRIBS,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
708*cdf0e10cSrcweir 		{0,0,0,0,0,0}
709*cdf0e10cSrcweir 
710*cdf0e10cSrcweir 	};
711*cdf0e10cSrcweir 
712*cdf0e10cSrcweir 	return aCaptionPropertyMap_Impl;
713*cdf0e10cSrcweir }
714*cdf0e10cSrcweir 
715*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxCustomShapePropertyMap()
716*cdf0e10cSrcweir {
717*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aCustomShapePropertyMap_Impl[] =
718*cdf0e10cSrcweir 	{
719*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CustomShapeEngine"),			SDRATTR_CUSTOMSHAPE_ENGINE,			&::getCppuType((const ::rtl::OUString*)0),	0, 0 },
720*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CustomShapeData"),			SDRATTR_CUSTOMSHAPE_DATA,				&::getCppuType((const ::rtl::OUString*)0),  0, 0 },
721*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CustomShapeGeometry"),		SDRATTR_CUSTOMSHAPE_GEOMETRY,			SEQTYPE(::getCppuType((::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >*)0)),  0, 0 },
722*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("CustomShapeGraphicURL"),		SDRATTR_CUSTOMSHAPE_REPLACEMENT_URL,	&::getCppuType((const ::rtl::OUString*)0),	0,	0},
723*cdf0e10cSrcweir 		CUSTOMSHAPE_PROPERTIES
724*cdf0e10cSrcweir 		FILL_PROPERTIES
725*cdf0e10cSrcweir 		LINE_PROPERTIES
726*cdf0e10cSrcweir 		LINE_PROPERTIES_START_END
727*cdf0e10cSrcweir 		SHAPE_DESCRIPTOR_PROPERTIES
728*cdf0e10cSrcweir 		MISC_OBJ_PROPERTIES
729*cdf0e10cSrcweir 		LINKTARGET_PROPERTIES
730*cdf0e10cSrcweir 		SHADOW_PROPERTIES
731*cdf0e10cSrcweir 		TEXT_PROPERTIES
732*cdf0e10cSrcweir 		{MAP_CHAR_LEN("UserDefinedAttributes"),		SDRATTR_XMLATTRIBUTES,		&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
733*cdf0e10cSrcweir 		{MAP_CHAR_LEN("ParaUserDefinedAttributes"),	EE_PARA_XMLATTRIBS,			&::getCppuType((const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >*)0)  , 		0,     0},
734*cdf0e10cSrcweir 		{0,0,0,0,0,0}
735*cdf0e10cSrcweir 
736*cdf0e10cSrcweir 	};
737*cdf0e10cSrcweir 	return aCustomShapePropertyMap_Impl;
738*cdf0e10cSrcweir }
739*cdf0e10cSrcweir 
740*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxMediaShapePropertyMap()
741*cdf0e10cSrcweir {
742*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aMediaShapePropertyMap_Impl[] =
743*cdf0e10cSrcweir 	{
744*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER, &::getCppuType((const sal_Int32*)0), 0, 0},
745*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID, &::getCppuType((const sal_Int16*)0), 0,	0},
746*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME), SDRATTR_LAYERNAME, &::getCppuType((const ::rtl::OUString*)0), 0, 0},
747*cdf0e10cSrcweir 		{ 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},
748*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
749*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"), OWN_ATTR_TRANSFORMATION, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 },
750*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("MediaURL"),	OWN_ATTR_MEDIA_URL, &::getCppuType((const ::rtl::OUString*)0), 0, 0},
751*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("PreferredSize"), OWN_ATTR_MEDIA_PREFERREDSIZE, &::getCppuType((const ::com::sun::star::awt::Size*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
752*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Loop"),	OWN_ATTR_MEDIA_LOOP, &::getCppuType((const sal_Bool*)0), 0, 0},
753*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Mute"),	OWN_ATTR_MEDIA_MUTE, &::getCppuType((const sal_Bool*)0), 0, 0},
754*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("VolumeDB"),	OWN_ATTR_MEDIA_VOLUMEDB, &::getCppuType((const sal_Int16*)0), 0, 0},
755*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Zoom"),	OWN_ATTR_MEDIA_ZOOM, &::getCppuType((const ::com::sun::star::media::ZoomLevel*)0), 0, 0},
756*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
757*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
758*cdf0e10cSrcweir 	    { 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},
759*cdf0e10cSrcweir 		// #i68101#
760*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
761*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
762*cdf0e10cSrcweir 		{0,0,0,0,0,0}
763*cdf0e10cSrcweir 
764*cdf0e10cSrcweir 	};
765*cdf0e10cSrcweir 
766*cdf0e10cSrcweir 	return aMediaShapePropertyMap_Impl;
767*cdf0e10cSrcweir }
768*cdf0e10cSrcweir 
769*cdf0e10cSrcweir SfxItemPropertyMapEntry* ImplGetSvxTableShapePropertyMap()
770*cdf0e10cSrcweir {
771*cdf0e10cSrcweir     static SfxItemPropertyMapEntry aTableShapePropertyMap_Impl[] =
772*cdf0e10cSrcweir 	{
773*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_ZORDER),		OWN_ATTR_ZORDER, &::getCppuType((const sal_Int32*)0), 0, 0},
774*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERID),		SDRATTR_LAYERID, &::getCppuType((const sal_Int16*)0), 0,	0},
775*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_LAYERNAME),	SDRATTR_LAYERNAME, &::getCppuType((const ::rtl::OUString*)0), 0, 0},
776*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYBITMAP),		OWN_ATTR_LDBITMAP, &::com::sun::star::awt::XBitmap::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
777*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_LINKDISPLAYNAME),		OWN_ATTR_LDNAME, &::getCppuType(( const ::rtl::OUString*)0),	::com::sun::star::beans::PropertyAttribute::READONLY, 0},
778*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Transformation"),				OWN_ATTR_TRANSFORMATION, &::getCppuType((const struct com::sun::star::drawing::HomogenMatrix3*)0), 0, 0 },
779*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_MOVEPROTECT),	SDRATTR_OBJMOVEPROTECT, &::getBooleanCppuType(),0, 0},
780*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_SIZEPROTECT),	SDRATTR_OBJSIZEPROTECT, &::getBooleanCppuType(),0, 0},
781*cdf0e10cSrcweir 	    { 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},
782*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE),		OWN_ATTR_MISC_OBJ_TITLE			, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
783*cdf0e10cSrcweir 		{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION),	OWN_ATTR_MISC_OBJ_DESCRIPTION	, &::getCppuType((const ::rtl::OUString*)0),	0,	0},
784*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("Model"),						OWN_ATTR_OLEMODEL				, &::com::sun::star::table::XTable::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
785*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("TableTemplate"),				OWN_ATTR_TABLETEMPLATE			, &::com::sun::star::container::XIndexAccess::static_type(), 0, 0},
786*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UseFirstRowStyle"),				OWN_ATTR_TABLETEMPLATE_FIRSTROW, &::getBooleanCppuType(),0, 0},
787*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UseLastRowStyle"),				OWN_ATTR_TABLETEMPLATE_LASTROW, &::getBooleanCppuType(),0, 0},
788*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UseFirstColumnStyle"),			OWN_ATTR_TABLETEMPLATE_FIRSTCOLUMN, &::getBooleanCppuType(),0, 0},
789*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UseLastColumnStyle"),			OWN_ATTR_TABLETEMPLATE_LASTCOLUMN, &::getBooleanCppuType(),0, 0},
790*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UseBandingRowStyle"),			OWN_ATTR_TABLETEMPLATE_BANDINGROWS, &::getBooleanCppuType(),0, 0},
791*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("UseBandingColumnStyle"),		OWN_ATTR_TABLETEMPLATE_BANDINGCOULUMNS, &::getBooleanCppuType(),0, 0},
792*cdf0e10cSrcweir 		{ MAP_CHAR_LEN("ReplacementGraphic"),			OWN_ATTR_BITMAP, &::com::sun::star::graphic::XGraphic::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
793*cdf0e10cSrcweir 
794*cdf0e10cSrcweir 		{0,0,0,0,0,0}
795*cdf0e10cSrcweir 	};
796*cdf0e10cSrcweir 
797*cdf0e10cSrcweir 	return aTableShapePropertyMap_Impl;
798*cdf0e10cSrcweir }
799*cdf0e10cSrcweir 
800*cdf0e10cSrcweir comphelper::PropertyMapEntry* ImplGetSvxDrawingDefaultsPropertyMap()
801*cdf0e10cSrcweir {
802*cdf0e10cSrcweir 	static comphelper::PropertyMapEntry aSvxDrawingDefaultsPropertyMap_Impl[] =
803*cdf0e10cSrcweir 	{
804*cdf0e10cSrcweir 		SHADOW_PROPERTIES
805*cdf0e10cSrcweir 		LINE_PROPERTIES_DEFAULTS
806*cdf0e10cSrcweir 		FILL_PROPERTIES_BMP
807*cdf0e10cSrcweir 		FILL_PROPERTIES_DEFAULTS
808*cdf0e10cSrcweir 		EDGERADIUS_PROPERTIES
809*cdf0e10cSrcweir 		TEXT_PROPERTIES_DEFAULTS
810*cdf0e10cSrcweir 		CONNECTOR_PROPERTIES
811*cdf0e10cSrcweir 		SPECIAL_DIMENSIONING_PROPERTIES_DEFAULTS
812*cdf0e10cSrcweir 		MISC_3D_OBJ_PROPERTIES
813*cdf0e10cSrcweir 		SPECIAL_3DBACKSCALE_PROPERTIES
814*cdf0e10cSrcweir 		{0,0,0,0,0,0}
815*cdf0e10cSrcweir 
816*cdf0e10cSrcweir 	};
817*cdf0e10cSrcweir 
818*cdf0e10cSrcweir 	return aSvxDrawingDefaultsPropertyMap_Impl;
819*cdf0e10cSrcweir }
820*cdf0e10cSrcweir 
821*cdf0e10cSrcweir // OD 13.10.2003 #i18732#
822*cdf0e10cSrcweir comphelper::PropertyMapEntry* ImplGetAdditionalWriterDrawingDefaultsPropertyMap()
823*cdf0e10cSrcweir {
824*cdf0e10cSrcweir     static comphelper::PropertyMapEntry aSvxAdditionalDefaultsPropertyMap_Impl[] =
825*cdf0e10cSrcweir     {
826*cdf0e10cSrcweir         { MAP_CHAR_LEN("IsFollowingTextFlow"), SID_SW_FOLLOW_TEXT_FLOW, &::getBooleanCppuType(), 0, 0},
827*cdf0e10cSrcweir         {0,0,0,0,0,0}
828*cdf0e10cSrcweir 
829*cdf0e10cSrcweir     };
830*cdf0e10cSrcweir 
831*cdf0e10cSrcweir     return aSvxAdditionalDefaultsPropertyMap_Impl;
832*cdf0e10cSrcweir }
833*cdf0e10cSrcweir 
834*cdf0e10cSrcweir // ---------------------------------------------------------------------
835*cdf0e10cSrcweir 
836*cdf0e10cSrcweir SvxUnoPropertyMapProvider aSvxMapProvider;
837*cdf0e10cSrcweir 
838*cdf0e10cSrcweir UHashMapEntry pSdrShapeIdentifierMap[] =
839*cdf0e10cSrcweir {
840*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.RectangleShape"),		OBJ_RECT ),
841*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.EllipseShape"),			OBJ_CIRC ),
842*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.ControlShape"),			OBJ_UNO  ),
843*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.ConnectorShape"),		OBJ_EDGE ),
844*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.MeasureShape"),			OBJ_MEASURE ),
845*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.LineShape"),			OBJ_LINE ),
846*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.PolyPolygonShape"),		OBJ_POLY ),
847*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.PolyLineShape"),		OBJ_PLIN ),
848*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.OpenBezierShape"),		OBJ_PATHLINE ),
849*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.ClosedBezierShape"),	OBJ_PATHFILL ),
850*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.OpenFreeHandShape"),	OBJ_FREELINE ),
851*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.ClosedFreeHandShape"),	OBJ_FREEFILL ),
852*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.PolyPolygonPathShape"),	OBJ_PATHPOLY ),
853*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.PolyLinePathShape"),	OBJ_PATHPLIN ),
854*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.GraphicObjectShape"),	OBJ_GRAF ),
855*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.GroupShape"),			OBJ_GRUP ),
856*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.TextShape"),			OBJ_TEXT ),
857*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.OLE2Shape"),			OBJ_OLE2 ),
858*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.PageShape"),			OBJ_PAGE ),
859*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.CaptionShape"),			OBJ_CAPTION ),
860*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.FrameShape"),			OBJ_FRAME ),
861*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.PluginShape"),			OBJ_OLE2_PLUGIN ),
862*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.AppletShape"),			OBJ_OLE2_APPLET ),
863*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.CustomShape"),			OBJ_CUSTOMSHAPE ),
864*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.MediaShape"),			OBJ_MEDIA ),
865*cdf0e10cSrcweir 
866*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.Shape3DSceneObject"),	E3D_POLYSCENE_ID  | E3D_INVENTOR_FLAG ),
867*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.Shape3DCubeObject"),	E3D_CUBEOBJ_ID    | E3D_INVENTOR_FLAG ),
868*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.Shape3DSphereObject"),	E3D_SPHEREOBJ_ID  | E3D_INVENTOR_FLAG ),
869*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.Shape3DLatheObject"),	E3D_LATHEOBJ_ID   | E3D_INVENTOR_FLAG ),
870*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.Shape3DExtrudeObject"),	E3D_EXTRUDEOBJ_ID | E3D_INVENTOR_FLAG ),
871*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.Shape3DPolygonObject"),	E3D_POLYGONOBJ_ID | E3D_INVENTOR_FLAG ),
872*cdf0e10cSrcweir 	UHashMapEntry (RTL_CONSTASCII_STRINGPARAM(""),	0 )
873*cdf0e10cSrcweir };
874*cdf0e10cSrcweir 
875*cdf0e10cSrcweir // ---------------------------------------------------------------------
876*cdf0e10cSrcweir 
877*cdf0e10cSrcweir UHashMap aSdrShapeIdentifierMap( pSdrShapeIdentifierMap );
878*cdf0e10cSrcweir 
879*cdf0e10cSrcweir /***********************************************************************
880*cdf0e10cSrcweir * class UHashMap                                                       *
881*cdf0e10cSrcweir ***********************************************************************/
882*cdf0e10cSrcweir 
883*cdf0e10cSrcweir UHashMap::UHashMap( UHashMapEntry* pMap )
884*cdf0e10cSrcweir {
885*cdf0e10cSrcweir 	while( pMap->aIdentifier.getLength() )
886*cdf0e10cSrcweir 	{
887*cdf0e10cSrcweir 		OUString aStr( pMap->aIdentifier );
888*cdf0e10cSrcweir 		size_t nHash = aStr.hashCode() & (HASHARRAYSIZE-1);
889*cdf0e10cSrcweir 
890*cdf0e10cSrcweir 		m_aHashList[nHash].Insert(pMap);
891*cdf0e10cSrcweir 		pMap++;
892*cdf0e10cSrcweir 	}
893*cdf0e10cSrcweir }
894*cdf0e10cSrcweir 
895*cdf0e10cSrcweir // ---------------------------------------------------------------------
896*cdf0e10cSrcweir 
897*cdf0e10cSrcweir sal_uInt32 UHashMap::getId( const OUString& rCompareString )
898*cdf0e10cSrcweir {
899*cdf0e10cSrcweir 	size_t nHash = rCompareString.hashCode() & (HASHARRAYSIZE-1);
900*cdf0e10cSrcweir 
901*cdf0e10cSrcweir 	UHashMapEntryList& rList = m_aHashList[nHash];
902*cdf0e10cSrcweir 
903*cdf0e10cSrcweir 	UHashMapEntry * pMap = rList.First();
904*cdf0e10cSrcweir 
905*cdf0e10cSrcweir 	while(pMap)
906*cdf0e10cSrcweir 	{
907*cdf0e10cSrcweir 		if( rCompareString == pMap->aIdentifier )
908*cdf0e10cSrcweir 			return pMap->nId;
909*cdf0e10cSrcweir 
910*cdf0e10cSrcweir 		pMap = rList.Next();
911*cdf0e10cSrcweir 	}
912*cdf0e10cSrcweir 
913*cdf0e10cSrcweir 	return UHASHMAP_NOTFOUND;
914*cdf0e10cSrcweir }
915*cdf0e10cSrcweir 
916*cdf0e10cSrcweir /***********************************************************************
917*cdf0e10cSrcweir * class SvxUnoPropertyMapProvider                                      *
918*cdf0e10cSrcweir ***********************************************************************/
919*cdf0e10cSrcweir 
920*cdf0e10cSrcweir EXTERN_C
921*cdf0e10cSrcweir #if defined( PM2 ) && (!defined( CSET ) && !defined ( MTW ) && !defined( WTC ))
922*cdf0e10cSrcweir int _stdcall
923*cdf0e10cSrcweir #else
924*cdf0e10cSrcweir #ifdef WNT
925*cdf0e10cSrcweir int _cdecl
926*cdf0e10cSrcweir #else
927*cdf0e10cSrcweir int
928*cdf0e10cSrcweir #endif
929*cdf0e10cSrcweir #endif
930*cdf0e10cSrcweir Svx_CompareMap(const void* pSmaller, const void* pBigger )
931*cdf0e10cSrcweir {
932*cdf0e10cSrcweir     int nDiff = strcmp( ((const SfxItemPropertyMapEntry*)pSmaller)->pName,
933*cdf0e10cSrcweir                         ((const SfxItemPropertyMapEntry*)pBigger)->pName );
934*cdf0e10cSrcweir 	return nDiff;
935*cdf0e10cSrcweir }
936*cdf0e10cSrcweir 
937*cdf0e10cSrcweir // ---------------------------------------------------------------------
938*cdf0e10cSrcweir 
939*cdf0e10cSrcweir SvxUnoPropertyMapProvider::SvxUnoPropertyMapProvider()
940*cdf0e10cSrcweir {
941*cdf0e10cSrcweir 	for(sal_uInt16 i=0;i<SVXMAP_END; i++)
942*cdf0e10cSrcweir     {
943*cdf0e10cSrcweir         aSetArr[i] = 0;
944*cdf0e10cSrcweir         aMapArr[i] = 0;
945*cdf0e10cSrcweir     }
946*cdf0e10cSrcweir }
947*cdf0e10cSrcweir 
948*cdf0e10cSrcweir SvxUnoPropertyMapProvider::~SvxUnoPropertyMapProvider()
949*cdf0e10cSrcweir {
950*cdf0e10cSrcweir 	for(sal_uInt16 i=0;i<SVXMAP_END; i++)
951*cdf0e10cSrcweir         delete aSetArr[i];
952*cdf0e10cSrcweir }
953*cdf0e10cSrcweir 
954*cdf0e10cSrcweir // ---------------------------------------------------------------------
955*cdf0e10cSrcweir 
956*cdf0e10cSrcweir /*void SvxUnoPropertyMapProvider::Sort(sal_uInt16 nId)
957*cdf0e10cSrcweir {
958*cdf0e10cSrcweir     SfxItemPropertyMapEntry* pTemp = aMapArr[nId];
959*cdf0e10cSrcweir 	sal_uInt16 i = 0;
960*cdf0e10cSrcweir 	while(pTemp[i].pName) { i++; }
961*cdf0e10cSrcweir     qsort(aMapArr[nId], i, sizeof(SfxItemPropertyMapEntry), Svx_CompareMap);
962*cdf0e10cSrcweir }*/
963*cdf0e10cSrcweir 
964*cdf0e10cSrcweir // ---------------------------------------------------------------------
965*cdf0e10cSrcweir 
966*cdf0e10cSrcweir const SfxItemPropertyMapEntry* SvxUnoPropertyMapProvider::GetMap(sal_uInt16 nPropertyId)
967*cdf0e10cSrcweir {
968*cdf0e10cSrcweir 	DBG_ASSERT(nPropertyId < SVXMAP_END, "Id ?" );
969*cdf0e10cSrcweir 	if(!aMapArr[nPropertyId]) {
970*cdf0e10cSrcweir 		switch(nPropertyId) {
971*cdf0e10cSrcweir 			case SVXMAP_SHAPE: aMapArr[SVXMAP_SHAPE]=ImplGetSvxShapePropertyMap(); break;
972*cdf0e10cSrcweir 			case SVXMAP_CONNECTOR: aMapArr[SVXMAP_CONNECTOR]=ImplGetSvxConnectorPropertyMap(); break;
973*cdf0e10cSrcweir 			case SVXMAP_DIMENSIONING: aMapArr[SVXMAP_DIMENSIONING]=ImplGetSvxDimensioningPropertyMap(); break;
974*cdf0e10cSrcweir 			case SVXMAP_CIRCLE: aMapArr[SVXMAP_CIRCLE]=ImplGetSvxCirclePropertyMap(); break;
975*cdf0e10cSrcweir 			case SVXMAP_POLYPOLYGON: aMapArr[SVXMAP_POLYPOLYGON]=ImplGetSvxPolyPolygonPropertyMap(); break;
976*cdf0e10cSrcweir 			case SVXMAP_POLYPOLYGONBEZIER: aMapArr[SVXMAP_POLYPOLYGONBEZIER]=ImplGetSvxPolyPolygonBezierPropertyMap(); break;
977*cdf0e10cSrcweir 			case SVXMAP_GRAPHICOBJECT: aMapArr[SVXMAP_GRAPHICOBJECT]=ImplGetSvxGraphicObjectPropertyMap(); break;
978*cdf0e10cSrcweir 			case SVXMAP_3DSCENEOBJECT: aMapArr[SVXMAP_3DSCENEOBJECT]=ImplGetSvx3DSceneObjectPropertyMap(); break;
979*cdf0e10cSrcweir 			case SVXMAP_3DCUBEOBJEKT: aMapArr[SVXMAP_3DCUBEOBJEKT]=ImplGetSvx3DCubeObjectPropertyMap(); break;
980*cdf0e10cSrcweir 			case SVXMAP_3DSPHEREOBJECT: aMapArr[SVXMAP_3DSPHEREOBJECT]=ImplGetSvx3DSphereObjectPropertyMap(); break;
981*cdf0e10cSrcweir 			case SVXMAP_3DLATHEOBJECT: aMapArr[SVXMAP_3DLATHEOBJECT]=ImplGetSvx3DLatheObjectPropertyMap(); break;
982*cdf0e10cSrcweir 			case SVXMAP_3DEXTRUDEOBJECT: aMapArr[SVXMAP_3DEXTRUDEOBJECT]=ImplGetSvx3DExtrudeObjectPropertyMap(); break;
983*cdf0e10cSrcweir 			case SVXMAP_3DPOLYGONOBJECT: aMapArr[SVXMAP_3DPOLYGONOBJECT]=ImplGetSvx3DPolygonObjectPropertyMap(); break;
984*cdf0e10cSrcweir 			case SVXMAP_ALL: aMapArr[SVXMAP_ALL]=ImplGetSvxAllPropertyMap(); break;
985*cdf0e10cSrcweir 			case SVXMAP_GROUP: aMapArr[SVXMAP_GROUP]=ImplGetSvxGroupPropertyMap(); break;
986*cdf0e10cSrcweir 			case SVXMAP_CAPTION: aMapArr[SVXMAP_CAPTION]=ImplGetSvxCaptionPropertyMap(); break;
987*cdf0e10cSrcweir 			case SVXMAP_OLE2: aMapArr[SVXMAP_OLE2]=ImplGetSvxOle2PropertyMap(); break;
988*cdf0e10cSrcweir 			case SVXMAP_PLUGIN: aMapArr[SVXMAP_PLUGIN]=ImplGetSvxPluginPropertyMap(); break;
989*cdf0e10cSrcweir 			case SVXMAP_FRAME: aMapArr[SVXMAP_FRAME]=ImplGetSvxFramePropertyMap(); break;
990*cdf0e10cSrcweir 			case SVXMAP_APPLET: aMapArr[SVXMAP_APPLET]=ImplGetSvxAppletPropertyMap(); break;
991*cdf0e10cSrcweir 			case SVXMAP_CONTROL: aMapArr[SVXMAP_CONTROL]=ImplGetSvxControlShapePropertyMap(); break;
992*cdf0e10cSrcweir 			case SVXMAP_TEXT: aMapArr[SVXMAP_TEXT]=ImplGetSvxTextShapePropertyMap(); break;
993*cdf0e10cSrcweir 			case SVXMAP_CUSTOMSHAPE: aMapArr[SVXMAP_CUSTOMSHAPE]=ImplGetSvxCustomShapePropertyMap(); break;
994*cdf0e10cSrcweir 			case SVXMAP_MEDIA: aMapArr[SVXMAP_MEDIA]=ImplGetSvxMediaShapePropertyMap(); break;
995*cdf0e10cSrcweir 			case SVXMAP_TABLE: aMapArr[SVXMAP_TABLE]=ImplGetSvxTableShapePropertyMap(); break;
996*cdf0e10cSrcweir             case SVXMAP_PAGE: aMapArr[SVXMAP_PAGE] = ImplGetSvxPageShapePropertyMap(); break;
997*cdf0e10cSrcweir 
998*cdf0e10cSrcweir 			default:
999*cdf0e10cSrcweir 				DBG_ERROR( "Unknown property map for SvxUnoPropertyMapProvider!" );
1000*cdf0e10cSrcweir 		}
1001*cdf0e10cSrcweir //		Sort(nPropertyId);
1002*cdf0e10cSrcweir 	}
1003*cdf0e10cSrcweir 	return aMapArr[nPropertyId];
1004*cdf0e10cSrcweir }
1005*cdf0e10cSrcweir const SvxItemPropertySet* SvxUnoPropertyMapProvider::GetPropertySet(sal_uInt16 nPropertyId, SfxItemPool& rPool)
1006*cdf0e10cSrcweir {
1007*cdf0e10cSrcweir     if( !aSetArr[nPropertyId] )
1008*cdf0e10cSrcweir         aSetArr[nPropertyId] = new SvxItemPropertySet( GetMap( nPropertyId ), rPool );
1009*cdf0e10cSrcweir     return aSetArr[nPropertyId];
1010*cdf0e10cSrcweir }
1011*cdf0e10cSrcweir 
1012*cdf0e10cSrcweir // #####################################################################
1013*cdf0e10cSrcweir 
1014*cdf0e10cSrcweir /** maps the API constant MeasureUnit to a vcl MapUnit enum.
1015*cdf0e10cSrcweir 	Returns false if conversion is not supported.
1016*cdf0e10cSrcweir 
1017*cdf0e10cSrcweir 	@cl: for warnings01 I found out that this method never worked so I thin
1018*cdf0e10cSrcweir 		 it is not used at all
1019*cdf0e10cSrcweir sal_Bool SvxMeasureUnitToMapUnit( const short eApi, int& eVcl ) throw()
1020*cdf0e10cSrcweir {
1021*cdf0e10cSrcweir 	switch( eVcl )
1022*cdf0e10cSrcweir 	{
1023*cdf0e10cSrcweir 	case util::MeasureUnit::MM_100TH:		eVcl = MAP_100TH_MM;	break;
1024*cdf0e10cSrcweir 	case util::MeasureUnit::MM_10TH:		eVcl = MAP_10TH_MM;		break;
1025*cdf0e10cSrcweir 	case util::MeasureUnit::MM:				eVcl = MAP_MM;			break;
1026*cdf0e10cSrcweir 	case util::MeasureUnit::CM:				eVcl = MAP_CM;			break;
1027*cdf0e10cSrcweir 	case util::MeasureUnit::INCH_1000TH:	eVcl = MAP_1000TH_INCH; break;
1028*cdf0e10cSrcweir 	case util::MeasureUnit::INCH_100TH:		eVcl = MAP_100TH_INCH;	break;
1029*cdf0e10cSrcweir 	case util::MeasureUnit::INCH_10TH:		eVcl = MAP_10TH_INCH;	break;
1030*cdf0e10cSrcweir 	case util::MeasureUnit::INCH:			eVcl = MAP_INCH;		break;
1031*cdf0e10cSrcweir 	case util::MeasureUnit::POINT:			eVcl = MAP_POINT;		break;
1032*cdf0e10cSrcweir 	case util::MeasureUnit::TWIP:			eVcl = MAP_TWIP;		break;
1033*cdf0e10cSrcweir 	case util::MeasureUnit::PERCENT:		eVcl = MAP_RELATIVE;	break;
1034*cdf0e10cSrcweir 	default:
1035*cdf0e10cSrcweir 		return false;
1036*cdf0e10cSrcweir 	}
1037*cdf0e10cSrcweir 
1038*cdf0e10cSrcweir 	return true;
1039*cdf0e10cSrcweir }
1040*cdf0e10cSrcweir */
1041*cdf0e10cSrcweir 
1042*cdf0e10cSrcweir /** maps the vcl MapUnit enum to a API constant MeasureUnit.
1043*cdf0e10cSrcweir 	Returns false if conversion is not supported.
1044*cdf0e10cSrcweir */
1045*cdf0e10cSrcweir sal_Bool SvxMapUnitToMeasureUnit( const short eVcl, short& eApi ) throw()
1046*cdf0e10cSrcweir {
1047*cdf0e10cSrcweir 	switch( eVcl )
1048*cdf0e10cSrcweir 	{
1049*cdf0e10cSrcweir 	case MAP_100TH_MM:		eApi = util::MeasureUnit::MM_100TH;		break;
1050*cdf0e10cSrcweir 	case MAP_10TH_MM:		eApi = util::MeasureUnit::MM_10TH;		break;
1051*cdf0e10cSrcweir 	case MAP_MM:			eApi = util::MeasureUnit::MM;			break;
1052*cdf0e10cSrcweir 	case MAP_CM:			eApi = util::MeasureUnit::CM;			break;
1053*cdf0e10cSrcweir 	case MAP_1000TH_INCH:	eApi = util::MeasureUnit::INCH_1000TH;	break;
1054*cdf0e10cSrcweir 	case MAP_100TH_INCH:	eApi = util::MeasureUnit::INCH_100TH;	break;
1055*cdf0e10cSrcweir 	case MAP_10TH_INCH:		eApi = util::MeasureUnit::INCH_10TH;	break;
1056*cdf0e10cSrcweir 	case MAP_INCH:			eApi = util::MeasureUnit::INCH;			break;
1057*cdf0e10cSrcweir 	case MAP_POINT:			eApi = util::MeasureUnit::POINT;		break;
1058*cdf0e10cSrcweir 	case MAP_TWIP:			eApi = util::MeasureUnit::TWIP;			break;
1059*cdf0e10cSrcweir 	case MAP_RELATIVE:		eApi = util::MeasureUnit::PERCENT;		break;
1060*cdf0e10cSrcweir 	default:
1061*cdf0e10cSrcweir 		return false;
1062*cdf0e10cSrcweir 	}
1063*cdf0e10cSrcweir 
1064*cdf0e10cSrcweir 	return true;
1065*cdf0e10cSrcweir }
1066*cdf0e10cSrcweir 
1067*cdf0e10cSrcweir /** maps the API constant MeasureUnit to a vcl MapUnit enum.
1068*cdf0e10cSrcweir 	Returns false if conversion is not supported.
1069*cdf0e10cSrcweir */
1070*cdf0e10cSrcweir 
1071*cdf0e10cSrcweir sal_Bool SvxMeasureUnitToFieldUnit( const short eApi, short& eVcl ) throw()
1072*cdf0e10cSrcweir {
1073*cdf0e10cSrcweir 	switch( eApi )
1074*cdf0e10cSrcweir 	{
1075*cdf0e10cSrcweir 	case util::MeasureUnit::MM:			eVcl = FUNIT_MM;		break;
1076*cdf0e10cSrcweir 	case util::MeasureUnit::CM:			eVcl = FUNIT_CM;		break;
1077*cdf0e10cSrcweir 	case util::MeasureUnit::M:			eVcl = FUNIT_M;			break;
1078*cdf0e10cSrcweir 	case util::MeasureUnit::KM:			eVcl = FUNIT_KM;		break;
1079*cdf0e10cSrcweir 	case util::MeasureUnit::TWIP:		eVcl = FUNIT_TWIP;		break;
1080*cdf0e10cSrcweir 	case util::MeasureUnit::POINT:		eVcl = FUNIT_POINT;		break;
1081*cdf0e10cSrcweir 	case util::MeasureUnit::PICA:		eVcl = FUNIT_PICA;		break;
1082*cdf0e10cSrcweir 	case util::MeasureUnit::INCH:		eVcl = FUNIT_INCH;		break;
1083*cdf0e10cSrcweir 	case util::MeasureUnit::FOOT:		eVcl = FUNIT_FOOT;		break;
1084*cdf0e10cSrcweir 	case util::MeasureUnit::MILE:		eVcl = FUNIT_MILE;		break;
1085*cdf0e10cSrcweir 	case util::MeasureUnit::PERCENT:	eVcl = FUNIT_PERCENT;	break;
1086*cdf0e10cSrcweir 	case util::MeasureUnit::MM_100TH:	eVcl = FUNIT_100TH_MM;	break;
1087*cdf0e10cSrcweir 	default:
1088*cdf0e10cSrcweir 		return sal_False;
1089*cdf0e10cSrcweir 	}
1090*cdf0e10cSrcweir 
1091*cdf0e10cSrcweir 	return sal_True;
1092*cdf0e10cSrcweir }
1093*cdf0e10cSrcweir 
1094*cdf0e10cSrcweir /** maps the vcl MapUnit enum to a API constant MeasureUnit.
1095*cdf0e10cSrcweir 	Returns false if conversion is not supported.
1096*cdf0e10cSrcweir */
1097*cdf0e10cSrcweir sal_Bool SvxFieldUnitToMeasureUnit( const short eVcl, short& eApi ) throw()
1098*cdf0e10cSrcweir {
1099*cdf0e10cSrcweir 	switch( eVcl )
1100*cdf0e10cSrcweir 	{
1101*cdf0e10cSrcweir 	case FUNIT_MM:			eApi = util::MeasureUnit::MM;		break;
1102*cdf0e10cSrcweir 	case FUNIT_CM:			eApi = util::MeasureUnit::CM;		break;
1103*cdf0e10cSrcweir 	case FUNIT_M:			eApi = util::MeasureUnit::M;		break;
1104*cdf0e10cSrcweir 	case FUNIT_KM:			eApi = util::MeasureUnit::KM;		break;
1105*cdf0e10cSrcweir 	case FUNIT_TWIP:		eApi = util::MeasureUnit::TWIP;		break;
1106*cdf0e10cSrcweir 	case FUNIT_POINT:		eApi = util::MeasureUnit::POINT;	break;
1107*cdf0e10cSrcweir 	case FUNIT_PICA:		eApi = util::MeasureUnit::PICA;		break;
1108*cdf0e10cSrcweir 	case FUNIT_INCH:		eApi = util::MeasureUnit::INCH;		break;
1109*cdf0e10cSrcweir 	case FUNIT_FOOT:		eApi = util::MeasureUnit::FOOT;		break;
1110*cdf0e10cSrcweir 	case FUNIT_MILE:		eApi = util::MeasureUnit::MILE;		break;
1111*cdf0e10cSrcweir 	case FUNIT_PERCENT:		eApi = util::MeasureUnit::PERCENT;	break;
1112*cdf0e10cSrcweir 	case FUNIT_100TH_MM:	eApi = util::MeasureUnit::MM_100TH;	break;
1113*cdf0e10cSrcweir 	default:
1114*cdf0e10cSrcweir 		return sal_False;
1115*cdf0e10cSrcweir 	}
1116*cdf0e10cSrcweir 
1117*cdf0e10cSrcweir 	return sal_True;
1118*cdf0e10cSrcweir }
1119*cdf0e10cSrcweir 
1120*cdf0e10cSrcweir bool SvxUnoGetResourceRanges( const short nWhich, int& nApiResIds, int& nIntResIds, int& nCount ) throw()
1121*cdf0e10cSrcweir {
1122*cdf0e10cSrcweir 	switch( nWhich )
1123*cdf0e10cSrcweir 	{
1124*cdf0e10cSrcweir 	case XATTR_FILLBITMAP:
1125*cdf0e10cSrcweir 		nApiResIds = RID_SVXSTR_BMP_DEF_START;
1126*cdf0e10cSrcweir 		nIntResIds = RID_SVXSTR_BMP_START;
1127*cdf0e10cSrcweir 		nCount = RID_SVXSTR_BMP_DEF_END - RID_SVXSTR_BMP_DEF_START + 1;
1128*cdf0e10cSrcweir 		break;
1129*cdf0e10cSrcweir 
1130*cdf0e10cSrcweir 	case XATTR_LINEDASH:
1131*cdf0e10cSrcweir 		nApiResIds = RID_SVXSTR_DASH_DEF_START;
1132*cdf0e10cSrcweir 		nIntResIds = RID_SVXSTR_DASH_START;
1133*cdf0e10cSrcweir 		nCount = RID_SVXSTR_DASH_DEF_END - RID_SVXSTR_DASH_DEF_START + 1;
1134*cdf0e10cSrcweir 		break;
1135*cdf0e10cSrcweir 
1136*cdf0e10cSrcweir 	case XATTR_LINESTART:
1137*cdf0e10cSrcweir 	case XATTR_LINEEND:
1138*cdf0e10cSrcweir 		nApiResIds = RID_SVXSTR_LEND_DEF_START;
1139*cdf0e10cSrcweir 		nIntResIds = RID_SVXSTR_LEND_START;
1140*cdf0e10cSrcweir 		nCount = RID_SVXSTR_LEND_DEF_END - RID_SVXSTR_LEND_DEF_START + 1;
1141*cdf0e10cSrcweir 		break;
1142*cdf0e10cSrcweir 
1143*cdf0e10cSrcweir 	case XATTR_FILLGRADIENT:
1144*cdf0e10cSrcweir 		nApiResIds = RID_SVXSTR_GRDT_DEF_START;
1145*cdf0e10cSrcweir 		nIntResIds = RID_SVXSTR_GRDT_START;
1146*cdf0e10cSrcweir 		nCount = RID_SVXSTR_GRDT_DEF_END - RID_SVXSTR_GRDT_DEF_START + 1;
1147*cdf0e10cSrcweir 		break;
1148*cdf0e10cSrcweir 
1149*cdf0e10cSrcweir 	case XATTR_FILLHATCH:
1150*cdf0e10cSrcweir 		nApiResIds = RID_SVXSTR_HATCH_DEF_START;
1151*cdf0e10cSrcweir 		nIntResIds = RID_SVXSTR_HATCH_START;
1152*cdf0e10cSrcweir 		nCount = RID_SVXSTR_HATCH_DEF_END - RID_SVXSTR_HATCH_DEF_START + 1;
1153*cdf0e10cSrcweir 		break;
1154*cdf0e10cSrcweir 
1155*cdf0e10cSrcweir 	case XATTR_FILLFLOATTRANSPARENCE:
1156*cdf0e10cSrcweir 		nApiResIds = RID_SVXSTR_TRASNGR_DEF_START;
1157*cdf0e10cSrcweir 		nIntResIds = RID_SVXSTR_TRASNGR_START;
1158*cdf0e10cSrcweir 		nCount = RID_SVXSTR_TRASNGR_DEF_END - RID_SVXSTR_TRASNGR_DEF_START + 1;
1159*cdf0e10cSrcweir 		break;
1160*cdf0e10cSrcweir 
1161*cdf0e10cSrcweir 	default:
1162*cdf0e10cSrcweir 		return sal_False;
1163*cdf0e10cSrcweir 	}
1164*cdf0e10cSrcweir 
1165*cdf0e10cSrcweir 	return sal_True;
1166*cdf0e10cSrcweir }
1167*cdf0e10cSrcweir 
1168*cdf0e10cSrcweir /*sal_Int16 SvxUnoGetWhichIdForNamedProperty( const ::rtl::OUString & rPropName )
1169*cdf0e10cSrcweir {
1170*cdf0e10cSrcweir     sal_Int16 nWhich = 0;
1171*cdf0e10cSrcweir 
1172*cdf0e10cSrcweir     const SfxItemPropertyMapEntry* pMap = aSvxMapProvider.GetMap( SVXMAP_SHAPE );
1173*cdf0e10cSrcweir     if( pMap )
1174*cdf0e10cSrcweir     {
1175*cdf0e10cSrcweir         const SfxItemPropertyMapEntry* pFound = SfxItemPropertyMapEntry::getByName( pMap, rPropName );
1176*cdf0e10cSrcweir         if( pFound )
1177*cdf0e10cSrcweir             nWhich = pFound->nWID;
1178*cdf0e10cSrcweir     }
1179*cdf0e10cSrcweir 
1180*cdf0e10cSrcweir     return nWhich;
1181*cdf0e10cSrcweir } */
1182*cdf0e10cSrcweir 
1183*cdf0e10cSrcweir bool SvxUnoConvertResourceString( int nSourceResIds, int nDestResIds, int nCount, String& rString ) throw()
1184*cdf0e10cSrcweir {
1185*cdf0e10cSrcweir 	// first, calculate the search string length without an optional number behind the name
1186*cdf0e10cSrcweir 	xub_StrLen nLength = rString.Len();
1187*cdf0e10cSrcweir 	while( nLength > 0 )
1188*cdf0e10cSrcweir 	{
1189*cdf0e10cSrcweir 		const sal_Unicode nChar = rString.GetChar( nLength - 1 );
1190*cdf0e10cSrcweir 		if( (nChar < '0') || (nChar > '9') )
1191*cdf0e10cSrcweir 			break;
1192*cdf0e10cSrcweir 
1193*cdf0e10cSrcweir 		nLength--;
1194*cdf0e10cSrcweir 	}
1195*cdf0e10cSrcweir 
1196*cdf0e10cSrcweir 	// if we cut off a number, also cut of some spaces
1197*cdf0e10cSrcweir 	if( nLength != rString.Len() )
1198*cdf0e10cSrcweir 	{
1199*cdf0e10cSrcweir 		while( nLength > 0 )
1200*cdf0e10cSrcweir 		{
1201*cdf0e10cSrcweir 			const sal_Unicode nChar = rString.GetChar( nLength - 1 );
1202*cdf0e10cSrcweir 			if( nChar != ' ' )
1203*cdf0e10cSrcweir 				break;
1204*cdf0e10cSrcweir 
1205*cdf0e10cSrcweir 			nLength--;
1206*cdf0e10cSrcweir 		}
1207*cdf0e10cSrcweir 	}
1208*cdf0e10cSrcweir 
1209*cdf0e10cSrcweir 	const String aShortString( rString.Copy( 0, nLength ) );
1210*cdf0e10cSrcweir 
1211*cdf0e10cSrcweir 	int i;
1212*cdf0e10cSrcweir 	for( i = 0; i < nCount; i++ )
1213*cdf0e10cSrcweir 	{
1214*cdf0e10cSrcweir 		sal_uInt16 nResId = (sal_uInt16)(nSourceResIds + i);
1215*cdf0e10cSrcweir 		const ResId aRes( SVX_RES(nResId));
1216*cdf0e10cSrcweir 		const String aCompare( aRes );
1217*cdf0e10cSrcweir 		if( aShortString == aCompare )
1218*cdf0e10cSrcweir 		{
1219*cdf0e10cSrcweir 			sal_uInt16 nNewResId = (sal_uInt16)(nDestResIds + i);
1220*cdf0e10cSrcweir 			ResId aNewRes( SVX_RES( nNewResId ));
1221*cdf0e10cSrcweir 			rString.Replace( 0, aShortString.Len(), String( aNewRes ) );
1222*cdf0e10cSrcweir 			return sal_True;
1223*cdf0e10cSrcweir 		}
1224*cdf0e10cSrcweir 		else if( rString == aCompare )
1225*cdf0e10cSrcweir 		{
1226*cdf0e10cSrcweir 			sal_uInt16 nNewResId = (sal_uInt16)(nDestResIds + i);
1227*cdf0e10cSrcweir 			ResId aNewRes( SVX_RES( nNewResId ));
1228*cdf0e10cSrcweir 			rString = String( aNewRes );
1229*cdf0e10cSrcweir 			return sal_True;
1230*cdf0e10cSrcweir 		}
1231*cdf0e10cSrcweir 	}
1232*cdf0e10cSrcweir 
1233*cdf0e10cSrcweir 	return sal_False;
1234*cdf0e10cSrcweir }
1235*cdf0e10cSrcweir 
1236*cdf0e10cSrcweir static sal_uInt16 __READONLY_DATA SvxUnoColorNameDefResId[] =
1237*cdf0e10cSrcweir {
1238*cdf0e10cSrcweir 	RID_SVXSTR_BLUEGREY_DEF,
1239*cdf0e10cSrcweir 	RID_SVXSTR_BLACK_DEF,
1240*cdf0e10cSrcweir 	RID_SVXSTR_BLUE_DEF,
1241*cdf0e10cSrcweir 	RID_SVXSTR_GREEN_DEF,
1242*cdf0e10cSrcweir 	RID_SVXSTR_CYAN_DEF,
1243*cdf0e10cSrcweir 	RID_SVXSTR_RED_DEF,
1244*cdf0e10cSrcweir 	RID_SVXSTR_MAGENTA_DEF,
1245*cdf0e10cSrcweir 	RID_SVXSTR_BROWN_DEF,
1246*cdf0e10cSrcweir 	RID_SVXSTR_GREY_DEF,
1247*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTGREY_DEF,
1248*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTBLUE_DEF,
1249*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTGREEN_DEF,
1250*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTCYAN_DEF,
1251*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTRED_DEF,
1252*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTMAGENTA_DEF,
1253*cdf0e10cSrcweir 	RID_SVXSTR_YELLOW_DEF,
1254*cdf0e10cSrcweir 	RID_SVXSTR_WHITE_DEF,
1255*cdf0e10cSrcweir 	RID_SVXSTR_ORANGE_DEF,
1256*cdf0e10cSrcweir 	RID_SVXSTR_VIOLET_DEF,
1257*cdf0e10cSrcweir 	RID_SVXSTR_BORDEAUX_DEF,
1258*cdf0e10cSrcweir 	RID_SVXSTR_PALE_YELLOW_DEF,
1259*cdf0e10cSrcweir 	RID_SVXSTR_PALE_GREEN_DEF,
1260*cdf0e10cSrcweir 	RID_SVXSTR_DKVIOLET_DEF,
1261*cdf0e10cSrcweir 	RID_SVXSTR_SALMON_DEF,
1262*cdf0e10cSrcweir 	RID_SVXSTR_SEABLUE_DEF,
1263*cdf0e10cSrcweir 	RID_SVXSTR_COLOR_SUN_DEF,
1264*cdf0e10cSrcweir 	RID_SVXSTR_COLOR_CHART_DEF
1265*cdf0e10cSrcweir };
1266*cdf0e10cSrcweir 
1267*cdf0e10cSrcweir static sal_uInt16 __READONLY_DATA SvxUnoColorNameResId[] =
1268*cdf0e10cSrcweir {
1269*cdf0e10cSrcweir 	RID_SVXSTR_BLUEGREY,
1270*cdf0e10cSrcweir 	RID_SVXSTR_BLACK,
1271*cdf0e10cSrcweir 	RID_SVXSTR_BLUE,
1272*cdf0e10cSrcweir 	RID_SVXSTR_GREEN,
1273*cdf0e10cSrcweir 	RID_SVXSTR_CYAN,
1274*cdf0e10cSrcweir 	RID_SVXSTR_RED,
1275*cdf0e10cSrcweir 	RID_SVXSTR_MAGENTA,
1276*cdf0e10cSrcweir 	RID_SVXSTR_BROWN,
1277*cdf0e10cSrcweir 	RID_SVXSTR_GREY,
1278*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTGREY,
1279*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTBLUE,
1280*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTGREEN,
1281*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTCYAN,
1282*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTRED,
1283*cdf0e10cSrcweir 	RID_SVXSTR_LIGHTMAGENTA,
1284*cdf0e10cSrcweir 	RID_SVXSTR_YELLOW,
1285*cdf0e10cSrcweir 	RID_SVXSTR_WHITE,
1286*cdf0e10cSrcweir 	RID_SVXSTR_ORANGE,
1287*cdf0e10cSrcweir 	RID_SVXSTR_VIOLET,
1288*cdf0e10cSrcweir 	RID_SVXSTR_BORDEAUX,
1289*cdf0e10cSrcweir 	RID_SVXSTR_PALE_YELLOW,
1290*cdf0e10cSrcweir 	RID_SVXSTR_PALE_GREEN,
1291*cdf0e10cSrcweir 	RID_SVXSTR_DKVIOLET,
1292*cdf0e10cSrcweir 	RID_SVXSTR_SALMON,
1293*cdf0e10cSrcweir 	RID_SVXSTR_SEABLUE,
1294*cdf0e10cSrcweir 	RID_SVXSTR_COLOR_SUN,
1295*cdf0e10cSrcweir     RID_SVXSTR_COLOR_CHART
1296*cdf0e10cSrcweir };
1297*cdf0e10cSrcweir 
1298*cdf0e10cSrcweir bool SvxUnoConvertResourceString( sal_uInt16* pSourceResIds, sal_uInt16* pDestResIds, int nCount, String& rString ) throw()
1299*cdf0e10cSrcweir {
1300*cdf0e10cSrcweir 	int i = 0;
1301*cdf0e10cSrcweir 
1302*cdf0e10cSrcweir 	for( i = 0; i < nCount; i++ )
1303*cdf0e10cSrcweir 	{
1304*cdf0e10cSrcweir 		String aStrDefName = SVX_RESSTR( pSourceResIds[i] );
1305*cdf0e10cSrcweir 		if( rString.Search( aStrDefName ) == 0 )
1306*cdf0e10cSrcweir 		{
1307*cdf0e10cSrcweir 			String aReplace = SVX_RESSTR( pDestResIds[i] );
1308*cdf0e10cSrcweir 			rString.Replace( 0, aStrDefName.Len(), aReplace );
1309*cdf0e10cSrcweir 			return true;
1310*cdf0e10cSrcweir 		}
1311*cdf0e10cSrcweir 	}
1312*cdf0e10cSrcweir 
1313*cdf0e10cSrcweir 	return false;
1314*cdf0e10cSrcweir }
1315*cdf0e10cSrcweir 
1316*cdf0e10cSrcweir /** if the given name is a predefined name for the current language it is replaced by
1317*cdf0e10cSrcweir 	the corresponding api name.
1318*cdf0e10cSrcweir */
1319*cdf0e10cSrcweir void SvxUnogetApiNameForItem( const sal_Int16 nWhich, const String& rInternalName, rtl::OUString& rApiName ) throw()
1320*cdf0e10cSrcweir {
1321*cdf0e10cSrcweir #ifndef SVX_LIGHT
1322*cdf0e10cSrcweir 	String aNew = rInternalName;
1323*cdf0e10cSrcweir 
1324*cdf0e10cSrcweir 	if( nWhich == XATTR_LINECOLOR )
1325*cdf0e10cSrcweir 	{
1326*cdf0e10cSrcweir 		if( SvxUnoConvertResourceString( (sal_uInt16*)SvxUnoColorNameResId, (sal_uInt16*)SvxUnoColorNameDefResId, sizeof( SvxUnoColorNameResId ) / sizeof( sal_uInt16 ), aNew ) )
1327*cdf0e10cSrcweir 		{
1328*cdf0e10cSrcweir 			rApiName = aNew;
1329*cdf0e10cSrcweir 			return;
1330*cdf0e10cSrcweir 		}
1331*cdf0e10cSrcweir 	}
1332*cdf0e10cSrcweir 	else
1333*cdf0e10cSrcweir 	{
1334*cdf0e10cSrcweir 		int nApiResIds;
1335*cdf0e10cSrcweir 		int nIntResIds;
1336*cdf0e10cSrcweir 		int nCount;
1337*cdf0e10cSrcweir 
1338*cdf0e10cSrcweir 		if( SvxUnoGetResourceRanges( nWhich, nApiResIds, nIntResIds, nCount ) )
1339*cdf0e10cSrcweir 		{
1340*cdf0e10cSrcweir 			if(SvxUnoConvertResourceString( nIntResIds, nApiResIds, nCount, aNew ) )
1341*cdf0e10cSrcweir 			{
1342*cdf0e10cSrcweir 				rApiName = aNew;
1343*cdf0e10cSrcweir 				return;
1344*cdf0e10cSrcweir 			}
1345*cdf0e10cSrcweir 		}
1346*cdf0e10cSrcweir 	}
1347*cdf0e10cSrcweir #endif
1348*cdf0e10cSrcweir 
1349*cdf0e10cSrcweir 	// just use previous name, if nothing else was found.
1350*cdf0e10cSrcweir 	rApiName = rInternalName;
1351*cdf0e10cSrcweir }
1352*cdf0e10cSrcweir 
1353*cdf0e10cSrcweir /** if the given name is a predefined api name it is replaced by the predefined name
1354*cdf0e10cSrcweir 	for the current	language.
1355*cdf0e10cSrcweir */
1356*cdf0e10cSrcweir void SvxUnogetInternalNameForItem( const sal_Int16 nWhich, const rtl::OUString& rApiName, String& rInternalName ) throw()
1357*cdf0e10cSrcweir {
1358*cdf0e10cSrcweir #ifndef SVX_LIGHT
1359*cdf0e10cSrcweir 	String aNew = rApiName;
1360*cdf0e10cSrcweir 
1361*cdf0e10cSrcweir 	if( nWhich == XATTR_LINECOLOR )
1362*cdf0e10cSrcweir 	{
1363*cdf0e10cSrcweir 		if( SvxUnoConvertResourceString( (sal_uInt16*)SvxUnoColorNameDefResId, (sal_uInt16*)SvxUnoColorNameResId, sizeof( SvxUnoColorNameResId ) / sizeof( sal_uInt16 ), aNew ) )
1364*cdf0e10cSrcweir 		{
1365*cdf0e10cSrcweir 			rInternalName = aNew;
1366*cdf0e10cSrcweir 			return;
1367*cdf0e10cSrcweir 		}
1368*cdf0e10cSrcweir 	}
1369*cdf0e10cSrcweir 	else
1370*cdf0e10cSrcweir 	{
1371*cdf0e10cSrcweir 		int nApiResIds;
1372*cdf0e10cSrcweir 		int nIntResIds;
1373*cdf0e10cSrcweir 		int nCount;
1374*cdf0e10cSrcweir 
1375*cdf0e10cSrcweir 		if( SvxUnoGetResourceRanges( nWhich, nApiResIds, nIntResIds, nCount ) )
1376*cdf0e10cSrcweir 		{
1377*cdf0e10cSrcweir 			if(SvxUnoConvertResourceString( nApiResIds, nIntResIds, nCount, aNew ) )
1378*cdf0e10cSrcweir 			{
1379*cdf0e10cSrcweir 				rInternalName = aNew;
1380*cdf0e10cSrcweir 				return;
1381*cdf0e10cSrcweir 			}
1382*cdf0e10cSrcweir 		}
1383*cdf0e10cSrcweir 	}
1384*cdf0e10cSrcweir #endif // !SVX_LIGHT
1385*cdf0e10cSrcweir 
1386*cdf0e10cSrcweir 	// just use previous name, if nothing else was found.
1387*cdf0e10cSrcweir 	rInternalName = rApiName;
1388*cdf0e10cSrcweir }
1389*cdf0e10cSrcweir 
1390*cdf0e10cSrcweir ///////////////////////////////////////////////////////////////////////
1391*cdf0e10cSrcweir 
1392*cdf0e10cSrcweir comphelper::PropertySetInfo* SvxPropertySetInfoPool::getOrCreate( sal_Int32 nServiceId ) throw()
1393*cdf0e10cSrcweir {
1394*cdf0e10cSrcweir 	vos::OGuard aGuard( Application::GetSolarMutex() );
1395*cdf0e10cSrcweir 
1396*cdf0e10cSrcweir 	if( nServiceId > SVXUNO_SERVICEID_LASTID )
1397*cdf0e10cSrcweir 	{
1398*cdf0e10cSrcweir 		DBG_ERROR( "unknown service id!" );
1399*cdf0e10cSrcweir 		return NULL;
1400*cdf0e10cSrcweir 	}
1401*cdf0e10cSrcweir 
1402*cdf0e10cSrcweir 	if( mpInfos[ nServiceId ] == NULL )
1403*cdf0e10cSrcweir 	{
1404*cdf0e10cSrcweir 		mpInfos[nServiceId] = new comphelper::PropertySetInfo();
1405*cdf0e10cSrcweir 		mpInfos[nServiceId]->acquire();
1406*cdf0e10cSrcweir 
1407*cdf0e10cSrcweir 		switch( nServiceId )
1408*cdf0e10cSrcweir 		{
1409*cdf0e10cSrcweir 		case SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS:
1410*cdf0e10cSrcweir 			mpInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS]->add( ImplGetSvxDrawingDefaultsPropertyMap() );
1411*cdf0e10cSrcweir 			break;
1412*cdf0e10cSrcweir 		case SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER:
1413*cdf0e10cSrcweir 			mpInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER]->add( ImplGetSvxDrawingDefaultsPropertyMap() );
1414*cdf0e10cSrcweir 			mpInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER]->remove( OUString( RTL_CONSTASCII_USTRINGPARAM( UNO_NAME_EDIT_PARA_IS_HANGING_PUNCTUATION ) ) );
1415*cdf0e10cSrcweir             // OD 13.10.2003 #i18732# - add property map for writer item 'IsFollowingTextFlow'
1416*cdf0e10cSrcweir             mpInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER]->add( ImplGetAdditionalWriterDrawingDefaultsPropertyMap() );
1417*cdf0e10cSrcweir             break;
1418*cdf0e10cSrcweir 
1419*cdf0e10cSrcweir 		default:
1420*cdf0e10cSrcweir 			DBG_ERROR( "unknown service id!" );
1421*cdf0e10cSrcweir 		}
1422*cdf0e10cSrcweir 	}
1423*cdf0e10cSrcweir 
1424*cdf0e10cSrcweir 	return mpInfos[ nServiceId ];
1425*cdf0e10cSrcweir }
1426*cdf0e10cSrcweir 
1427*cdf0e10cSrcweir comphelper::PropertySetInfo* SvxPropertySetInfoPool::mpInfos[SVXUNO_SERVICEID_LASTID+1] = { NULL };
1428*cdf0e10cSrcweir 
1429