Dear Cedric I'm sorry about this patch. I reverted it. I'll upload separate patch. And you are right. The text feature have to be changed. I'll add the text feature and test edje with and without cache. Is there anything I have to check?
Thanks for advice. -- Jaehwan Kim. 2011년 10월 31일 월요일에 Cedric BAIL님이 작성: > Let me grumbl a little ! You should never again commit a patch that > does change indentation and behaviour at the same time. It make it > almost impossible to understand what is going on ! I can't review your > change without reading the code once the patch is applied and trying > to understand what change you did. That's very very bad. > > I was able to spot only one strange thing in your patch, see below. > > On Mon, Oct 31, 2011 at 7:00 AM, Enlightenment SVN > <[email protected]> wrote: > > Log: > > Add CURRENT option which edje object moves from current position. > > Currently, when the part in edc move by transition, it moves from the > > one of the states to another of the states even if it is ainimating. > > We need it to move from current position, because the animation is not > > natural and smooth. So I made the "CURRENT" option. > > And I removed the unnecessary tab for indentation. > > > > > > Author: jaehwan > > Date: 2011-10-30 23:00:06 -0700 (Sun, 30 Oct 2011) > > New Revision: 64545 > > Trac: http://trac.enlightenment.org/e/changeset/64545 > > > > Modified: > > trunk/edje/src/bin/edje_cc_handlers.c trunk/edje/src/lib/Edje.h > trunk/edje/src/lib/edje_calc.c trunk/edje/src/lib/edje_private.h > trunk/edje/src/lib/edje_program.c > > > > Modified: trunk/edje/src/bin/edje_cc_handlers.c > > =================================================================== > > --- trunk/edje/src/bin/edje_cc_handlers.c 2011-10-31 04:49:56 UTC > (rev 64544) > > +++ trunk/edje/src/bin/edje_cc_handlers.c 2011-10-31 06:00:06 UTC > (rev 64545) > > @@ -7121,7 +7121,7 @@ > > @property > > transition > > @parameters > > - [type] [length] [[interp val 1]] [[interp val 2]] > > + [type] [length] [[interp val 1]] [[interp val 2]] [[option]] > > @effect > > Defines how transitions occur using STATE_SET action.\n > > Where 'type' is the style of the transition and 'length' is a > double > > @@ -7157,6 +7157,11 @@ > > spring "swings" and val 1 specifies the decay, but it can exceed > 1.0 > > on the outer swings. > > > > + Valid option is CURRENT. > > + > > + CURRENT is the option which the edje object moves from current > position. > > + It can be used as the last parameter of the every type. > > + > > @endproperty > > */ > > static void > > @@ -7184,21 +7189,36 @@ > > "DECELERATE_FACTOR", > EDJE_TWEEN_MODE_DECELERATE_FACTOR, > > "SINUSOIDAL_FACTOR", > EDJE_TWEEN_MODE_SINUSOIDAL_FACTOR, > > "DIVISOR_INTERP", > EDJE_TWEEN_MODE_DIVISOR_INTERP, > > - > > + > > // long/full is short enough > > "BOUNCE", > EDJE_TWEEN_MODE_BOUNCE, > > "SPRING", > EDJE_TWEEN_MODE_SPRING, > > NULL); > > current_program->tween.time = FROM_DOUBLE(parse_float_range(1, 0.0, > 999999999.0)); > > + if ((current_program->tween.mode >= EDJE_TWEEN_MODE_LINEAR) && > > + (current_program->tween.mode <= EDJE_TWEEN_MODE_DECELERATE)) > > + { > > + if ((get_arg_count() == 3) && (!strcmp(parse_str(2), > "CURRENT"))) > > + current_program->tween.mode |= > EDJE_TWEEN_MODE_OPT_FROM_CURRENT; > > + else if (get_arg_count() != 2) > > + Are you sure about this change ? Is it really not needed ? > > > { > > - int beginning_pos, part_type; > > - Edje_Calc_Params *p2, *p3; > > + int beginning_pos, part_type; > > + Edje_Calc_Params *p2, *p3; > > > > - p3 = &lp3; > > + if (ep->current) > > + { > > + p1->x = ep->current->x - ed->x; > > + p1->y = ep->current->y - ed->y; > > + p1->w = ep->current->w; > > + p1->h = ep->current->h; > > + p1->color.r = ep->current->color.r; > > + p1->color.g = ep->current->color.g; > > + p1->color.b = ep->current->color.b; > > + p1->color.a = ep->current->color.a; > > + } > > Are you sure that we don't have other usefull parameter to retrieve > from current calculated state ? I think in particular to text > property. > > > + p3 = &lp3; > > + > > #ifndef EDJE_CALC_CACHE > > - p2 = &lp2; > > + p2 = &lp2; > > #else > > - p2 = &ep->param2->p; > > + p2 = &ep->param2->p; > > > > - if (ed->all_part_change || > > - ep->invalidate || > > - state2 >= ep->param2->state || > > - statec >= ep->param2->state || > > + if (ed->all_part_change || > > + ep->invalidate || > > + state2 >= ep->param2->state || > > + statec >= ep->param2->state || > > proxy_invalidate || > > - ((ep->part->type == EDJE_PART_TYPE_TEXT || ep->part->type == > EDJE_PART_TYPE_TEXTBLOCK) && ed->text_part_change)) > > + ((ep->part->type == EDJE_PART_TYPE_TEXT || ep->part->type > == EDJE_PART_TYPE_TEXTBLOCK) && ed->text_part_change)) > > #endif > > - { > > - _edje_part_recalc_single(ed, ep, ep->param2->description, > chosen_desc, > > - ep->param2->rel1_to_x, > ep->param2->rel1_to_y, ep->param2->rel2_to_x, ep->param2->rel2_to_y, > > - confine_to, > > - p2); > > + { > > + _edje_part_recalc_single(ed, ep, ep->param2->description, > chosen_desc, > > + ep->param2->rel1_to_x, > ep->param2->rel1_to_y, ep->param2->rel2_to_x, ep->param2->rel2_to_y, > > + confine_to, > > + p2); > > #ifdef EDJE_CALC_CACHE > > - ep->param2->state = ed->state; > > + ep->param2->state = ed->state; > > #endif > > - } > > + } > > > > - pos = ep->description_pos; > > + pos = ep->description_pos; > > pos2 = pos; > > if (pos2 < ZERO) pos2 = ZERO; > > else if (pos2 > FROM_INT(1)) pos2 = FROM_INT(1); > > - beginning_pos = (pos < FROM_DOUBLE(0.5)); > > - part_type = ep->part->type; > > + beginning_pos = (pos < FROM_DOUBLE(0.5)); > > + part_type = ep->part->type; > > > > - /* visible is special */ > > - if ((p1->visible) && (!p2->visible)) > > - p3->visible = (pos != FROM_INT(1)); > > - else if ((!p1->visible) && (p2->visible)) > > - p3->visible = (pos != ZERO); > > - else > > - p3->visible = p1->visible; > > + /* visible is special */ > > + if ((p1->visible) && (!p2->visible)) > > + p3->visible = (pos != FROM_INT(1)); > > + else if ((!p1->visible) && (p2->visible)) > > + p3->visible = (pos != ZERO); > > + else > > + p3->visible = p1->visible; > > > > - p3->smooth = (beginning_pos) ? p1->sAnd by the way did you check > with and without edje calc cache ? > -- > Cedric BAIL > > ------------------------------------------------------------------------------ > Get your Android app more play: Bring it to the BlackBerry PlayBook > in minutes. BlackBerry App World™ now supports Android™ Apps > for the BlackBerry® PlayBook™. Discover just how easy and simple > it is! http://p.sf.net/sfu/android-dev2dev > _______________________________________________ > enlightenment-devel mailing list > [email protected] <javascript:;> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ RSA® Conference 2012 Save $700 by Nov 18 Register now! http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
