Merge remote-tracking branch 'geofence/tizen'
[platform/core/csapi/tizenfx.git] / src / Tizen.Applications.Notification / Tizen.Applications.Notifications / NotificationEnumerations.cs
1 /*
2  * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 namespace Tizen.Applications.Notifications
18 {
19     using System;
20
21     /// <summary>
22     /// Enumeration for Progress category
23     /// </summary>
24     public enum ProgressCategory
25     {
26         /// <summary>
27         /// Value for percent type
28         /// </summary>
29         Percent,
30
31         /// <summary>
32         /// Value for time type
33         /// </summary>
34         Time,
35
36         /// <summary>
37         /// Value for pending type which is not updated progress current value
38         /// </summary>
39         PendingBar
40     }
41
42     /// <summary>
43     /// Enumeration for Accessory option
44     /// </summary>
45     public enum AccessoryOption
46     {
47         /// <summary>
48         /// Value for off accessory option
49         /// </summary>
50         Off = -1,
51
52         /// <summary>
53         /// Value for on accessory option
54         /// </summary>
55         On,
56
57         /// <summary>
58         /// Value for custom accessory option
59         /// </summary>
60         Custom
61     }
62
63     /// <summary>
64     /// Enumeration for Button Index
65     /// </summary>
66     public enum ButtonIndex
67     {
68         /// <summary>
69         /// Value for default button index
70         /// </summary>
71         None = -1,
72
73         /// <summary>
74         /// Value for first button index
75         /// </summary>
76         First,
77
78         /// <summary>
79         /// Value for second button index
80         /// </summary>
81         Second,
82
83         /// <summary>
84         /// Value for third button index
85         /// </summary>
86         Third
87     }
88
89     /// <summary>
90     /// Enumeration for notification particular property
91     /// </summary>
92     [Flags]
93     public enum NotificationProperty
94     {
95         /// <summary>
96         /// Value for adjust nothing
97         /// </summary>
98         None = 0x00,
99
100         /// <summary>
101         /// Value for display only SIM card inserted
102         /// </summary>
103         DisplayOnlySimmode = 0x01,
104
105         /// <summary>
106         /// Value for disable application launch when it selected
107         /// </summary>
108         DisableAppLaunch = 0x02,
109
110         /// <summary>
111         /// Value for disable auto delete when it selected
112         /// </summary>
113         DisableAutoDelete = 0x04,
114
115         /// <summary>
116         /// Value for deleted when device is rebooted even though notification is not set Ongoing
117         /// </summary>
118         VolatileDisplay = 0x100
119     }
120
121     /// <summary>
122     /// Enumeration for block state
123     /// </summary>
124     public enum NotificationBlockState
125     {
126         /// <summary>
127         /// Value to check the app is allowed to post notification
128         /// </summary>
129         Allowed = 0,
130
131         /// <summary>
132         /// Value to check the app is not allowed to post any notification
133         /// </summary>
134         Blocked,
135
136         /// <summary>
137         /// Value to check do not disturb mode which is user set
138         /// </summary>
139         DoNotDisturb
140     }
141
142     internal enum NotificationType
143     {
144         None = -1,
145         Basic = 0,
146         Ongoing,
147     }
148
149     internal enum NotificationEventType
150     {
151         FirstButton = 0,
152         SecondButton,
153         ThirdButton,
154         ClickOnIcon = 6,
155         ClockOnThumbnail = 7,
156         ClickOnTextInputButton = 8
157     }
158
159     internal enum NotificationLayout
160     {
161         None = 0,
162         SingleEvent = 1,
163         Thumbnail = 3,
164         Ongoing = 4,
165         Progress = 5,
166         Extension = 6
167     }
168
169     internal enum NotificationText
170     {
171         Title = 0,
172         Content,
173         EventCount = 3,
174         FirstMainText,
175         FirstSubText,
176         SecondMainText,
177         SecondSubText,
178         FirstButton = 13,
179         SeceondButton = 14,
180         ThirdButton = 15,
181         PlaceHolder = 19,
182         InputButton = 20,
183     }
184
185     internal enum NotificationImage
186     {
187         Icon = 0,
188         IconForIndicator,
189         IconForLock,
190         Thumbnail,
191         ThumbnailForLock,
192         SubIcon,
193         Background,
194         FirstButton = 12,
195         SecondButton,
196         ThirdButton,
197         TextInputButton = 18,
198     }
199
200     internal enum LaunchOption
201     {
202         AppControl = 1
203     }
204
205     [Flags]
206     internal enum NotificationDisplayApplist
207     {
208         Tray = 0x00000001,
209         Ticker = 0x00000002,
210         Lock = 0x00000004,
211         Indicator = 0x00000008,
212         Active = 0x00000010,
213         All = 0x0000000f,
214     }
215 }