From 8ea056db4b6c60e2e623cd0e79ccb64aea5bec51 Mon Sep 17 00:00:00 2001 From: Robert Bieber Date: Thu, 27 May 2010 19:57:15 +0000 Subject: Theme Editor: Fixed a bug in the subline parser, added a LINE element to contain logical lines, working on data model git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26337 a1c6a512-1295-4272-9138-f99709370657 --- utils/themeeditor/parsetreenode.cpp | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) (limited to 'utils/themeeditor/parsetreenode.cpp') diff --git a/utils/themeeditor/parsetreenode.cpp b/utils/themeeditor/parsetreenode.cpp index 97cb559..77ec897 100644 --- a/utils/themeeditor/parsetreenode.cpp +++ b/utils/themeeditor/parsetreenode.cpp @@ -1,16 +1,34 @@ #include "parsetreenode.h" ParseTreeNode::ParseTreeNode(struct skin_element* data, ParseTreeNode* parent, - bool stop): - parentLink(parent), element(data) + bool tree) { - if(stop) - return; - for(int i = 0; i < 5; i++) - appendChild(new ParseTreeNode(data, this, true)); + if(tree) + { + while(data) + { + appendChild(new ParseTreeNode(data, this, false)); + data = data->next; + } + parentLink = 0; + } + else + { + element = data; + parentLink = parent; + } + } +ParseTreeNode::ParseTreeNode(struct skin_tag_parameter* param, + ParseTreeNode* parent) + :parentLink(parent), element(0), param(param) +{ + +} + + ParseTreeNode::~ParseTreeNode() { qDeleteAll(children); -- cgit v1.1