removed heynoti dep
[apps/core/preloaded/settings.git] / setting-memory / include / setting-memory.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_MEMORY_H__
22 #define __SETTING_MEMORY_H__
23
24 #include <stdio.h>
25 #include <Elementary.h>
26
27 #include <glib-object.h>
28
29 #include <utilX.h>
30
31 #include <setting-common-draw-widget.h>
32 #include <setting-common-view.h>
33 #include <setting-debug.h>
34 #include <sysman.h>
35
36 #ifdef SUPPORT_MDM
37 #include <mdm.h>
38 #define MDM_POLICY_STORAGE_RESTRICTED_STR       "Security policy restricts use of SD card"
39 #endif
40
41
42 typedef void (*setting_memory_mmc_cb) (int val, void *data);
43
44 typedef struct _SettingMemoryUG SettingMemoryUG;
45
46 typedef struct setting_memory_umem_size {
47         unsigned long total_mem_size;
48         unsigned long free_mem_size;
49         unsigned long used_mem_size;
50         unsigned long block_size;
51         unsigned long mms_size;
52         unsigned long myfiles_size;
53         unsigned long etc_size;
54 } setting_memory_umem_size_t;
55
56 typedef struct __setting_mem_status {
57         double  dTotal;
58         double  dAvail;
59 } setting_mem_status;
60
61 /**
62  * Setting Memory UG context
63  * all UG function has void* as an agument. this is casted back to SettingMemoryUG
64  * and the functions access app context.
65  */
66 struct _SettingMemoryUG {
67         ui_gadget_h ug;
68         ui_gadget_h ug_loading;
69
70         Evas *evas;
71         Evas_Object *win_main_layout;
72         Evas_Object *win_get;
73         Evas_Object *popup;
74         setting_call_back_func curr_popup_cb;
75
76         Evas_Object *progress_bar;
77         Ecore_Timer *wait_timer;
78         Ecore_Timer *popup_timer;
79         Ecore_Timer *progress_bar_timer;
80         float progress_bar_rate;
81         Evas_Object *navi_bar;
82
83 #ifdef SUPPORT_MDM
84         mdm_result_t mdm_server_state;
85         mdm_status_t storage_policy_status;
86 #endif
87
88         Evas_Object *msg_intial_popup;
89         Evas_Object *ly_main;
90
91         Setting_GenGroupItem_Data *data_wap;
92         Setting_GenGroupItem_Data *data_bt;
93         Setting_GenGroupItem_Data *data_cmr;
94         Setting_GenGroupItem_Data *data_vrec;
95         Setting_GenGroupItem_Data *data_rdo;
96         Setting_GenGroupItem_Data *data_shr;
97         Setting_GenGroupItem_Data *data_adobeAir;
98         Setting_GenGroupItem_Data *data_dvb_h;
99
100         setting_memory_umem_size_t umem_size;
101         Elm_Genlist_Item_Class itc_1text_1icon_2;
102         Elm_Genlist_Item_Class itc_group_item;
103         Elm_Genlist_Item_Class itc_1text;
104         Elm_Genlist_Item_Class itc_1text_1icon;
105         Elm_Genlist_Item_Class itc_sel_all;
106         Elm_Genlist_Item_Class itc_seperator;
107         Elm_Genlist_Item_Class itc_variable_height;
108         Elm_Genlist_Item_Class itc_2text_3_parent;
109         Elm_Genlist_Item_Class itc_1icon_1text_sub;
110         Elm_Genlist_Item_Class itc_2text_2;
111         Setting_GenGroupItem_Data *data_ex_total;
112         Setting_GenGroupItem_Data *data_ex_available;
113         Setting_GenGroupItem_Data *data_ex_mount;
114         Setting_GenGroupItem_Data *data_ex_format;
115         Setting_GenGroupItem_Data *data_in_total;
116         Setting_GenGroupItem_Data *data_in_available;
117         Setting_GenGroupItem_Data *data_in_format;
118         Setting_GenGroupItem_Data *data_phone_storage_available;
119         Setting_GenGroupItem_Data *data_main_storage_available;
120         Setting_GenGroupItem_Data *data_system_storage_available;
121         struct mmc_contents *mmc_content;
122 };
123
124 extern setting_view setting_view_memory_main;
125 extern setting_view setting_view_memory_default_memory;
126 extern setting_view setting_view_memory_status;
127
128
129 #endif                          /* __SETTING_MEMORY_H__ */