/* -*- 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 . */ #ifndef __com_sun_star_drawing_EnhancedCustomShapeGeometry_idl__ #define __com_sun_star_drawing_EnhancedCustomShapeGeometry_idl__ #include #include #include #include #include module com { module sun { module star { module drawing { /** This service may be represented by a ::com::sun::star::beans::PropertyValue []. */ service EnhancedCustomShapeGeometry { /** The Type attribute contains the name of a shape type. This name can be used to offer specialized user interfaces for certain classes of shapes, like for arrows, smileys, etc. The shape type is rendering engine dependent and does not influence the geometry of the shape. If the value of the draw:type attribute is non-primitive, then no shape type is available. */ [property] string Type; /** This property describes the user space of the shape in its canonical form */ [optional, property] ::com::sun::star::awt::Rectangle ViewBox; /** This property specifies if the orientation of the shape is horizontal mirrored. */ [optional, property] boolean MirroredX; /** This property specifies if the orientation of the shape is vertical mirrored. */ [optional, property] boolean MirroredY; /** This property specifies the text rotation angle in degrees. The text rotation is added to the shape geometry rotation. */ [optional, property] double TextRotateAngle; /** This property specifies a sequence of Adjustment values. */ [optional, property] sequence<::com::sun::star::drawing::EnhancedCustomShapeAdjustmentValue> AdjustmentValues; /** This property sequence is including the extrusion description, the properties are as same as specified in the service com::sun::star:drawing::EnhancedCustomShapeExtrusion */ [optional, property] sequence<::com::sun::star::beans::PropertyValue> Extrusion; /** This property sequence is including the path description, the properties are as same as specified in the service com::sun::star:drawing::EnhancedCustomShapePath */ [optional, property] sequence<::com::sun::star::beans::PropertyValue> Path; /** This property sequence is including the text path description, the properties are as same as specified in the service com::sun::star:drawing::EnhancedCustomShapeTextPath */ [optional, property] sequence<::com::sun::star::beans::PropertyValue> TextPath; /** This property is describing the equations that are used, each equation can be referenced by com::sun::star::drawing::EnhancedCustomShapeParameter which are often used in Path, Extrusion and or Handle descriptions. */ [optional, property] sequence Equations; /** This property is describing the interaction handles that are used, each inner property sequence is having the same properties as they are specified in the service com::sun::star:drawing::EnhancedCustomShapeHandle */ [optional, property] sequence<::com::sun::star::beans::PropertyValues> Handles; }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */