Hi all,

attached you'll find a patch, that adds support for glow, far shadow and far soft shadow to edje text parts. Let me know if I can commit it or if I have to change something.

pfritz
Index: src/bin/edje_cc_handlers.c
===================================================================
RCS file: /cvs/e/e17/libs/edje/src/bin/edje_cc_handlers.c,v
retrieving revision 1.73
diff -u -r1.73 edje_cc_handlers.c
--- src/bin/edje_cc_handlers.c	27 May 2007 05:28:07 -0000	1.73
+++ src/bin/edje_cc_handlers.c	23 Jun 2007 11:32:01 -0000
@@ -2148,6 +2148,9 @@
 			   "SOFT_SHADOW", EDJE_TEXT_EFFECT_SOFT_SHADOW,
 			   "OUTLINE_SHADOW", EDJE_TEXT_EFFECT_OUTLINE_SHADOW,
 			   "OUTLINE_SOFT_SHADOW", EDJE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW,
+			   "FAR_SHADOW", EDJE_TEXT_EFFECT_FAR_SHADOW,
+			   "FAR_SOFT_SHADOW", EDJE_TEXT_EFFECT_FAR_SOFT_SHADOW,
+			   "GLOW", EDJE_TEXT_EFFECT_GLOW,
 			   NULL);
 }
 
Index: src/lib/edje_calc.c
===================================================================
RCS file: /cvs/e/e17/libs/edje/src/lib/edje_calc.c,v
retrieving revision 1.102
diff -u -r1.102 edje_calc.c
--- src/lib/edje_calc.c	27 May 2007 05:28:07 -0000	1.102
+++ src/lib/edje_calc.c	23 Jun 2007 11:32:01 -0000
@@ -735,6 +735,12 @@
 	       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);
Index: src/lib/edje_private.h
===================================================================
RCS file: /cvs/e/e17/libs/edje/src/lib/edje_private.h,v
retrieving revision 1.125
diff -u -r1.125 edje_private.h
--- src/lib/edje_private.h	27 May 2007 05:28:07 -0000	1.125
+++ src/lib/edje_private.h	23 Jun 2007 11:32:01 -0000
@@ -143,7 +143,10 @@
 #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
Index: src/lib/edje_text.c
===================================================================
RCS file: /cvs/e/e17/libs/edje/src/lib/edje_text.c,v
retrieving revision 1.63
diff -u -r1.63 edje_text.c
--- src/lib/edje_text.c	18 Jun 2007 16:49:11 -0000	1.63
+++ src/lib/edje_text.c	23 Jun 2007 11:32:01 -0000
@@ -579,6 +579,38 @@
 					       (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);
      }
 
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to