2 * Copyright 2012 Samsung Electronics Co., Ltd
\r
4 * Licensed under the Flora License, Version 1.0 (the "License");
\r
5 * you may not use this file except in compliance with the License.
\r
6 * You may obtain a copy of the License at
\r
8 * http://floralicense.org/license/
\r
10 * Unless required by applicable law or agreed to in writing, software
\r
11 * distributed under the License is distributed on an "AS IS" BASIS,
\r
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
13 * See the License for the specific language governing permissions and
\r
14 * limitations under the License.
\r
20 #ifndef __DEF_MF_UG_WINSET_H_
\r
21 #define __DEF_MF_UG_WINSET_H_
\r
25 #include <Elementary.h>
\r
28 #include <vconf-keys.h>
\r
31 #include "mf-ug-main.h"
\r
32 #include "mf-ug-conf.h"
\r
33 #include "mf-ug-fs-util.h"
\r
36 /******************Navigation Bar Definition ***********/
\r
37 #define NAVI_MORE_BUTTON_PART "toolbar_more_btn"
\r
38 #define NAVI_BOTTOM_BUTTON_1_PART "toolbar_button1"
\r
39 #define NAVI_BOTTOM_BUTTON_2_PART "toolbar_button2"
\r
40 #define NAVI_BUTTON_STYLE "naviframe/toolbar/default"
\r
41 #define NAVI_BUTTON_EDIT "naviframe/more/default"
\r
43 #define TITLE_BTN_STYLE "elm/button/base/naviframe/title_icon"
\r
44 #define TITLE_LEFT_BTN "title_left_btn"
\r
45 #define TITLE_RIGHT_BTN "title_right_btn"
\r
47 #define MF_UG_NAVI_STYLE_ENABLE "basic"
\r
48 #define MF_UG_UPPER_HEIGHT (113*elm_config_scale_get())
\r
49 #define MF_UG_UPPER_WIDTH (480*elm_config_scale_get())
\r
51 Evas_Object *mf_ug_navi_bar_create_navi_bar(Evas_Object *parent);
\r
52 void mf_ug_navi_bar_set_new_content(Evas_Object *pLayout, Evas_Object *NaviContent);
\r
53 void mf_ug_navi_bar_create_default_view(void *data);
\r
54 ugNaviBar *mf_ug_navi_bar_get_in_use_navi(void *data);
\r
55 void mf_ug_navi_bar_reset_navi_object(ugNaviBar *pNavi_s);
\r
56 void mf_ug_navi_bar_refresh_navibar_recovered_view(void *data, ugNaviBar *pNaviStruct);
\r
57 void mf_ug_navi_bar_remove_navi_list_item_by_label(void *data, const char *pNaviLabel);
\r
58 void mf_ug_navi_bar_set_blocking(void *data, bool bblock_during_transition);
\r
59 void mf_ug_navi_bar_remove_previous_contents(void *data);
\r
60 void mf_ug_navi_bar_del_item_directly(void *data);
\r
61 void mf_ug_navi_bar_create_new_folder_view(void *data);
\r
62 ugNaviBar *ug_mf_navi_bar_get_navi_from_navilist(Eina_List *navilist, const char *label);
\r
63 ugNaviBar *mf_ug_navi_bar_get_navi_struct_by_label(void *data, const char *pNaviLabel);
\r
64 void mf_ug_navi_bar_title_set(void *data);
\r
65 Evas_Object *mf_ug_navibar_create_notify_popup(void *data,
\r
66 Evas_Object *parent,
\r
69 void func(void *data, Evas_Object *obj, void *event_info));
\r
71 /********** Control Bar Definition ********/
\r
73 #define UG_CTRL_ICON_CANCEL UG_ICON_PATH"/myfile_icon_cancel.png"
\r
74 #define UG_CTRL_ICON_SAVE UG_ICON_PATH"/myfile_icon_done.png"
\r
75 #define UG_TITLE_ICON_HOME UG_ICON_PATH"/Controlbar/U01_controlbar_cion_home.png"
\r
76 #define UG_TITLE_ICON_HOME_PRESS UG_ICON_PATH"/Controlbar/U01_controlbar_cion_home_press.png"
\r
77 #define UG_TITLE_ICON_UPPER UG_ICON_PATH"/Controlbar/U01_controlbar_cion_up_folder.png"
\r
78 #define UG_TITLE_ICON_UPPER_PRESS UG_ICON_PATH"/Controlbar/U01_controlbar_cion_up_folder_press.png"
\r
80 typedef enum _eCtrlBarButtonType eCtrlBarButtonType;
\r
82 enum _eCtrlBarButtonType {
\r
83 CTRL_BUTTON_CANCEL = 0,
\r
86 CTRL_BUTTON_OTHER_RIONTONGS,
\r
91 void mf_ug_ctrl_bar_set(void *data, ugNaviBar *pNavi_s);
\r
92 void mf_ug_ctrl_bar_set_item_disable(void *data);
\r
95 /**********Tab Bar Definition *************/
\r
96 Evas_Object *mf_ug_tab_bar_create(Evas_Object *parent);
\r
97 Elm_Object_Item *mf_ug_tab_bar_append_item(Evas_Object *pTabBar, char *pTabIconPath, char *pTabBarLabel, void *user_data);
\r
98 void mf_ug_tab_bar_set_item_view(Evas_Object *tab_layout, Evas_Object *view);
\r
99 void mf_ug_tab_bar_remove_item_by_label(Evas_Object *pTabBar, char *pTabLabel);
\r
100 void mf_ug_tab_bar_remove_all_items(Evas_Object *pTabBar);
\r
101 void mf_ug_tab_bar_set_selected_item(Elm_Object_Item *pItem);
\r
102 void mf_ug_tab_bar_set_item_disable(Evas_Object *pTabBar, Eina_Bool disable);
\r
103 void mf_ug_ctrl_bar_recover(void *data);
\r
104 Elm_Object_Item *mf_ug_tab_bar_get_item_by_label(Evas_Object *pTabBar, char *pTabLabel);
\r
105 int mf_ug_tab_bar_items_count_get(Evas_Object *pTabBar);
\r
106 void mf_ug_navi_bar_button_set_disable(void *data, bool disable);
\r
109 /*********** Popup Definition ************/
\r
110 typedef enum _mf_ug_popup_mode mf_ug_popup_mode;
\r
111 enum _mf_ug_popup_mode {
\r
112 UG_POPMODE_MIN = 0,
\r
114 UG_POPMODE_TITLE_TEXT,
\r
115 UG_POPMODE_TEXT_TWO_BTN,
\r
116 UG_POPMODE_TITLE_TEXT_TWO_BTN,
\r
117 UG_POPMODE_TEXT_BTN,
\r
118 UG_POPMODE_TITLE_TEXT_BTN,
\r
119 UG_POPMODE_TITLE_TEXT_THREE_BTN,
\r
120 UG_POPMODE_PROGRESSBAR,
\r
122 UG_POPMODE_LIST_BY,
\r
126 typedef enum _mf_ug_popup_event_type mf_ug_popup_event_type;
\r
127 enum _mf_ug_popup_event_type {
\r
132 UG_ELM_POPUP_CANCLE,
\r
133 UG_ELM_POPUP_AUTO_RENAME,
\r
134 UG_ELM_POPUP_REPLACE,
\r
135 UG_ELM_POPUP_PHONE,
\r
136 UG_ELM_POPUP_MEMORY,
\r
140 /*********** Popup API ************/
\r
141 Evas_Object *mf_ug_popup_create(void *data, mf_ug_popup_mode popupMode, char *title, const char *context, const char *first_btn_text, const char *second_btn_text,
\r
142 const char *third_btn_text, Evas_Smart_Cb func, void *param);
\r
143 void mf_ug_popup_indicator_popup(const char *text);
\r
144 void mf_ug_context_popup_create_more(void *data, Evas_Object *parent);
\r
147 /******************* Genlist API *********************/
\r
149 void mf_ug_upper_genlist_item_append(Evas_Object *pGenlist, void *data);
\r
150 void mf_ug_genlist_goto_myfile_item_append(Evas_Object *pGenlist, void *data);
\r
151 Evas_Object *mf_navi_bar_upper_create(Evas_Object *parent);
\r
152 void mf_ug_genlist_goto_myfile_style_set(void *data);
\r
153 void mf_ug_genlist_upper_style_set(void *data);
\r
154 Evas_Object *mf_ug_genlist_create_content_list_view(void *data);
\r
155 Evas_Object *__mf_ug_genlist_create_gl(void *data);
\r
156 Evas_Object *mf_ug_genlist_create_list_new_folder_style(void *data);
\r
157 Evas_Object *mf_ug_genlist_create_path_info(Evas_Object *parent, Elm_Genlist_Item_Class *itc, char *info);
\r
158 Elm_Object_Item *mf_ug_genlist_item_append(Evas_Object *parent,
\r
159 ugFsNodeInfo *pNode,
\r
162 Elm_Genlist_Item_Class *itc);
\r
163 void mf_ug_genlist_selected_gl(void *data, Evas_Object *obj, void *event_info);
\r