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