1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2/* 3 * This file is part of the LibreOffice project. 4 * 5 * This Source Code Form is subject to the terms of the Mozilla Public 6 * License, v. 2.0. If a copy of the MPL was not distributed with this 7 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 8 * 9 * This file incorporates work covered by the following license notice: 10 * 11 * Licensed to the Apache Software Foundation (ASF) under one or more 12 * contributor license agreements. See the NOTICE file distributed 13 * with this work for additional information regarding copyright 14 * ownership. The ASF licenses this file to you under the Apache 15 * License, Version 2.0 (the "License"); you may not use this file 16 * except in compliance with the License. You may obtain a copy of 17 * the License at http://www.apache.org/licenses/LICENSE-2.0 . 18 */ 19#ifndef __com_sun_star_drawing_EnhancedCustomShapeExtrusion_idl__ 20#define __com_sun_star_drawing_EnhancedCustomShapeExtrusion_idl__ 21 22#include <com/sun/star/awt/Size.idl> 23#include <com/sun/star/awt/Point.idl> 24#include <com/sun/star/beans/PropertyValue.idl> 25#include <com/sun/star/drawing/Position3D.idl> 26#include <com/sun/star/drawing/Direction3D.idl> 27#include <com/sun/star/drawing/ProjectionMode.idl> 28#include <com/sun/star/drawing/ShadeMode.idl> 29#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.idl> 30 31 32module com { module sun { module star { module drawing { 33 34/** 35 This service may be represented by a ::com::sun::star::beans::PropertyValue []. 36*/ 37 38service EnhancedCustomShapeExtrusion 39{ 40 /** This property specifies if extrusion is displayed. The default for this property 41 is "false" 42 */ 43 [optional, property] boolean Extrusion; 44 45 /** This attribute specifies the brightness of a scene in percent. 46 */ 47 [optional, property] double Brightness; 48 49 /** The first value of EnhancedCustomShapeParameterPair specifies the depth of the 50 extrusion in 1/100 mm. The second value (0.0 to 1.0) specifies the fraction of 51 the extrusion that lies before the shape, a value of 0 is default. 52 */ 53 [optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameterPair Depth; 54 55 /** This attribute specifies the amount of diffusion reflected by the shape 56 in percent 57 */ 58 [optional, property] double Diffusion; 59 60 /** Specifies the number of line segments that should be used to display curved surfaces. 61 The higher the number the more line segments are used. 62 */ 63 [optional, property] long NumberOfLineSegments; 64 65 /** Specifies if the front face of the extrusion responds to lightning changes. 66 */ 67 [optional, property] boolean LightFace; 68 69 /** Specifies if the primary light is harsh. 70 */ 71 [optional, property] boolean FirstLightHarsh; 72 73 /** Specifies if the secondary light is harsh. 74 */ 75 [optional, property] boolean SecondLightHarsh; 76 77 /** Specifies the intensity for the first light in percent. 78 */ 79 [optional, property] double FirstLightLevel; 80 81 /** Specifies the intensity for the second light in percent. 82 */ 83 [optional, property] double SecondLightLevel; 84 85 /** Specifies the direction of the first light. 86 */ 87 [optional, property] ::com::sun::star::drawing::Direction3D FirstLightDirection; 88 89 /** Specifies the direction of the second light. 90 */ 91 [optional, property] ::com::sun::star::drawing::Direction3D SecondLightDirection; 92 93 /** Specifies if the surface of the extrusion object looks like metal. 94 */ 95 [optional, property] boolean Metal; 96 97 /** This property defines the shade mode. 98 */ 99 [optional, property] ::com::sun::star::drawing::ShadeMode ShadeMode; 100 101 /** This attributes specifies the rotation angle about the x-axis in grad. 102 The order of rotation is: z-axis, y-axis and then x-axis. The z-axis is 103 specified by the draw:rotate-angle. 104 */ 105 [optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameterPair RotateAngle; 106 107 /** This attribute specifies the position of the rotate center 108 in terms of shape size fractions, if the property is omitted, then 109 the geometrical center of the shape is used (this is the default). 110 */ 111 [optional, property] ::com::sun::star::drawing::Direction3D RotationCenter; 112 113 /** The draw:extrusion-shininess specifies the shininess of a mirror in percent. 114 */ 115 [optional, property] double Shininess; 116 117 /** The first value of the draw:extrusion-skew attribute specifies the skew amount of 118 an extrusion in percent. The second parameter specifies the skew-angle. Skew settings 119 are only applied if the attribute ProjectionMode is ProjectionMode_PARALLEL. 120 */ 121 [optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameterPair Skew; 122 123 /** This attribute specifies the specularity of an extrusion object in percent. 124 */ 125 [optional, property] double Specularity; 126 127 /** This property defines the projection mode. 128 */ 129 [optional, property] com::sun::star::drawing::ProjectionMode ProjectionMode; 130 131 /** This attribute specifies the viewpoint of the observer. 132 */ 133 [optional, property] ::com::sun::star::drawing::Position3D ViewPoint; 134 135 /** This attribute specifies the origin within the bounding box of the 136 shape in terms of the shape size fractions. 137 */ 138 [optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameterPair Origin; 139 140 /** This attribute specifies if the "SecondFillColor" is used as extrusion color 141 */ 142 [optional, property] boolean ExtrusionColor; 143}; 144 145 146}; }; }; }; 147 148#endif 149 150/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 151