PREFIX value ml_elm_segment_control_item_insert_at( value v_obj, value v_icon, value v_label, value v_index) { Evas_Object* icon; if(v_icon == Val_int(0)) icon = NULL; else icon = Evas_Object_val(Field(v_icon, 0)); const char* label; if(v_label == Val_int(0)) label = NULL; else label = String_val(Field(v_label, 0)); Elm_Object_Item* it = elm_segment_control_item_insert_at( Evas_Object_val(v_obj), icon, label, Int_val(v_index)); if(it == NULL) caml_failwith("elm_segment_control_item_insert_at"); return copy_Elm_Object_Item(it); }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *bg, *sc, *ic; Elm_Object_Item *seg_it; int count, idx; win = elm_win_add(NULL, "segment_control", ELM_WIN_BASIC); elm_win_title_set(win, "Segment Control 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); sc = elm_segment_control_add(win); evas_object_size_hint_weight_set(sc, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, sc); evas_object_show(sc); elm_segment_control_item_add(sc, NULL, "only text"); ic = elm_icon_add(win); elm_icon_standard_set(ic, "close"); elm_segment_control_item_add(sc, ic, NULL); ic = elm_icon_add(win); elm_icon_standard_set(ic, "home"); elm_segment_control_item_add(sc, ic, "Home"); ic = elm_icon_add(win); elm_icon_standard_set(ic, "close"); elm_segment_control_item_add(sc, ic, ""); count = elm_segment_control_item_count_get(sc); elm_segment_control_item_insert_at(sc, NULL, "Inserted at", count - 1); seg_it = elm_segment_control_item_insert_at(sc, NULL, "To be deleted", 2); elm_object_item_del(seg_it); elm_segment_control_item_insert_at(sc, NULL, "To be deleted", 2); elm_segment_control_item_del_at(sc, 2); seg_it = elm_segment_control_item_get(sc, 0); elm_object_item_text_set(seg_it, "Only Text"); count = elm_segment_control_item_count_get(sc); seg_it = elm_segment_control_item_get(sc, count / 2); elm_segment_control_item_selected_set(seg_it, EINA_TRUE); seg_it = elm_segment_control_item_selected_get(sc); idx = elm_segment_control_item_index_get(seg_it); printf("Item selected: %i\n", idx); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }