4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
6 * Contact: MyoungJune Park <mj2004.park@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 *@defgroup setting-cfg
23 *configuration file management.
24 *Setting app is based on JSON scripting for configuration management.
27 #ifndef __SETTING_CFG_H__
28 #define __SETTING_CFG_H__
31 #include <json-glib/json-glib.h>
32 #include <setting-common-resource.h>
36 typedef enum _Cfg_Item_Type {
37 Cfg_Item_Pos_Uninstall = -1,
38 Cfg_Item_Pos_Level0 = 0,
39 Cfg_Item_Pos_Level1 = 1,
40 Cfg_Item_Pos_Level_All = 2,
44 typedef enum _Cfg_Item_Reset_Type {
45 Cfg_Item_unResetable = 0,
46 Cfg_Item_Resetable = 1,
47 } Cfg_Item_Reset_Type;
49 typedef enum _cfg_error_type {
50 Cfg_Error_Type_Sucess = 0,
51 Cfg_Error_Type_CreateCfg_Failed = -1,
52 Cfg_Error_Type_Mkdir_Failed = -2,
53 Cfg_Error_Type_RemoveCfg_Failed = -3,
54 Cfg_Error_Type_ReadCfg_Failed = -4,
55 Cfg_Error_Type_DirPermissionDenied = -5,
56 Cfg_Error_Type_FilePermissionDenied = -6,
69 int setting_cfg_create(void);
71 void setting_cfg_print(void);
73 char* setting_cfg_get_path();
75 int setting_cfg_init(void);
77 void setting_cfg_exit(void);
79 int setting_cfg_file_update(void);
81 int setting_cfg_get_category_length(void);
83 char *setting_cfg_get_category_name(int category_index);
85 char *setting_cfg_get_category_display_name(int category_index);
87 void setting_cfg_set_category_display_name(int category_index, char *newstring);
89 int setting_cfg_get_menu_length(int category_index);
91 char *setting_cfg_get_string_field_idx(int category_index, int menu_index,
94 int setting_cfg_get_int_field_idx(int category_index, int menu_index,
97 char *setting_cfg_get_icon_path_idx(int category_index, int menu_index);
99 char *setting_cfg_get_ug_args_idx(int category_index, int menu_index);
101 char *setting_cfg_get_keyname_idx(int category_index, int menu_index);
103 char *setting_cfg_get_ugpath_idx(int category_index, int menu_index);
105 char *setting_cfg_get_ugpath(char *keyname);
107 int setting_cfg_get_pos_idx(int category_index, int menu_index);
109 int setting_cfg_get_pos(char *keyname);
111 void setting_cfg_set_pos_idx(int category_index, int menu_index, int pos);
113 void setting_cfg_set_pos(char *keyname, int pos);
115 int setting_cfg_get_click_times_idx(int category_index, int menu_index);
117 int setting_cfg_get_click_times(char *keyname);
119 void setting_cfg_set_click_times_idx(int category_index, int menu_index,
122 void setting_cfg_set_click_times(char *keyname, int click_times);
124 int setting_cfg_get_resetable_flag_idx(int category_index, int menu_index);
126 void setting_cfg_add_downloaded_app(char *keyname, char *icon_path,
127 char *ug_args, int pos);
129 void setting_cfg_remove_downloaded_app(char *keyname);
132 extern char *get_ug_path_from_ug_args(void *data);
133 extern service_h get_bundle_from_ug_args(void *data);
134 extern bool is_ug_installed_by_ug_args(void *data);