diff options
author | Robert Bieber <robby@bieberphoto.com> | 2010-07-04 01:39:57 +0000 |
---|---|---|
committer | Robert Bieber <robby@bieberphoto.com> | 2010-07-04 01:39:57 +0000 |
commit | 32ff4e93bdc15a21faf23e46bd2e0eb659bf8f31 (patch) | |
tree | 3e24bc8a53032bece6aa428c71796ca26ee27379 /utils/themeeditor/models | |
parent | d4e7ab7a93a268a9fbb1255b7ca3a39a09c090e2 (diff) | |
download | rockbox-32ff4e93bdc15a21faf23e46bd2e0eb659bf8f31.tar.gz rockbox-32ff4e93bdc15a21faf23e46bd2e0eb659bf8f31.zip |
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
Diffstat (limited to 'utils/themeeditor/models')
-rw-r--r-- | utils/themeeditor/models/parsetreenode.cpp | 8 | ||||
-rw-r--r-- | utils/themeeditor/models/parsetreenode.h | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/utils/themeeditor/models/parsetreenode.cpp b/utils/themeeditor/models/parsetreenode.cpp index 0a500bfbf2..1fda29fec7 100644 --- a/utils/themeeditor/models/parsetreenode.cpp +++ b/utils/themeeditor/models/parsetreenode.cpp | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <iostream> | 31 | #include <iostream> |
32 | 32 | ||
33 | int ParseTreeNode::openConditionals = 0; | 33 | int ParseTreeNode::openConditionals = 0; |
34 | bool ParseTreeNode::breakFlag = false; | ||
34 | 35 | ||
35 | /* Root element constructor */ | 36 | /* Root element constructor */ |
36 | ParseTreeNode::ParseTreeNode(struct skin_element* data) | 37 | ParseTreeNode::ParseTreeNode(struct skin_element* data) |
@@ -520,8 +521,11 @@ void ParseTreeNode::render(const RBRenderInfo &info, RBViewport* viewport, | |||
520 | { | 521 | { |
521 | for(int i = 0; i < children.count(); i++) | 522 | for(int i = 0; i < children.count(); i++) |
522 | children[i]->render(info, viewport); | 523 | children[i]->render(info, viewport); |
523 | if(!noBreak) | 524 | if(!noBreak && !breakFlag) |
524 | viewport->newLine(); | 525 | viewport->newLine(); |
526 | |||
527 | if(breakFlag) | ||
528 | breakFlag = false; | ||
525 | } | 529 | } |
526 | else if(element->type == TEXT) | 530 | else if(element->type == TEXT) |
527 | { | 531 | { |
@@ -531,6 +535,8 @@ void ParseTreeNode::render(const RBRenderInfo &info, RBViewport* viewport, | |||
531 | { | 535 | { |
532 | if(!execTag(info, viewport)) | 536 | if(!execTag(info, viewport)) |
533 | viewport->write(evalTag(info).toString()); | 537 | viewport->write(evalTag(info).toString()); |
538 | if(element->tag->flags & NOBREAK) | ||
539 | breakFlag = true; | ||
534 | } | 540 | } |
535 | else if(element->type == CONDITIONAL) | 541 | else if(element->type == CONDITIONAL) |
536 | { | 542 | { |
diff --git a/utils/themeeditor/models/parsetreenode.h b/utils/themeeditor/models/parsetreenode.h index 82ede05908..ca01ddd5ae 100644 --- a/utils/themeeditor/models/parsetreenode.h +++ b/utils/themeeditor/models/parsetreenode.h | |||
@@ -79,6 +79,7 @@ private: | |||
79 | QList<ParseTreeNode*> children; | 79 | QList<ParseTreeNode*> children; |
80 | 80 | ||
81 | static int openConditionals; | 81 | static int openConditionals; |
82 | static bool breakFlag; | ||
82 | QGraphicsItem* rendered; | 83 | QGraphicsItem* rendered; |
83 | 84 | ||
84 | }; | 85 | }; |