1 #ifndef __THEME_PARSE_H__
2 #define __THEME_PARSE_H__
9 #define YY_DECL int obthemelex(YYSTYPE *yylval, struct parser_control *pc)
12 #define YYLEX_PARAM pc
14 #define MAX_INCLUDE_DEPTH 32
15 #define LINE pc->currline[pc->include_stack_ptr]
17 extern int themedebug;
20 double x1, y1, x2, y2;
56 GHashTable *materials;
95 ObFrameContext context;
96 struct texture texture;
97 struct material *material;
98 struct geometry geometry;
101 struct parser_control {
102 struct yy_buffer_state *include_stack[MAX_INCLUDE_DEPTH];
103 int currline[MAX_INCLUDE_DEPTH];
104 char currfile[MAX_INCLUDE_DEPTH][501];
105 int include_stack_ptr;
106 char error_buf[4096];
107 struct obthemedata *target;
110 void obthemeerror(struct parser_control *pc, char *s);
111 int obtheme_parse(struct obthemedata *td, const char *filename);
112 struct parser_control *parser_init(struct obthemedata *td);
113 int obthemeparse(struct parser_control *);
114 void parser_finish(struct parser_control *);
115 void obtheme_calc_bound(struct theme *thm, char *name, struct boundrect *br);
116 void obtheme_decorate_window(struct theme *thm, char *name);
118 #endif /* __THEME_PARSE_H__ */