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++; } }
static void _account_set_cb(void *data, Evas_Object *obj, void *event_info) { Evas_Object *fr, *tb, *inwin, *lbl, *sc, *text, *bt, *hbox, *img, *entry; char buf[PATH_MAX]; inwin = elm_win_inwin_add(enlil_data->win->win); set_account.inwin = inwin; evas_object_show(inwin); fr = elm_frame_add(enlil_data->win->win); elm_frame_label_set(fr, D_("Set the Flick account.")); evas_object_size_hint_weight_set(fr, 1.0, 1.0); evas_object_size_hint_align_set(fr, 0.0, 0.0); evas_object_show(fr); tb = elm_table_add(enlil_data->win->win); elm_table_padding_set(tb, 10, 10); 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); //steps lbl = elm_label_add(enlil_data->win->win); elm_label_label_set( lbl, D_("<b>STEP 1 :</b> Open the web page in your favorite web browser.")); evas_object_size_hint_weight_set(lbl, 0.0, 0.0); evas_object_size_hint_align_set(lbl, -1.0, 0.0); evas_object_show(lbl); elm_table_pack(tb, lbl, 0, 0, 2, 1); entry = elm_scrolled_entry_add(enlil_data->win->win); elm_scrolled_entry_single_line_set(entry, EINA_TRUE); elm_scrolled_entry_entry_set(entry, enlil_flickr_auth_url_get()); evas_object_size_hint_weight_set(entry, 1.0, 0.0); evas_object_size_hint_align_set(entry, -1.0, 0.0); evas_object_show(entry); elm_table_pack(tb, entry, 0, 1, 2, 1); img = elm_image_add(obj); elm_image_file_set(img, Theme, "flickr/set_account_0"); evas_object_size_hint_weight_set(img, 1.0, 1.0); evas_object_size_hint_align_set(img, -1.0, -1.0); evas_object_show(img); elm_table_pack(tb, img, 0, 2, 2, 1); snprintf( buf, PATH_MAX, D_("<b>STEP 2 :</b> Authorize Enki to access to your account.")); lbl = elm_label_add(enlil_data->win->win); elm_label_label_set(lbl, buf); evas_object_size_hint_weight_set(lbl, 0.0, 0.0); evas_object_size_hint_align_set(lbl, -1.0, 0.0); evas_object_show(lbl); elm_table_pack(tb, lbl, 0, 3, 2, 1); img = elm_image_add(obj); elm_image_file_set(img, Theme, "flickr/set_account_1"); evas_object_size_hint_weight_set(img, 0.0, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(img, -1.0, -1.0); evas_object_show(img); elm_table_pack(tb, img, 0, 4, 2, 1); snprintf( buf, PATH_MAX, D_("<b>STEP 3 :</b> Copy the code in the followed text area.")); lbl = elm_label_add(enlil_data->win->win); elm_label_label_set(lbl, buf); evas_object_size_hint_weight_set(lbl, 0.0, 0.0); evas_object_size_hint_align_set(lbl, -1.0, 0.0); evas_object_show(lbl); elm_table_pack(tb, lbl, 0, 5, 2, 1); // lbl = elm_label_add(enlil_data->win->win); elm_label_label_set(lbl, D_("The 9-digit code : ")); evas_object_size_hint_weight_set(lbl, 0.0, 0.0); evas_object_size_hint_align_set(lbl, -1.0, 0.0); evas_object_show(lbl); elm_table_pack(tb, lbl, 0, 6, 1, 1); sc = elm_scroller_add(enlil_data->win->win); evas_object_size_hint_weight_set(sc, 1.0, 0.0); evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_scroller_content_min_limit(sc, EINA_FALSE, EINA_TRUE); elm_scroller_policy_set(sc, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF); elm_scroller_bounce_set(sc, 0, 0); evas_object_show(sc); elm_table_pack(tb, sc, 1, 6, 1, 1); text = elm_entry_add(enlil_data->win->win); set_account.entry = text; elm_entry_entry_set(text, ""); elm_entry_single_line_set(text, 1); evas_object_size_hint_weight_set(text, EVAS_HINT_EXPAND, 1.0); evas_object_size_hint_align_set(text, 1.0, 0.5); elm_scroller_content_set(sc, text); evas_object_show(text); hbox = elm_box_add(enlil_data->win->win); elm_box_horizontal_set(hbox, 1); evas_object_size_hint_weight_set(hbox, EVAS_HINT_EXPAND, 0.0); evas_object_size_hint_align_set(hbox, 1.0, 0.0); evas_object_show(hbox); elm_table_pack(tb, hbox, 1, 7, 1, 1); bt = elm_button_add(enlil_data->win->win); elm_button_label_set(bt, D_("Cancel")); evas_object_smart_callback_add(bt, "clicked", _account_set_cancel_cb, NULL); evas_object_size_hint_align_set(bt, 1.0, 0.0); evas_object_show(bt); elm_box_pack_end(hbox, bt); bt = elm_button_add(enlil_data->win->win); elm_button_label_set(bt, D_("Apply")); evas_object_smart_callback_add(bt, "clicked", _account_set_apply_cb, text); evas_object_size_hint_align_set(bt, 1.0, 0.0); evas_object_show(bt); elm_box_pack_end(hbox, bt); elm_object_disabled_set(bt, EINA_TRUE); evas_object_smart_callback_add(text, "changed", _account_set_entry_changed_cb, bt); elm_frame_content_set(fr, tb); elm_win_inwin_content_set(inwin, fr); }