Tizen 2.1 release
[platform/core/uifw/e17.git] / src / bin / e_int_menus.h
1 #ifdef E_TYPEDEFS
2
3 typedef struct _E_Int_Menu_Augmentation E_Int_Menu_Augmentation;
4
5 #else
6 #ifndef E_INT_MENUS_H
7 #define E_INT_MENUS_H
8
9 #define E_CLIENTLIST_GROUP_NONE 0
10 #define E_CLIENTLIST_GROUP_DESK 1
11 #define E_CLIENTLIST_GROUP_CLASS 2
12
13 #define E_CLIENTLIST_GROUP_SEP_NONE 0
14 #define E_CLIENTLIST_GROUP_SEP_BAR 1
15 #define E_CLIENTLIST_GROUP_SEP_MENU 2
16
17 #define E_CLIENTLIST_SORT_NONE 0
18 #define E_CLIENTLIST_SORT_ALPHA 1
19 #define E_CLIENTLIST_SORT_ZORDER 2
20 #define E_CLIENTLIST_SORT_MOST_RECENT 3
21
22 #define E_CLIENTLIST_GROUPICONS_OWNER 0
23 #define E_CLIENTLIST_GROUPICONS_CURRENT 1
24 #define E_CLIENTLIST_GROUPICONS_SEP 2
25
26 #define E_CLIENTLIST_MAX_CAPTION_LEN 256
27
28 struct _E_Int_Menu_Augmentation
29 {
30    const char *sort_key;
31    struct
32      {
33         void (*func) (void *data, E_Menu *m);
34         void *data;
35      } add, del;
36 };
37
38 EAPI E_Menu *e_int_menus_main_new(void);
39 EAPI E_Menu *e_int_menus_desktops_new(void);
40 EAPI E_Menu *e_int_menus_clients_new(void);
41 EAPI E_Menu *e_int_menus_apps_new(const char *dir);
42 EAPI E_Menu *e_int_menus_favorite_apps_new(void);
43 EAPI E_Menu *e_int_menus_all_apps_new(void);
44 EAPI E_Menu *e_int_menus_config_new(void);
45 EAPI E_Menu *e_int_menus_lost_clients_new(void);
46 EAPI E_Menu *e_int_menus_shelves_new(void);
47
48 EAPI E_Int_Menu_Augmentation *e_int_menus_menu_augmentation_add(const char *menu,
49                                                                 void (*func_add) (void *data, E_Menu *m),
50                                                                 void *data_add,
51                                                                 void (*func_del) (void *data, E_Menu *m),
52                                                                 void *data_del);
53 EAPI E_Int_Menu_Augmentation *e_int_menus_menu_augmentation_add_sorted(const char *menu,
54                                                                        const char *sort_key,
55                                                                        void (*func_add) (void *data, E_Menu *m),
56                                                                        void *data_add,
57                                                                        void (*func_del) (void *data, E_Menu *m),
58                                                                        void *data_del);
59 EAPI void                     e_int_menus_menu_augmentation_del(const char *menu,
60                                                                 E_Int_Menu_Augmentation *maug);
61
62 EAPI void                     e_int_menus_menu_augmentation_point_disabled_set(const char *menu,
63                                        Eina_Bool disabled);
64
65 #endif
66 #endif