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#ifndef __com_sun_star_drawing_EnhancedCustomShapeHandle_idl__
24#define __com_sun_star_drawing_EnhancedCustomShapeHandle_idl__
25
26#ifndef __com_sun_star_drawing_EnhancedCustomShapeParameterPair_idl__
27#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.idl>
28#endif
29
30//=============================================================================
31
32module com {  module sun {  module star {  module drawing {
33
34//=============================================================================
35
36/**
37  This service may be represented by a ::com::sun::star::beans::PropertyValue [].
38*/
39
40service EnhancedCustomShapeHandle
41{
42	/** Specifies if the x position of the handle is mirrored.
43	*/
44	[optional, property] boolean MirroredX;
45
46	/** Specifies if the y position of the handle is mirrored.
47	*/
48	[optional, property] boolean MirroredY;
49
50	/** Specifies if the handle directions are swapped if the shape is taller than wide.
51	*/
52	[optional, property] boolean Switched;
53
54	/** If the property Polar is set, then the first value specifies the radius and the second
55	    parameter the angle of the handle. Otherwise, if the handle is not polar, the first parameter
56		specifies the horizontal handle position, the vertical handle position is described by the
57		second parameter.
58	*/
59	[optional, property] com::sun::star::drawing::EnhancedCustomShapeParameterPair Position;
60
61	/** If this attribute is set, the handle is a polar handle. The property specifies the center
62	    position of the handle. If this attribute is set, the attributes RangeX and RangeY are ignored,
63		instead the attribute RadiusRange is used.
64	*/
65	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameterPair Polar;
66
67	/** RefX, if this attribute is set, it specifies the index of the adjustment
68		value which is connected to the horizontal position of the handle
69	*/
70	[optional, property] long RefX;
71
72	/** RefY, if this attribute is set, it specifies the index of the adjustment
73		value which is connected to the vertical position of the handle
74	*/
75	[optional, property] long RefY;
76
77	/** RefAngle, if this attribute is set, it specifies the index of the adjustment
78		value which is connected to the angle of the handle
79	*/
80	[optional, property] long RefAngle;
81
82	/** RefR, if this attribute is set, it specifies the index of the adjustment
83		value which is connected to the radius of the handle
84	*/
85	[optional, property] long RefR;
86
87	/** If the attribute RangeXMinimum is set, it specifies the horizontal minimum range of the handle.
88	*/
89	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameter RangeXMinimum;
90
91	/** If the attribute RangeXMaximum is set, it specifies the horizontal maximum range of the handle.
92	*/
93	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameter RangeXMaximum;
94
95	/** If the attribute RangeYMinimum is set, it specifies the vertical minimum range of the handle.
96	*/
97	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameter RangeYMinimum;
98
99	/** If the attribute RangeYMaximum is set, it specifies the vertical maximum range of the handle.
100	*/
101	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameter RangeYMaximum;
102
103	/** If this attribute is set, it specifies the minimum radius range that can be used for a polar handle.
104	*/
105	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameter RadiusRangeMinimum;
106
107	/** If this attribute is set, it specifies the maximum radius range that can be used for a polar handle.
108	*/
109	[optional, property] ::com::sun::star::drawing::EnhancedCustomShapeParameter RadiusRangeMaximum;
110};
111
112//=============================================================================
113
114}; }; }; };
115
116#endif
117
118