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