lib/efreet_menu.h

Go to the documentation of this file.
00001 #ifndef EFREET_MENU_H
00002 #define EFREET_MENU_H
00003 
00017 typedef enum Efreet_Menu_Entry_Type
00018 {
00019     EFREET_MENU_ENTRY_MENU,
00020     EFREET_MENU_ENTRY_DESKTOP,
00021     EFREET_MENU_ENTRY_SEPARATOR,
00022     EFREET_MENU_ENTRY_HEADER
00023 } Efreet_Menu_Entry_Type;
00024 
00028 typedef struct Efreet_Menu Efreet_Menu;
00029 
00034 struct Efreet_Menu
00035 {
00036     Efreet_Menu_Entry_Type type;
00037     const char *id;   
00039     const char *name; 
00040     const char *icon; 
00042     Efreet_Desktop *desktop;   
00043     Eina_List      *entries;   
00044 };
00045 
00046 EAPI int              efreet_menu_kde_legacy_init(void);
00047 
00048 EAPI Efreet_Menu     *efreet_menu_new(const char *name);
00049 EAPI void             efreet_menu_file_set(const char *file);
00050 EAPI Efreet_Menu     *efreet_menu_get(void);
00051 EAPI Efreet_Menu     *efreet_menu_parse(const char *path);
00052 EAPI int              efreet_menu_save(Efreet_Menu *menu, const char *path);
00053 EAPI void             efreet_menu_free(Efreet_Menu *menu);
00054 
00055 EAPI int              efreet_menu_desktop_insert(Efreet_Menu *menu,
00056                                                     Efreet_Desktop *desktop,
00057                                                     int pos);
00058 EAPI int              efreet_menu_desktop_remove(Efreet_Menu *menu,
00059                                                     Efreet_Desktop *desktop);
00060 
00061 EAPI void             efreet_menu_dump(Efreet_Menu *menu, const char *indent);
00062 
00067 #endif