Basic actionslider

This code snippet shows how to create a basic action slider in EFL. It has three states: left, right and center. When position is changed _actionslider_cb is called.
static void _actionslider_cb(void *data, Evas_Object * obj, void *event_info) {
	if (!strcmp((char *) event_info, "left")) {
		//do sth
	};
}

void _create_actionslider(appdata_s *ad){
    Evas_Object *box = elm_box_add(ad->win);
	evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, 0);
	elm_win_resize_object_add(ad->win, box);
	evas_object_show(box);

	Evas_Object *actionslider = elm_actionslider_add(ad->win);
	elm_object_style_set(actionslider, "bar");
	evas_object_size_hint_weight_set(actionslider, EVAS_HINT_EXPAND, 0);
	evas_object_size_hint_align_set(actionslider, EVAS_HINT_FILL, 0);
	elm_actionslider_indicator_pos_set(actionslider, ELM_ACTIONSLIDER_LEFT);
	elm_object_part_text_set(actionslider, "left", "Left");
	elm_object_part_text_set(actionslider, "right", "Right");
	elm_object_text_set(actionslider, "Hi");
	evas_object_smart_callback_add(actionslider, "pos_changed",
			_actionslider_cb, NULL);
	evas_object_show(actionslider);
	elm_box_pack_end(box, actionslider);
}

Responses

0 Replies