4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Seungtaek Chung <seungtaek.chung@samsung.com>, Mi-Ju Lee <miju52.lee@samsung.com>, Xi Zhichan <zhichan.xi@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
22 #ifndef __NOTIFICATION_TYPE_H__
23 #define __NOTIFICATION_TYPE_H__
30 * @ingroup NOTIFICATION_LIBRARY
31 * @defgroup NOTIFICATION_TYPE notification type
32 * @brief Notification type
36 * @addtogroup NOTIFICATION_TYPE
41 * @breief Enumeration for notification sound type.
43 typedef enum _notification_sound_type {
44 NOTIFICATION_SOUND_TYPE_NONE = -1,
45 /**< Default value. Disable sound */
46 NOTIFICATION_SOUND_TYPE_DEFAULT = 0,
47 /**< New chat sound */
48 NOTIFICATION_SOUND_TYPE_USER_DATA,
49 /**< User sound data */
50 NOTIFICATION_SOUND_TYPE_MAX,
52 } notification_sound_type_e;
55 * @breief Enumeration for notification vibration type.
57 typedef enum _notification_vibration_type {
58 NOTIFICATION_VIBRATION_TYPE_NONE = -1,
59 /**< Default value. Disable vibration */
60 NOTIFICATION_VIBRATION_TYPE_DEFAULT = 0,/**< New chat vibration */
61 NOTIFICATION_VIBRATION_TYPE_USER_DATA,
62 /**< User vibration data */
63 NOTIFICATION_VIBRATION_TYPE_MAX,/**< Max flag */
64 } notification_vibration_type_e;
67 * @breief Will be deprecated.
69 typedef enum _notification_count_display_type {
70 NOTIFICATION_COUNT_DISPLAY_TYPE_NONE = -1,
71 NOTIFICATION_COUNT_DISPLAY_TYPE_LEFT = 0,
72 NOTIFICATION_COUNT_DISPLAY_TYPE_IN,
73 NOTIFICATION_COUNT_DISPLAY_TYPE_RIGHT,
74 NOTIFICATION_COUNT_DISPLAY_TYPE_MAX,
75 } notification_count_display_type_e;
78 * @breief Enumeration for notification count position in the text.
80 typedef enum _notifcation_count_pos_type {
81 NOTIFICATION_COUNT_POS_NONE = -1,
82 /**< Count data is not displaying in the text */
83 NOTIFICATION_COUNT_POS_LEFT = 0,/**< Count data is displaying at the left of the text */
84 NOTIFICATION_COUNT_POS_IN,
85 /**< Count data is displaying in the text */
86 NOTIFICATION_COUNT_POS_RIGHT,
87 /**< Count data is displaying at the right of the text */
88 NOTIFICATION_COUNT_POS_MAX,
90 } notification_count_pos_type_e;
93 * @breief Enumeration for notification variable parameter type
95 typedef enum _notification_variable_type {
96 NOTIFICATION_VARIABLE_TYPE_NONE = -1,
97 /**< Variable parameter type is NONE */
98 NOTIFICATION_VARIABLE_TYPE_INT = 0,
99 /**< Variable parameter type is int */
100 NOTIFICATION_VARIABLE_TYPE_DOUBLE,
101 /**< Variable parameter type is double */
102 NOTIFICATION_VARIABLE_TYPE_STRING,
103 /**< Variable parameter type is string */
104 NOTIFICATION_VARIABLE_TYPE_COUNT,
105 /**< Variable parameter type is count */
106 NOTIFICATION_VARIABLE_TYPE_MAX,
108 } notification_variable_type_e;
111 * @breief Enumeration for notification text type.
113 typedef enum _notification_text_type {
114 NOTIFICATION_TEXT_TYPE_NONE = -1,
116 NOTIFICATION_TEXT_TYPE_TITLE = 0,
118 NOTIFICATION_TEXT_TYPE_CONTENT,
120 NOTIFICATION_TEXT_TYPE_CONTENT_FOR_DISPLAY_OPTION_IS_OFF,
121 /**< Content for content display option is off of the Settings */
122 NOTIFICATION_TEXT_TYPE_GROUP_TITLE,
124 NOTIFICATION_TEXT_TYPE_GROUP_CONTENT,
125 /**< Group content */
126 NOTIFICATION_TEXT_TYPE_GROUP_CONTENT_FOR_DISPLAY_OPTION_IS_OFF,
127 /**< Group content for content display option is off of the Settings */
128 NOTIFICATION_TEXT_TYPE_MAX,
130 } notification_text_type_e;
133 * @breief Enumeration for image text type.
135 typedef enum _notification_image_type {
136 NOTIFICATION_IMAGE_TYPE_NONE = -1,
138 NOTIFICATION_IMAGE_TYPE_ICON = 0,
140 NOTIFICATION_IMAGE_TYPE_ICON_FOR_INDICATOR,
141 /**< Indicator icon */
142 NOTIFICATION_IMAGE_TYPE_ICON_FOR_LOCK,
143 /**< Lock screen icon */
144 NOTIFICATION_IMAGE_TYPE_THUMBNAIL,
146 NOTIFICATION_IMAGE_TYPE_THUMBNAIL_FOR_LOCK,
147 /**< Lock screen thumbnail */
148 NOTIFICATION_IMAGE_TYPE_MAX,
150 } notification_image_type_e;
152 /*typedef enum _notification_button_type {
153 NOTIFICATION_BUTTON_TYPE_NONE = -1,
154 NOTIFICATION_BUTTON_TYPE_RUN = 0,
155 NOTIFICATION_BUTTON_TYPE_VIEW,
156 NOTIFICATION_BUTTON_TYPE_DISMISS,
157 NOTIFICATION_BUTTON_TYPE_MAX,
158 }notification_button_type_e;*/
161 * @breief Enumeration for application execution type.
163 typedef enum _notification_execute_type {
164 NOTIFICATION_EXECUTE_TYPE_NONE = -1,
166 NOTIFICATION_EXECUTE_TYPE_RESPONDING = 0,
168 NOTIFICATION_EXECUTE_TYPE_SINGLE_LAUNCH,/**< Launching when notification data is single */
169 NOTIFICATION_EXECUTE_TYPE_MULTI_LAUNCH,
170 /**< Launching when notification data is grouping(multi) */
171 NOTIFICATION_EXECUTE_TYPE_MAX,
173 } notification_execute_type_e;
176 * @breief Enumeration for notification type.
178 typedef enum _notification_type {
179 NOTIFICATION_TYPE_NONE = -1,
181 NOTIFICATION_TYPE_NOTI = 0,
182 /**< Notification type */
183 NOTIFICATION_TYPE_ONGOING,
185 NOTIFICATION_TYPE_MAX,
187 } notification_type_e;
190 * @breief Enumeration for Group ID.
192 enum _notification_group_id {
193 NOTIFICATION_GROUP_ID_NONE = -1,/**< Not Grouping */
194 NOTIFICATION_GROUP_ID_DEFAULT = 0,
195 /**< Notification that has same title is grouping */
199 * @breief Enumeration for Private ID.
201 enum _notification_priv_id {
202 NOTIFICATION_PRIV_ID_NONE = -1,
203 /**< Internally set priv_id */
207 * @breief Enumeration for notification property
209 enum _notification_property {
210 NOTIFICATION_PROP_DISPLAY_ONLY_SIMMODE = 0x00000001,
211 /**< Display only SIM card inserted */
212 NOTIFICATION_PROP_DISABLE_APP_LAUNCH = 0x00000002,
213 /**< Disable application launch when it selected */
214 NOTIFICATION_PROP_DISABLE_AUTO_DELETE = 0x00000004,
215 /**< Disable auto delete when it selected */
216 NOTIFICATION_PROP_LAUNCH_UG = 0x00000008,
217 /**< Will be deprecated. Notification Tray should launch application using appsvc API */
218 NOTIFICATION_PROP_DISABLE_TICKERNOTI = 0x00000010,
219 /**< Will be deprecated. Use notification_set_display_applist API */
220 NOTIFICATION_PROP_PERMANENT_DISPLAY = 0x00000020,
221 /** < Will be deprecated. */
222 NOTIFICATION_PROP_DISABLE_UPDATE_ON_INSERT = 0x00000040,/**< Disable update when it inserted. */
223 NOTIFICATION_PROP_DISABLE_UPDATE_ON_DELETE = 0x00000080,/**< Disable update when it deleted. */
224 NOTIFICATION_PROP_VOLATILE_DISPLAY = 0x00000100,/**< Deleted when device is rebooted eventhough NOTIFICATION_TYPE_NOTI type */
228 * @breief Enumeration for display application list
230 enum _notificaton_display_applist {
231 NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY = 0x00000001,/**< Notification Tray(Quickpanel) */
232 NOTIFICATION_DISPLAY_APP_TICKER = 0x00000002,
233 /**< Ticker notification */
234 NOTIFICATION_DISPLAY_APP_LOCK = 0x00000004,
236 NOTIFICATION_DISPLAY_APP_INDICATOR = 0x00000004,/**< Indicator */
237 NOTIFICATION_DISPLAY_APP_ALL = 0xffffffff,
238 /**< All display application */
242 * @brief Notification handle
244 typedef struct _notification *notification_h;
253 #endif /* __NOTIFICATION_TYPE_H__ */