tizen 2.3 release
[apps/home/settings.git] / setting-flightmode / include / setting-flightmode.h
1 /*
2  * setting
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
5  *
6  * Contact: MyoungJune Park <mj2004.park@samsung.com>
7  *
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
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
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.
19  *
20  */
21 #ifndef __SETTING_FLIGHTMODE_H__
22 #define __SETTING_FLIGHTMODE_H__
23
24 #include <Elementary.h>
25 #include <notification.h>
26 #include <setting-common-draw-widget.h>
27 #include <setting-common-view.h>
28 #include <setting-common-resource.h>
29 #include <setting-common-data-slp-setting.h>
30
31 #include <ITapiModem.h>
32 #include <TapiUtility.h>
33 #include <tapi_common.h>
34
35 typedef struct _SettingFlightModeUG SettingFlightModeUG;
36
37 typedef enum _MODE_OPEARTION{
38         MODE_INVALID = 0, /*< There is no request waiting for processing */
39         MODE_ENTER = 1, /*< Some "flightmode enter" request is waiting for processing */
40         MODE_LEAVE,             /*< Some "flightmode leave" request is waiting for processing */
41 } MODE_OPEARTION;
42
43
44 struct _SettingFlightModeUG {
45         ui_gadget_h ug;
46         ui_gadget_h ug_loading;
47         /* add more variables here (move your appdata to here) */
48         app_control_h bundle_data; /**< when loading this UG, bundle is stored */
49
50         Evas *evas;
51         Evas_Object *win_main_layout;
52         Evas_Object *win_get;
53         Evas_Object *bg;
54         Evas_Object *ly_main;
55         Evas_Object *navi_bar;  // for navigation effect
56         Evas_Object *scroller;
57         Evas_Object *popup_flight_mode;
58
59         Eina_List* app_list;
60         Eina_List* app_check_list;      
61         Elm_Genlist_Item_Class itc_1text_2icon; 
62         Setting_GenGroupItem_Data *data_flightmode;
63
64         // UI elements - view main
65         setting_view *view_to_load;
66
67         //notification hander
68         int noti_id;
69         
70         /**
71          * vars for flightmode
72          */
73          TapiHandle *handle;
74         bool b_fm_requesting; /**< whether some request is processing. 1:yes, 0:no */
75         MODE_OPEARTION fm_waiting_op;
76 };
77
78 extern setting_view setting_view_flightmode_main;
79 #endif