diff options
Diffstat (limited to 'utils/themeeditor/skin_parser.h')
| -rw-r--r-- | utils/themeeditor/skin_parser.h | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/utils/themeeditor/skin_parser.h b/utils/themeeditor/skin_parser.h index d3821c0..c15ba9d 100644 --- a/utils/themeeditor/skin_parser.h +++ b/utils/themeeditor/skin_parser.h @@ -26,14 +26,7 @@ extern "C" { #endif - - -#define SKIN_MAX_MEMORY 1048576 - -/******************************************************************** - ****** A global buffer will be used to store the parse tree ******* - *******************************************************************/ -extern char skin_parse_tree[]; +#include <stdlib.h> /******************************************************************** ****** Data Structures ********************************************* @@ -98,8 +91,11 @@ struct skin_element /* The line on which it's defined in the source file */ int line; - /* Text for comments and plaintext */ - char* text; + /* Placeholder for element data + * TEXT and COMMENT uses it for the text string + * TAG, VIEWPORT, LINE, etc may use it for post parse extra storage + */ + void* data; /* The tag or conditional name */ struct tag_info *tag; @@ -125,6 +121,7 @@ struct skin_element struct skin_element* skin_parse(const char* document); /* Memory management functions */ +char *skin_alloc(size_t size); struct skin_element* skin_alloc_element(); struct skin_element** skin_alloc_children(int count); struct skin_tag_parameter* skin_alloc_params(int count); @@ -132,6 +129,7 @@ char* skin_alloc_string(int length); void skin_free_tree(struct skin_element* root); + #ifdef __cplusplus } #endif |