From 388d3bd3455e84cc7086fb7f4f5da63b3721de96 Mon Sep 17 00:00:00 2001 From: raster Date: Fri, 24 Feb 2012 12:05:05 +0000 Subject: [PATCH] From: cnook Subject: [E-devel] [Patch][elementary_test] test_flipselector I have attached a patch for test_flipselecotr. Please review this and give any feedbacks. Thanks. git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/elementary@68407 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/bin/test_flipselector.c | 86 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 78 insertions(+), 8 deletions(-) diff --git a/src/bin/test_flipselector.c b/src/bin/test_flipselector.c index 65a6f26..318dafe 100644 --- a/src/bin/test_flipselector.c +++ b/src/bin/test_flipselector.c @@ -23,13 +23,22 @@ _unsel_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) } void -_third_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) +_last_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { Elm_Object_Item *it; Evas_Object *fp = data; - it = elm_flipselector_first_item_get(fp); - it = elm_flipselector_item_next_get(it); - it = elm_flipselector_item_next_get(it); + it = elm_flipselector_last_item_get(fp); + elm_flipselector_item_selected_set(it, EINA_TRUE); +} + +void +_third_from_end_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) +{ + Elm_Object_Item *it; + Evas_Object *fp = data; + it = elm_flipselector_last_item_get(fp); + it = elm_flipselector_item_prev_get(it); + it = elm_flipselector_item_prev_get(it); elm_flipselector_item_selected_set(it, EINA_TRUE); } @@ -46,11 +55,35 @@ _overflow_cb(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_inf } void +slider_change_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__) +{ + Evas_Object *fl; + fl = (Evas_Object *)data; + + double val = elm_slider_value_get(obj); + elm_flipselector_interval_set(fl, val); +} + +void +flip_next_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) +{ + Evas_Object *fp = data; + elm_flipselector_flip_next(fp); +} + +void +flip_prev_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) +{ + Evas_Object *fp = data; + elm_flipselector_flip_prev(fp); +} + +void test_flipselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { char buf[8]; unsigned int i; - Evas_Object *win, *bg, *bx, *fp, *bt; + Evas_Object *win, *bg, *bx, *fp, *bt, *bx2, *sl; static const char *lbl[] = { "Elementary", "Evas", @@ -86,21 +119,58 @@ test_flipselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *even elm_box_pack_end(bx, fp); evas_object_show(fp); + bx2 = elm_box_add(win); + evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_box_horizontal_set(bx2, EINA_TRUE); + elm_box_pack_end(bx, bx2); + evas_object_show(bx2); + fp = elm_flipselector_add(win); evas_object_smart_callback_add(fp, "underflowed", _overflow_cb, NULL); evas_object_smart_callback_add(fp, "overflowed", _underflow_cb, NULL); evas_object_size_hint_weight_set(fp, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - for (i = 2099; i >= 1990; i--) + for (i = 1990; i <= 2099; i++) { snprintf(buf, 8, "%d", i); elm_flipselector_item_append(fp, buf, _sel_cb, NULL); } - elm_box_pack_end(bx, fp); + + bt = elm_button_add(win); + elm_object_text_set(bt, "Flip Prev"); + evas_object_smart_callback_add(bt, "clicked", flip_prev_cb, fp); + + elm_box_pack_end(bx2, bt); + evas_object_show(bt); + + elm_box_pack_end(bx2, fp); evas_object_show(fp); bt = elm_button_add(win); + elm_object_text_set(bt, "Flip Next"); + evas_object_smart_callback_add(bt, "clicked", flip_next_cb, fp); + elm_box_pack_end(bx2, bt); + evas_object_show(bt); + + sl = elm_slider_add(win); + elm_object_text_set(sl, "Flip Iterval:"); + elm_slider_unit_format_set(sl, "%1.2f"); + elm_slider_min_max_set(sl, 0, 3.0); + elm_slider_value_set(sl, 0.85); + evas_object_size_hint_align_set(sl, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_box_pack_end(bx, sl); + evas_object_show(sl); + evas_object_smart_callback_add(sl, "changed", slider_change_cb, fp); + + bt = elm_button_add(win); + elm_object_text_set(bt, "Select Last"); + evas_object_smart_callback_add(bt, "clicked", _last_cb, fp); + elm_box_pack_end(bx, bt); + evas_object_show(bt); + + bt = elm_button_add(win); elm_object_text_set(bt, "Select 2097"); - evas_object_smart_callback_add(bt, "clicked", _third_cb, fp); + evas_object_smart_callback_add(bt, "clicked", _third_from_end_cb, fp); elm_box_pack_end(bx, bt); evas_object_show(bt); -- 2.7.4