static void _load_album_done_cb(void *data, Enlil_Load *load, Enlil_Library *library, Enlil_Album *album) { Eina_List *l; Enlil_Photo *photo; EINA_LIST_FOREACH(enlil_album_photos_get(album), l, photo) { Enlil_Photo_Data *data = calloc(1, sizeof(Enlil_Photo_Data)); enlil_photo_user_data_set(photo, data, NULL); }
void load_album_done_cb(void *data, Enlil_Load *load, Enlil_Library *library, Enlil_Album *album) { Eina_List *l; Enlil_Photo *photo; Enlil_Photo *photo_prev = NULL; Enlil_Data *enlil_data = (Enlil_Data *) data; enlil_album_monitor_start(album); Enlil_Album_Data *enlil_album_data = calloc(1, sizeof(Enlil_Album_Data)); enlil_album_data->enlil_data = enlil_data; enlil_album_user_data_set(album, enlil_album_data, enlil_album_data_free); enlil_album_collection_process(album); list_left_add(enlil_data->list_left, album); list_photo_album_add(enlil_data->list_photo, album); //photos_list_object_freeze(enlil_data->list_photo->o_list, 1); EINA_LIST_FOREACH(enlil_album_photos_get(album), l, photo) { Enlil_Photo_Data *enlil_photo_data = calloc(1, sizeof(Enlil_Photo_Data)); enlil_photo_user_data_set(photo, enlil_photo_data, enlil_photo_data_free); enlil_photo_data->enlil_data = enlil_data; if(!photo_prev) list_photo_photo_append_relative(enlil_data->list_photo, album, photo, NULL); else { Enlil_Photo_Data *photo_data_prev = enlil_photo_user_data_get(photo_prev); list_photo_photo_append_relative(enlil_data->list_photo, album, photo, photo_data_prev->list_photo_item); } photo_prev = photo; map_photo_add(enlil_data->map, photo); enlil_photo_tag_process(photo); if(enlil_photo_type_get(photo) == ENLIL_PHOTO_TYPE_PHOTO && !enlil_photo_exif_loaded_get(photo)) { enlil_photo_data->clear_exif_data = EINA_TRUE; enlil_photo_data->exif_job = enlil_exif_job_append(photo, exif_load_done, photo); } if(enlil_photo_type_get(photo) == ENLIL_PHOTO_TYPE_PHOTO && !enlil_photo_iptc_loaded_get(photo)) { enlil_photo_data->clear_iptc_data = EINA_TRUE; enlil_photo_data->iptc_job = enlil_iptc_job_append(photo, iptc_load_done, photo); } }
void main_menu_update_libraries_list() { Enlil_String *string; Eina_List *list = enlil_library_eet_path_load(); elm_gengrid_clear(libraries_list); // Library *lib = calloc(1, sizeof(Library)); lib->is_new_library = EINA_TRUE; lib->path = eina_stringshare_add("Add a new Library"); elm_gengrid_item_append(libraries_list, &itc_grid, lib, _library_select, NULL); // EINA_LIST_FREE(list, string) { Library *lib = calloc(1, sizeof(Library)); lib->is_new_library = EINA_FALSE; lib->path = eina_stringshare_add(string->string); lib->photo1 = enlil_photo_new(); Enlil_Photo_Data *photo_data1 = calloc(1, sizeof(Enlil_Photo_Data)); enlil_photo_user_data_set(lib->photo1, photo_data1, enlil_photo_data_free); enlil_photo_mustNotBeSaved_set(lib->photo1, EINA_TRUE); lib->photo2 = enlil_photo_new(); Enlil_Photo_Data *photo_data2 = calloc(1, sizeof(Enlil_Photo_Data)); enlil_photo_user_data_set(lib->photo2, photo_data2, enlil_photo_data_free); enlil_photo_mustNotBeSaved_set(lib->photo2, EINA_TRUE); photo_data1->library_item = elm_gengrid_item_append(libraries_list, &itc_grid, lib, _library_select, NULL); photo_data2->library_item = photo_data1->library_item; EINA_STRINGSHARE_DEL(string->string); FREE(string); }