efl: add Efl.Gfx.Base and fix inheritance for Evas_Object.

This commit is contained in:
Cedric BAIL 2015-04-03 16:23:17 +02:00
parent c000ee8099
commit c08f8e26a6
13 changed files with 276 additions and 140 deletions

View File

@ -5,6 +5,7 @@ efl_eolian_files = \
lib/efl/interfaces/efl_player.eo \
lib/efl/interfaces/efl_text.eo \
lib/efl/interfaces/efl_text_properties.eo \
lib/efl/interfaces/efl_gfx_base.eo \
lib/efl/interfaces/efl_gfx_shape.eo \
lib/efl/interfaces/efl_gfx_gradient.eo \
lib/efl/interfaces/efl_gfx_gradient_linear.eo \

View File

@ -8,7 +8,8 @@ generated_efl_cxx_bindings = \
lib/efl/interfaces/efl_image.eo.hh \
lib/efl/interfaces/efl_player.eo.hh \
lib/efl/interfaces/efl_text.eo.hh \
lib/efl/interfaces/efl_text_properties.eo.hh
lib/efl/interfaces/efl_text_properties.eo.hh \
lib/efl/interfaces/efl_gfx_base.eo.hh
lib/efl/Efl.hh: $(generated_efl_cxx_bindings)
@echo @ECHO_E@ "#ifndef EFL_CXX_EDJE_HH\n#define EFL_CXX_EDJE_HH\n" > $(top_builddir)/src/lib/efl/Efl.hh

View File

@ -1422,7 +1422,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
if (!chosen_desc->text.min_x)
{
eo_do(ep->object,
evas_obj_size_set(TO_INT(params->eval.w), TO_INT(params->eval.h)),
efl_gfx_size_set(TO_INT(params->eval.w), TO_INT(params->eval.h)),
evas_obj_textblock_size_formatted_get(&tw, &th));
}
else
@ -1450,7 +1450,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc,
if (!chosen_desc->text.max_x)
{
eo_do(ep->object,
evas_obj_size_set(TO_INT(params->eval.w), TO_INT(params->eval.h)),
efl_gfx_size_set(TO_INT(params->eval.w), TO_INT(params->eval.h)),
evas_obj_textblock_size_formatted_get(&tw, &th));
}
else
@ -1538,7 +1538,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, evas_obj_size_get(&mw, &mh));
eo_do(ep->object, efl_gfx_size_get(&mw, &mh));
if (chosen_desc->text.max_x)
{
@ -1698,7 +1698,7 @@ _edje_part_recalc_single_text(FLOAT_T sc EINA_UNUSED,
eo_do(ep->object,
evas_obj_text_style_set(style),
evas_obj_text_set(text),
evas_obj_size_get(&tw, &th));
efl_gfx_size_get(&tw, &th));
if (chosen_desc->text.max_x)
{
int l, r;
@ -3918,7 +3918,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
/* visibility and color have no meaning on SWALLOW and GROUP part. */
#ifdef HAVE_EPHYSICS
eo_do(ep->object,
evas_obj_size_set(pf->final.w, pf->final.h));
efl_gfx_size_set(pf->final.w, pf->final.h));
if ((ep->part->physics_body) && (!ep->body))
{
if (_edje_physics_world_geometry_check(ed->world))
@ -3936,19 +3936,19 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
}
else
eo_do(ep->object,
evas_obj_position_set(ed->x + pf->final.x, ed->y + pf->final.y));
efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y));
#else
eo_do(ep->object,
evas_obj_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
evas_obj_size_set(pf->final.w, pf->final.h));
efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
efl_gfx_size_set(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,
evas_obj_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
evas_obj_size_set(pf->final.w, pf->final.h));
efl_gfx_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
efl_gfx_size_set(pf->final.w, pf->final.h));
}
if (ep->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
_edje_entry_real_part_configure(ed, ep);
@ -4012,9 +4012,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,
evas_obj_position_set(ed->x + pf->final.x, ed->y + pf->final.y),
evas_obj_size_set(pf->final.w, pf->final.h),
evas_obj_visibility_set(vis));
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_visibility_set(vis));
}
else evas_object_hide(ep->typedata.swallow->swallowed_object);
mo = ep->typedata.swallow->swallowed_object;

