From: tiago Date: Mon, 19 Apr 2010 20:37:32 +0000 (+0000) Subject: Use external_params_set to update params X-Git-Tag: submit/2.0alpha-wayland/20121127.221958~1322 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=010d169f9c93717e5c8a76621502fbb2c385d654;p=profile%2Fivi%2Fedje.git Use external_params_set to update params git-svn-id: http://svn.enlightenment.org/svn/e/trunk/edje@48143 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- diff --git a/src/lib/edje_edit.c b/src/lib/edje_edit.c index 16fe7a8..9fc5599 100644 --- a/src/lib/edje_edit.c +++ b/src/lib/edje_edit.c @@ -2057,8 +2057,8 @@ edje_edit_part_selected_state_set(Evas_Object *obj, const char *part, const char pd = _edje_part_description_find_byname(ed, part, state, value); if (!pd) return 0; - //printf("EDJE: Set state: %s\n", pd->state.name); - _edje_part_description_apply(ed, rp, pd->state.name, pd->state.value, NULL, 0); //WHAT IS NULL , 0 + //printf("EDJE: Set state: %s %f\n", pd->state.name, pd->state.value); + _edje_part_description_apply(ed, rp, pd->state.name, pd->state.value, NULL, 0.0); edje_object_calc_force(obj); return 1; @@ -3779,10 +3779,20 @@ edje_edit_state_external_param_set(Evas_Object *obj, const char *part, const cha if (!found) pd->external_params = eina_list_append(pd->external_params, p); - _edje_external_parsed_params_free(rp->swallowed_object, rp->param1.external_params); - rp->param1.external_params = _edje_external_params_parse(rp->swallowed_object, pd->external_params); + _edje_external_parsed_params_free(rp->swallowed_object, + rp->param1.external_params); + rp->param1.external_params = \ + _edje_external_params_parse(rp->swallowed_object, + pd->external_params); - edje_object_calc_force(obj); + { + const char * sname; + double svalue; + sname = edje_edit_part_selected_state_get(obj, part, &svalue); + if (!strcmp(state, sname) && svalue == value) + edje_object_part_external_param_set(obj, part, p); + eina_stringshare_del(sname); + } return EINA_TRUE; } diff --git a/src/lib/edje_external.c b/src/lib/edje_external.c index 327f3a4..69a242f 100644 --- a/src/lib/edje_external.c +++ b/src/lib/edje_external.c @@ -632,9 +632,14 @@ _edje_external_recalc_apply(Edje *ed, Edje_Real_Part *ep, if (!type->state_set) return; - params1 = ep->param1.external_params ? ep->param1.external_params : ep->param1.description->external_params; + params1 = ep->param1.external_params ? + ep->param1.external_params : + ep->param1.description->external_params; + if (ep->param2 && ep->param2->description) - params2 = ep->param2->external_params ? ep->param2->external_params : ep->param2->description->external_params; + params2 = ep->param2->external_params ? + ep->param2->external_params : + ep->param2->description->external_params; type->state_set(type->data, ep->swallowed_object, params1, params2, ep->description_pos);