00001 #ifndef ENGRAVE_FILE_H 00002 #define ENGRAVE_FILE_H 00003 00018 typedef struct _Engrave_File Engrave_File; 00019 00023 struct _Engrave_File 00024 { 00025 char *font_dir; 00026 char *im_dir; 00028 Evas_List *images; 00029 Evas_List *fonts; 00030 Evas_List *data; 00031 Evas_List *groups; 00032 }; 00033 00034 Engrave_File *engrave_file_new(void); 00035 void engrave_file_free(Engrave_File *ef); 00036 00037 void engrave_file_image_dir_set(Engrave_File *ef, const char *dir); 00038 void engrave_file_font_dir_set(Engrave_File *ef, const char *dir); 00039 00040 const char *engrave_file_image_dir_get(Engrave_File *ef); 00041 const char *engrave_file_font_dir_get(Engrave_File *ef); 00042 00043 void engrave_file_font_add(Engrave_File *e, Engrave_Font *ef); 00044 void engrave_file_image_add(Engrave_File *ef, Engrave_Image *ei); 00045 void engrave_file_data_add(Engrave_File *ef, Engrave_Data *ed); 00046 void engrave_file_group_add(Engrave_File *ef, Engrave_Group *eg); 00047 00048 Engrave_Group *engrave_file_group_last_get(Engrave_File *ef); 00049 Engrave_Group *engrave_file_group_by_name_find(Engrave_File *ef, 00050 const char *name); 00051 Engrave_Font *engrave_file_font_by_name_find(Engrave_File *ef, 00052 const char *name); 00053 00054 Engrave_Image *engrave_file_image_by_name_find(Engrave_File *ef, 00055 const char *name); 00056 00057 int engrave_file_images_count(Engrave_File *ef); 00058 int engrave_file_data_count(Engrave_File *ef); 00059 int engrave_file_groups_count(Engrave_File *ef); 00060 int engrave_file_fonts_count(Engrave_File *ef); 00061 00062 void engrave_file_image_foreach(Engrave_File *ef, 00063 void (*func)(Engrave_Image *, void *), 00064 void *data); 00065 void engrave_file_data_foreach(Engrave_File *ef, 00066 void (*func)(Engrave_Data *, void *), 00067 void *data); 00068 void engrave_file_group_foreach(Engrave_File *ef, 00069 void (*func)(Engrave_Group *, void *), 00070 void *data); 00071 void engrave_file_font_foreach(Engrave_File *ef, 00072 void (*func)(Engrave_Font *, void *), 00073 void *data); 00074 00075 Engrave_Data *engrave_file_data_by_key_find(Engrave_File *ef, 00076 const char *key); 00077 00082 #endif 00083