Some automatic migration and some manual adjustments to calc and text.
authorTom Hacohen <tom@stosb.com>
Tue, 1 Mar 2016 18:02:49 +0000 (18:02 +0000)
committerTom Hacohen <tom@stosb.com>
Thu, 3 Mar 2016 09:56:20 +0000 (09:56 +0000)
These file needed some manual adjustments in addition to the automatic
migration, that's why these are separate from the previous and next
commits, so I can easily know there are additional changes to these, and
it wasn't just the script.

src/lib/edje/edje_calc.c
src/lib/edje/edje_text.c

index 28a346b..8fa3cb9 100644 (file)
@@ -57,40 +57,35 @@ static void                          _edje_part_recalc_single(Edje *ed, Edje_Rea
                                                                              \
    eina_quaternion_scale(&quaternion, &quaternion, 1/norm);                  \
                                                                              \
-   eo_do(ep->node,                                                           \
-         evas_canvas3d_node_orientation_set(quaternion.x, quaternion.y,            \
-                                      quaternion.z, quaternion.w));
+   evas_canvas3d_node_orientation_set(ep->node, quaternion.x, quaternion.y, \
+                                      quaternion.z, quaternion.w);
 
 #define SET_LOOK_AT(type)                                                 \
-   eo_do(ep->node,                                                        \
-         evas_canvas3d_node_look_at_set(pd_##type->type.position.space,         \
-                                  pd_##type->type.orientation.data[0],    \
-                                  pd_##type->type.orientation.data[1],    \
-                                  pd_##type->type.orientation.data[2],    \
-                                  pd_##type->type.position.space,         \
-                                  pd_##type->type.orientation.data[3],    \
-                                  pd_##type->type.orientation.data[4],    \
-                                  pd_##type->type.orientation.data[5]));
+   evas_canvas3d_node_look_at_set(ep->node, pd_##type->type.position.space, \
+                                  pd_##type->type.orientation.data[0], \
+                                  pd_##type->type.orientation.data[1], \
+                                  pd_##type->type.orientation.data[2], \
+                                  pd_##type->type.position.space, \
+                                  pd_##type->type.orientation.data[3], \
+                                  pd_##type->type.orientation.data[4], \
+                                  pd_##type->type.orientation.data[5]);
 
 #define SET_LOOK_TO(type)                                                                    \
    Edje_Real_Part *look_to;                                                                  \
    Evas_Real x, y ,z;                                                                        \
    look_to = ed->table_parts[pd_##type->type.orientation.look_to % ed->table_parts_size];    \
-   eo_do(look_to->node,                                                                      \
-         evas_canvas3d_node_position_get(pd_##type->type.position.space, &x, &y, &z));             \
-   eo_do(ep->node,                                                                           \
-         evas_canvas3d_node_look_at_set(pd_##type->type.position.space, x, y, z,                   \
-                                  pd_##type->type.position.space,                            \
-                                  pd_##type->type.orientation.data[3],                       \
-                                  pd_##type->type.orientation.data[4],                       \
-                                  pd_##type->type.orientation.data[5]));
+   evas_canvas3d_node_position_get(look_to->node, pd_##type->type.position.space, &x, &y, &z);             \
+   evas_canvas3d_node_look_at_set(ep->node, pd_##type->type.position.space, x, y, z, \
+                                  pd_##type->type.position.space, \
+                                  pd_##type->type.orientation.data[3], \
+                                  pd_##type->type.orientation.data[4], \
+                                  pd_##type->type.orientation.data[5]);
 
 #define SET_ANGLE_AXIS(type)                                                             \
-   eo_do(ep->node,                                                                       \
-         evas_canvas3d_node_orientation_angle_axis_set(pd_##type->type.orientation.data[0],    \
-                                                 pd_##type->type.orientation.data[1],    \
-                                                 pd_##type->type.orientation.data[2],    \
-                                                 pd_##type->type.orientation.data[3]));
+   evas_canvas3d_node_orientation_angle_axis_set(ep->node, pd_##type->type.orientation.data[0], \
+                                                 pd_##type->type.orientation.data[1], \
+                                                 pd_##type->type.orientation.data[2], \
+                                                 pd_##type->type.orientation.data[3]);
 
 
 void
@@ -897,7 +892,7 @@ _edje_recalc_do(Edje *ed)
    if (!ed->calc_only)
      {
         if (ed->recalc_call)
-          eo_do(ed->obj, eo_event_callback_call(EDJE_OBJECT_EVENT_RECALC, NULL));
+          eo_event_callback_call(ed->obj, EDJE_OBJECT_EVENT_RECALC, NULL);
      }
    else
      evas_object_smart_need_recalculate_set(ed->obj, need_calc);
@@ -909,8 +904,8 @@ _edje_recalc_do(Edje *ed)
 
         ed->recalc_hints = EINA_FALSE;
 
-        eo_do(ed->obj, edje_obj_size_min_calc(&w, &h));
-        eo_do(ed->obj, evas_obj_size_hint_min_set(w, h));
+        edje_obj_size_min_calc(ed->obj, &w, &h);
+        evas_obj_size_hint_min_set(ed->obj, w, h);
      }
 
    if (!ed->collection) return;
@@ -1489,9 +1484,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
              double s = base_s;
 
              if (ep->part->scale) base_s = TO_DOUBLE(sc);
-             eo_do(ep->object,
-                   evas_obj_scale_set(base_s),
-                   evas_obj_textblock_size_native_get(&tw, &th));
+             evas_obj_scale_set(ep->object, base_s);
+             evas_obj_textblock_size_native_get(ep->object, &tw, &th);
 
              orig_s = base_s;
              /* Now make it bigger so calculations will be more accurate
@@ -1499,9 +1493,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
              {
                 orig_s = _edje_part_recalc_single_textblock_scale_range_adjust(chosen_desc, base_s,
                                                                                orig_s * TO_INT(params->eval.w) / tw);
-                eo_do(ep->object,
-                      evas_obj_scale_set(orig_s),
-                      evas_obj_textblock_size_native_get(&tw, &th));
+                evas_obj_scale_set(ep->object, orig_s);
+                evas_obj_textblock_size_native_get(ep->object, &tw, &th);
              }
              if (chosen_desc->text.fit_x)
                {
@@ -1509,9 +1502,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
                     {
                        s = _edje_part_recalc_single_textblock_scale_range_adjust(chosen_desc, base_s,
                                                                                  orig_s * TO_INT(params->eval.w) / tw);
-                       eo_do(ep->object,
-                             evas_obj_scale_set(s),
-                             evas_obj_textblock_size_native_get(NULL, NULL));
+                       evas_obj_scale_set(ep->object, s);
+                       evas_obj_textblock_size_native_get(ep->object, NULL, NULL);
                     }
                }
              if (chosen_desc->text.fit_y)
@@ -1527,9 +1519,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
                             s = tmp_s;
                          }
 
-                       eo_do(ep->object,
-                             evas_obj_scale_set(s),
-                             evas_obj_textblock_size_native_get(NULL, NULL));
+                       evas_obj_scale_set(ep->object, s);
+                       evas_obj_textblock_size_native_get(ep->object, NULL, NULL);
                     }
                }
 
@@ -1538,8 +1529,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
              {
                 int i = 5;   /* Tries before we give up. */
                 Evas_Coord fw, fh;
-                eo_do(ep->object,
-                      evas_obj_textblock_size_native_get(&fw, &fh));
+                evas_obj_textblock_size_native_get(ep->object, &fw, &fh);
 
                 /* If we are still too big, try reducing the size to
                  * 95% each try. */
@@ -1554,9 +1544,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
                        break;
                      s = tmp_s;
 
-                     eo_do(ep->object,
-                           evas_obj_scale_set(s),
-                           evas_obj_textblock_size_native_get(&fw, &fh));
+                     evas_obj_scale_set(ep->object, s);
+                     evas_obj_textblock_size_native_get(ep->object, &fw, &fh);
                      i--;
                   }
              }
@@ -1582,9 +1571,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
                   tw = th = 0;
                   if (!chosen_desc->text.min_x)
                     {
-                       eo_do(ep->object,
-                             efl_gfx_size_set(TO_INT(params->eval.w), TO_INT(params->eval.h)),
-                             evas_obj_textblock_size_formatted_get(&tw, &th));
+                       efl_gfx_size_set(ep->object, TO_INT(params->eval.w), TO_INT(params->eval.h));
+                       evas_obj_textblock_size_formatted_get(ep->object, &tw, &th);
                     }
                   else
                     evas_object_textblock_size_native_get(ep->object, &tw, &th);
@@ -1610,9 +1598,8 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
              tw = th = 0;
              if (!chosen_desc->text.max_x)
                {
-                  eo_do(ep->object,
-                        efl_gfx_size_set(TO_INT(params->eval.w), TO_INT(params->eval.h)),
-                        evas_obj_textblock_size_formatted_get(&tw, &th));
+                  efl_gfx_size_set(ep->object, TO_INT(params->eval.w), TO_INT(params->eval.h));
+                  evas_obj_textblock_size_formatted_get(ep->object, &tw, &th);
                }
              else
                evas_object_textblock_size_native_get(ep->object, &tw, &th);
@@ -1699,7 +1686,7 @@ _edje_part_recalc_single_text(FLOAT_T sc EINA_UNUSED,
      return;
 
    // Note: No need to add padding to that, it's already in the geometry
-   eo_do(ep->object, efl_gfx_size_get(&mw, &mh));
+   efl_gfx_size_get(ep->object, &mw, &mh);
 
    if (chosen_desc->text.max_x)
      {
@@ -1857,10 +1844,9 @@ _edje_part_recalc_single_text(FLOAT_T sc EINA_UNUSED,
                [(ep->part->effect & EDJE_TEXT_EFFECT_MASK_SHADOW_DIRECTION) >> 4];
              EVAS_TEXT_STYLE_SHADOW_DIRECTION_SET(style, shadow);
 
-             eo_do(ep->object,
-                   evas_obj_text_style_set(style),
-                   evas_obj_text_set(text),
-                   efl_gfx_size_get(&tw, &th));
+             evas_obj_text_style_set(ep->object, style);
+             evas_obj_text_set(ep->object, text);
+             efl_gfx_size_get(ep->object, &tw, &th);
              if (chosen_desc->text.max_x)
                {
                   int l, r;
@@ -2578,7 +2564,7 @@ _edje_part_recalc_single_filter(Edje *ed,
    code = _edje_filter_get(ed, filter);
    if (!code)
      {
-        eo_do(obj, efl_gfx_filter_program_set(NULL, NULL));
+        efl_gfx_filter_program_set(obj, NULL, NULL);
         return;
      }
 
@@ -2599,7 +2585,7 @@ _edje_part_recalc_single_filter(Edje *ed,
                 continue;
              if (!data->value)
                {
-                  efl_gfx_filter_data_set(data->name, NULL, EINA_FALSE);
+                  efl_gfx_filter_data_set(obj, data->name, NULL, EINA_FALSE);
                }
              else if (!strncmp(data->value, "color_class('", sizeof("color_class('") - 1))
                {
@@ -2629,7 +2615,7 @@ _edje_part_recalc_single_filter(Edje *ed,
                                           (int) cc->r2, (int) cc->g2, (int) cc->b2, (int) cc->a2,
                                           (int) cc->r3, (int) cc->g3, (int) cc->b3, (int) cc->a3);
                                  buffer[len - 1] = 0;
-                                 efl_gfx_filter_data_set(data->name, buffer, EINA_TRUE);
+                                 efl_gfx_filter_data_set(obj, data->name, buffer, EINA_TRUE);
                               }
                             else
                               {
@@ -2646,10 +2632,10 @@ _edje_part_recalc_single_filter(Edje *ed,
                     }
                }
              else
-                efl_gfx_filter_data_set(data->name, data->value, EINA_FALSE);
+                efl_gfx_filter_data_set(obj, data->name, data->value, EINA_FALSE);
           }
      }
-   efl_gfx_filter_program_set(code, filter->name);
+   efl_gfx_filter_program_set(obj, code, filter->name);
    if (prev_sources != filter_sources)
      {
         /* remove sources that are not there anymore
@@ -2669,7 +2655,7 @@ _edje_part_recalc_single_filter(Edje *ed,
                {
                   part = strchr(src1, ':');
                   if (!part)
-                     efl_gfx_filter_source_set(src1, NULL);
+                     efl_gfx_filter_source_set(obj, src1, NULL);
                   else
                     {
                        char *name = strdup(src1);
@@ -2693,20 +2679,20 @@ _edje_part_recalc_single_filter(Edje *ed,
              else
                 part = src1;
              rp = _edje_real_part_get(ed, part);
-             efl_gfx_filter_source_set(name ? name : part, rp ? rp->object : NULL);
+             efl_gfx_filter_source_set(obj, name ? name : part, rp ? rp->object : NULL);
              free(name);
           }
      }
    /* pass edje state for transitions */
    if (ep->param2)
      {
-        efl_gfx_filter_state_set(chosen_desc->state.name, chosen_desc->state.value,
+        efl_gfx_filter_state_set(obj, chosen_desc->state.name, chosen_desc->state.value,
               ep->param2->description->state.name, ep->param2->description->state.value,
               pos);
      }
    else
      {
-        efl_gfx_filter_state_set(chosen_desc->state.name, chosen_desc->state.value,
+        efl_gfx_filter_state_set(obj, chosen_desc->state.name, chosen_desc->state.value,
               NULL, 0.0, pos);
      }
 }
@@ -2921,10 +2907,9 @@ _edje_part_recalc_single(Edje *ed,
      {
         Evas_Coord lminw = 0, lminh = 0;
 
-        eo_do(ep->object,
-              evas_obj_smart_need_recalculate_set(1),
-              evas_obj_smart_calculate(),
-              evas_obj_size_hint_min_get(&lminw, &lminh));
+        evas_obj_smart_need_recalculate_set(ep->object, 1);
+        evas_obj_smart_calculate(ep->object);
+        evas_obj_size_hint_min_get(ep->object, &lminw, &lminh);
         if (((Edje_Part_Description_Table *)chosen_desc)->table.min.h)
           {
              if (lminw > minw) minw = lminw;
@@ -2940,10 +2925,9 @@ _edje_part_recalc_single(Edje *ed,
      {
         Evas_Coord lminw = 0, lminh = 0;
 
-        eo_do(ep->object,
-              evas_obj_smart_need_recalculate_set(1),
-              evas_obj_smart_calculate(),
-              evas_obj_size_hint_min_get(&lminw, &lminh));
+        evas_obj_smart_need_recalculate_set(ep->object, 1);
+        evas_obj_smart_calculate(ep->object);
+        evas_obj_size_hint_min_get(ep->object, &lminw, &lminh);
         if (((Edje_Part_Description_Box *)chosen_desc)->box.min.h)
           {
              if (lminw > minw) minw = lminw;
@@ -3103,15 +3087,13 @@ _edje_table_recalc_apply(Edje *ed EINA_UNUSED,
                          Edje_Calc_Params *p3 EINA_UNUSED,
                          Edje_Part_Description_Table *chosen_desc)
 {
-   eo_do(ep->object,
-         evas_obj_table_homogeneous_set(chosen_desc->table.homogeneous),
-         evas_obj_table_align_set(TO_DOUBLE(chosen_desc->table.align.x), TO_DOUBLE(chosen_desc->table.align.y)),
-         evas_obj_table_padding_set(chosen_desc->table.padding.x, chosen_desc->table.padding.y));
+   evas_obj_table_homogeneous_set(ep->object, chosen_desc->table.homogeneous);
+   evas_obj_table_align_set(ep->object, TO_DOUBLE(chosen_desc->table.align.x), TO_DOUBLE(chosen_desc->table.align.y));
+   evas_obj_table_padding_set(ep->object, chosen_desc->table.padding.x, chosen_desc->table.padding.y);
    if (evas_object_smart_need_recalculate_get(ep->object))
      {
-        eo_do(ep->object,
-              evas_obj_smart_need_recalculate_set(0),
-              evas_obj_smart_calculate());
+        evas_obj_smart_need_recalculate_set(ep->object, 0);
+        evas_obj_smart_calculate(ep->object);
      }
 }
 
@@ -3173,14 +3155,10 @@ _edje_proxy_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
           }
      }
 
-   eo_do(ep->object,
-         efl_gfx_fill_set(p3->type.common.fill.x,
-                          p3->type.common.fill.y,
-                          p3->type.common.fill.w,
-                          p3->type.common.fill.h),
-         efl_image_smooth_scale_set(p3->smooth),
-         evas_obj_image_source_visible_set(chosen_desc->proxy.source_visible),
-         evas_obj_image_source_clip_set(chosen_desc->proxy.source_clip));
+   efl_gfx_fill_set(ep->object, p3->type.common.fill.x, p3->type.common.fill.y, p3->type.common.fill.w, p3->type.common.fill.h);
+   efl_image_smooth_scale_set(ep->object, p3->smooth);
+   evas_obj_image_source_visible_set(ep->object, chosen_desc->proxy.source_visible);
+   evas_obj_image_source_clip_set(ep->object, chosen_desc->proxy.source_clip);
 }
 
 static void
@@ -3214,10 +3192,8 @@ _edje_image_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
         SET_BORDER_DEFINED(p3->type.common.spec.image.border_scale_by, set->entry->border.scale_by);
      }
 
-   eo_do(ep->object,
-         efl_gfx_fill_set(p3->type.common.fill.x, p3->type.common.fill.y,
-                          p3->type.common.fill.w, p3->type.common.fill.h),
-         efl_image_smooth_scale_set(p3->smooth));
+   efl_gfx_fill_set(ep->object, p3->type.common.fill.x, p3->type.common.fill.y, p3->type.common.fill.w, p3->type.common.fill.h);
+   efl_image_smooth_scale_set(ep->object, p3->smooth);
    if (chosen_desc->image.border.scale)
      {
         if (p3->type.common.spec.image.border_scale_by > FROM_DOUBLE(0.0))
@@ -4609,8 +4585,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
            case EDJE_PART_TYPE_EXTERNAL:
              /* visibility and color have no meaning on SWALLOW and GROUP part. */
 #ifdef HAVE_EPHYSICS
-             eo_do(ep->object,
-                   efl_gfx_size_set(pf->final.w, pf->final.h));
+             efl_gfx_size_set(ep->object, pf->final.w, pf->final.h);
              if ((ep->part->physics_body) && (!ep->body))
                {
                   if (_edje_physics_world_geometry_check(ed->world))
@@ -4627,19 +4602,16 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                     _edje_physics_body_props_update(ed, ep, pf, !pf->physics->ignore_part_pos);
                }
              else
-               eo_do(ep->object,
-                     efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y));
+               efl_gfx_position_set(ep->object, ed->x + pf->final.x, ed->y + pf->final.y);
 #else
-             eo_do(ep->object,
-                   efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
-                   efl_gfx_size_set(pf->final.w, pf->final.h));
+             efl_gfx_position_set(ep->object, ed->x + pf->final.x, ed->y + pf->final.y);
+             efl_gfx_size_set(ep->object, pf->final.w, pf->final.h);
 #endif
 
              if (ep->nested_smart) /* Move, Resize all nested parts */
                {   /* Not really needed but will improve the bounding box evaluation done by Evas */
-                  eo_do(ep->nested_smart,
-                        efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
-                        efl_gfx_size_set(pf->final.w, pf->final.h));
+                  efl_gfx_position_set(ep->nested_smart, ed->x + pf->final.x, ed->y + pf->final.y);
+                  efl_gfx_size_set(ep->nested_smart, pf->final.w, pf->final.h);
                }
              if (ep->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
                _edje_entry_real_part_configure(ed, ep);
@@ -4671,15 +4643,11 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                 Edje_Part_Description_Camera *pd_camera;
 
                 pd_camera = (Edje_Part_Description_Camera*) ep->chosen_description;
-                eo_do(ep->node, camera = evas_canvas3d_node_camera_get());
+                camera = evas_canvas3d_node_camera_get(ep->node);
 
-                eo_do(camera,
-                      evas_canvas3d_camera_projection_perspective_set(pd_camera->camera.camera.fovy, pd_camera->camera.camera.aspect,
-                                                                pd_camera->camera.camera.frustum_near, pd_camera->camera.camera.frustum_far));
+                evas_canvas3d_camera_projection_perspective_set(camera, pd_camera->camera.camera.fovy, pd_camera->camera.camera.aspect, pd_camera->camera.camera.frustum_near, pd_camera->camera.camera.frustum_far);
 
-                eo_do(ep->node,
-                      evas_canvas3d_node_position_set(pf->type.node.point.x, pf->type.node.point.y,
-                                                      pf->type.node.point.z));
+                evas_canvas3d_node_position_set(ep->node, pf->type.node.point.x, pf->type.node.point.y, pf->type.node.point.z);
                 switch (pd_camera->camera.orientation.type)
                   {
                      case EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_NONE:
@@ -4708,28 +4676,15 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                 Edje_Part_Description_Light *pd_light;
 
                 pd_light = (Edje_Part_Description_Light*) ep->chosen_description;
-                eo_do(ep->node, light_node = evas_canvas3d_node_light_get());
-
-                eo_do(light_node,
-                      evas_canvas3d_light_ambient_set((float) pd_light->light.properties.ambient.r / 255,
-                                                      (float) pd_light->light.properties.ambient.g / 255,
-                                                      (float) pd_light->light.properties.ambient.b / 255,
-                                                      (float) pd_light->light.properties.ambient.a / 255),
-                      evas_canvas3d_light_diffuse_set((float) pd_light->light.properties.diffuse.r / 255,
-                                                      (float) pd_light->light.properties.diffuse.g / 255,
-                                                      (float) pd_light->light.properties.diffuse.b / 255,
-                                                      (float) pd_light->light.properties.diffuse.a / 255),
-                      evas_canvas3d_light_specular_set((float) pd_light->light.properties.specular.r / 255,
-                                                       (float) pd_light->light.properties.specular.g / 255,
-                                                       (float) pd_light->light.properties.specular.b / 255,
-                                                       (float) pd_light->light.properties.specular.a / 255),
-                      evas_canvas3d_light_directional_set(EINA_TRUE),
-                      evas_canvas3d_light_projection_perspective_set(pd_light->light.light.fovy, pd_light->light.light.aspect,
-                                                                pd_light->light.light.frustum_near, pd_light->light.light.frustum_far));
-
-                eo_do(ep->node,
-                      evas_canvas3d_node_position_set(pf->type.node.point.x, pf->type.node.point.y,
-                                                      pf->type.node.point.z));
+                light_node = evas_canvas3d_node_light_get(ep->node);
+
+                evas_canvas3d_light_ambient_set(light_node, (float) pd_light->light.properties.ambient.r / 255, (float) pd_light->light.properties.ambient.g / 255, (float) pd_light->light.properties.ambient.b / 255, (float) pd_light->light.properties.ambient.a / 255);
+                evas_canvas3d_light_diffuse_set(light_node, (float) pd_light->light.properties.diffuse.r / 255, (float) pd_light->light.properties.diffuse.g / 255, (float) pd_light->light.properties.diffuse.b / 255, (float) pd_light->light.properties.diffuse.a / 255);
+                evas_canvas3d_light_specular_set(light_node, (float) pd_light->light.properties.specular.r / 255, (float) pd_light->light.properties.specular.g / 255, (float) pd_light->light.properties.specular.b / 255, (float) pd_light->light.properties.specular.a / 255);
+                evas_canvas3d_light_directional_set(light_node, EINA_TRUE);
+                evas_canvas3d_light_projection_perspective_set(light_node, pd_light->light.light.fovy, pd_light->light.light.aspect, pd_light->light.light.frustum_near, pd_light->light.light.frustum_far);
+
+                evas_canvas3d_node_position_set(ep->node, pf->type.node.point.x, pf->type.node.point.y, pf->type.node.point.z);
                 switch (pd_light->light.orientation.type)
                   {
                      case EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_NONE:
@@ -4763,36 +4718,23 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                 const Eina_List *list;
                 Eina_Bool frame_exist;
 
-                eo_do(ep->node, meshes = evas_canvas3d_node_mesh_list_get());
+                meshes = evas_canvas3d_node_mesh_list_get(ep->node);
 
                 EINA_LIST_FOREACH(meshes, list, mesh)
                   {
-                     eo_do(mesh,  material = evas_canvas3d_mesh_frame_material_get(0));
-                     eo_do(material,  texture = evas_canvas3d_material_texture_get(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE));
+                     material = evas_canvas3d_mesh_frame_material_get(mesh, 0);
+                     texture = evas_canvas3d_material_texture_get(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE);
 
                      pd_mesh_node = (Edje_Part_Description_Mesh_Node*) ep->chosen_description;
 
-                     eo_do(material,
-                           evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE),
-                           evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE),
-                           evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE),
-                           evas_canvas3d_material_enable_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, pd_mesh_node->mesh_node.properties.normal),
-                           evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT,
-                                                            (float) pd_mesh_node->mesh_node.properties.ambient.r / 255,
-                                                            (float) pd_mesh_node->mesh_node.properties.ambient.g / 255,
-                                                            (float) pd_mesh_node->mesh_node.properties.ambient.b / 255,
-                                                            (float) pd_mesh_node->mesh_node.properties.ambient.a / 255),
-                           evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE,
-                                                            (float) pd_mesh_node->mesh_node.properties.diffuse.r / 255,
-                                                            (float)  pd_mesh_node->mesh_node.properties.diffuse.g / 255,
-                                                            (float)  pd_mesh_node->mesh_node.properties.diffuse.b / 255,
-                                                            (float)  pd_mesh_node->mesh_node.properties.diffuse.a / 255),
-                           evas_canvas3d_material_color_set(EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR,
-                                                            (float)  pd_mesh_node->mesh_node.properties.specular.r / 255,
-                                                            (float)  pd_mesh_node->mesh_node.properties.specular.g / 255,
-                                                            (float)  pd_mesh_node->mesh_node.properties.specular.b / 255,
-                                                            (float)  pd_mesh_node->mesh_node.properties.specular.a / 255),
-                           evas_canvas3d_material_shininess_set(pd_mesh_node->mesh_node.properties.shininess));
+                     evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, EINA_TRUE);
+                     evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, EINA_TRUE);
+                     evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, EINA_TRUE);
+                     evas_canvas3d_material_enable_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_NORMAL, pd_mesh_node->mesh_node.properties.normal);
+                     evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_AMBIENT, (float) pd_mesh_node->mesh_node.properties.ambient.r / 255, (float) pd_mesh_node->mesh_node.properties.ambient.g / 255, (float) pd_mesh_node->mesh_node.properties.ambient.b / 255, (float) pd_mesh_node->mesh_node.properties.ambient.a / 255);
+                     evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, (float) pd_mesh_node->mesh_node.properties.diffuse.r / 255, (float)  pd_mesh_node->mesh_node.properties.diffuse.g / 255, (float)  pd_mesh_node->mesh_node.properties.diffuse.b / 255, (float)  pd_mesh_node->mesh_node.properties.diffuse.a / 255);
+                     evas_canvas3d_material_color_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_SPECULAR, (float)  pd_mesh_node->mesh_node.properties.specular.r / 255, (float)  pd_mesh_node->mesh_node.properties.specular.g / 255, (float)  pd_mesh_node->mesh_node.properties.specular.b / 255, (float)  pd_mesh_node->mesh_node.properties.specular.a / 255);
+                     evas_canvas3d_material_shininess_set(material, pd_mesh_node->mesh_node.properties.shininess);
 
                      switch(pd_mesh_node->mesh_node.mesh.primitive)
                        {
@@ -4801,18 +4743,14 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                             {
                                Eo *primitive = NULL;
                                primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, ed->base->evas);
-                               eo_do(primitive,
-                                     evas_canvas3d_primitive_form_set(pd_mesh_node->mesh_node.mesh.primitive));
+                               evas_canvas3d_primitive_form_set(primitive, pd_mesh_node->mesh_node.mesh.primitive);
 
-                               eo_do(mesh,
-                                     frame_exist = evas_canvas3d_mesh_frame_exist(pf->type.node.frame));
+                               frame_exist = evas_canvas3d_mesh_frame_exist(mesh, pf->type.node.frame);
                                if (!frame_exist)
                                  {
-                                    eo_do(mesh,
-                                          evas_canvas3d_mesh_frame_material_set(pf->type.node.frame, material));
+                                    evas_canvas3d_mesh_frame_material_set(mesh, pf->type.node.frame, material);
                                  }
-                               eo_do(mesh,
-                                     evas_canvas3d_mesh_from_primitive_set(0, primitive));
+                               evas_canvas3d_mesh_from_primitive_set(mesh, 0, primitive);
                                break;
                             }
                           default:
@@ -4823,8 +4761,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                        {
                           proxy = NULL;
 
-                          eo_do(material,
-                                texture = evas_canvas3d_material_texture_get(EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE));
+                          texture = evas_canvas3d_material_texture_get(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE);
 
                           //proxy = _edje_image_name_find(ed, pd_mesh_node->mesh_node.texture.id);
                           /*FIXME Conflict with function _edje_image_name_find (two places in edje_utils and edje_edit.c,
@@ -4832,31 +4769,21 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                           proxy = ed->file->image_dir->entries[pd_mesh_node->mesh_node.texture.id].entry;
                           if (proxy)
                             {
-                               eo_do(texture,
-                                     evas_canvas3d_texture_file_set(eina_stringshare_add(proxy), NULL),
-                                     evas_canvas3d_texture_filter_set(pd_mesh_node->mesh_node.texture.filter1,
-                                                                pd_mesh_node->mesh_node.texture.filter2),
-                                     evas_canvas3d_texture_wrap_set(pd_mesh_node->mesh_node.texture.wrap1,
-                                                              pd_mesh_node->mesh_node.texture.wrap2));
+                               evas_canvas3d_texture_file_set(texture, eina_stringshare_add(proxy), NULL);
+                               evas_canvas3d_texture_filter_set(texture, pd_mesh_node->mesh_node.texture.filter1, pd_mesh_node->mesh_node.texture.filter2);
+                               evas_canvas3d_texture_wrap_set(texture, pd_mesh_node->mesh_node.texture.wrap1, pd_mesh_node->mesh_node.texture.wrap2);
                             }
                        }
 
-                     eo_do(mesh,
-                           frame_exist = evas_canvas3d_mesh_frame_exist(pf->type.node.frame));
+                     frame_exist = evas_canvas3d_mesh_frame_exist(mesh, pf->type.node.frame);
                      if (!frame_exist)
-                       eo_do(mesh,
-                             evas_canvas3d_mesh_frame_add(pf->type.node.frame),
-                             evas_canvas3d_mesh_frame_material_set(pf->type.node.frame, material));
-                     eo_do(mesh,
-                           evas_canvas3d_mesh_shade_mode_set(pd_mesh_node->mesh_node.properties.shade),
-                           evas_canvas3d_mesh_vertex_assembly_set(pd_mesh_node->mesh_node.mesh.assembly));
-                     eo_do(ep->node,
-                           evas_canvas3d_node_mesh_frame_set(mesh, pf->type.node.frame),
-                           evas_canvas3d_node_scale_set(pf->type.node.scale_3d.x, pf->type.node.scale_3d.y,
-                                                        pf->type.node.scale_3d.z),
-                           evas_canvas3d_node_position_set(pf->type.node.point.x,
-                                                           pf->type.node.point.y,
-                                                           pf->type.node.point.z));
+                       evas_canvas3d_mesh_frame_add(mesh, pf->type.node.frame);
+                       evas_canvas3d_mesh_frame_material_set(mesh, pf->type.node.frame, material);
+                     evas_canvas3d_mesh_shade_mode_set(mesh, pd_mesh_node->mesh_node.properties.shade);
+                     evas_canvas3d_mesh_vertex_assembly_set(mesh, pd_mesh_node->mesh_node.mesh.assembly);
+                     evas_canvas3d_node_mesh_frame_set(ep->node, mesh, pf->type.node.frame);
+                     evas_canvas3d_node_scale_set(ep->node, pf->type.node.scale_3d.x, pf->type.node.scale_3d.y, pf->type.node.scale_3d.z);
+                     evas_canvas3d_node_position_set(ep->node, pf->type.node.point.x, pf->type.node.point.y, pf->type.node.point.z);
                      switch (pd_mesh_node->mesh_node.orientation.type)
                        {
                           case EVAS_CANVAS3D_NODE_ORIENTATION_TYPE_NONE:
@@ -4943,10 +4870,9 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
 
                   if (ep->part->type == EDJE_PART_TYPE_GROUP)
                     vis = evas_object_visible_get(ed->obj);
-                  eo_do(ep->typedata.swallow->swallowed_object,
-                        efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
-                        efl_gfx_size_set(pf->final.w, pf->final.h),
-                        efl_gfx_visible_set(vis));
+                  efl_gfx_position_set(ep->typedata.swallow->swallowed_object, ed->x + pf->final.x, ed->y + pf->final.y);
+                  efl_gfx_size_set(ep->typedata.swallow->swallowed_object, pf->final.w, pf->final.h);
+                  efl_gfx_visible_set(ep->typedata.swallow->swallowed_object, vis);
                }
              else evas_object_hide(ep->typedata.swallow->swallowed_object);
              mo = ep->typedata.swallow->swallowed_object;
@@ -4969,9 +4895,8 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
              else map_obj = mo;
              if (map_obj)
                {
-                  eo_do(map_obj,
-                        evas_obj_map_set(map),
-                        evas_obj_map_enable_set(EINA_TRUE));
+                  evas_obj_map_set(map_obj, map);
+                  evas_obj_map_enable_set(map_obj, EINA_TRUE);
                }
           }
         else
@@ -4982,9 +4907,8 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                {
                   if (ep->nested_smart) /* Cancel map of smart obj holding nested parts */
                     {
-                       eo_do(ep->nested_smart,
-                             evas_obj_map_enable_set(EINA_FALSE),
-                             evas_obj_map_set(NULL));
+                       evas_obj_map_enable_set(ep->nested_smart, EINA_FALSE);
+                       evas_obj_map_set(ep->nested_smart, NULL);
                     }
                   else
                     {
@@ -4993,9 +4917,8 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
                          {
 #endif
                             if (mo)
-                              eo_do(mo,
-                                    evas_obj_map_enable_set(0),
-                                    evas_obj_map_set(NULL));
+                              evas_obj_map_enable_set(mo, 0);
+                              evas_obj_map_set(mo, NULL);
 #ifdef HAVE_EPHYSICS
                          }
 #endif
index 371675e..b68e8b6 100644 (file)
@@ -19,7 +19,7 @@ static inline void
 part_get_geometry(Edje_Real_Part *rp, Evas_Coord *w, Evas_Coord *h)
 {
    if (!rp->part->use_alternate_font_metrics)
-     eo_do(rp->object, efl_gfx_size_get(w, h));
+     efl_gfx_size_get(rp->object, w, h);
    else
      {
         if (w) *w = evas_object_text_horiz_advance_get(rp->object);
@@ -131,11 +131,10 @@ _edje_text_fit_x(Edje *ed, Edje_Real_Part *ep,
 
    if (ep->part->scale) evas_object_scale_set(ep->object, TO_DOUBLE(sc));
 
-   eo_do(ep->object,
-         evas_obj_text_ellipsis_set(chosen_desc->text.min_x ? -1 : params->type.text.ellipsis),
-         efl_text_properties_font_set(font, size),
-         efl_text_set(text),
-         efl_gfx_size_set(sw, sh));
+   evas_obj_text_ellipsis_set(ep->object, chosen_desc->text.min_x ? -1 : params->type.text.ellipsis);
+   efl_text_properties_font_set(ep->object, font, size);
+   efl_text_set(ep->object, text);
+   efl_gfx_size_set(ep->object, sw, sh);
 
    return text;
 }
@@ -321,13 +320,13 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
    ep->typedata.text->cache.in_size = size;
    if (chosen_desc->text.fit_x && (ep->typedata.text->cache.in_str && eina_stringshare_strlen(ep->typedata.text->cache.in_str) > 0))
      {
-        if (inlined_font) efl_text_properties_font_source_set(ed->path);
-        else efl_text_properties_font_source_set(NULL);
+        if (inlined_font) efl_text_properties_font_source_set(ep->object, ed->path);
+        else efl_text_properties_font_source_set(ep->object, NULL);
 
-        if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
+        if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
 
-        efl_text_properties_font_set(font, size);
-        efl_text_set(text);
+        efl_text_properties_font_set(ep->object, font, size);
+        efl_text_set(ep->object, text);
 
         part_get_geometry(ep, &tw, &th);
         /* Find the wanted font size */
@@ -335,12 +334,12 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
           {
              size = (size * sw) / tw;
 
-             if (inlined_font) efl_text_properties_font_source_set(ed->path);
-             else efl_text_properties_font_source_set(NULL);
+             if (inlined_font) efl_text_properties_font_source_set(ep->object, ed->path);
+             else efl_text_properties_font_source_set(ep->object, NULL);
 
-             if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
+             if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
 
-             efl_text_properties_font_set(font, size);
+             efl_text_properties_font_set(ep->object, font, size);
 
              part_get_geometry(ep, &tw, &th);
           }
@@ -357,13 +356,13 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
          */
         if (!chosen_desc->text.fit_x) size = sh;
 
-           if (inlined_font) efl_text_properties_font_source_set(ed->path);
-           else efl_text_properties_font_source_set(NULL);
+           if (inlined_font) efl_text_properties_font_source_set(ep->object, ed->path);
+           else efl_text_properties_font_source_set(ep->object, NULL);
 
-           if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
+           if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
 
-           efl_text_properties_font_set(font, size);
-           efl_text_set(text);
+           efl_text_properties_font_set(ep->object, font, size);
+           efl_text_set(ep->object, text);
         part_get_geometry(ep, &tw, &th);
 
         /* only grow the font size if we didn't already reach the max size
@@ -380,11 +379,11 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
                   size += dif;
                   if (size <= 0) break;
 
-                  if (inlined_font) efl_text_properties_font_source_set(ed->path);
-                  else efl_text_properties_font_source_set(NULL);
+                  if (inlined_font) efl_text_properties_font_source_set(ep->object, ed->path);
+                  else efl_text_properties_font_source_set(ep->object, NULL);
 
-                  if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
-                  efl_text_properties_font_set(font, size);
+                  if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
+                  efl_text_properties_font_set(ep->object, font, size);
 
                   part_get_geometry(ep, &tw, &th);
                   if ((size > 0) && (th == 0)) break;
@@ -395,8 +394,8 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
           {
              int current;
 
-             if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
-             efl_text_properties_font_set(font, 10);
+             if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
+             efl_text_properties_font_set(ep->object, font, 10);
 
              part_get_geometry(ep, &tw, &th);
 
@@ -417,8 +416,8 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
                     {
                        current = (top + bottom) / 2;
 
-                       if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
-                       efl_text_properties_font_set(font, current);
+                       if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
+                       efl_text_properties_font_set(ep->object, font, current);
 
                        part_get_geometry(ep, &tw, &th);
 
@@ -433,8 +432,8 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
                {
                   current++;
 
-                  if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
-                  efl_text_properties_font_set(font, current);
+                  if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
+                  efl_text_properties_font_set(ep->object, font, current);
 
                   part_get_geometry(ep, &tw, &th);
                } while (th <= sh);
@@ -454,8 +453,8 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
    /* Handle ellipsis */
    if (!chosen_desc->text.min_x)
      {
-        if (inlined_font) efl_text_properties_font_source_set(ed->path);
-        else efl_text_properties_font_source_set(NULL);
+        if (inlined_font) efl_text_properties_font_source_set(ep->object, ed->path);
+        else efl_text_properties_font_source_set(ep->object, NULL);
 
         text = _edje_text_fit_x(ed, ep, params, chosen_desc,
                                 text, font, size,
@@ -496,13 +495,13 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
    ep->typedata.text->cache.fit_y = chosen_desc->text.fit_y;
 arrange_text:
 
-   if (inlined_font) efl_text_properties_font_source_set(ed->path);
-   else efl_text_properties_font_source_set(NULL);
+   if (inlined_font) efl_text_properties_font_source_set(ep->object, ed->path);
+   else efl_text_properties_font_source_set(ep->object, NULL);
 
-   if (ep->part->scale) evas_obj_scale_set(TO_DOUBLE(sc));
+   if (ep->part->scale) evas_obj_scale_set(ep->object, TO_DOUBLE(sc));
 
-   efl_text_properties_font_set(font, size);
-   efl_text_set(text);
+   efl_text_properties_font_set(ep->object, font, size);
+   efl_text_set(ep->object, text);
    part_get_geometry(ep, &tw, &th);
 
    /* Handle alignment */
@@ -530,11 +529,8 @@ arrange_text:
 
    if (!calc_only)
      {
-        eo_do(ep->object,
-              efl_gfx_position_set(ed->x + TO_INT(params->eval.x) + ep->typedata.text->offset.x,
-                                   ed->y + TO_INT(params->eval.y) + ep->typedata.text->offset.y);
-
-              efl_gfx_visible_set(params->visible));
+        efl_gfx_position_set(ep->object, ed->x + TO_INT(params->eval.x) + ep->typedata.text->offset.x, ed->y + TO_INT(params->eval.y) + ep->typedata.text->offset.y);
+        efl_gfx_visible_set(ep->object, params->visible);
      }
 
    {
@@ -594,28 +590,14 @@ arrange_text:
 
          case EDJE_TEXT_EFFECT_OUTLINE_SHADOW:
            style = EVAS_TEXT_STYLE_OUTLINE_SHADOW;
-           eo_do(ep->object,
-                 evas_obj_text_outline_color_set((params->type.text.color2.r * params->type.text.color2.a) / 255,
-                                                 (params->type.text.color2.g * params->type.text.color2.a) / 255,
-                                                 (params->type.text.color2.b * params->type.text.color2.a) / 255,
-                                                 params->type.text.color2.a),
-                 evas_obj_text_shadow_color_set((params->type.text.color3.r * params->type.text.color3.a) / 255,
-                                                (params->type.text.color3.g * params->type.text.color3.a) / 255,
-                                                (params->type.text.color3.b * params->type.text.color3.a) / 255,
-                                                params->type.text.color3.a));
+           evas_obj_text_outline_color_set(ep->object, (params->type.text.color2.r * params->type.text.color2.a) / 255, (params->type.text.color2.g * params->type.text.color2.a) / 255, (params->type.text.color2.b * params->type.text.color2.a) / 255, params->type.text.color2.a);
+           evas_obj_text_shadow_color_set(ep->object, (params->type.text.color3.r * params->type.text.color3.a) / 255, (params->type.text.color3.g * params->type.text.color3.a) / 255, (params->type.text.color3.b * params->type.text.color3.a) / 255, params->type.text.color3.a);
            break;
 
          case EDJE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW:
            style = EVAS_TEXT_STYLE_OUTLINE_SOFT_SHADOW;
-           eo_do(ep->object,
-                 evas_obj_text_outline_color_set((params->type.text.color2.r * params->type.text.color2.a) / 255,
-                                                 (params->type.text.color2.g * params->type.text.color2.a) / 255,
-                                                 (params->type.text.color2.b * params->type.text.color2.a) / 255,
-                                                 params->type.text.color2.a),
-                 evas_obj_text_shadow_color_set((params->type.text.color3.r * params->type.text.color3.a) / 255,
-                                                (params->type.text.color3.g * params->type.text.color3.a) / 255,
-                                                (params->type.text.color3.b * params->type.text.color3.a) / 255,
-                                                params->type.text.color3.a));
+           evas_obj_text_outline_color_set(ep->object, (params->type.text.color2.r * params->type.text.color2.a) / 255, (params->type.text.color2.g * params->type.text.color2.a) / 255, (params->type.text.color2.b * params->type.text.color2.a) / 255, params->type.text.color2.a);
+           evas_obj_text_shadow_color_set(ep->object, (params->type.text.color3.r * params->type.text.color3.a) / 255, (params->type.text.color3.g * params->type.text.color3.a) / 255, (params->type.text.color3.b * params->type.text.color3.a) / 255, params->type.text.color3.a);
            break;
 
          case EDJE_TEXT_EFFECT_FAR_SHADOW:
@@ -638,15 +620,8 @@ arrange_text:
 
          case EDJE_TEXT_EFFECT_GLOW:
            style = EVAS_TEXT_STYLE_GLOW;
-           eo_do(ep->object,
-                 evas_obj_text_glow_color_set((params->type.text.color2.r * params->type.text.color2.a) / 255,
-                                              (params->type.text.color2.g * params->type.text.color2.a) / 255,
-                                              (params->type.text.color2.b * params->type.text.color2.a) / 255,
-                                              params->type.text.color2.a),
-                 evas_obj_text_glow2_color_set((params->type.text.color3.r * params->type.text.color3.a) / 255,
-                                               (params->type.text.color3.g * params->type.text.color3.a) / 255,
-                                               (params->type.text.color3.b * params->type.text.color3.a) / 255,
-                                               params->type.text.color3.a));
+           evas_obj_text_glow_color_set(ep->object, (params->type.text.color2.r * params->type.text.color2.a) / 255, (params->type.text.color2.g * params->type.text.color2.a) / 255, (params->type.text.color2.b * params->type.text.color2.a) / 255, params->type.text.color2.a);
+           evas_obj_text_glow2_color_set(ep->object, (params->type.text.color3.r * params->type.text.color3.a) / 255, (params->type.text.color3.g * params->type.text.color3.a) / 255, (params->type.text.color3.b * params->type.text.color3.a) / 255, params->type.text.color3.a);
            break;
 
          default: