Skip to content

Commit

Permalink
Better binary tree representation, which needs adding level5 style.
Browse files Browse the repository at this point in the history
Signed-off-by: TB <mathzeta2@gmail.com>
  • Loading branch information
mathzeta2@gmail.com authored and jag3773 committed Jul 14, 2017
1 parent ee8b93b commit 37be643
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 11 deletions.
13 changes: 10 additions & 3 deletions structure/OshbVerse/Script/VerseMarkupHorizontal.js
Expand Up @@ -26,10 +26,12 @@ verseMarkupHorizontal = function() {
return node;
}
// Recursive function to mark up blocks in a binary tree.
// TODO: Implement Depth layout. Also maybe different thickness of border by level.
function blockElementBT(lines, level) {
var limit = lines.length, span = spanElement('level' + level);
var limit = lines.length;
if (limit === 1) {
//TODO Nest span elements, up to level 3.
var span = spanElement('level' + (level + 1));
span.appendChild(nestElement(lines[0].line, level));
return span;
}
Expand All @@ -41,11 +43,16 @@ verseMarkupHorizontal = function() {
break;
}
}
var span = spanElement('level' + level);
span.appendChild(blockElementBT(lines.slice(0, i), level + 1));
if (i != limit) {
if (i < limit) {
span.appendChild(blockElementBT(lines.slice(i, limit), level));
}
return span;
if (span.childElementCount === 1) {
return span.firstChild;
} else {
return span;
}
}
// Recursive function to mark up blocks cleaner than binary tree.
function blockElementClean(lines, level) {
Expand Down
12 changes: 9 additions & 3 deletions structure/OshbVerse/Script/VerseMarkupVertical.js
Expand Up @@ -19,8 +19,9 @@ verseMarkupVertical = function() {
}
// Recursive function to mark up blocks in a binary tree.
function blockElementBT(lines, level) {
var limit = lines.length, div = divElement('level' + level);
var limit = lines.length;
if (limit === 1) {
var div = divElement('level' + (level + 1));
div.appendChild(lines[0].line);
return div;
}
Expand All @@ -32,11 +33,16 @@ verseMarkupVertical = function() {
break;
}
}
var div = divElement('level' + level);
div.appendChild(blockElementBT(lines.slice(0, i), level + 1));
if (i != limit) {
if (i < limit) {
div.appendChild(blockElementBT(lines.slice(i, limit), level));
}
return div;
if (div.childElementCount === 1) {
return div.firstChild;
} else {
return div;
}
}
// Recursive function to mark up blocks cleaner than binary tree.
function blockElementClean(lines, level) {
Expand Down
10 changes: 5 additions & 5 deletions structure/OshbVerse/Style/PassageHorizontal.css
Expand Up @@ -13,7 +13,7 @@ section.passage
}
/* Structure Styles */
/*section.passage span[class^="level"] [> Is this better? <]*/
section.passage span.level0, section.passage span.level1, section.passage span.level2, section.passage span.level3, section.passage span.level4
section.passage span.level0, section.passage span.level1, section.passage span.level2, section.passage span.level3, section.passage span.level4, section.passage span.level5
{
border: 2px solid transparent;
border-top: none;
Expand All @@ -30,24 +30,24 @@ section.passage span.level0
}
section.passage span.level1
{
/*border-color: #f84;*/
border-color: #2d1;
}
section.passage span.level2
{
/*border-color: #ff0;*/
border-color: #d32;
}
section.passage span.level3
{
/*border-color: #480;*/
border-color: #48c;
}
section.passage span.level4
{
/*border-color: #48c;*/
border-color: #ee3;
}
section.passage span.level5
{
border-color: #e4a;
}
section.passage span.pad
{
margin: 1px;
Expand Down
4 changes: 4 additions & 0 deletions structure/OshbVerse/Style/PassageVertical.css
Expand Up @@ -41,3 +41,7 @@ section#display div.level4
{
border-color: #ee3;
}
section#display div.level5
{
border-color: #e4a;
}

0 comments on commit 37be643

Please sign in to comment.