Merge "Use existing callback ID for recurring callbacks" into devel/master
[platform/core/uifw/dali-adaptor.git] / dali / public-api / adaptor-framework / window-enumerations.h
1 #ifndef DALI_WINDOW_ENUMERATIONS_H
2 #define DALI_WINDOW_ENUMERATIONS_H
3
4 /*
5  * Copyright (c) 2020 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 namespace Dali
22 {
23 /**
24  * @brief Enumeration for orientation of the window is the way in which a rectangular page is oriented for normal viewing.
25  *
26  * This Enumeration is used the available orientation APIs and the preferred orientation.
27  *
28  * @SINCE_2_0.0
29  */
30 enum class WindowOrientation
31 {
32   PORTRAIT                  = 0,   ///< Portrait orientation. The height of the display area is greater than the width. @SINCE_2_0.0
33   LANDSCAPE                 = 90,  ///< Landscape orientation. A wide view area is needed. @SINCE_2_0.0
34   PORTRAIT_INVERSE          = 180, ///< Portrait inverse orientation. @SINCE_2_0.0
35   LANDSCAPE_INVERSE         = 270, ///< Landscape inverse orientation. @SINCE_2_0.0
36   NO_ORIENTATION_PREFERENCE = -1   ///< No orientation. It is used to initialize or unset the preferred orientation. @SINCE_2_0.0
37 };
38
39 /**
40  * @brief An enum of Window types.
41  * @SINCE_2_0.0
42  */
43 enum class WindowType
44 {
45   NORMAL,       ///< A default window type. Indicates a normal, top-level window. Almost every window will be created with this type. @SINCE_2_0.0
46   NOTIFICATION, ///< A notification window, like a warning about battery life or a new E-Mail received. @SINCE_2_0.0
47   UTILITY,      ///< A persistent utility window, like a toolbox or palette. @SINCE_2_0.0
48   DIALOG        ///< Used for simple dialog windows. @SINCE_2_0.0
49 };
50
51 /**
52  * @brief An enum of notification level.
53  * @SINCE_2_0.0
54  */
55 enum class WindowNotificationLevel
56 {
57   NONE   = -1, ///< No notification level. Default level. This value makes the notification window place in the layer of the normal window. @SINCE_2_0.0
58   BASE   = 10, ///< Base notification level. @SINCE_2_0.0
59   MEDIUM = 20, ///< Higher notification level than base. @SINCE_2_0.0
60   HIGH   = 30, ///< Higher notification level than medium. @SINCE_2_0.0
61   TOP    = 40  ///< The highest notification level. @SINCE_2_0.0
62 };
63
64 /**
65  * @brief An enum of screen mode.
66  * @SINCE_2_0.0
67  */
68 enum class WindowScreenOffMode
69 {
70   TIMEOUT, ///< The mode which turns the screen off after a timeout. @SINCE_2_0.0
71   NEVER,   ///< The mode which keeps the screen turned on. @SINCE_2_0.0
72 };
73
74 /**
75  * @brief Enumeration for transition effect's state.
76  * @SINCE_2_0.0
77  */
78 enum class WindowEffectState
79 {
80   NONE = 0, ///< None state. @SINCE_2_0.0
81   START,    ///< Transition effect is started. @SINCE_2_0.0
82   END       ///< Transition effect is ended. @SINCE_2_0.0
83 };
84
85 /**
86  * @brief Enumeration for transition effect's type.
87  * @SINCE_2_0.0
88  */
89 enum class WindowEffectType
90 {
91   NONE = 0, ///< None type. @SINCE_2_0.0
92   SHOW,     ///< Window show effect. @SINCE_2_0.0
93   HIDE,     ///< Window hide effect. @SINCE_2_0.0
94 };
95
96 }
97
98 #endif // DALI_WINDOW_ENUMERATIONS_H