1 #ifndef __THEME_PARSE_H__
2 #define __THEME_PARSE_H__
10 #define YY_DECL int obthemelex(YYSTYPE *yylval, struct parser_control *pc)
13 #define YYLEX_PARAM pc
15 #define MAX_INCLUDE_DEPTH 32
16 #define LINE pc->currline[pc->include_stack_ptr]
18 extern int themedebug;
53 GHashTable *materials;
92 ObFrameContext context;
93 struct texture texture;
94 struct material *material;
95 struct geometry geometry;
98 struct parser_control {
99 struct yy_buffer_state *include_stack[MAX_INCLUDE_DEPTH];
100 int currline[MAX_INCLUDE_DEPTH];
101 char currfile[MAX_INCLUDE_DEPTH][501];
102 int include_stack_ptr;
103 char error_buf[4096];
104 struct obthemedata *target;
107 void obthemeerror(struct parser_control *pc, char *s);
108 int obtheme_parse(struct obthemedata *td, const char *filename);
109 struct parser_control *parser_init(struct obthemedata *td);
110 int obthemeparse(struct parser_control *);
111 void parser_finish(struct parser_control *);
112 void obtheme_calc_bound(struct theme *thm, char *name, Rect *r, Strut *s);
113 void obtheme_decorate_window(struct theme *thm, char *name);
115 #endif /* __THEME_PARSE_H__ */