Remove Geometry::QUAD() usage in Toolkit
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / text-effects-style.h
1 #ifndef __DALI_TOOLKIT_INTERNAL_TEXT_EFFECTS_STYLE_H__
2 #define __DALI_TOOLKIT_INTERNAL_TEXT_EFFECTS_STYLE_H__
3
4 /*
5  * Copyright (c) 2016 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 // EXTERNAL INCLUDES
22 #include <dali/devel-api/scripting/scripting.h>
23
24 // INTERNAL INCLUDES
25 #include <dali-toolkit/internal/text/text-controller.h>
26 #include <dali-toolkit/internal/text/text-definitions.h>
27
28 namespace Dali
29 {
30
31 namespace Toolkit
32 {
33
34 namespace Text
35 {
36
37 namespace EffectStyle
38 {
39   enum Type
40   {
41     DEFAULT, ///< The default text effect style.
42     INPUT    ///< The input text effect style.
43   };
44 };
45
46 /**
47  * @brief Sets the underline properties.
48  *
49  * @param[in] controller The text's controller.
50  * @param[in] value The values of the underline's properties.
51  * @param[in] type Whether the property is for the default underline or the input underline.
52  *
53  * @return Whether the underline properties have been updated.
54  */
55 bool SetUnderlineProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
56
57 /**
58  * @brief Retrieves the underline's properties.
59  *
60  * @param[in] controller The text's controller.
61  * @param[out] value The value of the underline's properties.
62  * @param[in] type Whether the property is for the default underline or the input underline.
63  */
64 void GetUnderlineProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
65
66 /**
67  * @brief Sets the shadow properties.
68  *
69  * @param[in] controller The text's controller.
70  * @param[in] value The values of the shadow's style.
71  * @param[in] type Whether the property is for the default shadow's style or the input shadow's style.
72  *
73  * @return Whether the shadow properties have been updated.
74  */
75 bool SetShadowProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
76
77 /**
78  * @brief Retrieves the shadow's properties.
79  *
80  * @param[in] controller The text's controller.
81  * @param[out] value The value of the shadow's properties.
82  * @param[in] type Whether the property is for the default shadow or the input shadow.
83  */
84 void GetShadowProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
85
86 /**
87  * @brief Sets the emboss properties.
88  *
89  * @param[in] controller The text's controller.
90  * @param[in] value The values of the emboss's properties.
91  * @param[in] type Whether the property is for the default emboss or the input emboss.
92  *
93  * @return Whether the emboss properties have been updated.
94  */
95 bool SetEmbossProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
96
97 /**
98  * @brief Retrieves the emboss's properties.
99  *
100  * @param[in] controller The text's controller.
101  * @param[out] value The value of the emboss's properties.
102  * @param[in] type Whether the property is for the default emboss or the input emboss.
103  */
104 void GetEmbossProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
105
106 /**
107  * @brief Sets the outline properties.
108  *
109  * @param[in] controller The text's controller.
110  * @param[in] value The values of the outline's properties.
111  * @param[in] type Whether the property is for the default outline or the input outline.
112  *
113  * @return Whether the outline properties have been updated.
114  */
115 bool SetOutlineProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
116
117 /**
118  * @brief Retrieves the outline's properties.
119  *
120  * @param[in] controller The text's controller.
121  * @param[out] value The value of the outline's properties.
122  * @param[in] type Whether the property is for the default outline or the input outline.
123  */
124 void GetOutlineProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
125
126 } // namespace Text
127
128 } // namespace Toolkit
129
130 } // namespace Dali
131
132 #endif // __DALI_TOOLKIT_INTERNAL_TEXT_EFFECTS_STYLE_H__