1 #ifdef E_TYPEDEFS 2 3 #else 4 #ifndef E_FM_MIME_H 5 #define E_FM_MIME_H 6 7 typedef struct _E_Fm2_Mime_Handler E_Fm2_Mime_Handler; 8 9 struct _E_Fm2_Mime_Handler 10 { 11 const char *label, *icon_group; 12 void (*action_func) (void *data, Evas_Object *obj, const char *path); 13 int (*test_func) (void *data, Evas_Object *obj, const char *path); 14 void *action_data; 15 void *test_data; 16 }; 17 18 E_API const char *e_fm_mime_filename_get(const char *fname); 19 E_API const char *e_fm_mime_icon_get(const char *mime); 20 E_API void e_fm_mime_icon_cache_flush(void); 21 22 E_API E_Fm2_Mime_Handler *e_fm2_mime_handler_new(const char *label, const char *icon_group, void (*action_func) (void *data, Evas_Object *obj, const char *path), void *action_data, int (test_func) (void *data, Evas_Object *obj, const char *path), void *test_data); 23 E_API void e_fm2_mime_handler_free(E_Fm2_Mime_Handler *handler); 24 E_API Eina_Bool e_fm2_mime_handler_mime_add(E_Fm2_Mime_Handler *handler, const char *mime); 25 E_API Eina_Bool e_fm2_mime_handler_glob_add(E_Fm2_Mime_Handler *handler, const char *glob); 26 E_API Eina_Bool e_fm2_mime_handler_call(E_Fm2_Mime_Handler *handler, Evas_Object *obj, const char *path); 27 E_API Eina_Bool e_fm2_mime_handler_test(E_Fm2_Mime_Handler *handler, Evas_Object *obj, const char *path); 28 E_API void e_fm2_mime_handler_mime_handlers_call_all(Evas_Object *obj, const char *path, const char *mime); 29 E_API void e_fm2_mime_handler_glob_handlers_call_all(Evas_Object *obj, const char *path, const char *glob); 30 E_API void e_fm2_mime_handler_mime_del(E_Fm2_Mime_Handler *handler, const char *mime); 31 E_API void e_fm2_mime_handler_glob_del(E_Fm2_Mime_Handler *handler, const char *glob); 32 E_API const Eina_List *e_fm2_mime_handler_mime_handlers_get(const char *mime); 33 E_API Eina_List *e_fm2_mime_handler_glob_handlers_get(const char *glob); 34 35 #endif 36 #endif 37