Add ArcVisual
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / visuals / arc-visual-properties-devel.h
1 #ifndef DALI_TOOLKIT_ARC_VISUAL_PROPERTIES_DEVEL_H
2 #define DALI_TOOLKIT_ARC_VISUAL_PROPERTIES_DEVEL_H
3
4 /*
5  * Copyright (c) 2020 Samsung Electronics Co., Ltd.
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * 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, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  */
20
21 // INTERNAL INCLUDES
22 #include <dali-toolkit/public-api/toolkit-property-index-ranges.h>
23
24 namespace Dali
25 {
26
27 namespace Toolkit
28 {
29
30 namespace DevelArcVisual
31 {
32
33 /**
34  * @brief ArcVisual Properties.
35  */
36 namespace Property
37 {
38
39 /**
40  * @brief Enumeration for the instance of properties belonging to the ArcVisual.
41  */
42 enum
43 {
44   /**
45    * @brief The thickness of the arc.
46    * @details Name "thickness", type Property::FLOAT.
47    * @note Mandatory.
48    */
49   THICKNESS = VISUAL_PROPERTY_START_INDEX,
50
51   /**
52    * @brief The start angle where the arc begins in degrees.
53    * @details Name "startAngle", type Property::FLOAT.
54    * @note Optional. If not specified, the default is 0.
55    */
56   START_ANGLE,
57
58   /**
59    * @brief The sweep angle of the arc in degrees.
60    * @details Name "sweepAngle", type Property::FLOAT.
61    * The arc starts at a specified start angle and sweeps clockwise, drawing slices of pie.
62    * @note Optional. If not specified, the default is 360.
63    */
64   SWEEP_ANGLE,
65
66   /**
67    * @brief The cap of the arc.
68    * @details Name "cap", Type Cap::Type (Property::INTEGER)
69    * It specifies the shape of the endpoints.
70    * @note Optional. If not specified, the default is Cap::BUTT.
71    */
72   CAP,
73 };
74
75 } // namespace Property
76
77 /**
78  * @brief Enumeration for the cap style.
79  */
80 namespace Cap
81 {
82
83 enum Type
84 {
85   BUTT,      ///< The arc does not extend beyond its two endpoints.
86   ROUND      ///< The arc will be extended by a half circle with the center at the end.
87 };
88
89 } // namespace Cap
90
91 } // namespace DevelArcVisual
92
93 } // namespace Toolkit
94
95 } // namespace Dali
96
97 #endif // DALI_TOOLKIT_ARC_VISUAL_PROPERTIES_DEVEL_H