7fae80638c6cb906453e6e47663a65da148b7483
[apps/native/menu-screen.git] / include / page_scroller.h
1 /*
2  * MENU-SCREEN
3  *
4  * Copyright (c) 2009-2014 Samsung Electronics Co., Ltd All Rights Reserved
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19
20 #ifndef __MENU_SCREEN_PAGE_SCROLLER_H__
21 #define __MENU_SCREEN_PAGE_SCROLLER_H__
22
23 #include <stdbool.h>
24 #include <Eina.h>
25 #include <Evas.h>
26 #include "list.h"
27
28 typedef enum {
29         PAGE_SCROLLER_SORT_BY_DEFAULT = 0,
30         PAGE_SCROLLER_SORT_BY_PACKAGE,
31         PAGE_SCROLLER_SORT_BY_NAME,
32         PAGE_SCROLLER_SORT_MAX,
33 } page_scroller_sort_type_e;
34
35 extern Evas_Object *page_scroller_create(Evas_Object *tab, Evas_Object *index, page_scroller_sort_type_e sort_type, int rotate);
36 extern void page_scroller_destroy(Evas_Object *scroller);
37 extern void page_scroller_clean(Evas_Object *scroller);
38
39 extern Evas_Object *page_scroller_get_page_at(Evas_Object *scroller, unsigned int idx);
40 extern unsigned int page_scroller_count_page(Evas_Object *scroller);
41 extern int page_scroller_get_page_no(Evas_Object* scroller, Evas_Object *page);
42
43 extern Evas_Object *page_scroller_push_item(Evas_Object *scroller, app_info_t *ai);
44 extern Evas_Object *page_scroller_find_item_by_package(Evas_Object *scroller, const char *package, int *page_no);
45 extern void page_scroller_trim_items(Evas_Object *scroller);
46 extern void page_scroller_bring_in(Evas_Object *scroller, int idx);
47 extern void page_scroller_show_region(Evas_Object *scroller, int idx);
48
49 extern void page_scroller_edit(Evas_Object *scroller);
50 extern void page_scroller_unedit(Evas_Object *scroller);
51 extern bool page_scroller_is_edited(Evas_Object *scroller);
52
53 #endif //__MENU_SCREEN_PAGE_SCROLLER_H__
54
55 // End of a file