835f0d0c4262a169e431ab200b3d8881f20e9435
[framework/uifw/e17.git] / src / bin / e_utils.h
1 #ifdef E_TYPEDEFS
2
3 typedef struct _E_Util_Image_Import_Handle E_Util_Image_Import_Handle;
4
5 typedef enum _E_Image_Import_Mode E_Image_Import_Mode;
6 enum _E_Image_Import_Mode
7 {
8   E_IMAGE_IMPORT_STRETCH = 0,
9   E_IMAGE_IMPORT_TILE = 1,
10   E_IMAGE_IMPORT_CENTER = 2,
11   E_IMAGE_IMPORT_SCALE_ASPECT_IN = 3,
12   E_IMAGE_IMPORT_SCALE_ASPECT_OUT = 4
13 };
14
15 typedef enum _E_Error_Code E_Error_Code;
16 enum _E_Error_Code
17 {
18    E_ERROR_CODE_SUCCESS            = 0,
19    E_ERROR_CODE_BAD_REQUEST        = 1,
20    E_ERROR_CODE_BAD_VALUE          = 2,
21    E_ERROR_CODE_BAD_WINDOW         = 3,
22    E_ERROR_CODE_BAD_PIXMAP         = 4,
23    E_ERROR_CODE_BAD_ATOM           = 5,
24    E_ERROR_CODE_BAD_CURSOR         = 6,
25    E_ERROR_CODE_BAD_FONT           = 7,
26    E_ERROR_CODE_BAD_MATCH          = 8,
27    E_ERROR_CODE_BAD_DRAWABLE       = 9,
28    E_ERROR_CODE_BAD_ACCESS         = 10,
29    E_ERROR_CODE_BAD_ALLOC          = 11,
30    E_ERROR_CODE_BAD_COLOR          = 12,
31    E_ERROR_CODE_BAD_GC             = 13,
32    E_ERROR_CODE_BAD_ID_CHOICE      = 14,
33    E_ERROR_CODE_BAD_NAME           = 15,
34    E_ERROR_CODE_BAD_LENGTH         = 16,
35    E_ERROR_CODE_BAD_IMPLEMENTATION = 17,
36 };
37
38 #else
39 #ifndef E_UTILS_H
40 #define E_UTILS_H
41
42 #define E_UTIL_IMAGE_IMPORT_SETTINGS 0xE0b0104f
43
44 #define e_util_dialog_show(title, args...) \
45 { \
46    char __tmpbuf[PATH_MAX]; \
47    \
48    snprintf(__tmpbuf, sizeof(__tmpbuf), ##args); \
49    e_util_dialog_internal(title, __tmpbuf); \
50 }
51
52 EAPI void         e_util_wakeup(void);
53 EAPI void         e_util_env_set(const char *var, const char *val);
54 EAPI E_Zone      *e_util_zone_current_get(E_Manager *man);
55 EAPI int          e_util_glob_match(const char *str, const char *glob);
56 EAPI int          e_util_glob_case_match(const char *str, const char *glob);
57 EAPI E_Container *e_util_container_number_get(int num);
58 EAPI E_Zone      *e_util_container_zone_id_get(int con_num, int id);
59 EAPI E_Zone      *e_util_container_zone_number_get(int con_num, int zone_num);
60 EAPI int          e_util_head_exec(int head, const char *cmd);
61 EAPI int          e_util_strcmp(const char *s1, const char *s2);    
62 EAPI int          e_util_both_str_empty(const char *s1, const char *s2);
63 EAPI int          e_util_immortal_check(void);
64 EAPI int          e_util_edje_icon_list_check(const char *list);
65 EAPI int          e_util_edje_icon_list_set(Evas_Object *obj, const char *list);
66 EAPI int          e_util_menu_item_edje_icon_list_set(E_Menu_Item *mi, const char *list);
67 EAPI int          e_util_edje_icon_check(const char *name);
68 EAPI int          e_util_edje_icon_set(Evas_Object *obj, const char *name);
69 EAPI int          e_util_icon_theme_set(Evas_Object *obj, const char *icon);
70 EAPI unsigned int e_util_icon_size_normalize(unsigned int desired);
71 EAPI int          e_util_menu_item_theme_icon_set(E_Menu_Item *mi, const char *icon);
72 EAPI E_Container *e_util_container_window_find(Ecore_X_Window win);
73 EAPI E_Zone      *e_util_zone_window_find(Ecore_X_Window win);
74 EAPI E_Border    *e_util_desk_border_above(E_Border *bd);
75 EAPI E_Border    *e_util_desk_border_below(E_Border *bd);
76 EAPI int          e_util_edje_collection_exists(const char *file, const char *coll);
77 EAPI void         e_util_dialog_internal(const char *title, const char *txt);
78 EAPI const char  *e_util_filename_escape(const char *filename);
79 EAPI int          e_util_icon_save(Ecore_X_Icon *icon, const char *filename);
80 EAPI char        *e_util_shell_env_path_eval(const char *path);
81 EAPI char        *e_util_size_string_get(off_t size);
82 EAPI char        *e_util_file_time_get(time_t ftime);
83 EAPI void         e_util_library_path_strip(void);
84 EAPI void         e_util_library_path_restore(void);
85 EAPI Evas_Object *e_util_icon_add(const char *path, Evas *evas);
86 EAPI Evas_Object *e_util_desktop_icon_add(Efreet_Desktop *desktop, unsigned int size, Evas *evas);
87 EAPI Evas_Object *e_util_icon_theme_icon_add(const char *icon_name, unsigned int size, Evas *evas);
88 EAPI void         e_util_desktop_menu_item_icon_add(Efreet_Desktop *desktop, unsigned int size, E_Menu_Item *mi);
89 EAPI int          e_util_dir_check(const char *dir);
90 EAPI void         e_util_defer_object_del(E_Object *obj);
91 EAPI const char  *e_util_winid_str_get(Ecore_X_Window win);
92 EAPI void         e_util_win_auto_resize_fill(E_Win *win);
93 /* check if loaded config version matches the current version, show a
94    dialog warning if loaded version is older or newer than current */
95 EAPI Eina_Bool    e_util_module_config_check(const char *module_name, int loaded, int current);
96
97 EAPI E_Dialog                   *e_util_image_import_settings_new(const char *path, void (*cb)(void *data, const char *path, Eina_Bool ok, Eina_Bool external, int quality, E_Image_Import_Mode mode), const void *data);
98 EAPI E_Util_Image_Import_Handle *e_util_image_import(const char *image_path, const char *edje_path, const char *edje_group, Eina_Bool external, int quality, E_Image_Import_Mode mode, void (*cb)(void *data, Eina_Bool ok, const char *image_path, const char *edje_path), const void *data);
99 EAPI void                        e_util_image_import_cancel(E_Util_Image_Import_Handle *handle);
100
101 EAPI int e_util_container_desk_count_get(E_Container *con);
102
103 EAPI Eina_Bool e_util_fullscreen_curreny_any(void);
104 EAPI Eina_Bool e_util_fullscreen_any(void);
105
106 #endif
107 #endif