From 256b9de930d7b92a1408a2d3bb0ca9967c3f0ba7 Mon Sep 17 00:00:00 2001 From: Peter Wehrfritz Date: Fri, 6 Jul 2007 23:33:42 +0000 Subject: [PATCH] add support for glow, far shadow and far soft shadow for text parts SVN revision: 30629 --- legacy/edje/src/lib/edje_calc.c | 6 ++++++ legacy/edje/src/lib/edje_private.h | 5 ++++- legacy/edje/src/lib/edje_text.c | 32 ++++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/legacy/edje/src/lib/edje_calc.c b/legacy/edje/src/lib/edje_calc.c index 39099975d2..98fedff781 100644 --- a/legacy/edje/src/lib/edje_calc.c +++ b/legacy/edje/src/lib/edje_calc.c @@ -735,6 +735,12 @@ _edje_part_recalc_single(Edje *ed, style = EVAS_TEXT_STYLE_OUTLINE_SHADOW; else if (ep->part->effect == EDJE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW) style = EVAS_TEXT_STYLE_OUTLINE_SOFT_SHADOW; + else if (ep->part->effect == EDJE_TEXT_EFFECT_FAR_SHADOW) + style = EVAS_TEXT_STYLE_FAR_SHADOW; + else if (ep->part->effect == EDJE_TEXT_EFFECT_FAR_SOFT_SHADOW) + style = EVAS_TEXT_STYLE_FAR_SOFT_SHADOW; + else if (ep->part->effect == EDJE_TEXT_EFFECT_GLOW) + style = EVAS_TEXT_STYLE_GLOW; evas_object_text_style_set(ep->object, style); evas_object_text_text_set(ep->object, text); evas_object_geometry_get(ep->object, NULL, NULL, &tw, &th); diff --git a/legacy/edje/src/lib/edje_private.h b/legacy/edje/src/lib/edje_private.h index ec2b95bfeb..45a812a530 100644 --- a/legacy/edje/src/lib/edje_private.h +++ b/legacy/edje/src/lib/edje_private.h @@ -143,7 +143,10 @@ typedef struct _Edje_Spectrum_Color Edje_Spectrum_Color; #define EDJE_TEXT_EFFECT_SOFT_SHADOW 5 #define EDJE_TEXT_EFFECT_OUTLINE_SHADOW 6 #define EDJE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW 7 -#define EDJE_TEXT_EFFECT_LAST 8 +#define EDJE_TEXT_EFFECT_FAR_SHADOW 8 +#define EDJE_TEXT_EFFECT_FAR_SOFT_SHADOW 9 +#define EDJE_TEXT_EFFECT_GLOW 10 +#define EDJE_TEXT_EFFECT_LAST 11 #define EDJE_ACTION_TYPE_NONE 0 #define EDJE_ACTION_TYPE_STATE_SET 1 diff --git a/legacy/edje/src/lib/edje_text.c b/legacy/edje/src/lib/edje_text.c index 2b14f8cb57..82e5d2fefe 100644 --- a/legacy/edje/src/lib/edje_text.c +++ b/legacy/edje/src/lib/edje_text.c @@ -579,6 +579,38 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep, (params->color3.b * params->color3.a) / 255, params->color3.a); } + else if (ep->part->effect == EDJE_TEXT_EFFECT_FAR_SHADOW) + { + style = EVAS_TEXT_STYLE_FAR_SHADOW; + evas_object_text_shadow_color_set(ep->object, + (params->color3.r * params->color3.a) / 255, + (params->color3.g * params->color3.a) / 255, + (params->color3.b * params->color3.a) / 255, + params->color3.a); + } + else if (ep->part->effect == EDJE_TEXT_EFFECT_FAR_SOFT_SHADOW) + { + style = EVAS_TEXT_STYLE_FAR_SOFT_SHADOW; + evas_object_text_shadow_color_set(ep->object, + (params->color3.r * params->color3.a) / 255, + (params->color3.g * params->color3.a) / 255, + (params->color3.b * params->color3.a) / 255, + params->color3.a); + } + else if (ep->part->effect == EDJE_TEXT_EFFECT_GLOW) + { + style = EVAS_TEXT_STYLE_GLOW; + evas_object_text_glow_color_set(ep->object, + (params->color2.r * params->color2.a) / 255, + (params->color2.g * params->color2.a) / 255, + (params->color2.b * params->color2.a) / 255, + params->color2.a); + evas_object_text_glow2_color_set(ep->object, + (params->color3.r * params->color3.a) / 255, + (params->color3.g * params->color3.a) / 255, + (params->color3.b * params->color3.a) / 255, + params->color3.a); + } evas_object_text_style_set(ep->object, style); }