if (ed->delete_me) return;
if (play)
{
- if (!ed->paused) return;
- ed->paused = EINA_FALSE;
- t = ecore_time_get() - ed->paused_at;
- EINA_LIST_FOREACH(ed->actions, l, runp)
- runp->start_time += t;
+ if (!ed->paused) return;
+ ed->paused = EINA_FALSE;
+ t = ecore_time_get() - ed->paused_at;
+ EINA_LIST_FOREACH(ed->actions, l, runp)
+ runp->start_time += t;
}
else
{
- if (ed->paused) return;
- ed->paused = EINA_TRUE;
- ed->paused_at = ecore_time_get();
+ if (ed->paused) return;
+ ed->paused = EINA_TRUE;
+ ed->paused_at = ecore_time_get();
}
for (i = 0; i < ed->table_parts_size; i++)
{
- Edje_Real_Part *rp;
- rp = ed->table_parts[i];
- if ((rp->part->type == EDJE_PART_TYPE_GROUP) &&
+ Edje_Real_Part *rp;
+ rp = ed->table_parts[i];
+ if ((rp->part->type == EDJE_PART_TYPE_GROUP) &&
((rp->type == EDJE_RP_TYPE_SWALLOW) &&
- (rp->typedata.swallow)) &&
+ (rp->typedata.swallow)) &&
(rp->typedata.swallow->swallowed_object))
- edje_object_play_set(rp->typedata.swallow->swallowed_object, play);
+ edje_object_play_set(rp->typedata.swallow->swallowed_object, play);
}
}
_edje_freeze(ed);
if (!on)
{
- Eina_List *newl = NULL;
- const void *data;
-
- EINA_LIST_FOREACH(ed->actions, l, data)
- newl = eina_list_append(newl, data);
- while (newl)
- {
- Edje_Running_Program *runp;
-
- runp = eina_list_data_get(newl);
- newl = eina_list_remove(newl, eina_list_data_get(newl));
- _edje_program_run_iterate(runp, runp->start_time + TO_DOUBLE(runp->program->tween.time));
- if (_edje_block_break(ed))
- {
- eina_list_free(newl);
- goto break_prog;
- }
- }
+ Eina_List *newl = NULL;
+ const void *data;
+
+ EINA_LIST_FOREACH(ed->actions, l, data)
+ newl = eina_list_append(newl, data);
+ while (newl)
+ {
+ Edje_Running_Program *runp;
+
+ runp = eina_list_data_get(newl);
+ newl = eina_list_remove(newl, eina_list_data_get(newl));
+ _edje_program_run_iterate(runp, runp->start_time + TO_DOUBLE(runp->program->tween.time));
+ if (_edje_block_break(ed))
+ {
+ eina_list_free(newl);
+ goto break_prog;
+ }
+ }
}
else
{
- _edje_emit(ed, "load", NULL);
- if (evas_object_visible_get(obj))
- {
- evas_object_hide(obj);
- evas_object_show(obj);
- }
+ _edje_emit(ed, "load", NULL);
+ if (evas_object_visible_get(obj))
+ {
+ evas_object_hide(obj);
+ evas_object_show(obj);
+ }
}
- break_prog:
+break_prog:
for (i = 0; i < ed->table_parts_size; i++)
{
- Edje_Real_Part *rp;
- rp = ed->table_parts[i];
- if ((rp->part->type == EDJE_PART_TYPE_GROUP) &&
+ Edje_Real_Part *rp;
+ rp = ed->table_parts[i];
+ if ((rp->part->type == EDJE_PART_TYPE_GROUP) &&
((rp->type == EDJE_RP_TYPE_SWALLOW) &&
- (rp->typedata.swallow)) &&
+ (rp->typedata.swallow)) &&
(rp->typedata.swallow->swallowed_object))
- edje_object_animation_set(rp->typedata.swallow->swallowed_object, on);
+ edje_object_animation_set(rp->typedata.swallow->swallowed_object, on);
}
_edje_thaw(ed);
if (t > FROM_INT(1)) t = FROM_INT(1);
EINA_LIST_FOREACH(runp->program->targets, l, pt)
{
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp) _edje_part_pos_set(ed, rp,
- runp->program->tween.mode, t,
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp) _edje_part_pos_set(ed, rp,
+ runp->program->tween.mode, t,
runp->program->tween.v1,
runp->program->tween.v2);
- }
+ }
}
if (t >= FROM_INT(1))
{
Edje_Program_After *pa;
EINA_LIST_FOREACH(runp->program->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp)
- {
- _edje_part_description_apply(ed, rp,
- runp->program->state,
- runp->program->value,
- NULL,
- 0.0);
- _edje_part_pos_set(ed, rp,
- runp->program->tween.mode, ZERO,
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp)
+ {
+ _edje_part_description_apply(ed, rp,
+ runp->program->state,
+ runp->program->value,
+ NULL,
+ 0.0);
+ _edje_part_pos_set(ed, rp,
+ runp->program->tween.mode, ZERO,
runp->program->tween.v1,
runp->program->tween.v2);
- rp->program = NULL;
- }
- }
- }
- _edje_recalc(ed);
- runp->delete_me = EINA_TRUE;
- if (!ed->walking_actions)
- {
- _edje_anim_count--;
- ed->actions = eina_list_remove(ed->actions, runp);
- if (!ed->actions)
- _edje_animators = eina_list_remove(_edje_animators, ed);
- }
-// _edje_emit(ed, "program,stop", runp->program->name);
- if (_edje_block_break(ed))
- {
- if (!ed->walking_actions) free(runp);
- goto break_prog;
- }
- EINA_LIST_FOREACH(runp->program->after, l, pa)
- {
- Edje_Program *pr;
-
- if (pa->id >= 0)
- {
- pr = ed->collection->patterns.table_programs[pa->id % ed->collection->patterns.table_programs_size];
- if (pr) _edje_program_run(ed, pr, 0, "", "");
- if (_edje_block_break(ed))
- {
- if (!ed->walking_actions) free(runp);
- goto break_prog;
- }
- }
- }
- _edje_thaw(ed);
- _edje_unref(ed);
- if (!ed->walking_actions) free(runp);
- _edje_unblock(ed);
- return EINA_FALSE;
+ rp->program = NULL;
+ }
+ }
+ }
+ _edje_recalc(ed);
+ runp->delete_me = EINA_TRUE;
+ if (!ed->walking_actions)
+ {
+ _edje_anim_count--;
+ ed->actions = eina_list_remove(ed->actions, runp);
+ if (!ed->actions)
+ _edje_animators = eina_list_remove(_edje_animators, ed);
+ }
+ // _edje_emit(ed, "program,stop", runp->program->name);
+ if (_edje_block_break(ed))
+ {
+ if (!ed->walking_actions) free(runp);
+ goto break_prog;
+ }
+ EINA_LIST_FOREACH(runp->program->after, l, pa)
+ {
+ Edje_Program *pr;
+
+ if (pa->id >= 0)
+ {
+ pr = ed->collection->patterns.table_programs[pa->id % ed->collection->patterns.table_programs_size];
+ if (pr) _edje_program_run(ed, pr, 0, "", "");
+ if (_edje_block_break(ed))
+ {
+ if (!ed->walking_actions) free(runp);
+ goto break_prog;
+ }
+ }
+ }
+ _edje_thaw(ed);
+ _edje_unref(ed);
+ if (!ed->walking_actions) free(runp);
+ _edje_unblock(ed);
+ return EINA_FALSE;
}
- break_prog:
+break_prog:
_edje_recalc(ed);
_edje_thaw(ed);
_edje_unref(ed);
{
Eina_List *l;
Edje_Program_Target *pt;
-// const char *pname = NULL;
+ // const char *pname = NULL;
int free_runp = 0;
if (ed->delete_me) return;
_edje_freeze(ed);
EINA_LIST_FOREACH(runp->program->targets, l, pt)
{
- Edje_Real_Part *rp;
-
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp)
- {
- _edje_part_description_apply(ed, rp,
- runp->program->state,
- runp->program->value,
- NULL,
- 0.0);
- _edje_part_pos_set(ed, rp,
- runp->program->tween.mode, ZERO,
+ Edje_Real_Part *rp;
+
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp)
+ {
+ _edje_part_description_apply(ed, rp,
+ runp->program->state,
+ runp->program->value,
+ NULL,
+ 0.0);
+ _edje_part_pos_set(ed, rp,
+ runp->program->tween.mode, ZERO,
runp->program->tween.v1,
runp->program->tween.v2);
- rp->program = NULL;
- }
- }
+ rp->program = NULL;
+ }
+ }
}
_edje_recalc(ed);
runp->delete_me = EINA_TRUE;
-// pname = runp->program->name;
+ // pname = runp->program->name;
if (!ed->walking_actions)
{
- _edje_anim_count--;
- ed->actions = eina_list_remove(ed->actions, runp);
- free_runp = 1;
- if (!ed->actions)
- {
- _edje_animators = eina_list_remove(_edje_animators, ed);
- }
+ _edje_anim_count--;
+ ed->actions = eina_list_remove(ed->actions, runp);
+ free_runp = 1;
+ if (!ed->actions)
+ {
+ _edje_animators = eina_list_remove(_edje_animators, ed);
+ }
}
-// _edje_emit(ed, "program,stop", pname);
+ // _edje_emit(ed, "program,stop", pname);
_edje_thaw(ed);
_edje_unref(ed);
if (free_runp) free(runp);
if (ed->delete_me) return;
if ((pr->in.from > 0.0) && (pr->in.range >= 0.0) && (!force))
{
- Edje_Pending_Program *pp;
- double r = 0.0;
-
- pp = calloc(1, sizeof(Edje_Pending_Program));
- if (!pp) return;
- if (pr->in.range > 0.0) r = ((double)rand() / RAND_MAX);
- pp->timer = ecore_timer_add(pr->in.from + (pr->in.range * r),
- _edje_pending_timer_cb, pp);
- if (!pp->timer)
- {
- free(pp);
- return;
- }
- pp->edje = ed;
- pp->program = pr;
- ed->pending_actions = eina_list_append(ed->pending_actions, pp);
- return;
+ Edje_Pending_Program *pp;
+ double r = 0.0;
+
+ pp = calloc(1, sizeof(Edje_Pending_Program));
+ if (!pp) return;
+ if (pr->in.range > 0.0) r = ((double)rand() / RAND_MAX);
+ pp->timer = ecore_timer_add(pr->in.from + (pr->in.range * r),
+ _edje_pending_timer_cb, pp);
+ if (!pp->timer)
+ {
+ free(pp);
+ return;
+ }
+ pp->edje = ed;
+ pp->program = pr;
+ ed->pending_actions = eina_list_append(ed->pending_actions, pp);
+ return;
}
if ((recursions >= 64) || (recursion_limit))
{
- ERR("Programs recursing up to recursion limit of %i in '%s' with '%s', '%s' from '%s', '%s'. Disabled.",
- 64, pr->name, ssig, ssrc, ed->path, ed->group);
- recursion_limit = 1;
- return;
+ ERR("Programs recursing up to recursion limit of %i in '%s' with '%s', '%s' from '%s', '%s'. Disabled.",
+ 64, pr->name, ssig, ssrc, ed->path, ed->group);
+ recursion_limit = 1;
+ return;
}
recursions++;
_edje_block(ed);
_edje_freeze(ed);
switch (pr->action)
{
- case EDJE_ACTION_TYPE_STATE_SET:
- if ((pr->tween.time > ZERO) && (!ed->no_anim))
- {
- Edje_Running_Program *runp;
-
- runp = calloc(1, sizeof(Edje_Running_Program));
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp)
- {
- if ((rp->object) && (pr->tween.mode & EDJE_TWEEN_MODE_OPT_FROM_CURRENT))
- {
- Edje_Calc_Params *tmp;
+ case EDJE_ACTION_TYPE_STATE_SET:
+ if ((pr->tween.time > ZERO) && (!ed->no_anim))
+ {
+ Edje_Running_Program *runp;
- tmp = calloc(1, sizeof(Edje_Calc_Params));
- if (!tmp) goto low_mem_current;
- tmp->map = eina_cow_alloc(_edje_calc_params_map_cow);
+ runp = calloc(1, sizeof(Edje_Running_Program));
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp)
+ {
+ if ((rp->object) && (pr->tween.mode & EDJE_TWEEN_MODE_OPT_FROM_CURRENT))
+ {
+ Edje_Calc_Params *tmp;
+
+ tmp = calloc(1, sizeof(Edje_Calc_Params));
+ if (!tmp) goto low_mem_current;
+ tmp->map = eina_cow_alloc(_edje_calc_params_map_cow);
#ifdef HAVE_EPHYSICS
- tmp->physics = eina_cow_alloc(_edje_calc_params_physics_cow);
+ tmp->physics = eina_cow_alloc(_edje_calc_params_physics_cow);
#endif
- _edje_part_recalc(ed, rp, FLAG_XY, tmp);
+ _edje_part_recalc(ed, rp, FLAG_XY, tmp);
- if (rp->current)
- {
- eina_cow_free(_edje_calc_params_map_cow, rp->current->map);
+ if (rp->current)
+ {
+ eina_cow_free(_edje_calc_params_map_cow, rp->current->map);
#ifdef HAVE_EPHYSICS
- eina_cow_free(_edje_calc_params_physics_cow, rp->current->physics);
+ eina_cow_free(_edje_calc_params_physics_cow, rp->current->physics);
#endif
- free(rp->current);
- }
- rp->current = tmp;
-
- }
- else
- {
- low_mem_current:
- if (rp->current)
- {
- eina_cow_free(_edje_calc_params_map_cow, rp->current->map);
+ free(rp->current);
+ }
+ rp->current = tmp;
+
+ }
+ else
+ {
+low_mem_current:
+ if (rp->current)
+ {
+ eina_cow_free(_edje_calc_params_map_cow, rp->current->map);
#ifdef HAVE_EPHYSICS
- eina_cow_free(_edje_calc_params_physics_cow, rp->current->physics);
+ eina_cow_free(_edje_calc_params_physics_cow, rp->current->physics);
#endif
- free(rp->current);
- }
- rp->current = NULL;
- }
+ free(rp->current);
+ }
+ rp->current = NULL;
+ }
+
+ if (rp->program)
+ _edje_program_end(ed, rp->program);
+ _edje_part_description_apply(ed, rp,
+ rp->param1.description->state.name,
+ rp->param1.description->state.value,
+ pr->state,
+ pr->value);
+ _edje_part_pos_set(ed, rp, pr->tween.mode, ZERO,
+ pr->tween.v1,
+ pr->tween.v2);
+ rp->program = runp;
+ }
+ }
+ }
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed))
+ {
+ ed->actions = eina_list_append(ed->actions, runp);
+ goto break_prog;
+ }
+ if (!ed->actions)
+ _edje_animators = eina_list_append(_edje_animators, ed);
+ ed->actions = eina_list_append(ed->actions, runp);
+ runp->start_time = ecore_loop_time_get();
+ runp->edje = ed;
+ runp->program = pr;
+ if (!_edje_timer)
+ _edje_timer = ecore_animator_add(_edje_timer_cb, NULL);
+ _edje_anim_count++;
+ }
+ else
+ {
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp)
+ {
+ if (rp->program)
+ _edje_program_end(ed, rp->program);
+ _edje_part_description_apply(ed, rp,
+ pr->state,
+ pr->value,
+ NULL,
+ 0.0);
+ _edje_part_pos_set(ed, rp, pr->tween.mode, ZERO,
+ pr->tween.v1,
+ pr->tween.v2);
+ }
+ }
+ }
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
- if (rp->program)
- _edje_program_end(ed, rp->program);
- _edje_part_description_apply(ed, rp,
- rp->param1.description->state.name,
- rp->param1.description->state.value,
- pr->state,
- pr->value);
- _edje_part_pos_set(ed, rp, pr->tween.mode, ZERO,
- pr->tween.v1,
- pr->tween.v2);
- rp->program = runp;
- }
- }
- }
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed))
- {
- ed->actions = eina_list_append(ed->actions, runp);
- goto break_prog;
- }
- if (!ed->actions)
- _edje_animators = eina_list_append(_edje_animators, ed);
- ed->actions = eina_list_append(ed->actions, runp);
- runp->start_time = ecore_loop_time_get();
- runp->edje = ed;
- runp->program = pr;
- if (!_edje_timer)
- _edje_timer = ecore_animator_add(_edje_timer_cb, NULL);
- _edje_anim_count++;
- }
- else
- {
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp)
- {
- if (rp->program)
- _edje_program_end(ed, rp->program);
- _edje_part_description_apply(ed, rp,
- pr->state,
- pr->value,
- NULL,
- 0.0);
- _edje_part_pos_set(ed, rp, pr->tween.mode, ZERO,
- pr->tween.v1,
- pr->tween.v2);
- }
- }
- }
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
-
- EINA_LIST_FOREACH(pr->after, l, pa)
- {
- if (pa->id >= 0)
- {
- pr2 = ed->collection->patterns.table_programs[pa->id % ed->collection->patterns.table_programs_size];
- if (pr2) _edje_program_run(ed, pr2, 0, "", "");
- if (_edje_block_break(ed)) goto break_prog;
- }
- }
- _edje_recalc(ed);
- }
- break;
- case EDJE_ACTION_TYPE_ACTION_STOP:
- // _edje_emit(ed, "program,start", pr->name);
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- Eina_List *ll;
- Edje_Running_Program *runp;
- Edje_Pending_Program *pp;
-
- for (ll = ed->actions; ll; )
- {
- runp = ll->data;
- ll = ll->next;
- if (pt->id == runp->program->id)
- {
- _edje_program_end(ed, runp);
-// goto done;
- }
- }
- for (ll = ed->pending_actions; ll; )
- {
- pp = ll->data;
- ll = ll->next;
- if (pt->id == pp->program->id)
- {
- ed->pending_actions = eina_list_remove(ed->pending_actions, pp);
- ecore_timer_del(pp->timer);
- free(pp);
-// goto done;
- }
- }
-// done:
-// continue;
- }
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- break;
- case EDJE_ACTION_TYPE_SIGNAL_EMIT:
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- _edje_emit(ed, pr->state, pr->state2);
- if (_edje_block_break(ed)) goto break_prog;
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- break;
- case EDJE_ACTION_TYPE_DRAG_VAL_SET:
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if ((rp) && (rp->drag) && (rp->drag->down.count == 0))
- {
- rp->drag->val.x = pr->value;
- rp->drag->val.y = pr->value2;
- if (rp->drag->val.x < 0.0) rp->drag->val.x = 0.0;
- else if (rp->drag->val.x > 1.0) rp->drag->val.x = 1.0;
- if (rp->drag->val.y < 0.0) rp->drag->val.y = 0.0;
- else if (rp->drag->val.y > 1.0) rp->drag->val.y = 1.0;
- _edje_dragable_pos_set(ed, rp, rp->drag->val.x, rp->drag->val.y);
- _edje_emit(ed, "drag,set", rp->part->name);
- if (_edje_block_break(ed)) goto break_prog;
- }
- }
- }
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- break;
- case EDJE_ACTION_TYPE_DRAG_VAL_STEP:
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if ((rp) && (rp->drag) && (rp->drag->down.count == 0))
- {
- rp->drag->val.x += pr->value * rp->drag->step.x * rp->part->dragable.x;
- rp->drag->val.y += pr->value2 * rp->drag->step.y * rp->part->dragable.y;
- if (rp->drag->val.x < 0.0) rp->drag->val.x = 0.0;
- else if (rp->drag->val.x > 1.0) rp->drag->val.x = 1.0;
- if (rp->drag->val.y < 0.0) rp->drag->val.y = 0.0;
- else if (rp->drag->val.y > 1.0) rp->drag->val.y = 1.0;
- _edje_dragable_pos_set(ed, rp, rp->drag->val.x, rp->drag->val.y);
- _edje_emit(ed, "drag,step", rp->part->name);
- if (_edje_block_break(ed)) goto break_prog;
- }
- }
- }
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- break;
- case EDJE_ACTION_TYPE_DRAG_VAL_PAGE:
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if ((rp) && (rp->drag) && (rp->drag->down.count == 0))
- {
- rp->drag->val.x += pr->value * rp->drag->page.x * rp->part->dragable.x;
- rp->drag->val.y += pr->value2 * rp->drag->page.y * rp->part->dragable.y;
- if (rp->drag->val.x < 0.0) rp->drag->val.x = 0.0;
- else if (rp->drag->val.x > 1.0) rp->drag->val.x = 1.0;
- if (rp->drag->val.y < 0.0) rp->drag->val.y = 0.0;
- else if (rp->drag->val.y > 1.0) rp->drag->val.y = 1.0;
- _edje_dragable_pos_set(ed, rp, rp->drag->val.x, rp->drag->val.y);
- _edje_emit(ed, "drag,page", rp->part->name);
- if (_edje_block_break(ed)) goto break_prog;
- }
- }
- }
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- break;
- case EDJE_ACTION_TYPE_SCRIPT:
- {
- char fname[128];
-
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- snprintf(fname, sizeof(fname), "_p%i", pr->id);
- _edje_embryo_test_run(ed, fname, ssig, ssrc);
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- _edje_recalc_do(ed);
- }
- break;
- case EDJE_ACTION_TYPE_FOCUS_SET:
- if (!pr->targets)
+ EINA_LIST_FOREACH(pr->after, l, pa)
+ {
+ if (pa->id >= 0)
+ {
+ pr2 = ed->collection->patterns.table_programs[pa->id % ed->collection->patterns.table_programs_size];
+ if (pr2) _edje_program_run(ed, pr2, 0, "", "");
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ }
+ _edje_recalc(ed);
+ }
+ break;
+ case EDJE_ACTION_TYPE_ACTION_STOP:
+ // _edje_emit(ed, "program,start", pr->name);
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ Eina_List *ll;
+ Edje_Running_Program *runp;
+ Edje_Pending_Program *pp;
+
+ for (ll = ed->actions; ll; )
+ {
+ runp = ll->data;
+ ll = ll->next;
+ if (pt->id == runp->program->id)
+ {
+ _edje_program_end(ed, runp);
+ // goto done;
+ }
+ }
+ for (ll = ed->pending_actions; ll; )
+ {
+ pp = ll->data;
+ ll = ll->next;
+ if (pt->id == pp->program->id)
+ {
+ ed->pending_actions = eina_list_remove(ed->pending_actions, pp);
+ ecore_timer_del(pp->timer);
+ free(pp);
+ // goto done;
+ }
+ }
+ // done:
+ // continue;
+ }
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_SIGNAL_EMIT:
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ _edje_emit(ed, pr->state, pr->state2);
+ if (_edje_block_break(ed)) goto break_prog;
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_DRAG_VAL_SET:
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if ((rp) && (rp->drag) && (rp->drag->down.count == 0))
+ {
+ rp->drag->val.x = pr->value;
+ rp->drag->val.y = pr->value2;
+ if (rp->drag->val.x < 0.0) rp->drag->val.x = 0.0;
+ else if (rp->drag->val.x > 1.0) rp->drag->val.x = 1.0;
+ if (rp->drag->val.y < 0.0) rp->drag->val.y = 0.0;
+ else if (rp->drag->val.y > 1.0) rp->drag->val.y = 1.0;
+ _edje_dragable_pos_set(ed, rp, rp->drag->val.x, rp->drag->val.y);
+ _edje_emit(ed, "drag,set", rp->part->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ }
+ }
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_DRAG_VAL_STEP:
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if ((rp) && (rp->drag) && (rp->drag->down.count == 0))
+ {
+ rp->drag->val.x += pr->value * rp->drag->step.x * rp->part->dragable.x;
+ rp->drag->val.y += pr->value2 * rp->drag->step.y * rp->part->dragable.y;
+ if (rp->drag->val.x < 0.0) rp->drag->val.x = 0.0;
+ else if (rp->drag->val.x > 1.0) rp->drag->val.x = 1.0;
+ if (rp->drag->val.y < 0.0) rp->drag->val.y = 0.0;
+ else if (rp->drag->val.y > 1.0) rp->drag->val.y = 1.0;
+ _edje_dragable_pos_set(ed, rp, rp->drag->val.x, rp->drag->val.y);
+ _edje_emit(ed, "drag,step", rp->part->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ }
+ }
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_DRAG_VAL_PAGE:
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if ((rp) && (rp->drag) && (rp->drag->down.count == 0))
+ {
+ rp->drag->val.x += pr->value * rp->drag->page.x * rp->part->dragable.x;
+ rp->drag->val.y += pr->value2 * rp->drag->page.y * rp->part->dragable.y;
+ if (rp->drag->val.x < 0.0) rp->drag->val.x = 0.0;
+ else if (rp->drag->val.x > 1.0) rp->drag->val.x = 1.0;
+ if (rp->drag->val.y < 0.0) rp->drag->val.y = 0.0;
+ else if (rp->drag->val.y > 1.0) rp->drag->val.y = 1.0;
+ _edje_dragable_pos_set(ed, rp, rp->drag->val.x, rp->drag->val.y);
+ _edje_emit(ed, "drag,page", rp->part->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ }
+ }
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_SCRIPT:
+ {
+ char fname[128];
+
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ snprintf(fname, sizeof(fname), "_p%i", pr->id);
+ _edje_embryo_test_run(ed, fname, ssig, ssrc);
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ _edje_recalc_do(ed);
+ }
+ break;
+ case EDJE_ACTION_TYPE_FOCUS_SET:
+ if (!pr->targets)
ed->focused_part = NULL;
- else
- {
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp)
- {
- if (ed->focused_part != rp)
- {
- if (ed->focused_part)
- _edje_emit(ed, "focus,part,out",
- ed->focused_part->part->name);
- ed->focused_part = rp;
- _edje_emit(ed, "focus,part,in",
- ed->focused_part->part->name);
- }
- }
- }
- }
- }
- break;
- case EDJE_ACTION_TYPE_FOCUS_OBJECT:
- if (!pr->targets)
- {
- Evas_Object *focused;
-
- focused = evas_focus_get(evas_object_evas_get(ed->obj));
- if (focused)
- {
- unsigned int i;
-
- /* Check if the current swallowed object is one of my child. */
- for (i = 0; i < ed->table_parts_size; ++i)
- {
- rp = ed->table_parts[i];
- if ((rp) &&
- ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
- (rp->typedata.swallow)) &&
- (rp->typedata.swallow->swallowed_object == focused))
- {
- evas_object_focus_set(focused, EINA_FALSE);
- break;
- }
- }
- }
- }
- else
- {
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if (rp &&
- ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
- (rp->typedata.swallow)) &&
- (rp->typedata.swallow->swallowed_object))
- evas_object_focus_set(rp->typedata.swallow->swallowed_object, EINA_TRUE);
- }
- }
- }
- break;
- case EDJE_ACTION_TYPE_SOUND_SAMPLE:
- if (_edje_block_break(ed))
- goto break_prog;
- _edje_multisense_internal_sound_sample_play(ed, pr->sample_name, pr->speed);
- break;
- case EDJE_ACTION_TYPE_SOUND_TONE:
- if (_edje_block_break(ed))
- goto break_prog;
- _edje_multisense_internal_sound_tone_play(ed, pr->tone_name, pr->duration);
- break;
- case EDJE_ACTION_TYPE_PARAM_COPY:
- {
- Edje_Real_Part *src_part, *dst_part;
-
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
-
- src_part = ed->table_parts[pr->param.src % ed->table_parts_size];
- dst_part = ed->table_parts[pr->param.dst % ed->table_parts_size];
- _edje_param_copy(ed, src_part, pr->state, dst_part, pr->state2);
-
- if (_edje_block_break(ed)) goto break_prog;
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- }
- break;
- case EDJE_ACTION_TYPE_PARAM_SET:
- {
- Edje_Real_Part *part;
-
- // _edje_emit(ed, "program,start", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
-
- part = ed->table_parts[pr->param.dst % ed->table_parts_size];
- _edje_param_set(ed, part, pr->state, pr->state2);
-
- if (_edje_block_break(ed)) goto break_prog;
- // _edje_emit(ed, "program,stop", pr->name);
- if (_edje_block_break(ed)) goto break_prog;
- }
- break;
+ else
+ {
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp)
+ {
+ if (ed->focused_part != rp)
+ {
+ if (ed->focused_part)
+ _edje_emit(ed, "focus,part,out",
+ ed->focused_part->part->name);
+ ed->focused_part = rp;
+ _edje_emit(ed, "focus,part,in",
+ ed->focused_part->part->name);
+ }
+ }
+ }
+ }
+ }
+ break;
+ case EDJE_ACTION_TYPE_FOCUS_OBJECT:
+ if (!pr->targets)
+ {
+ Evas_Object *focused;
+
+ focused = evas_focus_get(evas_object_evas_get(ed->obj));
+ if (focused)
+ {
+ unsigned int i;
+
+ /* Check if the current swallowed object is one of my child. */
+ for (i = 0; i < ed->table_parts_size; ++i)
+ {
+ rp = ed->table_parts[i];
+ if ((rp) &&
+ ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
+ (rp->typedata.swallow)) &&
+ (rp->typedata.swallow->swallowed_object == focused))
+ {
+ evas_object_focus_set(focused, EINA_FALSE);
+ break;
+ }
+ }
+ }
+ }
+ else
+ {
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if (rp &&
+ ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
+ (rp->typedata.swallow)) &&
+ (rp->typedata.swallow->swallowed_object))
+ evas_object_focus_set(rp->typedata.swallow->swallowed_object, EINA_TRUE);
+ }
+ }
+ }
+ break;
+ case EDJE_ACTION_TYPE_SOUND_SAMPLE:
+ if (_edje_block_break(ed))
+ goto break_prog;
+ _edje_multisense_internal_sound_sample_play(ed, pr->sample_name, pr->speed);
+ break;
+ case EDJE_ACTION_TYPE_SOUND_TONE:
+ if (_edje_block_break(ed))
+ goto break_prog;
+ _edje_multisense_internal_sound_tone_play(ed, pr->tone_name, pr->duration);
+ break;
+ case EDJE_ACTION_TYPE_PARAM_COPY:
+ {
+ Edje_Real_Part *src_part, *dst_part;
+
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+
+ src_part = ed->table_parts[pr->param.src % ed->table_parts_size];
+ dst_part = ed->table_parts[pr->param.dst % ed->table_parts_size];
+ _edje_param_copy(ed, src_part, pr->state, dst_part, pr->state2);
+
+ if (_edje_block_break(ed)) goto break_prog;
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ break;
+ case EDJE_ACTION_TYPE_PARAM_SET:
+ {
+ Edje_Real_Part *part;
+
+ // _edje_emit(ed, "program,start", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+
+ part = ed->table_parts[pr->param.dst % ed->table_parts_size];
+ _edje_param_set(ed, part, pr->state, pr->state2);
+
+ if (_edje_block_break(ed)) goto break_prog;
+ // _edje_emit(ed, "program,stop", pr->name);
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ break;
#ifdef HAVE_EPHYSICS
- case EDJE_ACTION_TYPE_PHYSICS_IMPULSE:
- if (!_edje_physics_action_set(ed, pr, ephysics_body_central_impulse_apply))
- goto break_prog;
- break;
- case EDJE_ACTION_TYPE_PHYSICS_TORQUE_IMPULSE:
- if (!_edje_physics_action_set(ed, pr, ephysics_body_torque_impulse_apply))
- goto break_prog;
- break;
- case EDJE_ACTION_TYPE_PHYSICS_FORCE:
- if (!_edje_physics_action_set(ed, pr, ephysics_body_central_force_apply))
- goto break_prog;
- break;
- case EDJE_ACTION_TYPE_PHYSICS_TORQUE:
- if (!_edje_physics_action_set(ed, pr, ephysics_body_torque_apply))
- goto break_prog;
- break;
- case EDJE_ACTION_TYPE_PHYSICS_FORCES_CLEAR:
- if (_edje_block_break(ed))
- goto break_prog;
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if ((rp) && (rp->body))
- ephysics_body_forces_clear(rp->body);
- }
- }
- break;
- case EDJE_ACTION_TYPE_PHYSICS_VEL_SET:
- if (!_edje_physics_action_set(ed, pr, ephysics_body_linear_velocity_set))
- goto break_prog;
- break;
- case EDJE_ACTION_TYPE_PHYSICS_ANG_VEL_SET:
- if (!_edje_physics_action_set(ed, pr, ephysics_body_angular_velocity_set))
- goto break_prog;
- break;
- case EDJE_ACTION_TYPE_PHYSICS_STOP:
- if (_edje_block_break(ed))
- goto break_prog;
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if ((rp) && (rp->body))
- ephysics_body_stop(rp->body);
- }
- }
- break;
- case EDJE_ACTION_TYPE_PHYSICS_ROT_SET:
- if (_edje_block_break(ed))
- goto break_prog;
- EINA_LIST_FOREACH(pr->targets, l, pt)
- {
- if (pt->id >= 0)
- {
- rp = ed->table_parts[pt->id % ed->table_parts_size];
- if ((rp) && (rp->body))
- {
- EPhysics_Quaternion quat;
- ephysics_quaternion_set(&quat, pr->physics.x,
- pr->physics.y, pr->physics.z,
- pr->physics.w);
- ephysics_quaternion_normalize(&quat);
- ephysics_body_rotation_set(rp->body, &quat);
- }
- }
- }
- break;
+ case EDJE_ACTION_TYPE_PHYSICS_IMPULSE:
+ if (!_edje_physics_action_set(ed, pr, ephysics_body_central_impulse_apply))
+ goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_TORQUE_IMPULSE:
+ if (!_edje_physics_action_set(ed, pr, ephysics_body_torque_impulse_apply))
+ goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_FORCE:
+ if (!_edje_physics_action_set(ed, pr, ephysics_body_central_force_apply))
+ goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_TORQUE:
+ if (!_edje_physics_action_set(ed, pr, ephysics_body_torque_apply))
+ goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_FORCES_CLEAR:
+ if (_edje_block_break(ed))
+ goto break_prog;
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if ((rp) && (rp->body))
+ ephysics_body_forces_clear(rp->body);
+ }
+ }
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_VEL_SET:
+ if (!_edje_physics_action_set(ed, pr, ephysics_body_linear_velocity_set))
+ goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_ANG_VEL_SET:
+ if (!_edje_physics_action_set(ed, pr, ephysics_body_angular_velocity_set))
+ goto break_prog;
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_STOP:
+ if (_edje_block_break(ed))
+ goto break_prog;
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if ((rp) && (rp->body))
+ ephysics_body_stop(rp->body);
+ }
+ }
+ break;
+ case EDJE_ACTION_TYPE_PHYSICS_ROT_SET:
+ if (_edje_block_break(ed))
+ goto break_prog;
+ EINA_LIST_FOREACH(pr->targets, l, pt)
+ {
+ if (pt->id >= 0)
+ {
+ rp = ed->table_parts[pt->id % ed->table_parts_size];
+ if ((rp) && (rp->body))
+ {
+ EPhysics_Quaternion quat;
+ ephysics_quaternion_set(&quat, pr->physics.x,
+ pr->physics.y, pr->physics.z,
+ pr->physics.w);
+ ephysics_quaternion_normalize(&quat);
+ ephysics_body_rotation_set(rp->body, &quat);
+ }
+ }
+ }
+ break;
#endif
- default:
- // _edje_emit(ed, "program,start", pr->name);
- // _edje_emit(ed, "program,stop", pr->name);
- break;
+ default:
+ // _edje_emit(ed, "program,start", pr->name);
+ // _edje_emit(ed, "program,stop", pr->name);
+ break;
}
if (!((pr->action == EDJE_ACTION_TYPE_STATE_SET)
- /* hmm this fucks somethgin up. must look into it later */
- /* && (pr->tween.time > ZERO) && (!ed->no_anim))) */
- ))
- {
- EINA_LIST_FOREACH(pr->after, l, pa)
- {
- if (pa->id >= 0)
- {
- pr2 = ed->collection->patterns.table_programs[pa->id % ed->collection->patterns.table_programs_size];
- if (pr2) _edje_program_run(ed, pr2, 0, "", "");
- if (_edje_block_break(ed)) goto break_prog;
- }
- }
- }
- break_prog:
+ /* hmm this fucks somethgin up. must look into it later */
+ /* && (pr->tween.time > ZERO) && (!ed->no_anim))) */
+ ))
+ {
+ EINA_LIST_FOREACH(pr->after, l, pa)
+ {
+ if (pa->id >= 0)
+ {
+ pr2 = ed->collection->patterns.table_programs[pa->id % ed->collection->patterns.table_programs_size];
+ if (pr2) _edje_program_run(ed, pr2, 0, "", "");
+ if (_edje_block_break(ed)) goto break_prog;
+ }
+ }
+ }
+break_prog:
_edje_thaw(ed);
_edje_unref(ed);
recursions--;
alias = eina_hash_find(ed->collection->alias, part);
if (alias) {
- char *aliased;
- int alien;
- int nslen;
+ char *aliased;
+ int alien;
+ int nslen;
- alien = strlen(alias);
- nslen = strlen(newsig);
- length = alien + nslen + 2;
+ alien = strlen(alias);
+ nslen = strlen(newsig);
+ length = alien + nslen + 2;
- aliased = alloca(length);
- memcpy(aliased, alias, alien);
- aliased[alien] = EDJE_PART_PATH_SEPARATOR;
- memcpy(aliased + alien + 1, newsig, nslen + 1);
+ aliased = alloca(length);
+ memcpy(aliased, alias, alien);
+ aliased[alien] = EDJE_PART_PATH_SEPARATOR;
+ memcpy(aliased + alien + 1, newsig, nslen + 1);
- _edje_emit(ed, aliased, src);
- return;
+ _edje_emit(ed, aliased, src);
+ return;
}
}
if (!ed2) goto end;
_edje_emit(ed2, newsig, src);
- broadcast = EINA_FALSE;
+ broadcast = EINA_FALSE;
break;
case EDJE_PART_TYPE_EXTERNAL:
if (((rp->type != EDJE_RP_TYPE_SWALLOW) ||
(!rp->typedata.swallow)) ||
(!rp->typedata.swallow->swallowed_object))
- break;
+ break;
if (!idx)
{
if (!ed2) goto end;
_edje_emit(ed2, newsig, src);
}
- broadcast = EINA_FALSE;
+ broadcast = EINA_FALSE;
break ;
case EDJE_PART_TYPE_BOX:
ed2 = _edje_fetch(child);
if (!ed2) goto end;
_edje_emit(ed2, newsig, src);
- broadcast = EINA_FALSE;
+ broadcast = EINA_FALSE;
}
break ;
default:
-// ERR("SPANK SPANK SPANK !!!\nYou should never be here !");
+ // ERR("SPANK SPANK SPANK !!!\nYou should never be here !");
break;
}
}
- end:
+end:
emsg.sig = sig;
emsg.src = src;
if (data)
{
emsg.data = NULL;
}
-/* new sends code */
+ /* new sends code */
if (broadcast)
edje_object_message_send(ed->obj, EDJE_MESSAGE_SIGNAL, 0, &emsg);
else
_edje_message_send(ed, EDJE_QUEUE_SCRIPT, EDJE_MESSAGE_SIGNAL, 0, &emsg);
-/* old send code - use api now
- _edje_message_send(ed, EDJE_QUEUE_SCRIPT, EDJE_MESSAGE_SIGNAL, 0, &emsg);
- EINA_LIST_FOREACH(ed->subobjs, l, obj)
- {
- Edje *ed2;
-
- ed2 = _edje_fetch(obj);
- if (!ed2) continue;
- if (ed2->delete_me) continue;
- _edje_message_send(ed2, EDJE_QUEUE_SCRIPT, EDJE_MESSAGE_SIGNAL, 0, &emsg);
- }
- */
+ /* old send code - use api now
+ _edje_message_send(ed, EDJE_QUEUE_SCRIPT, EDJE_MESSAGE_SIGNAL, 0, &emsg);
+ EINA_LIST_FOREACH(ed->subobjs, l, obj)
+ {
+ Edje *ed2;
+
+ ed2 = _edje_fetch(obj);
+ if (!ed2) continue;
+ if (ed2->delete_me) continue;
+ _edje_message_send(ed2, EDJE_QUEUE_SCRIPT, EDJE_MESSAGE_SIGNAL, 0, &emsg);
+ }
+ */
if (emsg.data && (--(emsg.data->ref) == 0))
{
if (emsg.data->free_func)
struct _Edje_Program_Data
{
- Eina_List *matches;
- Edje *ed;
- const char *source;
+ Eina_List *matches;
+ Edje *ed;
+ const char *source;
};
static Eina_Bool _edje_glob_callback(Edje_Program *pr, void *dt)
if (pr->filter.state)
{
- rp = _edje_real_part_get(data->ed, pr->filter.part ? pr->filter.part : data->source);
- if (rp)
+ rp = _edje_real_part_get(data->ed, pr->filter.part ? pr->filter.part : data->source);
+ if (rp)
exec = !strcmp(rp->chosen_description->state.name, pr->filter.state);
}
if (ed->delete_me) return;
if (!sig) sig = "";
if (!src) src = "";
-// printf("EDJE EMIT: (%p) signal: \"%s\" source: \"%s\"\n", ed, sig, src);
+ // printf("EDJE EMIT: (%p) signal: \"%s\" source: \"%s\"\n", ed, sig, src);
_edje_block(ed);
_edje_ref(ed);
_edje_freeze(ed);
-
+
if (ed->collection && ed->L)
_edje_lua2_script_func_signal(ed, sig, src);
if (ed->collection)
{
#ifdef EDJE_PROGRAM_CACHE
- Edje_Part_Collection *ec;
- char *tmps;
- int l1, l2;
+ Edje_Part_Collection *ec;
+ char *tmps;
+ int l1, l2;
#endif
- int done;
+ int done;
#ifdef EDJE_PROGRAM_CACHE
- ec = ed->collection;
- l1 = strlen(sig);
- l2 = strlen(src);
- tmps = alloca(l1 + l2 + 3); /* \0, \337, \0 */
- strcpy(tmps, sig);
- tmps[l1] = '\377';
- strcpy(&(tmps[l1 + 1]), src);
+ ec = ed->collection;
+ l1 = strlen(sig);
+ l2 = strlen(src);
+ tmps = alloca(l1 + l2 + 3); /* \0, \337, \0 */
+ strcpy(tmps, sig);
+ tmps[l1] = '\377';
+ strcpy(&(tmps[l1 + 1]), src);
#endif
- done = 0;
+ done = 0;
#ifdef EDJE_PROGRAM_CACHE
- {
- Eina_List *matches;
- Eina_List *l;
- Edje_Program *pr;
-
- if (eina_hash_find(ec->prog_cache.no_matches, tmps))
- {
- done = 1;
- }
- else if ((matches = eina_hash_find(ec->prog_cache.matches, tmps)))
- {
+ {
+ Eina_List *matches;
+ Eina_List *l;
+ Edje_Program *pr;
+
+ if (eina_hash_find(ec->prog_cache.no_matches, tmps))
+ {
+ done = 1;
+ }
+ else if ((matches = eina_hash_find(ec->prog_cache.matches, tmps)))
+ {
EINA_LIST_FOREACH(matches, l, pr)
- {
+ {
Eina_Bool exec = EINA_TRUE;
if (pr->filter.state)
exec = EINA_FALSE;
else
exec = (rp->chosen_description->state.name != pr->filter.state) ?
- !strcmp(rp->chosen_description->state.name, pr->filter.state) : EINA_TRUE;
+ !strcmp(rp->chosen_description->state.name, pr->filter.state) : EINA_TRUE;
}
}
pr->exec = exec;
- }
+ }
EINA_LIST_FOREACH(matches, l, pr)
- if (pr->exec)
- {
- _edje_program_run(ed, pr, 0, sig, src);
- if (_edje_block_break(ed))
- {
- goto break_prog;
- }
- }
-
- done = 1;
- }
- }
+ if (pr->exec)
+ {
+ _edje_program_run(ed, pr, 0, sig, src);
+ if (_edje_block_break(ed))
+ {
+ goto break_prog;
+ }
+ }
+
+ done = 1;
+ }
+ }
#endif
- if (!done)
- {
+ if (!done)
+ {
struct _Edje_Program_Data data;
data.ed = ed;
data.source = src;
- data.matches = NULL;
+ data.matches = NULL;
if (ed->collection->patterns.table_programs_size > 0)
{
- const Eina_Inarray *match;
+ const Eina_Inarray *match;
#ifdef EDJE_PROGRAM_CACHE
- const Eina_List *l;
+ const Eina_List *l;
#endif
- Edje_Program *pr;
-
- if (ed->collection->patterns.programs.u.programs.globing)
- if (edje_match_programs_exec(ed->collection->patterns.programs.signals_patterns,
- ed->collection->patterns.programs.sources_patterns,
- sig,
- src,
- ed->collection->patterns.programs.u.programs.globing,
- _edje_glob_callback,
- &data,
+ Edje_Program *pr;
+
+ if (ed->collection->patterns.programs.u.programs.globing)
+ if (edje_match_programs_exec(ed->collection->patterns.programs.signals_patterns,
+ ed->collection->patterns.programs.sources_patterns,
+ sig,
+ src,
+ ed->collection->patterns.programs.u.programs.globing,
+ _edje_glob_callback,
+ &data,
prop) == 0)
goto break_prog;
- match = edje_match_signal_source_hash_get(sig, src,
- ed->collection->patterns.programs.exact_match);
+ match = edje_match_signal_source_hash_get(sig, src,
+ ed->collection->patterns.programs.exact_match);
if (match)
{
Edje_Program **tpr;
EINA_INARRAY_FOREACH(match, tpr)
- _edje_glob_callback(*tpr, &data);
+ _edje_glob_callback(*tpr, &data);
}
#ifdef EDJE_PROGRAM_CACHE
EINA_LIST_FOREACH(data.matches, l, pr)
#else
- EINA_LIST_FREE(data.matches, pr)
+ EINA_LIST_FREE(data.matches, pr)
#endif
- {
- if (pr->exec)
- _edje_program_run(ed, pr, 0, sig, src);
-
- if (_edje_block_break(ed))
- {
- eina_list_free(data.matches);
- data.matches = NULL;
- goto break_prog;
- }
- }
+ {
+ if (pr->exec)
+ _edje_program_run(ed, pr, 0, sig, src);
+
+ if (_edje_block_break(ed))
+ {
+ eina_list_free(data.matches);
+ data.matches = NULL;
+ goto break_prog;
+ }
+ }
}
#ifdef EDJE_PROGRAM_CACHE
- if (tmps)
- {
- if (data.matches == NULL)
- {
- if (!ec->prog_cache.no_matches)
- ec->prog_cache.no_matches = eina_hash_string_superfast_new(NULL);
- eina_hash_add(ec->prog_cache.no_matches, tmps, ed);
- }
- else
- {
- if (!ec->prog_cache.matches)
- ec->prog_cache.matches = eina_hash_string_superfast_new(NULL);
- eina_hash_add(ec->prog_cache.matches, tmps, data.matches);
- }
- }
+ if (tmps)
+ {
+ if (data.matches == NULL)
+ {
+ if (!ec->prog_cache.no_matches)
+ ec->prog_cache.no_matches = eina_hash_string_superfast_new(NULL);
+ eina_hash_add(ec->prog_cache.no_matches, tmps, ed);
+ }
+ else
+ {
+ if (!ec->prog_cache.matches)
+ ec->prog_cache.matches = eina_hash_string_superfast_new(NULL);
+ eina_hash_add(ec->prog_cache.matches, tmps, data.matches);
+ }
+ }
#endif
- }
- _edje_emit_cb(ed, sig, src, sdata, prop);
- if (_edje_block_break(ed))
- {
- goto break_prog;
- }
+ }
+ _edje_emit_cb(ed, sig, src, sdata, prop);
+ if (_edje_block_break(ed))
+ {
+ goto break_prog;
+ }
}
- break_prog:
+break_prog:
_edje_thaw(ed);
_edje_unref(ed);
_edje_unblock(ed);
if (eina_inarray_count(&ssp->u.callbacks.globing))
r = edje_match_callback_exec(ssp,
- m->matches,
+ m->matches,
sig,
src,
ed,
EINA_INARRAY_FOREACH(match, i)
{
- if (_edje_signal_callback_run(ed->callbacks->flags, *i)) continue;
+ if (_edje_signal_callback_run(ed->callbacks->flags, *i)) continue;
if ((prop) && (_edje_signal_callback_prop(ed->callbacks->flags,
- *i))) continue;
+ *i))) continue;
cb = &m->matches[*i];
}
}
- break_prog:
+break_prog:
_edje_signal_callback_matches_unref(m);
_edje_signal_callback_patterns_unref(ssp);
if (ed->walking_callbacks == 0)
_edje_signal_callback_reset(ed->callbacks->flags,
- ed->callbacks->matches->matches_count);
+ ed->callbacks->matches->matches_count);
_edje_unblock(ed);
_edje_thaw(ed);
{
Evas_Object *swallowed_object;
const Edje_External_Param_Info *info;
-
+
if ((rp->type != EDJE_RP_TYPE_SWALLOW) ||
(!rp->typedata.swallow)) return NULL;
swallowed_object = rp->typedata.swallow->swallowed_object;
if ((rp->part->type == EDJE_PART_TYPE_TEXT) ||
(rp->part->type == EDJE_PART_TYPE_TEXTBLOCK))
{
- if (!strcmp(name, "text"))
- {
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_STRING;
-
- _edje_recalc_do(ed);
- if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
- param->s = _edje_entry_text_get(rp);
- else if ((rp->part->type == EDJE_PART_TYPE_TEXT) &&
+ if (!strcmp(name, "text"))
+ {
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_STRING;
+
+ _edje_recalc_do(ed);
+ if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
+ param->s = _edje_entry_text_get(rp);
+ else if ((rp->part->type == EDJE_PART_TYPE_TEXT) &&
((rp->type == EDJE_RP_TYPE_TEXT) &&
- (rp->typedata.text)))
+ (rp->typedata.text)))
param->s = rp->typedata.text->text;
- else
- param->s = evas_object_textblock_text_markup_get(rp->object);
- return param;
- }
- if (rp->part->type == EDJE_PART_TYPE_TEXTBLOCK)
- {
- if (!strcmp(name, "text_unescaped"))
- {
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_STRING;
-
- _edje_recalc_do(ed);
- if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
- {
- const char *tmp = _edje_entry_text_get(rp);
- char *unescaped = _edje_text_unescape(tmp);
- *free_ptr = unescaped;
- param->s = unescaped;
- }
+ else
+ param->s = evas_object_textblock_text_markup_get(rp->object);
+ return param;
+ }
+ if (rp->part->type == EDJE_PART_TYPE_TEXTBLOCK)
+ {
+ if (!strcmp(name, "text_unescaped"))
+ {
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_STRING;
+
+ _edje_recalc_do(ed);
+ if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
+ {
+ const char *tmp = _edje_entry_text_get(rp);
+ char *unescaped = _edje_text_unescape(tmp);
+ *free_ptr = unescaped;
+ param->s = unescaped;
+ }
else if ((rp->part->type == EDJE_PART_TYPE_TEXT) &&
((rp->type == EDJE_RP_TYPE_TEXT) &&
- (rp->typedata.text)))
- param->s = rp->typedata.text->text;
- else
- {
- const char *tmp;
- char *unescaped;
-
- tmp = evas_object_textblock_text_markup_get(rp->object);
- unescaped = _edje_text_unescape(tmp);
- *free_ptr = unescaped;
- param->s = unescaped;
- }
-
- return param;
- }
+ (rp->typedata.text)))
+ param->s = rp->typedata.text->text;
+ else
+ {
+ const char *tmp;
+ char *unescaped;
+
+ tmp = evas_object_textblock_text_markup_get(rp->object);
+ unescaped = _edje_text_unescape(tmp);
+ *free_ptr = unescaped;
+ param->s = unescaped;
+ }
+
+ return param;
+ }
if (((rp->type == EDJE_RP_TYPE_TEXT) &&
(rp->typedata.text)) &&
((rp->typedata.text->entry_data) &&
- (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE) &&
- (!strcmp(name, "select_allow"))))
- {
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_BOOL;
- param->i = _edje_entry_select_allow_get(rp);
- return param;
- }
- }
+ (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE) &&
+ (!strcmp(name, "select_allow"))))
+ {
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_BOOL;
+ param->i = _edje_entry_select_allow_get(rp);
+ return param;
+ }
+ }
}
if ((rp->drag) && (rp->drag->down.count == 0))
{
- if (!strncmp(name, "drag_", sizeof("drag_") - 1))
- {
- const char *sub_name = name + sizeof("drag_") - 1;
- if (!strcmp(sub_name, "value_x"))
- {
- double d;
-
- _edje_recalc_do(ed);
- d = TO_DOUBLE(rp->drag->val.x);
- if (rp->part->dragable.x < 0) d = 1.0 - d;
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = d;
- return param;
- }
- if (!strcmp(sub_name, "value_y"))
- {
- double d;
-
- _edje_recalc_do(ed);
- d = TO_DOUBLE(rp->drag->val.y);
- if (rp->part->dragable.y < 0) d = 1.0 - d;
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = d;
- return param;
- }
-
- if (!strcmp(sub_name, "size_w"))
- {
- _edje_recalc_do(ed);
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = TO_DOUBLE(rp->drag->size.x);
- return param;
- }
- if (!strcmp(sub_name, "size_h"))
- {
- _edje_recalc_do(ed);
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = TO_DOUBLE(rp->drag->size.y);
- return param;
- }
-
- if (!strcmp(sub_name, "step_x"))
- {
- _edje_recalc_do(ed);
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = TO_DOUBLE(rp->drag->step.x);
- return param;
- }
- if (!strcmp(sub_name, "step_y"))
- {
- _edje_recalc_do(ed);
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = TO_DOUBLE(rp->drag->step.y);
- return param;
- }
-
- if (!strcmp(sub_name, "page_x"))
- {
- _edje_recalc_do(ed);
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = TO_DOUBLE(rp->drag->page.x);
- return param;
- }
- if (!strcmp(sub_name, "page_y"))
- {
- _edje_recalc_do(ed);
- param->name = name;
- param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
- param->d = TO_DOUBLE(rp->drag->page.y);
- return param;
- }
-
- return NULL;
- }
+ if (!strncmp(name, "drag_", sizeof("drag_") - 1))
+ {
+ const char *sub_name = name + sizeof("drag_") - 1;
+ if (!strcmp(sub_name, "value_x"))
+ {
+ double d;
+
+ _edje_recalc_do(ed);
+ d = TO_DOUBLE(rp->drag->val.x);
+ if (rp->part->dragable.x < 0) d = 1.0 - d;
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = d;
+ return param;
+ }
+ if (!strcmp(sub_name, "value_y"))
+ {
+ double d;
+
+ _edje_recalc_do(ed);
+ d = TO_DOUBLE(rp->drag->val.y);
+ if (rp->part->dragable.y < 0) d = 1.0 - d;
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = d;
+ return param;
+ }
+
+ if (!strcmp(sub_name, "size_w"))
+ {
+ _edje_recalc_do(ed);
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = TO_DOUBLE(rp->drag->size.x);
+ return param;
+ }
+ if (!strcmp(sub_name, "size_h"))
+ {
+ _edje_recalc_do(ed);
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = TO_DOUBLE(rp->drag->size.y);
+ return param;
+ }
+
+ if (!strcmp(sub_name, "step_x"))
+ {
+ _edje_recalc_do(ed);
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = TO_DOUBLE(rp->drag->step.x);
+ return param;
+ }
+ if (!strcmp(sub_name, "step_y"))
+ {
+ _edje_recalc_do(ed);
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = TO_DOUBLE(rp->drag->step.y);
+ return param;
+ }
+
+ if (!strcmp(sub_name, "page_x"))
+ {
+ _edje_recalc_do(ed);
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = TO_DOUBLE(rp->drag->page.x);
+ return param;
+ }
+ if (!strcmp(sub_name, "page_y"))
+ {
+ _edje_recalc_do(ed);
+ param->name = name;
+ param->type = EDJE_EXTERNAL_PARAM_TYPE_DOUBLE;
+ param->d = TO_DOUBLE(rp->drag->page.y);
+ return param;
+ }
+
+ return NULL;
+ }
}
return NULL;
if ((rp->part->type == EDJE_PART_TYPE_TEXT) ||
(rp->part->type == EDJE_PART_TYPE_TEXTBLOCK))
{
- if (!strcmp(name, "text"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_STRING)
- return EINA_FALSE;
-
- _edje_object_part_text_raw_set(ed, ed->obj, rp, rp->part->name, param->s);
- return EINA_TRUE;
- }
- if (rp->part->type == EDJE_PART_TYPE_TEXTBLOCK)
- {
- if (!strcmp(name, "text_unescaped"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_STRING)
- return EINA_FALSE;
-
- if (rp->part->type == EDJE_PART_TYPE_TEXT)
- _edje_object_part_text_raw_set(ed, ed->obj, rp, rp->part->name, param->s);
- else
- {
- char *escaped = _edje_text_escape(param->s);
- _edje_object_part_text_raw_set(ed, ed->obj, rp, rp->part->name, escaped);
- free(escaped);
- }
-
- return EINA_TRUE;
- }
+ if (!strcmp(name, "text"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_STRING)
+ return EINA_FALSE;
+
+ _edje_object_part_text_raw_set(ed, ed->obj, rp, rp->part->name, param->s);
+ return EINA_TRUE;
+ }
+ if (rp->part->type == EDJE_PART_TYPE_TEXTBLOCK)
+ {
+ if (!strcmp(name, "text_unescaped"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_STRING)
+ return EINA_FALSE;
+
+ if (rp->part->type == EDJE_PART_TYPE_TEXT)
+ _edje_object_part_text_raw_set(ed, ed->obj, rp, rp->part->name, param->s);
+ else
+ {
+ char *escaped = _edje_text_escape(param->s);
+ _edje_object_part_text_raw_set(ed, ed->obj, rp, rp->part->name, escaped);
+ free(escaped);
+ }
+
+ return EINA_TRUE;
+ }
if (((rp->type == EDJE_RP_TYPE_TEXT) &&
(rp->typedata.text)) &&
((rp->typedata.text->entry_data) &&
- (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE) &&
- (!strcmp(name, "select_allow"))))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_BOOL)
- return EINA_FALSE;
- _edje_entry_select_allow_set(rp, param->i);
- return EINA_TRUE;
- }
- }
+ (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE) &&
+ (!strcmp(name, "select_allow"))))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_BOOL)
+ return EINA_FALSE;
+ _edje_entry_select_allow_set(rp, param->i);
+ return EINA_TRUE;
+ }
+ }
}
if ((rp->drag) && (rp->drag->down.count == 0))
{
- if (!strncmp(name, "drag_", sizeof("drag_") - 1))
- {
- const char *sub_name = name + sizeof("drag_") - 1;
- if (!strcmp(sub_name, "value_x"))
- {
- double d;
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- d = param->d;
- if (rp->part->dragable.confine_id != -1)
- d = CLAMP(d, 0.0, 1.0);
- if (rp->part->dragable.x < 0) d = 1.0 - d;
- if (rp->drag->val.x == FROM_DOUBLE(d)) return EINA_TRUE;
- rp->drag->val.x = FROM_DOUBLE(d);
+ if (!strncmp(name, "drag_", sizeof("drag_") - 1))
+ {
+ const char *sub_name = name + sizeof("drag_") - 1;
+ if (!strcmp(sub_name, "value_x"))
+ {
+ double d;
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ d = param->d;
+ if (rp->part->dragable.confine_id != -1)
+ d = CLAMP(d, 0.0, 1.0);
+ if (rp->part->dragable.x < 0) d = 1.0 - d;
+ if (rp->drag->val.x == FROM_DOUBLE(d)) return EINA_TRUE;
+ rp->drag->val.x = FROM_DOUBLE(d);
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- _edje_dragable_pos_set
- (ed, rp, rp->drag->val.x, rp->drag->val.y);
- _edje_emit(ed, "drag,set", rp->part->name);
- return EINA_TRUE;
- }
- if (!strcmp(sub_name, "value_y"))
- {
- double d;
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- d = param->d;
- if (rp->part->dragable.confine_id != -1)
- d = CLAMP(d, 0.0, 1.0);
- if (rp->part->dragable.y < 0) d = 1.0 - d;
- if (rp->drag->val.y == FROM_DOUBLE(d)) return EINA_TRUE;
- rp->drag->val.y = FROM_DOUBLE(d);
+ _edje_dragable_pos_set
+ (ed, rp, rp->drag->val.x, rp->drag->val.y);
+ _edje_emit(ed, "drag,set", rp->part->name);
+ return EINA_TRUE;
+ }
+ if (!strcmp(sub_name, "value_y"))
+ {
+ double d;
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ d = param->d;
+ if (rp->part->dragable.confine_id != -1)
+ d = CLAMP(d, 0.0, 1.0);
+ if (rp->part->dragable.y < 0) d = 1.0 - d;
+ if (rp->drag->val.y == FROM_DOUBLE(d)) return EINA_TRUE;
+ rp->drag->val.y = FROM_DOUBLE(d);
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- _edje_dragable_pos_set
- (ed, rp, rp->drag->val.x, rp->drag->val.y);
- _edje_emit(ed, "drag,set", rp->part->name);
- return EINA_TRUE;
- }
-
- if (!strcmp(sub_name, "size_w"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- rp->drag->size.x = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
+ _edje_dragable_pos_set
+ (ed, rp, rp->drag->val.x, rp->drag->val.y);
+ _edje_emit(ed, "drag,set", rp->part->name);
+ return EINA_TRUE;
+ }
+
+ if (!strcmp(sub_name, "size_w"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ rp->drag->size.x = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
ed->recalc_call = EINA_TRUE;
- ed->dirty = EINA_TRUE;
+ ed->dirty = EINA_TRUE;
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- _edje_recalc(ed);
- return EINA_TRUE;
- }
- if (!strcmp(sub_name, "size_h"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- rp->drag->size.y = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
+ _edje_recalc(ed);
+ return EINA_TRUE;
+ }
+ if (!strcmp(sub_name, "size_h"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ rp->drag->size.y = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
ed->recalc_call = EINA_TRUE;
- ed->dirty = EINA_TRUE;
+ ed->dirty = EINA_TRUE;
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- _edje_recalc(ed);
- return EINA_TRUE;
- }
-
- if (!strcmp(sub_name, "step_x"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- rp->drag->step.x = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
+ _edje_recalc(ed);
+ return EINA_TRUE;
+ }
+
+ if (!strcmp(sub_name, "step_x"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ rp->drag->step.x = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- return EINA_TRUE;
- }
- if (!strcmp(sub_name, "step_y"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- rp->drag->step.y = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
+ return EINA_TRUE;
+ }
+ if (!strcmp(sub_name, "step_y"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ rp->drag->step.y = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- return EINA_TRUE;
- }
-
- if (!strcmp(sub_name, "page_x"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- rp->drag->page.x = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
+ return EINA_TRUE;
+ }
+
+ if (!strcmp(sub_name, "page_x"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ rp->drag->page.x = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- return EINA_TRUE;
- }
- if (!strcmp(sub_name, "page_y"))
- {
- if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
- return EINA_FALSE;
- rp->drag->page.y = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
+ return EINA_TRUE;
+ }
+ if (!strcmp(sub_name, "page_y"))
+ {
+ if (param->type != EDJE_EXTERNAL_PARAM_TYPE_DOUBLE)
+ return EINA_FALSE;
+ rp->drag->page.y = FROM_DOUBLE(CLAMP(param->d, 0.0, 1.0));
#ifdef EDJE_CALC_CACHE
- rp->invalidate = 1;
+ rp->invalidate = 1;
#endif
- return EINA_TRUE;
- }
+ return EINA_TRUE;
+ }
- return EINA_FALSE;
- }
+ return EINA_FALSE;
+ }
}
return EINA_FALSE;
if ((rp->part->type == EDJE_PART_TYPE_TEXT) ||
(rp->part->type == EDJE_PART_TYPE_TEXTBLOCK))
{
- if (!strcmp(name, "text"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_STRING("text");
- return π
- }
- if (rp->part->type == EDJE_PART_TYPE_TEXTBLOCK)
- {
- if (!strcmp(name, "text_unescaped"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_STRING("text_unescaped");
- return π
- }
- if (!strcmp(name, "select_allow"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_BOOL("text_unescaped");
- return π
- }
- }
+ if (!strcmp(name, "text"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_STRING("text");
+ return π
+ }
+ if (rp->part->type == EDJE_PART_TYPE_TEXTBLOCK)
+ {
+ if (!strcmp(name, "text_unescaped"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_STRING("text_unescaped");
+ return π
+ }
+ if (!strcmp(name, "select_allow"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_BOOL("text_unescaped");
+ return π
+ }
+ }
}
if ((rp->drag) && (rp->drag->down.count == 0))
{
- if (!strncmp(name, "drag_", sizeof("drag_") - 1))
- {
- name += sizeof("drag_") - 1;
- if (!strcmp(name, "value_x"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_value_x");
- return π
- }
- if (!strcmp(name, "value_y"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_value_y");
- return π
- }
- if (!strcmp(name, "size_w"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_size_w");
- return π
- }
- if (!strcmp(name, "size_h"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_size_h");
- return π
- }
- if (!strcmp(name, "step_x"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_step_x");
- return π
- }
- if (!strcmp(name, "step_y"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_step_y");
- return π
- }
- if (!strcmp(name, "page_x"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_page_x");
- return π
- }
- if (!strcmp(name, "page_y"))
- {
- static const Edje_External_Param_Info pi =
- EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_page_y");
- return π
- }
-
- return NULL;
- }
+ if (!strncmp(name, "drag_", sizeof("drag_") - 1))
+ {
+ name += sizeof("drag_") - 1;
+ if (!strcmp(name, "value_x"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_value_x");
+ return π
+ }
+ if (!strcmp(name, "value_y"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_value_y");
+ return π
+ }
+ if (!strcmp(name, "size_w"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_size_w");
+ return π
+ }
+ if (!strcmp(name, "size_h"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_size_h");
+ return π
+ }
+ if (!strcmp(name, "step_x"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_step_x");
+ return π
+ }
+ if (!strcmp(name, "step_y"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_step_y");
+ return π
+ }
+ if (!strcmp(name, "page_x"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_page_x");
+ return π
+ }
+ if (!strcmp(name, "page_y"))
+ {
+ static const Edje_External_Param_Info pi =
+ EDJE_EXTERNAL_PARAM_INFO_DOUBLE("drag_page_y");
+ return π
+ }
+
+ return NULL;
+ }
}
return NULL;
{
case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
case EDJE_EXTERNAL_PARAM_TYPE_INT:
- {
- int i;
- switch (param->type)
- {
- case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
- i = (int)param->d;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_STRING:
- case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
- i = (param->s) ? atoi(param->s) : 0;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
- case EDJE_EXTERNAL_PARAM_TYPE_INT:
- i = param->i;
- break;
- default:
- return NULL;
- }
- if (dst_info->type == EDJE_EXTERNAL_PARAM_TYPE_BOOL)
- i = !!i;
- param->type = dst_info->type;
- param->i = i;
- return param;
- }
+ {
+ int i;
+ switch (param->type)
+ {
+ case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
+ i = (int)param->d;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_STRING:
+ case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
+ i = (param->s) ? atoi(param->s) : 0;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+ case EDJE_EXTERNAL_PARAM_TYPE_INT:
+ i = param->i;
+ break;
+ default:
+ return NULL;
+ }
+ if (dst_info->type == EDJE_EXTERNAL_PARAM_TYPE_BOOL)
+ i = !!i;
+ param->type = dst_info->type;
+ param->i = i;
+ return param;
+ }
case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
- {
- double d;
- switch (param->type)
- {
- case EDJE_EXTERNAL_PARAM_TYPE_INT:
- d = (double)param->i;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_STRING:
- case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
- d = (param->s) ? atof(param->s) : 0.0;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
- d = (double)param->i;
- break;
- default:
- return NULL;
- }
- param->type = dst_info->type;
- param->d = d;
- return param;
- }
+ {
+ double d;
+ switch (param->type)
+ {
+ case EDJE_EXTERNAL_PARAM_TYPE_INT:
+ d = (double)param->i;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_STRING:
+ case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
+ d = (param->s) ? atof(param->s) : 0.0;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+ d = (double)param->i;
+ break;
+ default:
+ return NULL;
+ }
+ param->type = dst_info->type;
+ param->d = d;
+ return param;
+ }
case EDJE_EXTERNAL_PARAM_TYPE_STRING:
- {
- static char s[64];
- switch (param->type)
- {
- case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
- case EDJE_EXTERNAL_PARAM_TYPE_INT:
- if (!snprintf(s, sizeof(s), "%i", param->i)) return NULL;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
- if (!snprintf(s, sizeof(s), "%f", param->d)) return NULL;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
- param->type = dst_info->type;
- return param;
- default:
- return NULL;
- }
- param->type = dst_info->type;
- param->s = s;
- return param;
- }
+ {
+ static char s[64];
+ switch (param->type)
+ {
+ case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+ case EDJE_EXTERNAL_PARAM_TYPE_INT:
+ if (!snprintf(s, sizeof(s), "%i", param->i)) return NULL;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
+ if (!snprintf(s, sizeof(s), "%f", param->d)) return NULL;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
+ param->type = dst_info->type;
+ return param;
+ default:
+ return NULL;
+ }
+ param->type = dst_info->type;
+ param->s = s;
+ return param;
+ }
case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
- {
- static char s[64];
- const char *val;
- switch (param->type)
- {
- case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
- case EDJE_EXTERNAL_PARAM_TYPE_INT:
- if (!snprintf(s, sizeof(s), "%i", param->i)) return NULL;
- val = s;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
- if (!snprintf(s, sizeof(s), "%f", param->d)) return NULL;
- val = s;
- break;
- case EDJE_EXTERNAL_PARAM_TYPE_STRING:
- val = param->s;
- break;
- default:
- return NULL;
- }
-
- param->type = dst_info->type;
- if (param->s != val) param->s = val;
- return param;
- }
+ {
+ static char s[64];
+ const char *val;
+ switch (param->type)
+ {
+ case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+ case EDJE_EXTERNAL_PARAM_TYPE_INT:
+ if (!snprintf(s, sizeof(s), "%i", param->i)) return NULL;
+ val = s;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
+ if (!snprintf(s, sizeof(s), "%f", param->d)) return NULL;
+ val = s;
+ break;
+ case EDJE_EXTERNAL_PARAM_TYPE_STRING:
+ val = param->s;
+ break;
+ default:
+ return NULL;
+ }
+
+ param->type = dst_info->type;
+ if (param->s != val) param->s = val;
+ return param;
+ }
default: return NULL;
}
switch (info->type)
{
case EDJE_EXTERNAL_PARAM_TYPE_BOOL:
- return ((param->i == 0) || (param->i == 1));
+ return ((param->i == 0) || (param->i == 1));
case EDJE_EXTERNAL_PARAM_TYPE_INT:
- if ((info->info.i.min != EDJE_EXTERNAL_INT_UNSET) &&
- (info->info.i.min > param->i))
- return EINA_FALSE;
+ if ((info->info.i.min != EDJE_EXTERNAL_INT_UNSET) &&
+ (info->info.i.min > param->i))
+ return EINA_FALSE;
- if ((info->info.i.max != EDJE_EXTERNAL_INT_UNSET) &&
- (info->info.i.max < param->i))
- return EINA_FALSE;
+ if ((info->info.i.max != EDJE_EXTERNAL_INT_UNSET) &&
+ (info->info.i.max < param->i))
+ return EINA_FALSE;
- return EINA_TRUE;
+ return EINA_TRUE;
case EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
- if ((info->info.d.min != EDJE_EXTERNAL_DOUBLE_UNSET) &&
- (info->info.d.min > param->d))
- return EINA_FALSE;
+ if ((info->info.d.min != EDJE_EXTERNAL_DOUBLE_UNSET) &&
+ (info->info.d.min > param->d))
+ return EINA_FALSE;
- if ((info->info.d.max != EDJE_EXTERNAL_DOUBLE_UNSET) &&
- (info->info.d.max < param->d))
- return EINA_FALSE;
+ if ((info->info.d.max != EDJE_EXTERNAL_DOUBLE_UNSET) &&
+ (info->info.d.max < param->d))
+ return EINA_FALSE;
- return EINA_TRUE;
+ return EINA_TRUE;
case EDJE_EXTERNAL_PARAM_TYPE_STRING:
- if (!param->s) return EINA_FALSE;
- if (info->info.s.accept_fmt)
- INF("string 'accept_fmt' validation not implemented.");
- if (info->info.s.deny_fmt)
- INF("string 'deny_fmt' validation not implemented.");
- return EINA_TRUE;
+ if (!param->s) return EINA_FALSE;
+ if (info->info.s.accept_fmt)
+ INF("string 'accept_fmt' validation not implemented.");
+ if (info->info.s.deny_fmt)
+ INF("string 'deny_fmt' validation not implemented.");
+ return EINA_TRUE;
case EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
- {
- const char **itr = info->info.c.choices;
- if (!itr) return EINA_FALSE;
- for (; *itr; itr++)
- if (!strcmp(*itr, param->s))
- return EINA_TRUE;
- return EINA_FALSE;
- }
+ {
+ const char **itr = info->info.c.choices;
+ if (!itr) return EINA_FALSE;
+ for (; *itr; itr++)
+ if (!strcmp(*itr, param->s))
+ return EINA_TRUE;
+ return EINA_FALSE;
+ }
default: return EINA_FALSE;
}
(dst_part->type == EDJE_RP_TYPE_SWALLOW) &&
(dst_part->typedata.swallow))
dst_info = _edje_external_param_info_get
- (dst_part->typedata.swallow->swallowed_object, dst_param);
+ (dst_part->typedata.swallow->swallowed_object, dst_param);
else
dst_info = _edje_native_param_info_get(dst_part, dst_param);
if (!dst_info)
{
- ERR("cannot copy, invalid destination parameter '%s' of part '%s'",
- dst_param, dst_part->part->name);
- return;
+ ERR("cannot copy, invalid destination parameter '%s' of part '%s'",
+ dst_param, dst_part->part->name);
+ return;
}
if (src_part->part->type == EDJE_PART_TYPE_EXTERNAL)
{
- if (!_edje_param_external_get
- (src_part, src_param, &val))
- {
- ERR("cannot get parameter '%s' of part '%s'",
- src_param, src_part->part->name);
- return;
- }
+ if (!_edje_param_external_get
+ (src_part, src_param, &val))
+ {
+ ERR("cannot get parameter '%s' of part '%s'",
+ src_param, src_part->part->name);
+ return;
+ }
}
else
{
if (!_edje_param_native_get(ed, src_part, src_param, &val, &free_ptr))
- {
- ERR("cannot get parameter '%s' of part '%s'",
- src_param, src_part->part->name);
- return;
- }
+ {
+ ERR("cannot get parameter '%s' of part '%s'",
+ src_param, src_part->part->name);
+ return;
+ }
}
if (!_edje_param_convert(&val, dst_info))
{
- ERR("cannot convert parameter type %s to requested type %s",
- edje_external_param_type_str(val.type),
- edje_external_param_type_str(dst_info->type));
- goto end;
+ ERR("cannot convert parameter type %s to requested type %s",
+ edje_external_param_type_str(val.type),
+ edje_external_param_type_str(dst_info->type));
+ goto end;
}
if (!_edje_param_validate(&val, dst_info))
{
- ERR("incorrect parameter value failed validation for type %s",
- edje_external_param_type_str(dst_info->type));
- goto end;
+ ERR("incorrect parameter value failed validation for type %s",
+ edje_external_param_type_str(dst_info->type));
+ goto end;
}
if (dst_part->part->type == EDJE_PART_TYPE_EXTERNAL)
{
- val.name = dst_param;
- if (!_edje_external_param_set(NULL, dst_part, &val))
- {
- ERR("failed to set parameter '%s' (%s) of part '%s'",
- dst_param, edje_external_param_type_str(dst_info->type),
- dst_part->part->name);
- goto end;
- }
+ val.name = dst_param;
+ if (!_edje_external_param_set(NULL, dst_part, &val))
+ {
+ ERR("failed to set parameter '%s' (%s) of part '%s'",
+ dst_param, edje_external_param_type_str(dst_info->type),
+ dst_part->part->name);
+ goto end;
+ }
}
else
{
if (!_edje_param_native_set(ed, dst_part, dst_param, &val))
- {
- ERR("failed to set parameter '%s' (%s) of part '%s'",
- dst_param, edje_external_param_type_str(dst_info->type),
- dst_part->part->name);
- goto end;
- }
+ {
+ ERR("failed to set parameter '%s' (%s) of part '%s'",
+ dst_param, edje_external_param_type_str(dst_info->type),
+ dst_part->part->name);
+ goto end;
+ }
}
- end:
+end:
free(free_ptr);
}
if (!info)
{
- ERR("cannot copy, invalid destination parameter '%s' of part '%s'",
- param, part->part->name);
- return;
+ ERR("cannot copy, invalid destination parameter '%s' of part '%s'",
+ param, part->part->name);
+ return;
}
val.name = "(temp)";
if (!_edje_param_convert(&val, info))
{
- ERR("cannot convert parameter type STRING to requested type %s",
- edje_external_param_type_str(info->type));
- return;
+ ERR("cannot convert parameter type STRING to requested type %s",
+ edje_external_param_type_str(info->type));
+ return;
}
if (!_edje_param_validate(&val, info))
{
- ERR("incorrect parameter value failed validation for type %s",
- edje_external_param_type_str(info->type));
- return;
+ ERR("incorrect parameter value failed validation for type %s",
+ edje_external_param_type_str(info->type));
+ return;
}
if (part->part->type == EDJE_PART_TYPE_EXTERNAL)
{
- val.name = param;
- if (!_edje_external_param_set(NULL, part, &val))
- {
- ERR("failed to set parameter '%s' (%s) of part '%s'",
- param, edje_external_param_type_str(info->type),
- part->part->name);
- return;
- }
+ val.name = param;
+ if (!_edje_external_param_set(NULL, part, &val))
+ {
+ ERR("failed to set parameter '%s' (%s) of part '%s'",
+ param, edje_external_param_type_str(info->type),
+ part->part->name);
+ return;
+ }
}
else
{
if (!_edje_param_native_set(ed, part, param, &val))
- {
- ERR("failed to set parameter '%s' (%s) of part '%s'",
- param, edje_external_param_type_str(info->type),
- part->part->name);
- return;
- }
+ {
+ ERR("failed to set parameter '%s' (%s) of part '%s'",
+ param, edje_external_param_type_str(info->type),
+ part->part->name);
+ return;
+ }
}
}