1 #ifndef __DALI_TOOLKIT_INTERNAL_TEXT_EFFECTS_STYLE_H__
2 #define __DALI_TOOLKIT_INTERNAL_TEXT_EFFECTS_STYLE_H__
5 * Copyright (c) 2018 Samsung Electronics Co., Ltd.
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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.
22 #include <dali-toolkit/internal/text/text-controller.h>
37 DEFAULT, ///< The default text effect style.
38 INPUT ///< The input text effect style.
43 * @brief Parses the shadow properties.
45 * @param[in] shadowProperties The map with the shadow properties.
46 * @param[out] colorDefined Whether the shadow's color is defined.
47 * @param[out] color The shadow's color.
48 * @param[out] offsetDefined Whether the shadow's offset is defined.
49 * @param[out] offset The shadow's offset.
51 bool ParseShadowProperties( const Property::Map& shadowProperties,
58 * @brief Parses the underline properties.
60 * @param[in] underlineProperties The map with the underline properties.
61 * @param[out] enabled Whether the underline is enabled.
62 * @param[out] colorDefined Whether the underline's color is defined.
63 * @param[out] color The underline's color.
64 * @param[out] heightDefined Whether the underline's height is defined.
65 * @param[out] height The underline's height.
67 bool ParseUnderlineProperties( const Property::Map& underlineProperties,
75 * @brief Parses the outline properties.
77 * @param[in] outlineProperties The map with the outline properties.
78 * @param[out] colorDefined Whether the outline's color is defined.
79 * @param[out] color The outline's color.
80 * @param[out] widthDefined Whether the outline's width is defined.
81 * @param[out] width The outline's width.
83 bool ParseOutlineProperties( const Property::Map& outlineProperties,
87 unsigned int& width );
91 * @brief Parses the background properties.
93 * @param[in] backgroundProperties The map with the background properties.
94 * @param[out] enabled Whether the background is enabled.
95 * @param[out] colorDefined Whether the background color is defined.
96 * @param[out] color The background color.
98 bool ParseBackgroundProperties( const Property::Map& backgroundProperties,
104 * @brief Sets the underline properties.
106 * @param[in] controller The text's controller.
107 * @param[in] value The values of the underline's properties.
108 * @param[in] type Whether the property is for the default underline or the input underline.
110 * @return Whether the underline properties have been updated.
112 bool SetUnderlineProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
115 * @brief Retrieves the underline's properties.
117 * @param[in] controller The text's controller.
118 * @param[out] value The value of the underline's properties.
119 * @param[in] type Whether the property is for the default underline or the input underline.
121 void GetUnderlineProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
124 * @brief Sets the shadow properties.
126 * @param[in] controller The text's controller.
127 * @param[in] value The values of the shadow's style.
128 * @param[in] type Whether the property is for the default shadow's style or the input shadow's style.
130 * @return Whether the shadow properties have been updated.
132 bool SetShadowProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
135 * @brief Retrieves the shadow's properties.
137 * @param[in] controller The text's controller.
138 * @param[out] value The value of the shadow's properties.
139 * @param[in] type Whether the property is for the default shadow or the input shadow.
141 void GetShadowProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
144 * @brief Sets the emboss properties.
146 * @param[in] controller The text's controller.
147 * @param[in] value The values of the emboss's properties.
148 * @param[in] type Whether the property is for the default emboss or the input emboss.
150 * @return Whether the emboss properties have been updated.
152 bool SetEmbossProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
155 * @brief Retrieves the emboss's properties.
157 * @param[in] controller The text's controller.
158 * @param[out] value The value of the emboss's properties.
159 * @param[in] type Whether the property is for the default emboss or the input emboss.
161 void GetEmbossProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
164 * @brief Sets the outline properties.
166 * @param[in] controller The text's controller.
167 * @param[in] value The values of the outline's properties.
168 * @param[in] type Whether the property is for the default outline or the input outline.
170 * @return Whether the outline properties have been updated.
172 bool SetOutlineProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
175 * @brief Retrieves the outline's properties.
177 * @param[in] controller The text's controller.
178 * @param[out] value The value of the outline's properties.
179 * @param[in] type Whether the property is for the default outline or the input outline.
181 void GetOutlineProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
184 * @brief Sets the background properties.
186 * @param[in] controller The text's controller.
187 * @param[in] value The values of the background's properties.
188 * @param[in] type Whether the property is for the default background or the input background.
190 * @return Whether the background properties have been updated.
192 bool SetBackgroundProperties( ControllerPtr controller, const Property::Value& value, EffectStyle::Type type );
195 * @brief Retrieves the background's properties.
197 * @param[in] controller The text's controller.
198 * @param[out] value The value of the underline's properties.
199 * @param[in] type Whether the property is for the default background or the input background.
201 void GetBackgroundProperties( ControllerPtr controller, Property::Value& value, EffectStyle::Type type );
205 } // namespace Toolkit
209 #endif // __DALI_TOOLKIT_INTERNAL_TEXT_EFFECTS_STYLE_H__