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>
33 #define LOG_TAG "HOMESCREEN_EFL"
36 #define PACKAGE "org.tizen.homescreen-efl"
40 HOMESCREEN_VIEW_HOME = 0,
41 HOMESCREEN_VIEW_HOME_EDIT,
42 HOMESCREEN_VIEW_HOME_ALL_PAGES,
43 HOMESCREEN_VIEW_ALL_APPS,
44 HOMESCREEN_VIEW_ALL_APPS_EDIT,
45 HOMESCREEN_VIEW_ALL_APPS_CHOOSE,
46 HOMESCREEN_VIEW_UNKNOWN,
50 INDICE_NEXT_PAGE_ON = 0,
56 * @return returns screen width
58 extern int home_screen_get_root_width(void);
61 * @return returns screen height
63 extern int home_screen_get_root_height(void);
66 * @brief Returns homescreen window pointer.
67 * @return Evas_Object pointer to elm_win widget or NULL if falsse
69 extern Evas_Object *home_screen_get_win(void);
72 * @brief Returns elm_win main layout.
73 * @details Function returns pointer to elm_layout widget with is a parent
74 * for other views used in home
75 * @return Evas_Object pointer to elm_layout widget
77 extern Evas_Object *home_screen_get_layout(void);
80 * @brief Returns homescreen view type
81 * @details Possible types :
83 *HOMESCREEN_VIEW_HOME,
84 *HOMESCREEN_VIEW_HOME_EDIT,
85 *HOMESCREEN_VIEW_HOME_ALL_PAGES,
86 *HOMESCREEN_VIEW_ALL_APPS,
87 *HOMESCREEN_VIEW_ALL_APPS_EDIT,
88 *HOMESCREEN_VIEW_ALL_APPS_CREATE_FOLDER,
89 *HOMESCREEN_VIEW_UNKNOWN,
91 * @return homescreen_view_t value
93 extern homescreen_view_t home_screen_get_view_type(void);
96 * @brief set homescreen view type
97 * @param view homescreen_view_t type
99 extern void home_screen_set_view_type(homescreen_view_t view);
102 * @brief Function sets indice state
103 * @details During page switching left or right side of the screen should be
104 * highlighted. This function is repsponsible for this logic.
106 * @param indice type of performed action
108 extern void home_screen_set_indice_state(indice_type_t indice);
111 * @brief Update the view after application uninstall
113 extern void home_screen_mvc_item_uninstall_cb(Tree_node_t *item);
116 * @brief Update view after folder name change
118 extern void home_screen_mvc_update_view(void);
121 * @brief Update view after move an item into the folder
123 extern void home_screen_mvc_drag_item_to_folder_cb(Tree_node_t *dragged_item,
124 Tree_node_t *folder);
127 * @brief home branch test function
128 * @details Function for debug purpose only. Displays
129 * the data stored in home branch of the data model tree
131 extern void home_screen_print_tree(void);
134 * @brief Function updates the view after drag an item from the folder.
136 extern void home_screen_mvc_drag_item_from_folder_cb(void);
139 * @brief Multi resolution support function for texts in edje.
141 * @param layout Elm_Layout Pointer
143 extern void home_screen_mvc_set_ly_scale(Evas_Object *layout);
146 * @brief Close all apps choose view.
149 extern void home_screen_close_all_apps_choose_view(void);
151 #endif /* __homescreen-efl_H__ */