diff options
Diffstat (limited to 'utils/themeeditor/models/parsetreenode.cpp')
-rw-r--r-- | utils/themeeditor/models/parsetreenode.cpp | 8 |
1 files changed, 7 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 | { |