2 * Copyright 2012 Samsung Electronics Co., Ltd
4 * Licensed under the Flora License, Version 1.1 (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
8 * http://floralicense.org/license/
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.
17 #ifndef __HOMESCREEN_EFL_H__
18 #define __HOMESCREEN_EFL_H__
21 #include <Elementary.h>
23 #include <system_settings.h>
31 #define PACKAGE "org.tizen.homescreen-efl"
36 HOMESCREEN_VIEW_HOME = 0,
37 HOMESCREEN_VIEW_HOME_EDIT,
38 HOMESCREEN_VIEW_HOME_ALL_PAGES,
39 HOMESCREEN_VIEW_ALL_APPS,
40 HOMESCREEN_VIEW_ALL_APPS_EDIT,
41 HOMESCREEN_VIEW_ALL_APPS_CHOOSE,
42 HOMESCREEN_VIEW_UNKNOWN,
46 INDICE_NEXT_PAGE_ON = 0,
52 * @return returns screen width
54 extern int home_screen_get_root_width(void);
57 * @return returns screen height
59 extern int home_screen_get_root_height(void);
62 * @brief Returns homescreen window pointer.
63 * @return Evas_Object pointer to elm_win widget or NULL if falsse
65 extern Evas_Object *home_screen_get_win(void);
68 * @brief Returns elm_win main layout.
69 * @details Function returns pointer to elm_layout widget with is a parent
70 * for other views used in home
71 * @return Evas_Object pointer to elm_layout widget
73 extern Evas_Object *home_screen_get_layout(void);
76 * @brief Returns homescreen view type
77 * @details Possible types :
79 *HOMESCREEN_VIEW_HOME,
80 *HOMESCREEN_VIEW_HOME_EDIT,
81 *HOMESCREEN_VIEW_HOME_ALL_PAGES,
82 *HOMESCREEN_VIEW_ALL_APPS,
83 *HOMESCREEN_VIEW_ALL_APPS_EDIT,
84 *HOMESCREEN_VIEW_ALL_APPS_CREATE_FOLDER,
85 *HOMESCREEN_VIEW_UNKNOWN,
87 * @return homescreen_view_t value
89 extern homescreen_view_t home_screen_get_view_type(void);
92 * @brief set homescreen view type
93 * @param view homescreen_view_t type
95 extern void home_screen_set_view_type(homescreen_view_t view);
98 * @brief Function sets indice state
99 * @details During page switching left or right side of the screen should be
100 * highlighted. This function is repsponsible for this logic.
102 * @param indice type of performed action
104 extern void home_screen_set_indice_state(indice_type_t indice);
107 * @brief Update the view after application uninstall
109 extern void home_screen_mvc_item_uninstall_cb(Tree_node_t *item);
112 * @brief Update view after folder name change
114 extern void home_screen_mvc_update_view(void);
117 * @brief Update view after move an item into the folder
119 extern void home_screen_mvc_drag_item_to_folder_cb(Tree_node_t *dragged_item,
120 Tree_node_t *folder);
123 * @brief home branch test function
124 * @details Function for debug purpose only. Displays
125 * the data stored in home branch of the data model tree
127 extern void home_screen_print_tree(void);
130 * @brief Function updates the view after drag an item from the folder.
132 extern void home_screen_mvc_drag_item_from_folder_cb(void);
135 * @brief Multi resolution support function for texts in edje.
137 * @param layout Elm_Layout Pointer
139 extern void home_screen_mvc_set_ly_scale(Evas_Object *layout);
142 * @brief Close all apps choose view.
145 extern void home_screen_close_all_apps_choose_view(void);
147 #endif /* __homescreen-efl_H__ */