static Evas_Object* create_main_box(interface *intf, Evas_Object *parent) { /* Create a content box to display the content and the mini player */ intf->main_box = elm_box_add(parent); elm_box_horizontal_set(intf->main_box, EINA_FALSE); /* Main View Naviframe */ intf->nf_content = elm_naviframe_add(intf->main_box); /* Put the naviframe at the top of the content_box */ evas_object_size_hint_weight_set(intf->nf_content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(intf->nf_content, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(intf->main_box, intf->nf_content); /* Library scan progress */ intf->scan_progress = elm_progressbar_add(intf->main_box); elm_progressbar_unit_format_set(intf->scan_progress, "Scanning... %.0f%%"); elm_progressbar_horizontal_set(intf->scan_progress, EINA_TRUE); evas_object_size_hint_weight_set(intf->scan_progress, EVAS_HINT_EXPAND, EVAS_HINT_FILL); evas_object_size_hint_align_set(intf->scan_progress, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_hide(intf->scan_progress); /* Mini Player creation */ intf->mini_player_layout = elm_layout_add(intf->main_box); intf->p_mini_player = audio_player_create(intf, application_get_playback_service(intf->p_app), intf->mini_player_layout); evas_object_hide(intf->mini_player_layout); evas_object_size_hint_weight_set(intf->mini_player_layout, EVAS_HINT_FILL, 0.1); evas_object_size_hint_align_set(intf->mini_player_layout, EVAS_HINT_FILL, EVAS_HINT_FILL); /* */ evas_object_show(intf->nf_content); /* Ask the global box to recalculate her current children display */ elm_box_recalculate(intf->main_box); return intf->main_box; }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *bg, *pb, *bx, *hbx, *bt, *bt_bx, *ic1, *ic2; char buf[PATH_MAX]; elm_app_info_set(elm_main, "elementary", "images/logo_small.png"); win = elm_win_add(NULL, "progressbar", ELM_WIN_BASIC); elm_win_title_set(win, "Progress bar example"); evas_object_smart_callback_add(win, "delete,request", _on_done, NULL); bg = elm_bg_add(win); elm_win_resize_object_add(win, bg); evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(bg); bx = elm_box_add(win); elm_win_resize_object_add(win, bx); evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(bx); /* pb with no label, default unit label and no icon */ pb = elm_progressbar_add(win); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5); elm_box_pack_end(bx, pb); evas_object_show(pb); example_data.pb1 = pb; /* pb with label, and set to pulse */ pb = elm_progressbar_add(win); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_object_text_set(pb, "Infinite bounce"); elm_progressbar_pulse_set(pb, EINA_TRUE); elm_box_pack_end(bx, pb); evas_object_show(pb); example_data.pb2 = pb; ic1 = elm_icon_add(win); snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get()); elm_icon_file_set(ic1, buf, NULL); evas_object_size_hint_aspect_set(ic1, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1); /* pb with label, icon, custom unit label and span size set */ pb = elm_progressbar_add(win); elm_object_text_set(pb, "Label"); elm_object_part_content_set(pb, "icon", ic1); elm_progressbar_inverted_set(pb, EINA_TRUE); elm_progressbar_unit_format_set(pb, "%1.1f units"); elm_progressbar_span_size_set(pb, 200); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_pack_end(bx, pb); evas_object_show(ic1); evas_object_show(pb); example_data.pb3 = pb; hbx = elm_box_add(win); elm_box_horizontal_set(hbx, EINA_TRUE); evas_object_size_hint_weight_set(hbx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(hbx, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(bx, hbx); evas_object_show(hbx); /* vertical pb */ pb = elm_progressbar_add(win); elm_progressbar_horizontal_set(pb, EINA_FALSE); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_pack_end(hbx, pb); elm_object_text_set(pb, "percent"); evas_object_show(pb); example_data.pb4 = pb; /* vertical pb, with pulse and custom (small) span size */ pb = elm_progressbar_add(win); elm_progressbar_horizontal_set(pb, EINA_FALSE); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_progressbar_span_size_set(pb, 80); elm_progressbar_pulse_set(pb, EINA_TRUE); elm_progressbar_unit_format_set(pb, NULL); elm_object_text_set(pb, "Infinite bounce"); elm_box_pack_end(hbx, pb); evas_object_show(pb); example_data.pb5 = pb; ic2 = elm_icon_add(win); elm_icon_file_set(ic2, buf, NULL); evas_object_size_hint_aspect_set(ic2, EVAS_ASPECT_CONTROL_HORIZONTAL, 1, 1); /* vertical pb, inverted, with custom unit format and icon*/ pb = elm_progressbar_add(win); elm_progressbar_horizontal_set(pb, EINA_FALSE); elm_object_text_set(pb, "Label"); elm_object_part_content_set(pb, "icon", ic2); elm_progressbar_inverted_set(pb, EINA_TRUE); elm_progressbar_unit_format_set(pb, "%1.2f%%"); elm_progressbar_span_size_set(pb, 200); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_pack_end(hbx, pb); evas_object_show(ic2); evas_object_show(pb); example_data.pb6 = pb; /* "wheel" style progress bar */ pb = elm_progressbar_add(win); elm_object_style_set(pb, "wheel"); elm_object_text_set(pb, "Style: wheel"); evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_pack_end(bx, pb); evas_object_show(pb); example_data.pb7 = pb; bt_bx = elm_box_add(win); elm_box_horizontal_set(bt_bx, EINA_TRUE); evas_object_size_hint_weight_set(bt_bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_pack_end(bx, bt_bx); evas_object_show(bt_bx); bt = elm_button_add(win); elm_object_text_set(bt, "Start"); evas_object_smart_callback_add(bt, "clicked", _progressbar_example_start, NULL); elm_box_pack_end(bt_bx, bt); evas_object_show(bt); bt = elm_button_add(win); elm_object_text_set(bt, "Stop"); evas_object_smart_callback_add(bt, "clicked", _progressbar_example_stop, NULL); elm_box_pack_end(bt_bx, bt); evas_object_show(bt); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }
PREFIX value ml_elm_progressbar_unit_format_set(value v_obj, value v_fmt) { elm_progressbar_unit_format_set((Evas_Object*) v_obj, String_val(v_fmt)); return Val_unit; }
void Progressbar::hideUnitFormat () { elm_progressbar_unit_format_set (o, NULL); }
void Progressbar::setUnitFormat (const std::string &format) { elm_progressbar_unit_format_set (o, format.c_str ()); }