1 #ifndef __DALI_TOOLKIT_DOC_H__
2 #define __DALI_TOOLKIT_DOC_H__
5 * Copyright (c) 2016 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.
23 * @ingroup CAPI_UI_FRAMEWORK
25 * @brief DALi is a cross-platform 3D UI Toolkit for embedded systems.
27 * @section dali-overview Overview
29 * DALi's 3D user interface engine enables you to create rich and high-performance
30 * UI applications. DALi is based on OpenGL ES 2.0, but provides a clean
31 * cross-platform C++ framework.
32 * This means that you can use high-level DALi APIs instead of accessing
33 * low-level OpenGL APIs directly.
35 * DALi consists of the following modules:
39 * <th>Description</th>
42 * <td>@ref dali_core</td>
43 * <td>DALi Core provides core functionalities such as scene graph-based rendering, animation, and event handling.</td>
46 * <td>@ref dali_adaptor</td>
47 * <td>DALi Adaptor is a platform adaptation layer.</td>
50 * <td>@ref dali_toolkit</td>
51 * <td>DALi Toolkit provides UI components and various effects on top of the DALi Core.</td>
55 * The layer diagram for DALi modules is shown below:
56 * @image html dali-modules.png "Figure: DALi modules"
58 * @defgroup dali_toolkit DALi Toolkit
60 * @brief DALi Toolkit provides UI components and various effects on top of the DALi Core.
62 * @section dali_core_overview Overview
64 * DALi Toolkit consists of the following groups of API:
69 * <th>Description</th>
72 * <td>@ref dali_toolkit_controls</td>
73 * <td>Controls are interactive components for layouting the user interface.</td>
76 * <td style="padding-left:1em">@ref dali_toolkit_controls_alignment</td>
77 * <td>Alignment is a container which provides an easy way to align other actors inside its boundary.</td>
80 * <td style="padding-left:1em">@ref dali_toolkit_controls_buttons</td>
81 * <td>Button is a small object on UI that you can press.</td>
84 * <td style="padding-left:1em">@ref dali_toolkit_controls_gaussian_blur_view</td>
85 * <td>GaussianBlurView provides a render process that blurs an image.</td>
88 * <td style="padding-left:1em">@ref dali_toolkit_controls_image_view</td>
89 * <td>ImageView is a control displying an image.</td>
92 * <td style="padding-left:1em">@ref dali_toolkit_controls_scroll_bar</td>
93 * <td>ScrollBar control.</td>
96 * <td style="padding-left:1em">@ref dali_toolkit_controls_scrollable</td>
97 * <td>Scrollable container controls.</td>
100 * <td style="padding-left:2em">@ref dali_toolkit_controls_item_view</td>
101 * <td>ItemView class is a scrollable container that can contain many items.</td>
104 * <td style="padding-left:2em">@ref dali_toolkit_controls_scroll_view</td>
105 * <td>ScrollView class provides scrollable view which contains actors and can be scrolled automatically or manually by panning.</td>
108 * <td style="padding-left:1em">@ref dali_toolkit_controls_table_view</td>
109 * <td>TableView class is a layout container for aligning child actors in a grid like layout.</td>
112 * <td style="padding-left:1em">@ref dali_toolkit_controls_text_controls</td>
113 * <td>Controls for displaying text or text input.</td>
116 * <td>@ref dali_toolkit_managers</td>
117 * <td>Singleton classes for managing application-wide functionalities.</td>
123 * @defgroup dali_toolkit_controls Controls
124 * @brief Controls are interactive components for layouting the user interface.
127 * @defgroup dali_toolkit_controls_alignment Alignment
128 * @brief Alignment is a container which provides an easy way to align other actors inside its boundary.
130 * @defgroup dali_toolkit_controls_buttons Buttons
131 * @brief Button is a small object on UI that you can press.
133 * @defgroup dali_toolkit_controls_gaussian_blur_view Gaussian Blur View
134 * @brief GaussianBlurView provides a render process that blurs an image.
136 * @defgroup dali_toolkit_controls_image_view Image View
137 * @brief ImageView is a control displying an image.
139 * @defgroup dali_toolkit_controls_scroll_bar Scroll Bar
140 * @brief ScrollBar control.
142 * @defgroup dali_toolkit_controls_scrollable Scrollable
143 * @brief Scrollable container controls.
146 * @defgroup dali_toolkit_controls_item_view Item View
147 * @brief ItemView class is a scrollable container that can contain many items.
149 * @defgroup dali_toolkit_controls_scroll_view Scroll View
150 * @brief ScrollView class provides scrollable view which contains actors and can be scrolled automatically or manually by panning.
153 * @defgroup dali_toolkit_controls_table_view Table View
154 * @brief TableView class is a layout container for aligning child actors in a grid like layout.
156 * @defgroup dali_toolkit_controls_text_controls Text Controls
157 * @brief Controls for displaying text or text input.
159 * @defgroup dali_toolkit_controls_flex_container Flex Container
160 * @brief FlexContainer is a container for Flexbox layout.
164 * @defgroup dali_toolkit_managers Managers
165 * @brief Singleton classes for managing application-wide functionalities.
171 #endif /* __DALI_TOOLKIT_DOC_H__ */