View File

@ -18,7 +18,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, evas_obj_size_get(w, h));
eo_do(rp->object, efl_gfx_size_get(w, h));
else
{
if (w) *w = evas_object_text_horiz_advance_get(rp->object);
@ -100,7 +100,7 @@ _edje_text_fit_x(Edje *ed, Edje_Real_Part *ep,
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),
evas_obj_size_set(sw, sh));
efl_gfx_size_set(sw, sh));
return text;
}
@ -519,10 +519,10 @@ arrange_text:
if (!calc_only)
{
eo_do(ep->object,
evas_obj_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_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);
evas_obj_visibility_set(params->visible));
efl_gfx_visibility_set(params->visible));
}

View File

@ -123,6 +123,7 @@ typedef enum _Efl_Gfx_Gradient_Spread
#include "interfaces/efl_gfx_utils.h"
#include "interfaces/efl_gfx_base.eo.h"
#include "interfaces/efl_gfx_shape.eo.h"
#include "interfaces/efl_gfx_gradient.eo.h"
#include "interfaces/efl_gfx_gradient_linear.eo.h"

View File

@ -0,0 +1,89 @@
interface Efl.Gfx.Base {
legacy_prefix: null;
eo_prefix: efl_gfx;
properties {
position {
set {
/*@ Move the given Evas object to the given location inside its canvas' viewport. */
}
get {
/*@ Retrieves the position of the given Evas object. */
}
values {
int x; /*@ in */
int y; /*@ in */
}
}
size {
set {
/*@ Changes the size of the given Evas object. */
}
get {
/*@ Retrieves the (rectangular) size of the given Evas object. */
}
values {
int w; /*@ in */
int h; /*@ in */
}
}
color {
set {
/*@
Sets the general/main color of the given Evas object to the given
one.
@see evas_object_color_get() (for an example)
@note These color values are expected to be premultiplied by @p a.
@ingroup Evas_Object_Group_Basic */
}
get {
/*@
Retrieves the general/main color of the given Evas object.
Retrieves the “main” color's RGB component (and alpha channel)
values, <b>which range from 0 to 255</b>. For the alpha channel,
which defines the object's transparency level, 0 means totally
transparent, while 255 means opaque. These color values are
premultiplied by the alpha value.
Usually youll use this attribute for text and rectangle objects,
where the “main” color is their unique one. If set for objects
which themselves have colors, like the images one, those colors get
modulated by this one.
@note All newly created Evas rectangles get the default color
values of <code>255 255 255 255</code> (opaque white).
@note Use @c NULL pointers on the components you're not interested
in: they'll be ignored by the function.
Example:
@dontinclude evas-object-manipulation.c
@skip int alpha, r, g, b;
@until return
See the full @ref Example_Evas_Object_Manipulation "example".
@ingroup Evas_Object_Group_Basic */
}
values {
int r; /*@ The red component of the given color. */
int g; /*@ The green component of the given color. */
int b; /*@ The blue component of the given color. */
int a; /*@ The alpha component of the given color. */
}
}
visibility {
set {
/*@ Makes the given Evas object visible or invisible. */
}
get {
/*@ Retrieves whether or not the given Evas object is visible. */
}
values {
bool v; /*@ @c EINA_TRUE if to make the object visible, @c EINA_FALSE otherwise */
}
}
}
}

View File

@ -11,6 +11,7 @@
#include "interfaces/efl_text.eo.c"
#include "interfaces/efl_text_properties.eo.c"
#include "interfaces/efl_gfx_base.eo.c"
#include "interfaces/efl_gfx_shape.eo.c"
#include "interfaces/efl_gfx_gradient.eo.c"
#include "interfaces/efl_gfx_gradient_linear.eo.c"

View File

