diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2010-06-13 14:42:09 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2010-06-13 14:42:09 +0000 |
commit | 17c348432553d80089014cabaf8784f16519faa8 (patch) | |
tree | 7a2b7f4ba000f4df94c7a60bd099a1baa9a60c1a /utils/newparser/skin_render.c | |
parent | a8c073216d63abf2ee42ef4f42e16d109c3f5791 (diff) | |
download | rockbox-17c348432553d80089014cabaf8784f16519faa8.tar.gz rockbox-17c348432553d80089014cabaf8784f16519faa8.zip |
Start dealing with LINE elements... setup a flag which lets tags tell the renderer to not start a new line in the viewport (i.e %we/d/i %X/x/xd etc)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26833 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/newparser/skin_render.c')
-rw-r--r-- | utils/newparser/skin_render.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/utils/newparser/skin_render.c b/utils/newparser/skin_render.c index 03324665a1..8c581134a8 100644 --- a/utils/newparser/skin_render.c +++ b/utils/newparser/skin_render.c | |||
@@ -94,11 +94,12 @@ void skin_render_alternator(struct skin_element* alternator, | |||
94 | buf, buf_size, line_number); | 94 | buf, buf_size, line_number); |
95 | } | 95 | } |
96 | 96 | ||
97 | void skin_render_viewport(struct skin_element* line, bool draw_tags) | 97 | void skin_render_viewport(struct skin_element* viewport, bool draw_tags) |
98 | { | 98 | { |
99 | int line_number = 0; | 99 | int line_number = 0; |
100 | char linebuf[MAX_LINE]; | 100 | char linebuf[MAX_LINE]; |
101 | skin_render_func func = skin_render_line; | 101 | skin_render_func func = skin_render_line; |
102 | struct skin_element* line = viewport; | ||
102 | while (line) | 103 | while (line) |
103 | { | 104 | { |
104 | linebuf[0] = '\0'; | 105 | linebuf[0] = '\0'; |
@@ -107,10 +108,14 @@ void skin_render_viewport(struct skin_element* line, bool draw_tags) | |||
107 | else if (line->type == LINE) | 108 | else if (line->type == LINE) |
108 | func = skin_render_line; | 109 | func = skin_render_line; |
109 | 110 | ||
110 | func (line, linebuf, sizeof(linebuf), line_number); | 111 | func(line, linebuf, sizeof(linebuf), line_number); |
111 | if (draw_tags) | 112 | if (draw_tags) |
112 | { | 113 | { |
113 | printf("%s\n", linebuf); | 114 | printf("%s", linebuf); |
115 | if (!((struct line*)line->data)->eat_line_ending) | ||
116 | { | ||
117 | printf("\n"); | ||
118 | } | ||
114 | } | 119 | } |
115 | line_number++; | 120 | line_number++; |
116 | line = line->next; | 121 | line = line->next; |