/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "shapeimpl.hxx" #include using namespace ::com::sun::star; using namespace ::com::sun::star::beans::PropertyAttribute; using ::com::sun::star::drawing::TextVerticalAdjust; static SfxItemPropertyMapEntry const * ImplGetSvxShapePropertyMap() { static SfxItemPropertyMapEntry const aShapePropertyMap_Impl[] = { EDGERADIUS_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aShapePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxTextShapePropertyMap() { static SfxItemPropertyMapEntry const aTextShapePropertyMap_Impl[] = { EDGERADIUS_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES_NO_SHEAR LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aTextShapePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxConnectorPropertyMap() { static SfxItemPropertyMapEntry const aConnectorPropertyMap_Impl[] = { SPECIAL_CONNECTOR_PROPERTIES EDGERADIUS_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aConnectorPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxDimensioningPropertyMap() { static SfxItemPropertyMapEntry const aDimensioningPropertyMap_Impl[] = { SPECIAL_DIMENSIONING_PROPERTIES EDGERADIUS_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aDimensioningPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxCirclePropertyMap() { static SfxItemPropertyMapEntry const aCirclePropertyMap_Impl[] = { SPECIAL_CIRCLE_PROPERTIES EDGERADIUS_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aCirclePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxPolyPolygonPropertyMap() { static SfxItemPropertyMapEntry const aPolyPolygonPropertyMap_Impl[] = { { OUString("Geometry"), OWN_ATTR_BASE_GEOMETRY, cppu::UnoType::get(), 0, 0 }, SPECIAL_POLYGON_PROPERTIES SPECIAL_POLYPOLYGON_PROPERTIES SPECIAL_POLYPOLYGONBEZIER_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aPolyPolygonPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxGraphicObjectPropertyMap() { static SfxItemPropertyMapEntry const aGraphicObjectPropertyMap_Impl[] = { SPECIAL_GRAPHOBJ_PROPERTIES // #i25616# FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES // #i118485# Full properties now, shear included MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("IsMirrored"), OWN_ATTR_MIRRORED, cppu::UnoType::get(), 0, 0}, { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString("GraphicStream"), OWN_ATTR_GRAPHIC_STREAM, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aGraphicObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvx3DSceneObjectPropertyMap() { static SfxItemPropertyMapEntry const a3DSceneObjectPropertyMap_Impl[] = { SPECIAL_3DSCENEOBJECT_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES { OUString(), 0, css::uno::Type(), 0, 0 } }; return a3DSceneObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvx3DCubeObjectPropertyMap() { static SfxItemPropertyMapEntry const a3DCubeObjectPropertyMap_Impl[] = { SPECIAL_3DCUBEOBJECT_PROPERTIES MISC_3D_OBJ_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return a3DCubeObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvx3DSphereObjectPropertyMap() { static SfxItemPropertyMapEntry const a3DSphereObjectPropertyMap_Impl[] = { SPECIAL_3DSPHEREOBJECT_PROPERTIES MISC_3D_OBJ_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return a3DSphereObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvx3DLatheObjectPropertyMap() { static SfxItemPropertyMapEntry const a3DLatheObjectPropertyMap_Impl[] = { SPECIAL_3DLATHEOBJECT_PROPERTIES // #107245# New 3D properties which are possible for lathe and extrude 3d objects SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES SPECIAL_3DBACKSCALE_PROPERTIES MISC_3D_OBJ_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return a3DLatheObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvx3DExtrudeObjectPropertyMap() { static SfxItemPropertyMapEntry const a3DExtrudeObjectPropertyMap_Impl[] = { SPECIAL_3DEXTRUDEOBJECT_PROPERTIES // #107245# New 3D properties which are possible for lathe and extrude 3d objects SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES SPECIAL_3DBACKSCALE_PROPERTIES MISC_3D_OBJ_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return a3DExtrudeObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvx3DPolygonObjectPropertyMap() { static SfxItemPropertyMapEntry const a3DPolygonObjectPropertyMap_Impl[] = { SPECIAL_3DPOLYGONOBJECT_PROPERTIES MISC_3D_OBJ_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return a3DPolygonObjectPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxAllPropertyMap() { static SfxItemPropertyMapEntry const aAllPropertyMap_Impl[] = { SHADOW_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END FILL_PROPERTIES EDGERADIUS_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SPECIAL_CONNECTOR_PROPERTIES SPECIAL_DIMENSIONING_PROPERTIES SPECIAL_CIRCLE_PROPERTIES SPECIAL_POLYGON_PROPERTIES SPECIAL_POLYPOLYGON_PROPERTIES SPECIAL_POLYPOLYGONBEZIER_PROPERTIES SPECIAL_GRAPHOBJ_PROPERTIES SPECIAL_3DSCENEOBJECT_PROPERTIES MISC_3D_OBJ_PROPERTIES SPECIAL_3DCUBEOBJECT_PROPERTIES SPECIAL_3DSPHEREOBJECT_PROPERTIES SPECIAL_3DLATHEOBJECT_PROPERTIES SPECIAL_3DEXTRUDEOBJECT_PROPERTIES // #107245# New 3D properties which are possible for lathe and extrude 3d objects SPECIAL_3DLATHEANDEXTRUDEOBJ_PROPERTIES SPECIAL_3DBACKSCALE_PROPERTIES SPECIAL_3DPOLYGONOBJECT_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, { OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aAllPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxGroupPropertyMap() { static SfxItemPropertyMapEntry const aGroupPropertyMap_Impl[] = { SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES { OUString(), 0, css::uno::Type(), 0, 0 } }; return aGroupPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxOle2PropertyMap() { static SfxItemPropertyMapEntry const aOle2PropertyMap_Impl[] = { // #i118485# Adding properties for line, fill, text, shadow, fontwork, rotate, shear FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES FONTWORK_PROPERTIES { OUString("ThumbnailGraphic"), OWN_ATTR_THUMBNAIL , cppu::UnoType::get(), 0, 0 }, { OUString("Model"), OWN_ATTR_OLEMODEL , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("EmbeddedObject"), OWN_ATTR_OLE_EMBEDDED_OBJECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("EmbeddedObjectNoNewClient"),OWN_ATTR_OLE_EMBEDDED_OBJECT_NONEWCLIENT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("OriginalSize"), OWN_ATTR_OLESIZE , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("CLSID"), OWN_ATTR_CLSID , cppu::UnoType::get(), 0, 0 }, { OUString("IsInternal"), OWN_ATTR_INTERNAL_OLE , cppu::UnoType::get() , css::beans::PropertyAttribute::READONLY, 0}, { OUString("VisibleArea"), OWN_ATTR_OLE_VISAREA , cppu::UnoType::get(), 0, 0}, { OUString("Aspect"), OWN_ATTR_OLE_ASPECT , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_OLE2_PERSISTNAME), OWN_ATTR_PERSISTNAME , cppu::UnoType::get(), 0, 0 }, { OUString("LinkURL"), OWN_ATTR_OLE_LINKURL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_GRAPHOBJ_GRAPHIC), OWN_ATTR_VALUE_GRAPHIC , cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aOle2PropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxPluginPropertyMap() { static SfxItemPropertyMapEntry const aPluginPropertyMap_Impl[] = { { OUString("PluginMimeType"), OWN_ATTR_PLUGIN_MIMETYPE , cppu::UnoType::get(), 0, 0}, { OUString("PluginURL"), OWN_ATTR_PLUGIN_URL , cppu::UnoType::get(), 0, 0}, { OUString("PluginCommands"), OWN_ATTR_PLUGIN_COMMANDS , cppu::UnoType>::get(), 0, 0}, { OUString("Transformation"), OWN_ATTR_TRANSFORMATION , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_OLE2_METAFILE), OWN_ATTR_METAFILE , cppu::UnoType>::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("ThumbnailGraphic"), OWN_ATTR_THUMBNAIL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_OLE2_PERSISTNAME), OWN_ATTR_PERSISTNAME , cppu::UnoType::get(), 0, 0 }, { OUString("LinkURL"), OWN_ATTR_OLE_LINKURL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("VisibleArea"), OWN_ATTR_OLE_VISAREA , cppu::UnoType::get(), 0, 0}, { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, // #i68101# { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aPluginPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxFramePropertyMap() { //TODO/LATER: new properties for ScrollingMode and DefaultBorder static SfxItemPropertyMapEntry const aFramePropertyMap_Impl[] = { { OUString("FrameURL"), OWN_ATTR_FRAME_URL , cppu::UnoType::get(), 0, 0}, { OUString("FrameName"), OWN_ATTR_FRAME_NAME , cppu::UnoType::get(), 0, 0}, { OUString("FrameIsAutoScroll"), OWN_ATTR_FRAME_ISAUTOSCROLL , cppu::UnoType::get() , css::beans::PropertyAttribute::MAYBEVOID, 0}, { OUString("FrameIsBorder"), OWN_ATTR_FRAME_ISBORDER , cppu::UnoType::get() , 0, 0}, { OUString("FrameMarginWidth"), OWN_ATTR_FRAME_MARGIN_WIDTH , cppu::UnoType::get(), 0, 0}, { OUString("FrameMarginHeight"), OWN_ATTR_FRAME_MARGIN_HEIGHT, cppu::UnoType::get(), 0, 0}, { OUString("Transformation"), OWN_ATTR_TRANSFORMATION , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_OLE2_METAFILE), OWN_ATTR_METAFILE , cppu::UnoType>::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("ThumbnailGraphic"), OWN_ATTR_THUMBNAIL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_OLE2_PERSISTNAME), OWN_ATTR_PERSISTNAME , cppu::UnoType::get(), 0, 0 }, { OUString("LinkURL"), OWN_ATTR_OLE_LINKURL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("VisibleArea"), OWN_ATTR_OLE_VISAREA , cppu::UnoType::get(), 0, 0}, { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, // #i68101# { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aFramePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxAppletPropertyMap() { static SfxItemPropertyMapEntry const aAppletPropertyMap_Impl[] = { { OUString("AppletCodeBase"), OWN_ATTR_APPLET_CODEBASE , cppu::UnoType::get(), 0, 0}, { OUString("AppletName"), OWN_ATTR_APPLET_NAME , cppu::UnoType::get(), 0, 0}, { OUString("AppletCode"), OWN_ATTR_APPLET_CODE , cppu::UnoType::get(), 0, 0}, { OUString("AppletCommands"), OWN_ATTR_APPLET_COMMANDS , cppu::UnoType>::get(), 0, 0}, { OUString("AppletDocBase"), OWN_ATTR_APPLET_DOCBASE , cppu::UnoType::get(), 0, 0}, { OUString("AppletIsScript"), OWN_ATTR_APPLET_ISSCRIPT , cppu::UnoType::get(), 0, 0 }, { OUString("Transformation"), OWN_ATTR_TRANSFORMATION , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_OLE2_METAFILE), OWN_ATTR_METAFILE , cppu::UnoType>::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("ThumbnailGraphic"), OWN_ATTR_THUMBNAIL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_OLE2_PERSISTNAME), OWN_ATTR_PERSISTNAME , cppu::UnoType::get(), 0, 0 }, { OUString("LinkURL"), OWN_ATTR_OLE_LINKURL , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("VisibleArea"), OWN_ATTR_OLE_VISAREA , cppu::UnoType::get(), 0, 0}, { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, // #i68101# { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aAppletPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxControlShapePropertyMap() { static SfxItemPropertyMapEntry const aControlPropertyMap_Impl[] = { // the following properties are mapped to the XControl Model of this shape { OUString(UNO_NAME_EDIT_CHAR_FONTNAME), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_FONTSTYLENAME), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_FONTFAMILY), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_FONTCHARSET), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_HEIGHT), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_FONTPITCH), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_POSTURE), 0, cppu::UnoType::get(),0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_WEIGHT), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_UNDERLINE), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_STRIKEOUT), 0, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_EDIT_CHAR_CASEMAP), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_CHAR_COLOR), 0, cppu::UnoType::get(), 0, 0 }, { OUString("CharBackColor"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("CharBackTransparent"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("CharRelief"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("CharUnderlineColor"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("CharKerning"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("CharWordMode"), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_EDIT_PARA_ADJUST), 0, cppu::UnoType::get(), 0, 0 }, { OUString("TextVerticalAdjust"), 0, cppu::UnoType::get(), MAYBEVOID, 0 }, { OUString("ControlBackground"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("ControlBorder"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("ControlBorderColor"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("ControlSymbolColor"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("ImageScaleMode"), 0, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString("ControlTextEmphasis"), 0, cppu::UnoType::get(), 0, 0 }, { OUString("ControlWritingMode"), 0, cppu::UnoType< sal_Int16 >::get(), 0, 0}, // the following properties are handled by SvxShape { OUString("Transformation"), OWN_ATTR_TRANSFORMATION , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, {OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, // #i68101# { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, // #i112587# { OUString(UNO_NAME_MISC_OBJ_PRINTABLE), SDRATTR_OBJPRINTABLE , cppu::UnoType::get(), 0, 0}, { OUString("Visible"), SDRATTR_OBJVISIBLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_INTEROPGRABBAG), OWN_ATTR_INTEROPGRABBAG, cppu::UnoType>::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aControlPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxPageShapePropertyMap() { static SfxItemPropertyMapEntry const aPageShapePropertyMap_Impl[] = { { OUString("PageNumber"), OWN_ATTR_PAGE_NUMBER , cppu::UnoType::get(), 0, 0}, { OUString("Transformation"), OWN_ATTR_TRANSFORMATION , cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME),SDRATTR_LAYERNAME , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, // #i68101# { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aPageShapePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxCaptionPropertyMap() { static SfxItemPropertyMapEntry const aCaptionPropertyMap_Impl[] = { { OUString("CaptionPoint"), OWN_ATTR_CAPTION_POINT, cppu::UnoType::get(), 0, 0 }, { OUString("CaptionType"), SDRATTR_CAPTIONTYPE, cppu::UnoType::get(), 0, 0}, { OUString("CaptionIsFixedAngle"), SDRATTR_CAPTIONFIXEDANGLE, cppu::UnoType::get(), 0, 0}, { OUString("CaptionAngle"), SDRATTR_CAPTIONANGLE, cppu::UnoType::get(), 0, 0}, { OUString("CaptionGap"), SDRATTR_CAPTIONGAP, cppu::UnoType::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, { OUString("CaptionEscapeDirection"), SDRATTR_CAPTIONESCDIR, cppu::UnoType::get(), 0, 0}, { OUString("CaptionIsEscapeRelative"), SDRATTR_CAPTIONESCISREL, cppu::UnoType::get(), 0, 0}, { OUString("CaptionEscapeRelative"), SDRATTR_CAPTIONESCREL, cppu::UnoType::get(), 0, 0}, { OUString("CaptionEscapeAbsolute"), SDRATTR_CAPTIONESCABS, cppu::UnoType::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, { OUString("CaptionLineLength"), SDRATTR_CAPTIONLINELEN, cppu::UnoType::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, { OUString("CaptionIsFitLineLength"), SDRATTR_CAPTIONFITLINELEN, cppu::UnoType::get(), 0, 0}, EDGERADIUS_PROPERTIES FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES // #FontWork# FONTWORK_PROPERTIES { OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, {OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aCaptionPropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxCustomShapePropertyMap() { static SfxItemPropertyMapEntry const aCustomShapePropertyMap_Impl[] = { { OUString("CustomShapeEngine"), SDRATTR_CUSTOMSHAPE_ENGINE, cppu::UnoType::get(), 0, 0 }, { OUString("CustomShapeData"), SDRATTR_CUSTOMSHAPE_DATA, cppu::UnoType::get(), 0, 0 }, { OUString("CustomShapeGeometry"), SDRATTR_CUSTOMSHAPE_GEOMETRY, cppu::UnoType>::get(), 0, 0 }, FILL_PROPERTIES LINE_PROPERTIES LINE_PROPERTIES_START_END SHAPE_DESCRIPTOR_PROPERTIES MISC_OBJ_PROPERTIES LINKTARGET_PROPERTIES SHADOW_PROPERTIES TEXT_PROPERTIES {OUString("UserDefinedAttributes"), SDRATTR_XMLATTRIBUTES, cppu::UnoType::get(), 0, 0}, {OUString("ParaUserDefinedAttributes"), EE_PARA_XMLATTRIBS, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aCustomShapePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxMediaShapePropertyMap() { static SfxItemPropertyMapEntry const aMediaShapePropertyMap_Impl[] = { { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME), SDRATTR_LAYERNAME, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("Transformation"), OWN_ATTR_TRANSFORMATION, cppu::UnoType::get(), 0, 0 }, { OUString("MediaURL"), OWN_ATTR_MEDIA_URL, cppu::UnoType::get(), 0, 0}, { OUString("PreferredSize"), OWN_ATTR_MEDIA_PREFERREDSIZE, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("Loop"), OWN_ATTR_MEDIA_LOOP, cppu::UnoType::get(), 0, 0}, { OUString("Mute"), OWN_ATTR_MEDIA_MUTE, cppu::UnoType::get(), 0, 0}, { OUString("VolumeDB"), OWN_ATTR_MEDIA_VOLUMEDB, cppu::UnoType::get(), 0, 0}, { OUString("Zoom"), OWN_ATTR_MEDIA_ZOOM, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, // #i68101# { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, {OUString("PrivateStream"), OWN_ATTR_MEDIA_STREAM, cppu::UnoType::get(), 0, 0}, {OUString("PrivateTempFileURL"), OWN_ATTR_MEDIA_TEMPFILEURL, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("MediaMimeType"), OWN_ATTR_MEDIA_MIMETYPE, cppu::UnoType::get(), 0, 0}, { OUString("FallbackGraphic"), OWN_ATTR_FALLBACK_GRAPHIC, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aMediaShapePropertyMap_Impl; } static SfxItemPropertyMapEntry const * ImplGetSvxTableShapePropertyMap() { static SfxItemPropertyMapEntry const aTableShapePropertyMap_Impl[] = { SHADOW_PROPERTIES { OUString(UNO_NAME_MISC_OBJ_ZORDER), OWN_ATTR_ZORDER, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERID), SDRATTR_LAYERID, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_LAYERNAME), SDRATTR_LAYERNAME, cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_LINKDISPLAYBITMAP), OWN_ATTR_LDBITMAP, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_LINKDISPLAYNAME), OWN_ATTR_LDNAME, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("Transformation"), OWN_ATTR_TRANSFORMATION, cppu::UnoType::get(), 0, 0 }, { OUString(UNO_NAME_MISC_OBJ_MOVEPROTECT), SDRATTR_OBJMOVEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_SIZEPROTECT), SDRATTR_OBJSIZEPROTECT, cppu::UnoType::get(),0, 0}, { OUString(UNO_NAME_MISC_OBJ_BOUNDRECT), OWN_ATTR_BOUNDRECT, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_MISC_OBJ_NAME), SDRATTR_OBJECTNAME, cppu::UnoType::get(), 0, 0}, { OUString("UINameSingular"), OWN_ATTR_UINAME_SINGULAR , ::cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , cppu::UnoType::get(), 0, 0}, { OUString(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , cppu::UnoType::get(), 0, 0}, { OUString("Model"), OWN_ATTR_OLEMODEL , cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString("TableTemplate"), OWN_ATTR_TABLETEMPLATE , cppu::UnoType::get(), 0, 0}, { OUString("UseFirstRowStyle"), OWN_ATTR_TABLETEMPLATE_FIRSTROW, cppu::UnoType::get(),0, 0}, { OUString("UseLastRowStyle"), OWN_ATTR_TABLETEMPLATE_LASTROW, cppu::UnoType::get(),0, 0}, { OUString("UseFirstColumnStyle"), OWN_ATTR_TABLETEMPLATE_FIRSTCOLUMN, cppu::UnoType::get(),0, 0}, { OUString("UseLastColumnStyle"), OWN_ATTR_TABLETEMPLATE_LASTCOLUMN, cppu::UnoType::get(),0, 0}, { OUString("UseBandingRowStyle"), OWN_ATTR_TABLETEMPLATE_BANDINGROWS, cppu::UnoType::get(),0, 0}, { OUString("UseBandingColumnStyle"), OWN_ATTR_TABLETEMPLATE_BANDINGCOULUMNS, cppu::UnoType::get(),0, 0}, { OUString("ReplacementGraphic"), OWN_ATTR_REPLACEMENT_GRAPHIC, cppu::UnoType::get(), css::beans::PropertyAttribute::READONLY, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aTableShapePropertyMap_Impl; } static comphelper::PropertyMapEntry const * ImplGetSvxDrawingDefaultsPropertyMap() { static comphelper::PropertyMapEntry const aSvxDrawingDefaultsPropertyMap_Impl[] = { SHADOW_PROPERTIES LINE_PROPERTIES_DEFAULTS FILL_PROPERTIES_BMP FILL_PROPERTIES_DEFAULTS EDGERADIUS_PROPERTIES TEXT_PROPERTIES_DEFAULTS CONNECTOR_PROPERTIES SPECIAL_DIMENSIONING_PROPERTIES_DEFAULTS MISC_3D_OBJ_PROPERTIES SPECIAL_3DBACKSCALE_PROPERTIES { OUString(), 0, css::uno::Type(), 0, 0 } }; return aSvxDrawingDefaultsPropertyMap_Impl; } static comphelper::PropertyMapEntry const * ImplGetAdditionalWriterDrawingDefaultsPropertyMap() { static comphelper::PropertyMapEntry const aSvxAdditionalDefaultsPropertyMap_Impl[] = { { OUString("IsFollowingTextFlow"), SID_SW_FOLLOW_TEXT_FLOW, cppu::UnoType::get(), 0, 0}, { OUString(), 0, css::uno::Type(), 0, 0 } }; return aSvxAdditionalDefaultsPropertyMap_Impl; } typedef std::unordered_map< OUString, sal_uInt32 > UHashMapImpl; namespace { const UHashMapImpl& GetUHashImpl() { static UHashMapImpl const aImpl { { "com.sun.star.drawing.RectangleShape", OBJ_RECT }, { "com.sun.star.drawing.EllipseShape", OBJ_CIRC }, { "com.sun.star.drawing.ControlShape", OBJ_UNO }, { "com.sun.star.drawing.ConnectorShape", OBJ_EDGE }, { "com.sun.star.drawing.MeasureShape", OBJ_MEASURE }, { "com.sun.star.drawing.LineShape", OBJ_LINE }, { "com.sun.star.drawing.PolyPolygonShape", OBJ_POLY }, { "com.sun.star.drawing.PolyLineShape", OBJ_PLIN }, { "com.sun.star.drawing.OpenBezierShape", OBJ_PATHLINE }, { "com.sun.star.drawing.ClosedBezierShape", OBJ_PATHFILL }, { "com.sun.star.drawing.OpenFreeHandShape", OBJ_FREELINE }, { "com.sun.star.drawing.ClosedFreeHandShape", OBJ_FREEFILL }, { "com.sun.star.drawing.PolyPolygonPathShape", OBJ_PATHPOLY }, { "com.sun.star.drawing.PolyLinePathShape", OBJ_PATHPLIN }, { "com.sun.star.drawing.GraphicObjectShape", OBJ_GRAF }, { "com.sun.star.drawing.GroupShape", OBJ_GRUP }, { "com.sun.star.drawing.TextShape", OBJ_TEXT }, { "com.sun.star.drawing.OLE2Shape", OBJ_OLE2 }, { "com.sun.star.drawing.PageShape", OBJ_PAGE }, { "com.sun.star.drawing.CaptionShape", OBJ_CAPTION }, { "com.sun.star.drawing.FrameShape", OBJ_FRAME }, { "com.sun.star.drawing.PluginShape", OBJ_OLE2_PLUGIN }, { "com.sun.star.drawing.AppletShape", OBJ_OLE2_APPLET }, { "com.sun.star.drawing.CustomShape", OBJ_CUSTOMSHAPE }, { "com.sun.star.drawing.MediaShape", OBJ_MEDIA }, { "com.sun.star.drawing.Shape3DSceneObject", E3D_SCENE_ID | E3D_INVENTOR_FLAG }, { "com.sun.star.drawing.Shape3DCubeObject", E3D_CUBEOBJ_ID | E3D_INVENTOR_FLAG }, { "com.sun.star.drawing.Shape3DSphereObject", E3D_SPHEREOBJ_ID | E3D_INVENTOR_FLAG }, { "com.sun.star.drawing.Shape3DLatheObject", E3D_LATHEOBJ_ID | E3D_INVENTOR_FLAG }, { "com.sun.star.drawing.Shape3DExtrudeObject", E3D_EXTRUDEOBJ_ID | E3D_INVENTOR_FLAG }, { "com.sun.star.drawing.Shape3DPolygonObject", E3D_POLYGONOBJ_ID | E3D_INVENTOR_FLAG }, }; return aImpl; } } OUString UHashMap::getNameFromId(sal_uInt32 nId) { const UHashMapImpl &rMap = GetUHashImpl(); auto it = std::find_if(rMap.begin(), rMap.end(), [nId](const UHashMapImpl::value_type& rEntry) { return rEntry.second == nId; }); if (it != rMap.end()) return it->first; OSL_FAIL("[CL] unknown SdrObject identifier"); return OUString(); } uno::Sequence< OUString > UHashMap::getServiceNames() { return comphelper::mapKeysToSequence( GetUHashImpl() ); } sal_uInt32 UHashMap::getId( const OUString& rCompareString ) { const UHashMapImpl &rMap = GetUHashImpl(); UHashMapImpl::const_iterator it = rMap.find( rCompareString ); if( it == rMap.end() ) return UHASHMAP_NOTFOUND; else return it->second; } struct theSvxMapProvider : public rtl::Static { }; SvxUnoPropertyMapProvider& getSvxMapProvider() { return theSvxMapProvider::get(); } SvxUnoPropertyMapProvider::SvxUnoPropertyMapProvider() { for(sal_uInt16 i=0;i 0 ) { const sal_Unicode nChar = rString[ nLength - 1 ]; if( (nChar < '0') || (nChar > '9') ) break; nLength--; } // if we cut off a number, also cut of some spaces if( nLength != rString.getLength() ) { while( nLength > 0 ) { const sal_Unicode nChar = rString[ nLength - 1 ]; if( nChar != ' ' ) break; nLength--; } } const OUString aShortString( rString.copy( 0, nLength ) ); for (int i = 0; i < nCount; ++i) { if (bToApi) { const OUString & aCompare = SvxResId(pSourceResIds[i]); if( aShortString == aCompare ) { rString = rString.replaceAt( 0, aShortString.getLength(), OUString::createFromAscii(pDestResIds[i]) ); return true; } else if( rString == aCompare ) { rString = OUString::createFromAscii(pDestResIds[i]); return true; } } else { auto pCompare = pSourceResIds[i]; if( aShortString.equalsAscii(pCompare) ) { rString = rString.replaceAt( 0, aShortString.getLength(), SvxResId(pDestResIds[i]) ); return true; } else if( rString.equalsAscii(pCompare) ) { rString = SvxResId(pDestResIds[i]); return true; } } } return false; } // #i122649# Some comments on the below arrays: // - They need to have the same order and count of items // - They are used to translate between translated and non-translated color names // - To make longer names be found which start with the same basic string, // these have to be in front of others // It would be nice to: // - evtl. organize these in a single array with 2-dimensional inner to eliminate // the possibility to define it wrong // - change the compare to also work when a shorter name is in front of a longer one static const char* SvxUnoColorNameDefResId[] = { RID_SVXSTR_COLOR_BLUEGREY_DEF, RID_SVXSTR_COLOR_BLACK_DEF, RID_SVXSTR_COLOR_BLUE_CLASSIC_DEF, RID_SVXSTR_COLOR_BLUE_DEF, RID_SVXSTR_COLOR_GREEN_DEF, RID_SVXSTR_COLOR_RED_DEF, RID_SVXSTR_COLOR_MAGENTA_DEF, RID_SVXSTR_COLOR_GREY_DEF, RID_SVXSTR_COLOR_YELLOWGREEN_DEF, RID_SVXSTR_COLOR_YELLOW_DEF, RID_SVXSTR_COLOR_WHITE_DEF, RID_SVXSTR_COLOR_ORANGE_DEF, RID_SVXSTR_COLOR_BORDEAUX_DEF, RID_SVXSTR_COLOR_PALE_YELLOW_DEF, RID_SVXSTR_COLOR_PALE_GREEN_DEF, RID_SVXSTR_COLOR_DARKVIOLET_DEF, RID_SVXSTR_COLOR_SALMON_DEF, RID_SVXSTR_COLOR_SEABLUE_DEF, RID_SVXSTR_COLOR_CHART_DEF, RID_SVXSTR_COLOR_PURPLE_DEF, RID_SVXSTR_COLOR_SKYBLUE_DEF, RID_SVXSTR_COLOR_PINK_DEF, RID_SVXSTR_COLOR_TURQUOISE_DEF, RID_SVXSTR_COLOR_GOLD_DEF, RID_SVXSTR_COLOR_BRICK_DEF, RID_SVXSTR_COLOR_INDIGO_DEF, RID_SVXSTR_COLOR_TEAL_DEF, RID_SVXSTR_COLOR_LIME_DEF, RID_SVXSTR_COLOR_LIGHTGRAY_DEF, RID_SVXSTR_COLOR_LIGHTYELLOW_DEF, RID_SVXSTR_COLOR_LIGHTGOLD_DEF, RID_SVXSTR_COLOR_LIGHTORANGE_DEF, RID_SVXSTR_COLOR_LIGHTBRICK_DEF, RID_SVXSTR_COLOR_LIGHTRED_DEF, RID_SVXSTR_COLOR_LIGHTMAGENTA_DEF, RID_SVXSTR_COLOR_LIGHTPURPLE_DEF, RID_SVXSTR_COLOR_LIGHTINDIGO_DEF, RID_SVXSTR_COLOR_LIGHTBLUE_DEF, RID_SVXSTR_COLOR_LIGHTTEAL_DEF, RID_SVXSTR_COLOR_LIGHTGREEN_DEF, RID_SVXSTR_COLOR_LIGHTLIME_DEF, RID_SVXSTR_COLOR_DARKGRAY_DEF, RID_SVXSTR_COLOR_DARKYELLOW_DEF, RID_SVXSTR_COLOR_DARKGOLD_DEF, RID_SVXSTR_COLOR_DARKORANGE_DEF, RID_SVXSTR_COLOR_DARKBRICK_DEF, RID_SVXSTR_COLOR_DARKRED_DEF, RID_SVXSTR_COLOR_DARKMAGENTA_DEF, RID_SVXSTR_COLOR_DARKPURPLE_DEF, RID_SVXSTR_COLOR_DARKINDIGO_DEF, RID_SVXSTR_COLOR_DARKBLUE_DEF, RID_SVXSTR_COLOR_DARKTEAL_DEF, RID_SVXSTR_COLOR_DARKGREEN_DEF, RID_SVXSTR_COLOR_DARKLIME_DEF, RID_SVXSTR_COLOR_VIOLET_DEF, RID_SVXSTR_COLOR_VIOLET_OUG_DEF, RID_SVXSTR_COLOR_BLUE_OUG_DEF, RID_SVXSTR_COLOR_AZURE_OUG_DEF, RID_SVXSTR_COLOR_SPRINGGREEN_OUG_DEF, RID_SVXSTR_COLOR_GREEN_OUG_DEF, RID_SVXSTR_COLOR_CHARTREUSEGREEN_OUG_DEF, RID_SVXSTR_COLOR_ORANGE_OUG_DEF, RID_SVXSTR_COLOR_RED_OUG_DEF, RID_SVXSTR_COLOR_ROSE_OUG_DEF, RID_SVXSTR_COLOR_AZURE_DEF, RID_SVXSTR_COLOR_CYAN_DEF, RID_SVXSTR_COLOR_SPRINGGREEN_DEF, RID_SVXSTR_COLOR_CHARTREUSEGREEN_DEF, RID_SVXSTR_COLOR_ROSE_DEF, RID_SVXSTR_COLOR_MATERIAL_GRAY_A_DEF, RID_SVXSTR_COLOR_MATERIAL_YELLOW_A_DEF, RID_SVXSTR_COLOR_MATERIAL_AMBER_A_DEF, RID_SVXSTR_COLOR_MATERIAL_AMBER_DEF, RID_SVXSTR_COLOR_MATERIAL_ORANGE_A_DEF, RID_SVXSTR_COLOR_MATERIAL_DEEP_ORANGE_A_DEF, RID_SVXSTR_COLOR_MATERIAL_DEEP_ORANGE_DEF, RID_SVXSTR_COLOR_MATERIAL_RED_A_DEF, RID_SVXSTR_COLOR_MATERIAL_PINK_A_DEF, RID_SVXSTR_COLOR_MATERIAL_PURPLE_A_DEF, RID_SVXSTR_COLOR_MATERIAL_DEEP_PURPLE_A_DEF, RID_SVXSTR_COLOR_MATERIAL_DEEP_PURPLE_DEF, RID_SVXSTR_COLOR_MATERIAL_INDIGO_A_DEF, RID_SVXSTR_COLOR_MATERIAL_BLUE_A_DEF, RID_SVXSTR_COLOR_MATERIAL_LIGHT_BLUE_A_DEF, RID_SVXSTR_COLOR_MATERIAL_CYAN_A_DEF, RID_SVXSTR_COLOR_MATERIAL_TEAL_A_DEF, RID_SVXSTR_COLOR_MATERIAL_GREEN_A_DEF, RID_SVXSTR_COLOR_MATERIAL_LIGHT_GREEN_A_DEF, RID_SVXSTR_COLOR_MATERIAL_LIME_A_DEF, RID_SVXSTR_COLOR_MATERIAL_BROWN_A_DEF, RID_SVXSTR_COLOR_MATERIAL_BROWN_DEF, RID_SVXSTR_COLOR_MATERIAL_BLUE_GRAY_A_DEF, RID_SVXSTR_COLOR_MATERIAL_BLUE_GRAY_DEF, RID_SVXSTR_COLOR_LIBRE_GREEN_1_DEF, RID_SVXSTR_COLOR_LIBRE_GREEN_ACCENT_DEF, RID_SVXSTR_COLOR_LIBRE_BLUE_ACCENT_DEF, RID_SVXSTR_COLOR_LIBRE_ORANGE_ACCENT_DEF, RID_SVXSTR_COLOR_LIBRE_PURPLE_DEF, RID_SVXSTR_COLOR_LIBRE_PURPLE_ACCENT_DEF, RID_SVXSTR_COLOR_LIBRE_YELLOW_ACCENT_DEF, RID_SVXSTR_COLOR_TANGO_BUTTER_DEF, RID_SVXSTR_COLOR_TANGO_ORANGE_DEF, RID_SVXSTR_COLOR_TANGO_CHOCOLATE_DEF, RID_SVXSTR_COLOR_TANGO_CHAMELEON_DEF, RID_SVXSTR_COLOR_TANGO_SKY_BLUE_DEF, RID_SVXSTR_COLOR_TANGO_PLUM_DEF, RID_SVXSTR_COLOR_TANGO_SCARLET_RED_DEF, RID_SVXSTR_COLOR_TANGO_ALUMINIUM_DEF }; static const char* SvxUnoColorNameResId[] = { RID_SVXSTR_COLOR_BLUEGREY, RID_SVXSTR_COLOR_BLACK, RID_SVXSTR_COLOR_BLUE_CLASSIC, RID_SVXSTR_COLOR_BLUE, RID_SVXSTR_COLOR_GREEN, RID_SVXSTR_COLOR_RED, RID_SVXSTR_COLOR_MAGENTA, RID_SVXSTR_COLOR_GREY, RID_SVXSTR_COLOR_YELLOWGREEN, RID_SVXSTR_COLOR_YELLOW, RID_SVXSTR_COLOR_WHITE, RID_SVXSTR_COLOR_ORANGE, RID_SVXSTR_COLOR_BORDEAUX, RID_SVXSTR_COLOR_PALE_YELLOW, RID_SVXSTR_COLOR_PALE_GREEN, RID_SVXSTR_COLOR_DARKVIOLET, RID_SVXSTR_COLOR_SALMON, RID_SVXSTR_COLOR_SEABLUE, RID_SVXSTR_COLOR_CHART, RID_SVXSTR_COLOR_PURPLE, RID_SVXSTR_COLOR_SKYBLUE, RID_SVXSTR_COLOR_PINK, RID_SVXSTR_COLOR_TURQUOISE, RID_SVXSTR_COLOR_GOLD, RID_SVXSTR_COLOR_BRICK, RID_SVXSTR_COLOR_INDIGO, RID_SVXSTR_COLOR_TEAL, RID_SVXSTR_COLOR_LIME, RID_SVXSTR_COLOR_LIGHTGRAY, RID_SVXSTR_COLOR_LIGHTYELLOW, RID_SVXSTR_COLOR_LIGHTGOLD, RID_SVXSTR_COLOR_LIGHTORANGE, RID_SVXSTR_COLOR_LIGHTBRICK, RID_SVXSTR_COLOR_LIGHTRED, RID_SVXSTR_COLOR_LIGHTMAGENTA, RID_SVXSTR_COLOR_LIGHTPURPLE, RID_SVXSTR_COLOR_LIGHTINDIGO, RID_SVXSTR_COLOR_LIGHTBLUE, RID_SVXSTR_COLOR_LIGHTTEAL, RID_SVXSTR_COLOR_LIGHTGREEN, RID_SVXSTR_COLOR_LIGHTLIME, RID_SVXSTR_COLOR_DARKGRAY, RID_SVXSTR_COLOR_DARKYELLOW, RID_SVXSTR_COLOR_DARKGOLD, RID_SVXSTR_COLOR_DARKORANGE, RID_SVXSTR_COLOR_DARKBRICK, RID_SVXSTR_COLOR_DARKRED, RID_SVXSTR_COLOR_DARKMAGENTA, RID_SVXSTR_COLOR_DARKPURPLE, RID_SVXSTR_COLOR_DARKINDIGO, RID_SVXSTR_COLOR_DARKBLUE, RID_SVXSTR_COLOR_DARKTEAL, RID_SVXSTR_COLOR_DARKGREEN, RID_SVXSTR_COLOR_DARKLIME, RID_SVXSTR_COLOR_VIOLET, RID_SVXSTR_COLOR_VIOLET_OUG, RID_SVXSTR_COLOR_BLUE_OUG, RID_SVXSTR_COLOR_AZURE_OUG, RID_SVXSTR_COLOR_SPRINGGREEN_OUG, RID_SVXSTR_COLOR_GREEN_OUG, RID_SVXSTR_COLOR_CHARTREUSEGREEN_OUG, RID_SVXSTR_COLOR_ORANGE_OUG, RID_SVXSTR_COLOR_RED_OUG, RID_SVXSTR_COLOR_ROSE_OUG, RID_SVXSTR_COLOR_AZURE, RID_SVXSTR_COLOR_CYAN, RID_SVXSTR_COLOR_SPRINGGREEN, RID_SVXSTR_COLOR_CHARTREUSEGREEN, RID_SVXSTR_COLOR_ROSE, RID_SVXSTR_COLOR_MATERIAL_GRAY_A, RID_SVXSTR_COLOR_MATERIAL_YELLOW_A, RID_SVXSTR_COLOR_MATERIAL_AMBER_A, RID_SVXSTR_COLOR_MATERIAL_AMBER, RID_SVXSTR_COLOR_MATERIAL_ORANGE_A, RID_SVXSTR_COLOR_MATERIAL_DEEP_ORANGE_A, RID_SVXSTR_COLOR_MATERIAL_DEEP_ORANGE, RID_SVXSTR_COLOR_MATERIAL_RED_A, RID_SVXSTR_COLOR_MATERIAL_PINK_A, RID_SVXSTR_COLOR_MATERIAL_PURPLE_A, RID_SVXSTR_COLOR_MATERIAL_DEEP_PURPLE_A, RID_SVXSTR_COLOR_MATERIAL_DEEP_PURPLE, RID_SVXSTR_COLOR_MATERIAL_INDIGO_A, RID_SVXSTR_COLOR_MATERIAL_BLUE_A, RID_SVXSTR_COLOR_MATERIAL_LIGHT_BLUE_A, RID_SVXSTR_COLOR_MATERIAL_CYAN_A, RID_SVXSTR_COLOR_MATERIAL_TEAL_A, RID_SVXSTR_COLOR_MATERIAL_GREEN_A, RID_SVXSTR_COLOR_MATERIAL_LIGHT_GREEN_A, RID_SVXSTR_COLOR_MATERIAL_LIME_A, RID_SVXSTR_COLOR_MATERIAL_BROWN_A, RID_SVXSTR_COLOR_MATERIAL_BROWN, RID_SVXSTR_COLOR_MATERIAL_BLUE_GRAY_A, RID_SVXSTR_COLOR_MATERIAL_BLUE_GRAY, RID_SVXSTR_COLOR_LIBRE_GREEN_1, RID_SVXSTR_COLOR_LIBRE_GREEN_ACCENT, RID_SVXSTR_COLOR_LIBRE_BLUE_ACCENT, RID_SVXSTR_COLOR_LIBRE_ORANGE_ACCENT, RID_SVXSTR_COLOR_LIBRE_PURPLE, RID_SVXSTR_COLOR_LIBRE_PURPLE_ACCENT, RID_SVXSTR_COLOR_LIBRE_YELLOW_ACCENT, RID_SVXSTR_COLOR_TANGO_BUTTER, RID_SVXSTR_COLOR_TANGO_ORANGE, RID_SVXSTR_COLOR_TANGO_CHOCOLATE, RID_SVXSTR_COLOR_TANGO_CHAMELEON, RID_SVXSTR_COLOR_TANGO_SKY_BLUE, RID_SVXSTR_COLOR_TANGO_PLUM, RID_SVXSTR_COLOR_TANGO_SCARLET_RED, RID_SVXSTR_COLOR_TANGO_ALUMINIUM }; /// @throws std::exception static bool SvxUnoConvertResourceStringBuiltIn(const char** pSourceResIds, const char** pDestResIds, int nCount, OUString& rString, bool bToApi) { //We replace e.g. "Gray 10%" with the translation of Gray, but we shouldn't //replace "Red Hat 1" with the translation of Red :-) sal_Int32 nLength = rString.getLength(); while( nLength > 0 ) { const sal_Unicode nChar = rString[nLength-1]; if (nChar != '%' && (nChar < '0' || nChar > '9')) break; nLength--; } OUString sStr = rString.copy(0, nLength).trim(); for(int i = 0; i < nCount; ++i ) { if (bToApi) { OUString aStrDefName = SvxResId(pSourceResIds[i]); if( sStr == aStrDefName ) { OUString aReplace = OUString::createFromAscii(pDestResIds[i]); rString = rString.replaceAt( 0, aStrDefName.getLength(), aReplace ); return true; } } else { if( sStr.equalsAscii(pSourceResIds[i]) ) { OUString aReplace = SvxResId(pDestResIds[i]); rString = rString.replaceAt( 0, strlen(pSourceResIds[i]), aReplace ); return true; } } } return false; } /** if the given name is a predefined name for the current language it is replaced by the corresponding api name. */ OUString SvxUnogetApiNameForItem(const sal_uInt16 nWhich, const OUString& rInternalName) { OUString aNew = rInternalName; if( nWhich == sal_uInt16(XATTR_LINECOLOR) ) { if (SvxUnoConvertResourceStringBuiltIn(SvxUnoColorNameResId, SvxUnoColorNameDefResId, SAL_N_ELEMENTS(SvxUnoColorNameResId), aNew, true)) { return aNew; } } else { const char** pApiResIds; const char** pIntResIds; int nCount; if( SvxUnoGetResourceRanges(nWhich, pApiResIds, pIntResIds, nCount)) { if (SvxUnoConvertResourceString(pIntResIds, pApiResIds, nCount, aNew, true)) { return aNew; } } } // just use previous name, if nothing else was found. return rInternalName; } /** if the given name is a predefined api name it is replaced by the predefined name for the current language. */ OUString SvxUnogetInternalNameForItem(const sal_uInt16 nWhich, const OUString& rApiName) { OUString aNew = rApiName; if( nWhich == sal_uInt16(XATTR_LINECOLOR) ) { if (SvxUnoConvertResourceStringBuiltIn(SvxUnoColorNameDefResId, SvxUnoColorNameResId, SAL_N_ELEMENTS(SvxUnoColorNameResId), aNew, false)) { return aNew; } } else { const char** pApiResIds; const char** pIntResIds; int nCount; if (SvxUnoGetResourceRanges(nWhich, pApiResIds, pIntResIds, nCount)) { if (SvxUnoConvertResourceString(pApiResIds, pIntResIds, nCount, aNew, false)) { return aNew; } } } // just use previous name, if nothing else was found. return rApiName; } rtl::Reference const & SvxPropertySetInfoPool::getOrCreate( sal_Int32 nServiceId ) throw() { SolarMutexGuard aGuard; assert( nServiceId <= SVXUNO_SERVICEID_LASTID ); if( !mxInfos[ nServiceId ].is() ) { mxInfos[nServiceId] = new comphelper::PropertySetInfo(); switch( nServiceId ) { case SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS: mxInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS]->add( ImplGetSvxDrawingDefaultsPropertyMap() ); break; case SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER: mxInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER]->add( ImplGetSvxDrawingDefaultsPropertyMap() ); mxInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER]->remove( UNO_NAME_EDIT_PARA_IS_HANGING_PUNCTUATION ); // OD 13.10.2003 #i18732# - add property map for writer item 'IsFollowingTextFlow' mxInfos[SVXUNO_SERVICEID_COM_SUN_STAR_DRAWING_DEFAULTS_WRITER]->add( ImplGetAdditionalWriterDrawingDefaultsPropertyMap() ); break; default: OSL_FAIL( "unknown service id!" ); } } return mxInfos[ nServiceId ]; } rtl::Reference SvxPropertySetInfoPool::mxInfos[SVXUNO_SERVICEID_LASTID+1] = { nullptr }; /* vim:set shiftwidth=4 softtabstop=4 expandtab: */