@ -568,6 +568,86 @@ EAPI void evas_object_show(Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void evas_object_hide(Evas_Object *obj) EINA_ARG_NONNULL(1);
/**
*
* Sets the general/main color of the given Evas object to the given
* one.
*
* @see evas_object_color_get() (for an example)
* @note These color values are expected to be premultiplied by @p a.
*
* @ingroup Evas_Object_Group_Basic
*
* @param[in] r The red component of the given color.
* @param[in] g The green component of the given color.
* @param[in] b The blue component of the given color.
* @param[in] a The alpha component of the given color.
*/
EAPI void evas_object_color_set(Evas_Object *obj, int r, int g, int b, int a);
/**
*
* Retrieves the general/main color of the given Evas object.
*
* Retrieves the main color's RGB component (and alpha channel)
* values, <b>which range from 0 to 255</b>. For the alpha channel,
* which defines the object's transparency level, 0 means totally
* transparent, while 255 means opaque. These color values are
* premultiplied by the alpha value.
*
* Usually youll use this attribute for text and rectangle objects,
* where the main color is their unique one. If set for objects
* which themselves have colors, like the images one, those colors get
* modulated by this one.
*
* @note All newly created Evas rectangles get the default color
* values of <code>255 255 255 255</code> (opaque white).
*
* @note Use @c NULL pointers on the components you're not interested
* in: they'll be ignored by the function.
*
* Example:
* @dontinclude evas-object-manipulation.c
* @skip int alpha, r, g, b;
* @until return
*
* See the full @ref Example_Evas_Object_Manipulation "example".
*
* @ingroup Evas_Object_Group_Basic
*
* @param[out] r The red component of the given color.
* @param[out] g The green component of the given color.
* @param[out] b The blue component of the given color.
* @param[out] a The alpha component of the given color.
*/
EAPI void evas_object_color_get(const Evas_Object *obj, int *r, int *g, int *b, int *a);
/**
*
* Move the given Evas object to the given location inside its canvas' viewport.
*
* @param[in] x in
* @param[in] y in
*/
EAPI void evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
/**
*
* Changes the size of the given Evas object.
*
* @param[in] w in
* @param[in] h in
*/
EAPI void evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
/**
*
* Retrieves whether or not the given Evas object is visible.
*
*/
EAPI Eina_Bool evas_object_visible_get(const Evas_Object *obj);
#include "canvas/evas_common_interface.eo.legacy.h"
#include "canvas/evas_object.eo.legacy.h"

View File

@ -1,4 +1,4 @@
abstract Evas.Object (Eo.Base, Evas.Common_Interface)
abstract Evas.Object (Eo.Base, Evas.Common_Interface, Efl.Gfx.Base)
{
eo_prefix: evas_obj;
data: Evas_Object_Protected_Data;
@ -80,19 +80,6 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface)
Evas_Coord h; /*@ Integer to use as the preferred height hint. */
}
}
visibility {
set {
/*@ Makes the given Evas object visible or invisible. */
legacy: null;
}
get {
/*@ Retrieves whether or not the given Evas object is visible. */
legacy: evas_object_visible_get;
}
values {
bool v; /*@ @c EINA_TRUE if to make the object visible, @c EINA_FALSE otherwise */
}
}
type {
set {
/*@ Sets the type of the given Evas object. */
@ -745,20 +732,6 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface)
clipper, @c EINA_FALSE otherwise. */
}
}
size {
set {
/*@ Changes the size of the given Evas object. */
legacy: evas_object_resize;
}
get {
/*@ Retrieves the (rectangular) size of the given Evas object. */
legacy: null;
}
values {
Evas_Coord w; /*@ in */
Evas_Coord h; /*@ in */
}
}
focus {
set {
/*@
@ -1031,20 +1004,6 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface)
(@c EINA_FALSE) */
}
}
position {
set {
/*@ Move the given Evas object to the given location inside its canvas' viewport. */
legacy: evas_object_move;
}
get {
/*@ Retrieves the position of the given Evas object. */
legacy: null;
}
values {
Evas_Coord x; /*@ in */
Evas_Coord y; /*@ in */
}
}
anti_alias {
set {
/*@
@ -1062,54 +1021,6 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface)
bool anti_alias; /*@ (@c EINA_TRUE) if the object is to be anti_aliased, (@c EINA_FALSE) otherwise. */
}
}
color {
set {
/*@
Sets the general/main color of the given Evas object to the given
one.
@see evas_object_color_get() (for an example)
@note These color values are expected to be premultiplied by @p a.
@ingroup Evas_Object_Group_Basic */
}
get {
/*@
Retrieves the general/main color of the given Evas object.
Retrieves the “main” color's RGB component (and alpha channel)
values, <b>which range from 0 to 255</b>. For the alpha channel,
which defines the object's transparency level, 0 means totally
transparent, while 255 means opaque. These color values are
premultiplied by the alpha value.
Usually youll use this attribute for text and rectangle objects,
where the “main” color is their unique one. If set for objects
which themselves have colors, like the images one, those colors get
modulated by this one.
@note All newly created Evas rectangles get the default color
values of <code>255 255 255 255</code> (opaque white).
@note Use @c NULL pointers on the components you're not interested
in: they'll be ignored by the function.
Example:
@dontinclude evas-object-manipulation.c
@skip int alpha, r, g, b;
@until return
See the full @ref Example_Evas_Object_Manipulation "example".
@ingroup Evas_Object_Group_Basic */
}
values {
int r; /*@ The red component of the given color. */
int g; /*@ The green component of the given color. */
int b; /*@ The blue component of the given color. */
int a; /*@ The alpha component of the given color. */
}
}
smart_data {
get {
/*@
@ -1522,6 +1433,14 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface)
Eo.Base.destructor;
Eo.Base.dbg_info_get;
Evas.Common_Interface.evas.get;
Efl.Gfx.Base.visibility.set;
Efl.Gfx.Base.visibility.get;
Efl.Gfx.Base.position.set;
Efl.Gfx.Base.position.get;
Efl.Gfx.Base.color.set;
Efl.Gfx.Base.color.get;
Efl.Gfx.Base.size.set;
Efl.Gfx.Base.size.get;
}
events {
mouse,in; /*@ Mouse In Event */

View File

@ -750,12 +750,19 @@ evas_object_geometry_set(Evas_Object *eo_obj, Evas_Coord x, Evas_Coord y, Evas_C
return;
MAGIC_CHECK_END();
eo_do(eo_obj,
evas_obj_position_set(x, y),
evas_obj_size_set(w, h));
efl_gfx_position_set(x, y),
efl_gfx_size_set(w, h));
}
EAPI void
evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{
eo_do((Evas_Object *)obj, efl_gfx_position_set(x, y));
}
EOLIAN static void
_evas_object_position_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, Evas_Coord x, Evas_Coord y)
_evas_object_efl_gfx_base_position_set(Eo *eo_obj, Evas_Object_Protected_Data *obj,
Evas_Coord x, Evas_Coord y)
{
Eina_Bool is, was = EINA_FALSE;
@ -838,8 +845,15 @@ _evas_object_position_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, Evas_Coor
evas_object_inform_call_move(eo_obj, obj);
}
EAPI void
evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
{
eo_do((Evas_Object *)obj, efl_gfx_size_set(w, h));
}
EOLIAN static void
_evas_object_size_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, Evas_Coord w, Evas_Coord h)
_evas_object_efl_gfx_base_size_set(Eo *eo_obj, Evas_Object_Protected_Data *obj,
Evas_Coord w, Evas_Coord h)
{
Eina_Bool is, was = EINA_FALSE;
Eina_Bool pass = EINA_FALSE, freeze = EINA_FALSE;
@ -923,33 +937,37 @@ evas_object_geometry_get(const Evas_Object *eo_obj, Evas_Coord *x, Evas_Coord *y
if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
return;
MAGIC_CHECK_END();
eo_do((Eo *)eo_obj, evas_obj_position_get(x, y), evas_obj_size_get(w, h));
eo_do((Eo *)eo_obj, efl_gfx_position_get(x, y), efl_gfx_size_get(w, h));
}
EOLIAN static void
_evas_object_position_get(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Coord *x, Evas_Coord *y)
_evas_object_efl_gfx_base_position_get(Eo *obj EINA_UNUSED,
Evas_Object_Protected_Data *pd,
Evas_Coord *x, Evas_Coord *y)
{
if ((obj->delete_me) || (!obj->layer))
if ((pd->delete_me) || (!pd->layer))
{
if (x) *x = 0; if (y) *y = 0;
return;
}
if (x) *x = obj->cur->geometry.x;
if (y) *y = obj->cur->geometry.y;
if (x) *x = pd->cur->geometry.x;
if (y) *y = pd->cur->geometry.y;
}
EOLIAN static void
_evas_object_size_get(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Coord *w, Evas_Coord *h)
_evas_object_efl_gfx_base_size_get(Eo *obj EINA_UNUSED,
Evas_Object_Protected_Data *pd,
Evas_Coord *w, Evas_Coord *h)
{
if (obj->delete_me)
if (pd->delete_me)
{
if (w) *w = 0; if (h) *h = 0;
return;
}
if (w) *w = obj->cur->geometry.w;
if (h) *h = obj->cur->geometry.h;
if (w) *w = pd->cur->geometry.w;
if (h) *h = pd->cur->geometry.h;
}
static void
@ -1186,18 +1204,28 @@ evas_object_show(Evas_Object *eo_obj)
MAGIC_CHECK(eo_obj, Evas_Object, MAGIC_OBJ);
return;
MAGIC_CHECK_END();
eo_do(eo_obj, evas_obj_visibility_set(EINA_TRUE));
eo_do(eo_obj, efl_gfx_visibility_set(EINA_TRUE));
}
EAPI void
evas_object_hide(Evas_Object *eo_obj)
{
if (!eo_obj) return;
eo_do(eo_obj, evas_obj_visibility_set(EINA_FALSE));
eo_do(eo_obj, efl_gfx_visibility_set(EINA_FALSE));
}
EAPI Eina_Bool
evas_object_visible_get(const Evas_Object *obj)
{
Eina_Bool ret;
return eo_do_ret((Evas_Object *)obj, ret, efl_gfx_visibility_get());
}
static void
_evas_object_visibility_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, Eina_Bool visible)
_evas_object_efl_gfx_base_visibility_set(Eo *eo_obj,
Evas_Object_Protected_Data *obj,
Eina_Bool visible)
{
evas_object_async_block(obj);
if (visible) _show(eo_obj, obj);
@ -1373,14 +1401,22 @@ _hide(Evas_Object *eo_obj, Evas_Object_Protected_Data *obj)
}
static Eina_Bool
_evas_object_visibility_get(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj)
_evas_object_efl_gfx_base_visibility_get(Eo *eo_obj EINA_UNUSED,
Evas_Object_Protected_Data *obj)
{
if (obj->delete_me) return EINA_FALSE;
return obj->cur->visible;
}
EAPI void
evas_object_color_set(Evas_Object *obj, int r, int g, int b, int a)
{
eo_do((Evas_Object *)obj, efl_gfx_color_set(r, g, b, a));
}
EOLIAN static void
_evas_object_color_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, int r, int g, int b, int a)
_evas_object_efl_gfx_base_color_set(Eo *eo_obj, Evas_Object_Protected_Data *obj,
int r, int g, int b, int a)
{
if (obj->delete_me) return;
if (r > 255) r = 255; if (r < 0) r = 0;
@ -1435,8 +1471,16 @@ _evas_object_color_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, int r, int g
evas_object_change(eo_obj, obj);
}
EAPI void
evas_object_color_get(const Evas_Object *obj, int *r, int *g, int *b, int *a)
{
eo_do((Evas_Object *)obj, efl_gfx_color_get(r, g, b, a));
}
EOLIAN static void
_evas_object_color_get(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, int *r, int *g, int *b, int *a)
_evas_object_efl_gfx_base_color_get(Eo *eo_obj EINA_UNUSED,
Evas_Object_Protected_Data *obj,
int *r, int *g, int *b, int *a)
{
if (obj->delete_me)
{
@ -1546,18 +1590,18 @@ _evas_object_eo_base_dbg_info_get(Eo *eo_obj, Evas_Object_Protected_Data *obj EI
Eina_Bool clipees_has;
eo_do(eo_obj,
visible = evas_obj_visibility_get(),
visible = efl_gfx_visibility_get(),
layer = evas_obj_layer_get(),
name = evas_obj_name_get(),
evas_obj_position_get(&x, &y),
evas_obj_size_get(&w, &h),
efl_gfx_position_get(&x, &y),
efl_gfx_size_get(&w, &h),
scale = evas_obj_scale_get(),
evas_obj_size_hint_min_get(&minw, &minh),
evas_obj_size_hint_max_get(&maxw, &maxh),
evas_obj_size_hint_request_get(&requestw, &requesth),
evas_obj_size_hint_align_get(&dblx, &dbly),
evas_obj_size_hint_weight_get(&dblw, &dblh),
evas_obj_color_get(&r, &g, &b, &a),
efl_gfx_color_get(&r, &g, &b, &a),
focus = evas_obj_focus_get(),
m = evas_obj_pointer_mode_get(),
pass_event = evas_obj_pass_events_get(),

View File

@ -926,7 +926,7 @@ _evas_object_text_layout(Evas_Object *eo_obj, Evas_Text_Data *o, Eina_Unicode *t
}
EOLIAN static void
_evas_text_evas_object_size_set(Eo *eo_obj, Evas_Text_Data *o, Evas_Coord w, Evas_Coord h)
_evas_text_efl_gfx_base_size_set(Eo *eo_obj, Evas_Text_Data *o, int w, int h)
{
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
@ -1235,7 +1235,7 @@ _evas_text_style_set(Eo *eo_obj, Evas_Text_Data *o, Evas_Text_Style_Type style)
h = obj->cur->geometry.h + (t - pt) + (b - pb);
eo_do_super(eo_obj, MY_CLASS,
evas_obj_size_set(w, h));
efl_gfx_size_set(w, h));
evas_object_change(eo_obj, obj);
}
@ -2350,12 +2350,12 @@ _evas_object_text_recalc(Evas_Object *eo_obj, Eina_Unicode *text)
min = w + l + r < obj->cur->geometry.w || obj->cur->geometry.w == 0 ? w + l + r : obj->cur->geometry.w;
eo_do_super(eo_obj, MY_CLASS,
evas_obj_size_set(min, h + t + b));
efl_gfx_size_set(min, h + t + b));
}
else
{
eo_do_super(eo_obj, MY_CLASS,
evas_obj_size_set(w + l + r, h + t + b));
efl_gfx_size_set(w + l + r, h + t + b));
}
//// obj->cur->cache.geometry.validity = 0;
}
@ -2369,7 +2369,7 @@ _evas_object_text_recalc(Evas_Object *eo_obj, Eina_Unicode *text)
evas_filter_program_padding_get(o->cur.filter->chain, &l, &r, &t, &b);
eo_do_super(eo_obj, MY_CLASS,
evas_obj_size_set(0, o->max_ascent + o->max_descent + t + b));
efl_gfx_size_set(0, o->max_ascent + o->max_descent + t + b));
//// obj->cur->cache.geometry.validity = 0;
}
o->last_computed.w = obj->cur->geometry.w;

View File

@ -362,7 +362,7 @@ class Evas.Text (Evas.Object, Efl.Text, Efl.Text_Properties)
Eo.Base.constructor;
Eo.Base.destructor;
Eo.Base.dbg_info_get;
Evas.Object.size.set;
Efl.Gfx.Base.size.set;
Efl.Text.text.set;
Efl.Text.text.get;
Efl.Text_Properties.font.get;

View File

@ -387,14 +387,14 @@ START_TEST(evas_filter_text_render_test)
evas_object_resize(o, 10, 10);
evas_object_show(o);
eo_do(to,
evas_obj_color_set(255, 255, 255, 255),
efl_gfx_color_set(255, 255, 255, 255),
evas_obj_text_filter_source_set(tc->source, o),
evas_obj_text_filter_program_set(tc->code));
}
else
{
eo_do(to,
evas_obj_color_set(255, 255, 255, 255),
efl_gfx_color_set(255, 255, 255, 255),
evas_obj_text_filter_program_set(tc->code));
}