1
0
Fork 0
forked from len0rd/rockbox

Theme Editor: Applied FS#11389, switched conditional elements to use tag fields along with children, instead of holding the tag as the first child

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26751 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Robert Bieber 2010-06-10 21:02:44 +00:00
parent 6c522624b3
commit 64321adf43
5 changed files with 112 additions and 131 deletions

View file

@ -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