1 #ifndef __DALI_TOOLKIT_DOC_H__
2 #define __DALI_TOOLKIT_DOC_H__
5 // Copyright (c) 2014 Samsung Electronics Co., Ltd.
7 // Licensed under the Flora License, Version 1.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://floralicense.org/license/
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.
21 * @ingroup CAPI_DALI_FRAMEWORK
22 * @defgroup CAPI_DALI_TOOLKIT_MODULE Dali Toolkit
23 * @brief A library to provide a user interface toolkit on top of Dali.
24 * @section CAPI_DALI_TOOLKIT_MODULE_HEADER Required Header
25 * \#include <dali-toolkit/dali-toolkit.h>
26 * @section CAPI_DALI_TOOLKIT_MODULE_OVERVIEW Overview
27 * A library to provide a user interface toolkit running on top of Dali.
28 * <table> <tr><th>API</th><th>Description</th></tr>
29 * <tr><td>@ref CAPI_DALI_TOOLKIT_CONTROLS_MODULE</td><td>User interface controls</td></tr>
30 * <tr><td>@ref CAPI_DALI_TOOLKIT_FACTORY_MODULE</td><td>Factory methods for creating controls</td></tr>
31 * <tr><td>@ref CAPI_DALI_TOOLKIT_FOCUS_MANAGER_MODULE</td><td>Classes for managing focus between controls and actors</td></tr>
32 * <tr><td>@ref CAPI_DALI_TOOLKIT_MARKUP_PROCESSOR_MODULE</td><td>Text markup classes</td></tr>
33 * <tr><td>@ref CAPI_DALI_TOOLKIT_SHADER_EFFECTS_MODULE</td><td>Shader effects classes</td></tr>
38 * @ingroup CAPI_DALI_TOOLKIT_MODULE
39 * @defgroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE Controls
41 * @section CAPI_DALI_TOOLKIT_CONTROLS_MODULE_HEADER Required Header
42 * \#include <dali-toolkit/dali-toolkit.h>
43 * @section CAPI_DALI_TOOLKIT_CONTROLS_MODULE_OVERVIEW Overview
44 * <table> <tr><th>API</th><th>Description</th></tr>
45 * <tr><td>@ref CAPI_DALI_TOOLKIT_ALIGNMENT_MODULE </td><td>Layout class</td></tr>
46 * <tr><td>@ref CAPI_DALI_TOOLKIT_BUBBLE_EFFECT_MODULE </td><td>Particle emitter</td></tr>
47 * <tr><td>@ref CAPI_DALI_TOOLKIT_BUTTONS_MODULE </td><td>Button</td></tr>
48 * <tr><td>@ref CAPI_DALI_TOOLKIT_CLUSTER_MODULE </td><td>Styles for clusters of actors</td></tr>
49 * <tr><td>@ref CAPI_DALI_TOOLKIT_DEFAULT_CONTROLS_MODULE </td><td>Factory methods for generating controls</td></tr>
50 * <tr><td>@ref CAPI_DALI_TOOLKIT_IMAGE_VIEW_MODULE </td><td>Classes for displaying images</td></tr>
51 * <tr><td>@ref CAPI_DALI_TOOLKIT_POPUP_MODULE </td><td></td>Popup control</tr>
52 * <tr><td>@ref CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE </td><td>Scrollable containers</td></tr>
53 * <tr><td>@ref CAPI_DALI_TOOLKIT_SUPER_BLUR_VIEW_MODULE </td><td>Control to perform blurring on an image</td></tr>
54 * <tr><td>@ref CAPI_DALI_TOOLKIT_TEXT_INPUT_MODULE </td><td>Input control using the virtual keyboard</td></tr>
55 * <tr><td>@ref CAPI_DALI_TOOLKIT_TEXT_VIEW_MODULE </td><td>Control to display text in different styles</td></tr>
56 * <tr><td>@ref Dali::Toolkit::Control </td><td>Control is the base class for all controls.</td></tr>
57 * <tr><td>@ref Dali::Toolkit::ControlImpl </td><td>This is the internal base class for all controls.</td></tr>
62 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
63 * @defgroup CAPI_DALI_TOOLKIT_ALIGNMENT_MODULE Alignment
65 * @section CAPI_DALI_TOOLKIT_ALIGNMENT_MODULE_HEADER Required Header
66 * \#include <dali-toolkit/dali-toolkit.h>
67 * @section CAPI_DALI_TOOLKIT_ALIGNMENT_MODULE_OVERVIEW Overview
68 * <table> <tr><th>API</th><th>Description</th></tr>
69 * <tr><td>@ref Dali::Toolkit::Alignment </td><td>Alignment is a container which provides an easy way to align other actors inside its boundary.</td></tr>
74 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
75 * @defgroup CAPI_DALI_TOOLKIT_BUBBLE_EFFECT_MODULE Bubble Effect
77 * @section CAPI_DALI_TOOLKIT_BUBBLE_EFFECT_MODULE_HEADER Required Header
78 * \#include <dali-toolkit/dali-toolkit.h>
79 * @section CAPI_DALI_TOOLKIT_BUBBLE_EFFECT_MODULE_OVERVIEW Overview
80 * <table> <tr><th>API</th><th>Description</th></tr>
81 * <tr><td>@ref Dali::Toolkit::BubbleEmitter </td><td>BubbleEmitter is used to display lots of moving bubbles on the stage.</td></tr>
86 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
87 * @defgroup CAPI_DALI_TOOLKIT_BUTTONS_MODULE Buttons
89 * @section CAPI_DALI_TOOLKIT_BUTTONS_MODULE_HEADER Required Header
90 * \#include <dali-toolkit/dali-toolkit.h>
91 * @section CAPI_DALI_TOOLKIT_BUTTONS_MODULE_OVERVIEW Overview
92 * <table> <tr><th>API</th><th>Description</th></tr>
93 * <tr><td>@ref Dali::Toolkit::Button </td><td>Button is a base class for different kind of buttons.</td></tr>
94 * <tr><td>@ref Dali::Toolkit::PushButton </td><td>A PushButton changes its appearance when is pressed and returns to its original when is released.</td></tr>
99 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
100 * @defgroup CAPI_DALI_TOOLKIT_CLUSTER_MODULE Cluster
102 * @section CAPI_DALI_TOOLKIT_CLUSTER_MODULE_HEADER Required Header
103 * \#include <dali-toolkit/dali-toolkit.h>
104 * @section CAPI_DALI_TOOLKIT_CLUSTER_MODULE_OVERVIEW Overview
105 * <table> <tr><th>API</th><th>Description</th></tr>
106 * <tr><td>@ref Dali::Toolkit::ClusterStyle </td><td>A ClusterStyle describes the constraints, which are imposed on the child actors in the cluster.</td></tr>
111 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
112 * @defgroup CAPI_DALI_TOOLKIT_DEFAULT_CONTROLS_MODULE Default Controls
114 * @section CAPI_DALI_TOOLKIT_DEFAULT_CONTROLS_MODULE_HEADER Required Header
115 * \#include <dali-toolkit/dali-toolkit.h>
116 * @section CAPI_DALI_TOOLKIT_DEFAULT_CONTROLS_MODULE_OVERVIEW Overview
117 * <table> <tr><th>API</th><th>Description</th></tr>
118 * <tr><td> Factory methods </td><td>Dali::Toolkit::CreateSolidColorActor(), Dali::Toolkit::CreatePushButton()</td></tr>
123 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
124 * @defgroup CAPI_DALI_TOOLKIT_IMAGE_VIEW_MODULE Image View
126 * @section CAPI_DALI_TOOLKIT_IMAGE_VIEW_MODULE_HEADER Required Header
127 * \#include <dali-toolkit/dali-toolkit.h>
128 * @section CAPI_DALI_TOOLKIT_IMAGE_VIEW_MODULE_OVERVIEW Overview
129 * <table> <tr><th>API</th><th>Description</th></tr>
130 * <tr><td>@ref Dali::Toolkit::MaskedImageView </td><td>MaskedImageView displays the result of an image created from a masking operation.</td></tr>
135 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
136 * @defgroup CAPI_DALI_TOOLKIT_POPUP_MODULE Popup
138 * @section CAPI_DALI_TOOLKIT_POPUP_MODULE_HEADER Required Header
139 * \#include <dali-toolkit/dali-toolkit.h>
140 * @section CAPI_DALI_TOOLKIT_POPUP_MODULE_OVERVIEW Overview
141 * <table> <tr><th>API</th><th>Description</th></tr>
142 * <tr><td>@ref Dali::Toolkit::Popup </td><td>Popup contains content that can come into focus when activated, and out of focus when deactivated.</td></tr>
147 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
148 * @defgroup CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE Scrollable
150 * @section CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE_HEADER Required Header
151 * \#include <dali-toolkit/dali-toolkit.h>
152 * @section CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE_OVERVIEW Overview
153 * <table> <tr><th>API</th><th>Description</th></tr>
154 * (via touch) or automatically. </td></tr>
155 * <tr><td>@ref CAPI_DALI_TOOLKIT_ITEM_VIEW_MODULE</td><td> Item view </td></tr>
156 * <tr><td>@ref CAPI_DALI_TOOLKIT_SCROLL_VIEW_MODULE</td><td> Scroll view </td></tr>
157 * <tr><td>@ref CAPI_DALI_TOOLKIT_SCROLL_CONNECTOR_MODULE</td><td> Scroll Connector </td></tr>
158 * <tr><td>@ref Dali::Toolkit::Scrollable </td><td>Base class for derived Scrollables that contains actors that can be scrolled manually
163 * @ingroup CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE
164 * @defgroup CAPI_DALI_TOOLKIT_ITEM_VIEW_MODULE Item view
166 * @section CAPI_DALI_TOOLKIT_ITEM_VIEW_MODULE_HEADER Required Header
167 * \#include <dali-toolkit/dali-toolkit.h>
168 * @section CAPI_DALI_TOOLKIT_ITEM_VIEW_MODULE_OVERVIEW Overview
169 * <table> <tr><th>API</th><th>Description</th></tr>
170 * <tr><td>@ref Dali::Toolkit::GridLayout </td><td>An ItemView layout which arranges items in a grid.</td></tr>
171 * <tr><td>@ref Dali::Toolkit::ItemFactory </td><td>ItemFactory is an abstract interface for providing actors to ItemView.</td></tr>
172 * <tr><td>@ref Dali::Toolkit::ItemRange </td><td>A support class for managing ranges of items.</td></tr>
173 * <tr><td>@ref Dali::Toolkit::ItemLayout </td><td>An ItemLayout describes the constraints which are imposed on items in the layout.</td></tr>
174 * <tr><td>@ref Dali::Toolkit::ItemView </td><td>ItemView is a scrollable layout container.</td></tr>
179 * @ingroup CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE
180 * @defgroup CAPI_DALI_TOOLKIT_SCROLL_CONNECTOR_MODULE Scroll Connector
182 * @section CAPI_DALI_TOOLKIT_SCROLL_CONNECTOR_MODULE_HEADER Required Header
183 * \#include <dali-toolkit/dali-toolkit.h>
184 * @section CAPI_DALI_TOOLKIT_SCROLL_CONNECTOR_MODULE_OVERVIEW Overview
185 * <table> <tr><th>API</th><th>Description</th></tr>
186 * <tr><td>@ref Dali::Toolkit::ScrollConnector </td><td>ScrollConnector is used to connect scrollable containers with components such as scroll bars, indicators etc.</td></tr>
191 * @ingroup CAPI_DALI_TOOLKIT_SCROLLABLE_MODULE
192 * @defgroup CAPI_DALI_TOOLKIT_SCROLL_VIEW_MODULE Scroll view
194 * @section CAPI_DALI_TOOLKIT_SCROLL_VIEW_MODULE_HEADER Required Header
195 * \#include <dali-toolkit/dali-toolkit.h>
196 * @section CAPI_DALI_TOOLKIT_SCROLL_VIEW_MODULE_OVERVIEW Overview
197 * <table> <tr><th>API</th><th>Description</th></tr>
198 * <tr><td>@ref Dali::Toolkit::ScrollViewCubeEffect </td><td>This effect causes Actors to appear to rotate around a 3D cube.</td></tr>
199 * <tr><td>@ref Dali::Toolkit::ScrollViewCustomEffect </td><td>This class has many transition effects for use when scrolling pages, e.g opacity, rotation, swing, translation.</td></tr>
200 * <tr><td>@ref Dali::Toolkit::ScrollViewEffect </td><td>ScrollView Effect base class, used to apply custom effects to a ScrollView instance.</td></tr>
201 * <tr><td>@ref Dali::Toolkit::ScrollViewPageSpiralEffect </td><td>This effect cause each page in a scroll-view to move along a spiral.</td></tr>
202 * <tr><td>@ref Dali::Toolkit::ScrollViewSlideEffect </td><td>ScrollView effect that uses slides for transitioning pages.</td></tr>
203 * <tr><td>@ref Dali::Toolkit::ScrollViewTwistEffect </td><td>ScrollView effect that twists pages onto screen when transitioning.</td></tr>
204 * <tr><td>@ref Dali::Toolkit::RulerDomain </td><td>Used for specifying minimum/maximum extents of a ruler.</td></tr>
205 * <tr><td>@ref Dali::Toolkit::Ruler </td><td>Abstract class to define scroll axes.</td></tr>
206 * <tr><td>@ref Dali::Toolkit::DefaultRuler </td><td>Concrete implementation of Dali::Toolkit::Ruler that has no snapping and has one single page.</td></tr>
207 * <tr><td>@ref Dali::Toolkit::FixedRuler </td><td>Concrete implementation of Ruler that has fixed snapping.</td></tr>
208 * <tr><td>@ref Dali::Toolkit::ScrollView </td><td>ScrollView contains actors that can be scrolled manually (via touch) or automatically.</td></tr>
213 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
214 * @defgroup CAPI_DALI_TOOLKIT_SUPER_BLUR_VIEW_MODULE Super Blur View
216 * @section CAPI_DALI_TOOLKIT_SUPER_BLUR_VIEW_MODULE_HEADER Required Header
217 * \#include <dali-toolkit/dali-toolkit.h>
218 * @section CAPI_DALI_TOOLKIT_SUPER_BLUR_VIEW_MODULE_OVERVIEW Overview
219 * <table> <tr><th>API</th><th>Description</th></tr>
220 * <tr><td>@ref Dali::Toolkit::SuperBlurView </td><td>SuperBlurView accepts an image as input, and displays/animates it with various blur strengths.</td></tr>
225 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
226 * @defgroup CAPI_DALI_TOOLKIT_TEXT_INPUT_MODULE Text Input
228 * @section CAPI_DALI_TOOLKIT_TEXT_INPUT_MODULE_HEADER Required Header
229 * \#include <dali-toolkit/dali-toolkit.h>
230 * @section CAPI_DALI_TOOLKIT_TEXT_INPUT_MODULE_OVERVIEW Overview
231 * <table> <tr><th>API</th><th>Description</th></tr>
232 * <tr><td>@ref Dali::Toolkit::TextInput </td><td>TextInput Actor takes input one character at a time and displays it as a string within an input box.</td></tr>
237 * @ingroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
238 * @defgroup CAPI_DALI_TOOLKIT_TEXT_VIEW_MODULE Text view
240 * @section CAPI_DALI_TOOLKIT_TEXT_VIEW_MODULE_HEADER Required Header
241 * \#include <dali-toolkit/dali-toolkit.h>
242 * @section CAPI_DALI_TOOLKIT_TEXT_VIEW_MODULE_OVERVIEW Overview
243 * <table> <tr><th>API</th><th>Description</th></tr>
244 * <tr><td>@ref Dali::Toolkit::TextView </td><td>TextView is a layout container for text with alignment, multi-line wrapping and formatting support.</td></tr>
249 * @ingroup CAPI_DALI_TOOLKIT_MODULE
250 * @defgroup CAPI_DALI_TOOLKIT_FACTORY_MODULE Factory
252 * @section CAPI_DALI_TOOLKIT_FACTORY_MODULE_HEADER Required Header
253 * \#include <dali-toolkit/dali-toolkit.h>
254 * @section CAPI_DALI_TOOLKIT_FACTORY_MODULE_OVERVIEW Overview
255 * <table> <tr><th>API</th><th>Description</th></tr>
256 * <tr><td>@ref Dali::Toolkit::LocalizedControlFactory </td><td>This class provides functionality for creating controls which have localized text.</td></tr>
261 * @ingroup CAPI_DALI_TOOLKIT_MODULE
262 * @defgroup CAPI_DALI_TOOLKIT_FOCUS_MANAGER_MODULE Focus Manager
264 * @section CAPI_DALI_TOOLKIT_FOCUS_MANAGER_HEADER Required Header
265 * \#include <dali-toolkit/dali-toolkit.h>
266 * @section CAPI_DALI_TOOLKIT_FOCUS_MANAGER_MODULE_OVERVIEW Overview
267 * <table> <tr><th>API</th><th>Description</th></tr>
268 * <tr><td>@ref Dali::Toolkit::FocusManager </td><td>Manages registration of actors in a focus chain and changing the focused
269 * actor within that chain.</td></tr>
270 * <tr><td>@ref Dali::Toolkit::KeyboardFocusManager </td><td>Provides the functionality of handling keyboard navigation and maintaining the two dimensional keyboard focus chain.</td></tr>
275 * @ingroup CAPI_DALI_TOOLKIT_MODULE
276 * @defgroup CAPI_DALI_TOOLKIT_MARKUP_PROCESSOR_MODULE Markup Processor
278 * @section CAPI_DALI_TOOLKIT_MARKUP_PROCESSOR_MODULE_HEADER Required Header
279 * \#include <dali-toolkit/dali-toolkit.h>
280 * @section CAPI_DALI_TOOLKIT_MARKUP_PROCESSOR_MODULE_OVERVIEW Overview
281 * <table> <tr><th>API</th><th>Description</th></tr>
282 * <tr><td>@ref Dali::Toolkit::MarkupProcessor::StyledText </td><td>A pair of Dali::Text and Dali::TextStyle.</td></tr>
283 * <tr><td>@ref Dali::Toolkit::MarkupProcessor::StyledTextArray </td><td> Vector of StyledText </td></tr>
284 * <tr><td>@ref Dali::Toolkit::MarkupProcessor </td><td>
285 Dali::Toolkit::MarkupProcessor::GetStyledTextArray()
286 Dali::Toolkit::MarkupProcessor::GetPlainString()
287 Dali::Toolkit::MarkupProcessor::GetMarkupString()
288 Dali::Toolkit::MarkupProcessor::SetTextStyle()
289 Dali::Toolkit::MarkupProcessor::SetTextStyle()
290 Dali::Toolkit::MarkupProcessor::SetTextStyleToRange()
296 * @ingroup CAPI_DALI_TOOLKIT_MODULE
297 * @defgroup CAPI_DALI_TOOLKIT_SHADER_EFFECTS_MODULE Shader Effects
299 * @section CAPI_DALI_TOOLKIT_SHADER_EFFECTS_MODULE_HEADER Required Header
300 * \#include <dali-toolkit/dali-toolkit.h>
301 * @section CAPI_DALI_TOOLKIT_SHADER_EFFECTS_MODULE_OVERVIEW Overview
302 * <table> <tr><th>API</th><th>Description</th></tr>
303 * <tr><td>@ref Dali::Toolkit::DissolveEffect </td><td>DissolveEffect is a custom shader effect to achieve Dissolve effects in Image actors.</td></tr>
304 * <tr><td>@ref Dali::Toolkit::ImageRegionEffect </td><td>ImageRegionEffect is a custom shader effect to show only a region of an Image actor.</td></tr>
305 * <tr><td>@ref Dali::Toolkit::IrisEffect </td><td>IrisEffect is a custom shader effect to achieve iris effects in Image actors.</td></tr>
306 * <tr><td>@ref Dali::Toolkit::MaskEffect </td><td>MaskEffect is used to control which parts of an image are visible, using the alpha channel of a separate mask image.</td></tr>
307 * <tr><td>@ref Dali::Toolkit::NinePatchMaskEffect </td><td>NinePatchMaskEffect is used to control which parts of an image are visible, using the alpha channel of a separate mask image.</td></tr>
308 * <tr><td>@ref Dali::Toolkit::PageTurnBookSpineEffect </td><td>This is an assisting effect of PageTurnEffect to display a book spine on _static_ pages, and also to flip the image horizontally when needed.</td></tr>
309 * <tr><td>@ref Dali::Toolkit::PageTurnEffect </td><td>PageTurnEffect is a custom shader effect to achieve a page turn effect for Image actors.</td></tr>
310 * <tr><td>@ref Dali::Toolkit::RippleEffect </td><td>RippleEffect is a custom shader effect to achieve ripple effects on Image actors</td></tr>
311 * <tr><td>@ref Dali::Toolkit::Ripple2DEffect </td><td>Ripple2DEffect is a custom shader effect to achieve 2d ripple effects on Image actors</td></tr>
312 * <tr><td>@ref Dali::Toolkit::SwirlEffect </td><td>SwirlEffect is a custom shader effect to achieve swirl effects in Image actors.</td></tr>
317 #endif //__DALI_TOOLKIT_DOC_H__