1
0
Fork 0
forked from len0rd/rockbox

Theme Editor: Implemented a flags column in the tag table, removed the \n flag at the end of the param list and replaced it with a NOBREAK flag to prevent the renderer from inserting a line break at the end of the line. Modified the theme editor's renderer to accomodate this flag

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27268 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Robert Bieber 2010-07-04 01:39:57 +00:00
parent d4e7ab7a93
commit 32ff4e93bd
5 changed files with 171 additions and 189 deletions

View file

@ -31,6 +31,7 @@
#include <iostream>
int ParseTreeNode::openConditionals = 0;
bool ParseTreeNode::breakFlag = false;
/* Root element constructor */
ParseTreeNode::ParseTreeNode(struct skin_element* data)
@ -520,8 +521,11 @@ void ParseTreeNode::render(const RBRenderInfo &info, RBViewport* viewport,
{
for(int i = 0; i < children.count(); i++)
children[i]->render(info, viewport);
if(!noBreak)
if(!noBreak && !breakFlag)
viewport->newLine();
if(breakFlag)
breakFlag = false;
}
else if(element->type == TEXT)
{
@ -531,6 +535,8 @@ void ParseTreeNode::render(const RBRenderInfo &info, RBViewport* viewport,
{
if(!execTag(info, viewport))
viewport->write(evalTag(info).toString());
if(element->tag->flags & NOBREAK)
breakFlag = true;
}
else if(element->type == CONDITIONAL)
{