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