rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=e4eeb96641070a8b28d428bbee5daf605a66adbb
commit e4eeb96641070a8b28d428bbee5daf605a66adbb Author: Vyacheslav Reutskiy <v.reuts...@samsung.com> Date: Wed Dec 2 12:23:52 2015 +0200 groupedit: integrate the Groupedit_Geom to smart data Change-Id: I419ad04bcd70f56ab7ef585d519cefaedb9f4f05 --- src/bin/ui/workspace/groupedit.c | 17 +++++++---------- src/bin/ui/workspace/groupedit_calc.c | 4 ++-- src/bin/ui/workspace/groupedit_private.h | 2 +- 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/src/bin/ui/workspace/groupedit.c b/src/bin/ui/workspace/groupedit.c index 1e44899..716a694 100644 --- a/src/bin/ui/workspace/groupedit.c +++ b/src/bin/ui/workspace/groupedit.c @@ -67,7 +67,6 @@ _groupedit_smart_add(Evas_Object *o) _unselect_part, o); priv->obj = o; - priv->geom = (Groupedit_Geom *)mem_calloc(1, sizeof(Groupedit_Geom)); priv->zoom_factor = 1.0; priv->parts = NULL; priv->separated = false; @@ -90,8 +89,6 @@ _groupedit_smart_del(Evas_Object *o) evas_object_hide(sd->group->edit_object); evas_object_del(sd->edit_obj_clipper); - free(sd->geom); - _groupedit_parent_sc->del(o); } @@ -174,13 +171,13 @@ _groupedit_smart_calculate(Evas_Object *o) evas_object_geometry_get(o, &x, &y, &w, &h); - if ((priv->geom->x != x) || (priv->geom->y != y) || - (priv->geom->w != w) || (priv->geom->h != h)) + if ((priv->geom.x != x) || (priv->geom.y != y) || + (priv->geom.w != w) || (priv->geom.h != h)) { - priv->geom->x = x; - priv->geom->y = y; - priv->geom->w = w; - priv->geom->h = h; + priv->geom.x = x; + priv->geom.y = y; + priv->geom.w = w; + priv->geom.h = h; evas_object_move(priv->group->edit_object,x ,y); evas_object_resize(priv->group->edit_object, w, h); @@ -193,7 +190,7 @@ _groupedit_smart_calculate(Evas_Object *o) priv->manual_calc = false; DBG("Groupedit geometry: x[%i] y[%i] w[%i] h[%i]", x, y, w, h); - evas_object_smart_callback_call(o, SIG_CHANGED, (void *)priv->geom); + evas_object_smart_callback_call(o, SIG_CHANGED, &priv->geom); } /* this need for macro EVAS_SMART_SUBCLASS_NEW */ diff --git a/src/bin/ui/workspace/groupedit_calc.c b/src/bin/ui/workspace/groupedit_calc.c index 14dbb9e..0374ed2 100644 --- a/src/bin/ui/workspace/groupedit_calc.c +++ b/src/bin/ui/workspace/groupedit_calc.c @@ -1235,7 +1235,7 @@ _part_object_area_calc(Ws_Groupedit_Smart_Data *sd, Groupedit_Part *gp) y = (yc + (int)(hc * relative)) + offset; edje_edit_string_free(rel_to); - xc = xg; wc = sd->geom->w; + xc = xg; wc = sd->geom.w; rel_to = edje_edit_state_rel2_to_x_get(sd->group->edit_object, name, state, value); relative = edje_edit_state_rel2_relative_x_get(sd->group->edit_object, name, state, value); offset = edje_edit_state_rel2_offset_x_get(sd->group->edit_object, name, state, value); @@ -1248,7 +1248,7 @@ _part_object_area_calc(Ws_Groupedit_Smart_Data *sd, Groupedit_Part *gp) if (w < 0) { x += w; w = 0; } edje_edit_string_free(rel_to); - yc = yg; hc = sd->geom->h; + yc = yg; hc = sd->geom.h; rel_to = edje_edit_state_rel2_to_y_get(sd->group->edit_object, name, state, value); relative = edje_edit_state_rel2_relative_y_get(sd->group->edit_object, name, state, value); offset = edje_edit_state_rel2_offset_y_get(sd->group->edit_object, name, state, value); diff --git a/src/bin/ui/workspace/groupedit_private.h b/src/bin/ui/workspace/groupedit_private.h index 6412d07..9cc3ebb 100644 --- a/src/bin/ui/workspace/groupedit_private.h +++ b/src/bin/ui/workspace/groupedit_private.h @@ -62,7 +62,7 @@ struct _Ws_Groupedit_Smart_Data Evas_Object *container; Evas_Object *parent; Evas_Object *box; - Groupedit_Geom *geom; + Groupedit_Geom geom; /* Paddings which solve scroller issue, when container data move to 0,0 coords */ struct { --