From: ChunEon Park Date: Mon, 18 Jul 2011 13:05:13 +0000 (+0900) Subject: elm_controlbar - reverted to previous revision since setting->sound has a problem. X-Git-Tag: REL_F_I9200_20110719_1~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5127d63023095411c5b97431522253742507d71e;p=framework%2Fuifw%2Felementary.git elm_controlbar - reverted to previous revision since setting->sound has a problem. please check it then apply again. --- diff --git a/src/lib/elm_controlbar.c b/src/lib/elm_controlbar.c index a6d8f04..b23fbde 100644 --- a/src/lib/elm_controlbar.c +++ b/src/lib/elm_controlbar.c @@ -306,6 +306,10 @@ _theme_hook(Evas_Object * obj) if (item->selected) _select_box(item); } +//TODO: "These lines affects item after images. I don't know why it does this time Please check it by you!!" +// evas_object_smart_member_add(wd->view, obj); +// evas_object_smart_member_add(wd->selected_box, obj); +// evas_object_smart_member_add(wd->box, obj); } static void @@ -363,16 +367,15 @@ _sizing_eval(Evas_Object * obj) static Eina_Bool _move_evas_object(void *data) { - Evas_Object *bg_image; - double t, vx, vy, vw, vh; + double t; + int dx, dy, dw, dh; + int px, py, pw, ph; - int ox, oy, ow, oh; + int x, y, w, h; Animation_Data * ad = (Animation_Data *) data; - bg_image = edje_object_part_object_get(_EDJ(ad->obj), "bg_image"); - if (bg_image) evas_object_geometry_get(bg_image, &ox, &oy, &ow, &oh); t = ELM_MAX(0.0, ecore_loop_time_get() - ad->start_time); dx = ad->tx - ad->fx; dy = ad->ty - ad->fy; @@ -396,32 +399,22 @@ _move_evas_object(void *data) py = ad->fy + y; pw = ad->fw + w; ph = ad->fh + h; - - if ((ow - pw) == 0) - vx = 0; - else - vx = (double)(px - ox) / (double)(ow - pw); - if ((oh - ph) == 0) - vy = 0; - else - vy = (double)(py - oy) / (double)(oh - ph); - vw = (double)pw / (double)ow; - vh = (double)ph / (double)oh; - if (x == dx && y == dy && w == dw && h == dh) { if (ad->timer) ecore_animator_del(ad->timer); ad->timer = NULL; - edje_object_part_drag_size_set(_EDJ(ad->obj), "elm.dragable.box", vw, vh); - edje_object_part_drag_value_set(_EDJ(ad->obj), "elm.dragable.box", vx, vy); + evas_object_move(ad->obj, px, py); + evas_object_resize(ad->obj, pw, ph); + evas_object_show(ad->obj); if (ad->func != NULL) ad->func(ad->data, ad->obj); return ECORE_CALLBACK_CANCEL; } else { - edje_object_part_drag_size_set(_EDJ(ad->obj), "elm.dragable.box", vw, vh); - edje_object_part_drag_value_set(_EDJ(ad->obj), "elm.dragable.box", vx, vy); + evas_object_move(ad->obj, px, py); + evas_object_resize(ad->obj, pw, ph); + evas_object_show(ad->obj); } return ECORE_CALLBACK_RENEW; } @@ -689,9 +682,10 @@ _set_item_visible(Elm_Controlbar_Item *it, Eina_Bool visible) static Eina_Bool _hide_selected_box(void *data) { - Evas_Object *base = (Evas_Object *)data; + Evas_Object *selected_box = (Evas_Object *)data; - edje_object_part_drag_size_set(_EDJ(base), "elm.dragable.box", 0.0, 0.0); + evas_object_move(selected_box, -999, -999); + evas_object_hide(selected_box); return ECORE_CALLBACK_CANCEL; } @@ -713,7 +707,7 @@ _end_selected_box(void *data, Evas_Object *obj __UNUSED__) wd->animating = 0; } - ecore_idler_add(_hide_selected_box, wd->edje); + ecore_idler_add(_hide_selected_box, wd->selected_box); } static void @@ -746,7 +740,7 @@ _move_selected_box(Widget_Data *wd, Elm_Controlbar_Item * fit, Elm_Controlbar_It free(wd->ad); wd->ad = NULL; } - wd->ad = _move_object_with_animation(wd->edje, fx, fy, fw, fh, tx, ty, tw, th, + wd->ad = _move_object_with_animation(wd->selected_box, fx, fy, fw, fh, tx, ty, tw, th, 0.3, _move_evas_object, _end_selected_box, wd); } @@ -1408,7 +1402,10 @@ EAPI Evas_Object * elm_controlbar_add(Evas_Object * parent) evas_object_smart_callback_add(obj, "sub-object-del", _sub_del, obj); + evas_object_smart_member_add(wd->view, obj); elm_widget_resize_object_set(obj, wd->edje); + evas_object_smart_member_add(wd->selected_box, obj); + evas_object_smart_member_add(wd->box, obj); _sizing_eval(obj);