void album_new(void *data, Enlil_Album *album) { char buf[PATH_MAX]; Enlil_Data *enlil_data = (Enlil_Data *) data; Enlil_Library *_library = enlil_data->library; enlil_album_monitor_start(album); enlil_album_collection_process(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_photos_sort_set(album, ENLIL_PHOTO_SORT_DATE); enlil_album_photos_sort_set(album, ENLIL_PHOTO_SORT_DATE); Enlil_Album *album_prev = enlil_library_album_prev_get(_library, album); Enlil_Album_Data *album_data_prev = enlil_album_user_data_get(album_prev); if (!album_prev || !album_data_prev) { list_left_append_relative(enlil_data->list_left, album, NULL); list_photo_album_append_relative(enlil_data->list_photo, album, NULL); } else { list_left_append_relative(enlil_data->list_left, album, album_data_prev->list_album_item); list_photo_album_append_relative(enlil_data->list_photo, album, album_data_prev->list_photo_item); } import_album_new(album); //snprintf(buf, PATH_MAX, "%s %s",D_("New Album : "), enlil_album_name_get(album)); //notify_sync_content_set(enlil_data, buf); enlil_data->nb_albums++; snprintf(buf, PATH_MAX, D_(" %d albums and %d photos."), enlil_data->nb_albums, enlil_data->nb_photos); elm_label_label_set(enlil_data->list_photo->lbl_nb_albums_photos, buf); Enlil_NetSync_Job *job = enlil_netsync_job_sync_photos_append( album, netsync_photo_new_cb, netsync_photo_notinnetsync_cb, netsync_photo_notuptodate_cb, netsync_photo_netsyncnotuptodate_cb, netsync_photo_uptodate_cb, netsync_photo_tags_notuptodate_cb, netsync_photo_tags_netsyncnotuptodate_cb, netsync_photo_tags_uptodate_cb, enlil_data); }
void list_left_add(List_Left *list_left, Enlil_Album *album) { Enlil_Album_Data *enlil_album_data = enlil_album_user_data_get(album); enlil_album_data->list_album_item = enki_elm_genlist_item_album_append(main_panel_object, &itc_album, album, NULL, _gl_sel, album); }
void upload_done(Upload *ul, Enlil_Photo *photo) { Enlil_Photo_Data *photo_data = enlil_photo_user_data_get(photo); Enlil_Album *album = enlil_photo_album_get(photo); Enlil_Album_Data *album_data = enlil_album_user_data_get(album); evas_object_hide(ul->main); photo_data->netsync.state = PHOTO_NETSYNC_NONE; }
void list_left_append_relative(List_Left *list_left, Enlil_Album *album, Elm_Genlist_Item *relative) { Enlil_Album_Data *enlil_album_data = enlil_album_user_data_get(album); if (!relative) enlil_album_data->list_album_item = enki_elm_genlist_item_album_prepend(main_panel_object, &itc_album, album, NULL, _gl_sel, album); else enlil_album_data->list_album_item = enki_elm_genlist_item_album_insert_after(main_panel_object, &itc_album, album, NULL, relative, _gl_sel, album); }
Evas_Object * flickr_sync_new(Evas_Object *win, Enlil_Album *album) { Evas_Object *inwin, *pb, *bt, *tb; Enlil_Album_Data *album_data = enlil_album_user_data_get(album); //create inwin & file selector inwin = elm_win_inwin_add(win); album_data->netsync.inwin.win = inwin; elm_object_style_set(inwin, "minimal"); evas_object_show(inwin); tb = elm_table_add(inwin); album_data->netsync.inwin.tb = tb; evas_object_size_hint_weight_set(tb, 1.0, 1.0); evas_object_size_hint_align_set(tb, 1.0, 1.0); evas_object_show(tb); elm_win_inwin_content_set(inwin, tb); bt = elm_button_add(inwin); elm_object_text_set(bt, D_("Close")); evas_object_size_hint_align_set(bt, 1.0, 0.5); evas_object_smart_callback_add(bt, "clicked", _close_cb, album); evas_object_show(bt); elm_table_pack(tb, bt, 1, 1, 1, 1); pb = elm_progressbar_add(inwin); album_data->netsync.inwin.pb = pb; evas_object_size_hint_align_set(pb, 0.5, 0.5); evas_object_size_hint_weight_set(pb, 1.0, 0.0); elm_progressbar_pulse_set(pb, EINA_TRUE); elm_object_text_set(pb, D_("Synchronising ...")); evas_object_hide(pb); elm_table_pack(tb, pb, 0, 1, 1, 1); flickr_sync_update(album); return inwin; }
void list_left_col_album_remove(List_Left *list_left, Enlil_Collection *col, Enlil_Album *album) { Eina_List *l; Enlil_Album *_album; ASSERT_RETURN_VOID(list_left != NULL); ASSERT_RETURN_VOID(col != NULL); ASSERT_RETURN_VOID(album != NULL); Enlil_Collection_Data *col_data = enlil_collection_user_data_get(col); if (elm_genlist_item_expanded_get(col_data->list_col_item)) { photos_list_object_freeze(col_data->enlil_data->list_photo->o_list, 1); photos_list_object_hide_all(col_data->enlil_data->list_photo->o_list); EINA_LIST_FOREACH(enlil_collection_albums_get(col), l, _album) { Enlil_Album_Data *album_data = enlil_album_user_data_get(_album); photos_list_object_header_show(album_data->list_photo_item); }
void flickr_sync_update(Enlil_Album *album) { Enlil_Album_Data *album_data = enlil_album_user_data_get(album); Evas_Object *fr, *tb2, *lbl, *bt, *sep, *pb, *pager; Evas_Object *inwin = album_data->netsync.inwin.win; Evas_Object *tb = album_data->netsync.inwin.tb; int i = 0; Eina_List *l; Enlil_Photo *photo; int nb_photos; char buf[1024]; if (album_data->netsync.inwin.fr) evas_object_del( album_data->netsync.inwin.fr); // fr = elm_frame_add(inwin); album_data->netsync.inwin.fr = fr; elm_object_text_set(fr, D_("Synchronise an album with flickr")); evas_object_size_hint_weight_set(fr, 1.0, 1.0); evas_object_size_hint_align_set(fr, -1.0, -1.0); evas_object_show(fr); elm_table_padding_set(tb, 1, 1); elm_table_pack(tb, fr, 0, 0, 3, 1); tb2 = elm_table_add(inwin); evas_object_size_hint_weight_set(tb2, 1.0, 0.0); evas_object_size_hint_align_set(tb2, -1.0, 1.0); elm_table_padding_set(tb2, 15, 5); evas_object_show(tb2); elm_object_content_set(fr, tb2); // if (album_data->netsync.album_netsync_notuptodate) { lbl = elm_label_add(inwin); elm_object_text_set(lbl, D_("Update the flickr album header.")); evas_object_show(lbl); elm_table_pack(tb2, lbl, 0, i, 1, 1); bt = elm_button_add(inwin); album_data->netsync.inwin.bt1 = bt; elm_object_text_set(bt, D_("Update")); evas_object_smart_callback_add(bt, "clicked", _netsync_notuptodate_cb, album); evas_object_size_hint_align_set(bt, 0.5, 0.5); evas_object_size_hint_weight_set(bt, 1.0, 0.0); evas_object_show(bt); elm_table_pack(tb2, bt, 1, i, 1, 1); i++; sep = elm_separator_add(inwin); evas_object_show(sep); elm_table_pack(tb2, sep, 0, i, 2, 1); i++; } if (album_data->netsync.album_notinnetsync) { lbl = elm_label_add(inwin); elm_object_text_set(lbl, D_("The album is not in Flickr.")); evas_object_show(lbl); elm_table_pack(tb2, lbl, 0, i, 1, 1); bt = elm_button_add(inwin); album_data->netsync.inwin.bt2 = bt; elm_object_text_set(bt, D_("Add the album in Flickr")); evas_object_size_hint_align_set(bt, 0.5, 0.5); evas_object_size_hint_weight_set(bt, 1.0, 0.0); evas_object_smart_callback_add(bt, "clicked", _album_notinnetsync_cb, album); evas_object_show(bt); elm_table_pack(tb2, bt, 1, i, 1, 1); i++; sep = elm_separator_add(inwin); evas_object_show(sep); elm_table_pack(tb2, sep, 0, i, 2, 1); i++; } if (album_data->netsync.album_local_notuptodate) { lbl = elm_label_add(inwin); elm_object_text_set(lbl, D_("Update the local album header.")); evas_object_show(lbl); elm_table_pack(tb2, lbl, 0, i, 1, 1); bt = elm_button_add(inwin); album_data->netsync.inwin.bt3 = bt; evas_object_size_hint_align_set(bt, 0.5, 0.5); evas_object_size_hint_weight_set(bt, 1.0, 0.0); evas_object_smart_callback_add(bt, "clicked", _local_notuptodate_cb, album); elm_object_text_set(bt, D_("Update")); evas_object_show(bt); elm_table_pack(tb2, bt, 1, i, 1, 1); i++; sep = elm_separator_add(inwin); evas_object_show(sep); elm_table_pack(tb2, sep, 0, i, 2, 1); i++; } if (album_data->netsync.photos_notinlocal) { lbl = elm_label_add(inwin); elm_object_text_set(lbl, D_("Some photos are not in the local album.")); evas_object_show(lbl); elm_table_pack(tb2, lbl, 0, i, 1, 1); pager = elm_naviframe_add(inwin); album_data->netsync.inwin.notinlocal.pager = pager; evas_object_size_hint_align_set(pager, 0.5, 0.5); evas_object_size_hint_weight_set(pager, 1.0, 0.0); evas_object_show(pager); elm_table_pack(tb2, pager, 1, i, 1, 1); elm_object_style_set(pager, "fade_invisible"); bt = elm_button_add(inwin); album_data->netsync.inwin.notinlocal.bt = bt; album_data->netsync.inwin.bt4 = bt; evas_object_size_hint_align_set(bt, -1.0, 0.5); evas_object_size_hint_weight_set(bt, 1.0, 0.0); elm_object_text_set(bt, D_("Download Them All")); evas_object_smart_callback_add(bt, "clicked", _photos_notinlocal_cb, album); evas_object_show(bt); elm_naviframe_item_simple_push(pager, bt); pb = elm_progressbar_add(inwin); album_data->netsync.inwin.notinlocal.pb = pb; evas_object_size_hint_align_set(pb, -1.0, 0.5); evas_object_size_hint_weight_set(pb, 1.0, 0.0); elm_progressbar_pulse_set(pb, EINA_TRUE); elm_object_text_set(pb, D_("Downloads in progress ...")); evas_object_show(pb); elm_naviframe_item_simple_push(pager, pb); evas_object_size_hint_max_set(pb, 0, 0); if (album_data->netsync.inwin.notinlocal.is_updating) { elm_progressbar_pulse(pb, EINA_TRUE); elm_naviframe_item_simple_promote(pager, pb); } else elm_naviframe_item_simple_promote(pager, bt); i++; sep = elm_separator_add(inwin); evas_object_show(sep); elm_table_pack(tb2, sep, 0, i, 2, 1); i++; } nb_photos = 0; EINA_LIST_FOREACH(enlil_album_photos_get(album), l, photo) { Enlil_Photo_Data *photo_data = enlil_photo_user_data_get(photo); if (photo_data && photo_data->netsync.state == PHOTO_FLICKR_NOTINFLICKR) { nb_photos++; } }