1 #ifdef E_TYPEDEFS 2 3 typedef struct _E_Sys_Con_Action E_Sys_Con_Action; 4 5 typedef enum _E_Sys_Action 6 { 7 E_SYS_NONE, 8 E_SYS_EXIT, 9 E_SYS_RESTART, 10 E_SYS_EXIT_NOW, 11 E_SYS_LOGOUT, 12 E_SYS_HALT, 13 E_SYS_HALT_NOW, 14 E_SYS_REBOOT, 15 E_SYS_SUSPEND, 16 E_SYS_HIBERNATE 17 } E_Sys_Action; 18 19 struct _E_Sys_Con_Action 20 { 21 const char *label; 22 const char *icon_group; 23 const char *button_name; 24 void (*func) (void *data); 25 const void *data; 26 Eina_Bool disabled E_BITFIELD; 27 }; 28 29 #else 30 #ifndef E_SYS_H 31 #define E_SYS_H 32 33 E_API extern int E_EVENT_SYS_SUSPEND; 34 E_API extern int E_EVENT_SYS_HIBERNATE; 35 E_API extern int E_EVENT_SYS_RESUME; 36 37 EINTERN int e_sys_init(void); 38 EINTERN int e_sys_shutdown(void); 39 E_API int e_sys_action_possible_get(E_Sys_Action a); 40 E_API int e_sys_action_do(E_Sys_Action a, char *param); 41 E_API int e_sys_action_raw_do(E_Sys_Action a, char *param); 42 43 E_API E_Sys_Con_Action *e_sys_con_extra_action_register(const char *label, 44 const char *icon_group, 45 const char *button_name, 46 void (*func) (void *data), 47 const void *data); 48 E_API void e_sys_con_extra_action_unregister(E_Sys_Con_Action *sca); 49 E_API const Eina_List *e_sys_con_extra_action_list_get(void); 50 E_API Eina_Bool e_sys_on_the_way_out_get(void); 51 52 #endif 53 #endif 54