[dali_1.1.19] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / public-api / controls / scrollable / item-view / default-item-layout.h
1 #ifndef __DALI_TOOLKIT_DEFAULT_ITEM_LAYOUT_H__
2 #define __DALI_TOOLKIT_DEFAULT_ITEM_LAYOUT_H__
3
4 /*
5  * Copyright (c) 2015 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/controls/scrollable/item-view/item-layout.h>
23
24 namespace Dali
25 {
26
27 namespace Toolkit
28 {
29 /**
30  * @addtogroup dali_toolkit_controls_item_view
31  * @{
32  */
33
34 namespace DefaultItemLayout
35 {
36
37 enum Type
38 {
39   DEPTH,     ///< Items arranged in a grid, scrolling along the Z-Axis. @SINCE_1_0.0
40   GRID,      ///< Items arranged in a grid, scrolling along the Y-Axis. @SINCE_1_0.0
41   LIST,      ///< One item per line, scrolling along the Y-Axis. @SINCE_1_0.0
42   SPIRAL     ///< Items arranged in a spiral, centered around the Y-Axis. @SINCE_1_0.0
43 };
44
45 /**
46  * @brief Creates a built-in default item-layout
47  *
48  * @SINCE_1_0.0
49  * @param[in]  type  The type of layout required.
50  *
51  * @return An ItemLayoutPtr to the newly created layout.
52  */
53 DALI_IMPORT_API ItemLayoutPtr New( Type type );
54
55 } // namespace DefaultItemLayout
56
57 /**
58  * @}
59  */
60 } // namespace Toolkit
61
62 } // namespace Dali
63
64 #endif // __DALI_TOOLKIT_DEFAULT_ITEM_LAYOUT_H__