Enlightenment CVS committal
Author : dj2
Project : e17
Module : libs/engrave
Dir : e17/libs/engrave/src/lib
Modified Files:
engrave.l engrave.y
Log Message:
- on/off/true/false/0/1 allowed for booleans now.
- I think I put this everywhere that was needed, but I'm not sure
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/engrave/src/lib/engrave.l,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- engrave.l 24 Oct 2004 23:03:48 -0000 1.4
+++ engrave.l 10 Nov 2004 20:04:38 -0000 1.5
@@ -174,6 +174,12 @@
visible { KEYWORD_RETURN(VISIBLE); }
x { KEYWORD_RETURN(X); }
y { KEYWORD_RETURN(Y); }
+
+[o|O][n|N] { KEYWORD_RETURN(ON); }
+[o|O][f|F][f|F] { KEYWORD_RETURN(OFF); }
+[t|T][r|R][u|U][e|E] { KEYWORD_RETURN(TRUE); }
+[f|F][a|A][l|L][s|S][e|E] { KEYWORD_RETURN(FALSE); }
+
(\"[^\"]*\")* {{
char *tmp = NULL;
int i = 0;
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/engrave/src/lib/engrave.y,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- engrave.y 24 Oct 2004 23:03:48 -0000 1.7
+++ engrave.y 10 Nov 2004 20:04:38 -0000 1.8
@@ -48,6 +48,7 @@
%left TIMES DIVIDE
%left NEG /* negation--unary minus */
%token OPEN_PAREN CLOSE_PAREN DOT INHERIT
+%token ON OFF TRUE FALSE
%type <string> STRING
%type <val> FLOAT
@@ -57,7 +58,7 @@
%type <image_type> image_type
%type <text_effect> effect_type
%type <aspect_pref> aspect_pref_type
-%type <val> exp
+%type <val> exp boolean
%%
@@ -383,12 +384,26 @@
| OUTLINE_SOFT_SHADOW { $$ = ENGRAVE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW; }
;
-mouse_events: MOUSE_EVENTS COLON exp SEMICOLON {
+boolean: ON { $$ = 1; }
+ | OFF { $$ = 0; }
+ | TRUE { $$ = 1; }
+ | FALSE { $$ = 0; }
+ | exp {
+ int i = $1;
+ if ((i != 0) && (i != 1)) {
+ printf("Invalid boolean %d at line %d\n", i,
engrave_lnum);
+ i = 0;
+ }
+ $$ = i;
+ }
+ ;
+
+mouse_events: MOUSE_EVENTS COLON boolean SEMICOLON {
engrave_parse_part_mouse_events((int)$3);
}
;
-repeat_events: REPEAT_EVENTS COLON exp SEMICOLON {
+repeat_events: REPEAT_EVENTS COLON boolean SEMICOLON {
engrave_parse_part_repeat_events((int)$3);
}
;
@@ -462,7 +477,7 @@
}
;
-visible: VISIBLE COLON exp SEMICOLON {
+visible: VISIBLE COLON boolean SEMICOLON {
engrave_parse_state_visible((int)$3);
}
;
@@ -675,7 +690,7 @@
| size
;
-smooth: SMOOTH COLON exp SEMICOLON {
+smooth: SMOOTH COLON boolean SEMICOLON {
engrave_parse_state_fill_smooth((int)$3);
}
;
@@ -755,7 +770,7 @@
}
;
-fit: FIT COLON exp exp SEMICOLON {
+fit: FIT COLON boolean boolean SEMICOLON {
engrave_parse_state_text_fit((int)$3, (int)$4);
}
;
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs