# HG changeset patch # User Nicholas Jillings # Date 1453742974 0 # Node ID 79291bafbf5e1c14b3086a9c3428dc726d6a13ae # Parent 5352a2adc6d1b5f1f556b6e6db9c10a12eda031b Added master volume. Ensured playhead, page-count and volume show options are enabled on all test pages. diff -r 5352a2adc6d1 -r 79291bafbf5e example_eval/AB_example.xml --- a/example_eval/AB_example.xml Fri Jan 22 17:03:18 2016 +0000 +++ b/example_eval/AB_example.xml Mon Jan 25 17:29:34 2016 +0000 @@ -49,6 +49,7 @@ + diff -r 5352a2adc6d1 -r 79291bafbf5e example_eval/horizontal_example.xml --- a/example_eval/horizontal_example.xml Fri Jan 22 17:03:18 2016 +0000 +++ b/example_eval/horizontal_example.xml Mon Jan 25 17:29:34 2016 +0000 @@ -15,6 +15,7 @@ + diff -r 5352a2adc6d1 -r 79291bafbf5e example_eval/mushra_example.xml --- a/example_eval/mushra_example.xml Fri Jan 22 17:03:18 2016 +0000 +++ b/example_eval/mushra_example.xml Mon Jan 25 17:29:34 2016 +0000 @@ -49,6 +49,7 @@ + diff -r 5352a2adc6d1 -r 79291bafbf5e example_eval/radio_example.xml --- a/example_eval/radio_example.xml Fri Jan 22 17:03:18 2016 +0000 +++ b/example_eval/radio_example.xml Mon Jan 25 17:29:34 2016 +0000 @@ -13,6 +13,7 @@ + diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/AB.css --- a/interfaces/AB.css Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/AB.css Mon Jan 25 17:29:34 2016 +0000 @@ -72,3 +72,18 @@ position: relative; margin-top: 5px; } + +div.playhead { + margin: 5px; +} + +div#page-count { + float: left; + margin: 0px 5px; +} + +div#master-volume-holder { + position: absolute; + top: 10px; + left: 120px; +} \ No newline at end of file diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/AB.js --- a/interfaces/AB.js Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/AB.js Mon Jan 25 17:29:34 2016 +0000 @@ -108,6 +108,45 @@ { document.getElementById("pageTitle").textContent = interfaceObj.title; } + + var interfaceOptions = specification.interfaces.options.concat(interfaceObj.options); + for (var option of interfaceOptions) + { + if (option.type == "show") + { + switch(option.name) { + case "playhead": + var playbackHolder = document.getElementById('playback-holder'); + if (playbackHolder == null) + { + playbackHolder = document.createElement('div'); + playbackHolder.style.width = "100%"; + playbackHolder.style.float = "left"; + playbackHolder.align = 'center'; + playbackHolder.appendChild(interfaceContext.playhead.object); + feedbackHolder.appendChild(playbackHolder); + } + break; + case "page-count": + var pagecountHolder = document.getElementById('page-count'); + if (pagecountHolder == null) + { + pagecountHolder = document.createElement('div'); + pagecountHolder.id = 'page-count'; + } + pagecountHolder.innerHTML = 'Page '+(audioHolderObject.presentedId+1)+' of '+specification.pages.length+''; + var inject = document.getElementById('interface-buttons'); + inject.appendChild(pagecountHolder); + break; + case "volume": + if (document.getElementById('master-volume-holder') == null) + { + feedbackHolder.appendChild(interfaceContext.volume.object); + } + break; + } + } + } // Populate the comparitor object interfaceContext.comparitor = new Comparitor(audioHolderObject); diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/ape.css --- a/interfaces/ape.css Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/ape.css Mon Jan 25 17:29:34 2016 +0000 @@ -86,3 +86,9 @@ div.comment-box-playing { background-color: #FFDDDD; } + +div#master-volume-holder { + position: absolute; + top: 10px; + left: 120px; +} \ No newline at end of file diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/ape.js --- a/interfaces/ape.js Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/ape.js Mon Jan 25 17:29:34 2016 +0000 @@ -293,33 +293,43 @@ for (var k=0; k'; - var inject = document.getElementById('interface-buttons'); - inject.appendChild(pagecountHolder); - } - } } + + var interfaceList = audioHolderObject.interfaces.concat(specification.interfaces); + for (var k=0; k'; + var inject = document.getElementById('interface-buttons'); + inject.appendChild(pagecountHolder); + } else if (interfaceList[k].options[i].type == 'show' && interfaceList[k].options[i].name == 'volume') { + if (document.getElementById('master-volume-holder') == null) + { + feedbackHolder.appendChild(interfaceContext.volume.object); + } + } + } + } var commentBoxPrefix = "Comment on fragment"; diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/discrete.css --- a/interfaces/discrete.css Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/discrete.css Mon Jan 25 17:29:34 2016 +0000 @@ -107,4 +107,15 @@ div.track-slider-playing { background-color: #FFDDDD; +} + +div#page-count { + float: left; + margin: 0px 5px; +} + +div#master-volume-holder { + position: absolute; + top: 10px; + left: 120px; } \ No newline at end of file diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/discrete.js --- a/interfaces/discrete.js Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/discrete.js Mon Jan 25 17:29:34 2016 +0000 @@ -113,6 +113,7 @@ var id = page.id; var feedbackHolder = document.getElementById('feedbackHolder'); + feedbackHolder.innerHTML = null; var interfaceObj = page.interfaces; if (interfaceObj.length > 1) { @@ -123,6 +124,44 @@ { document.getElementById("pageTitle").textContent = interfaceObj.title; } + + var interfaceOptions = specification.interfaces.options.concat(interfaceObj.options); + for (var option of interfaceOptions) + { + if (option.type == "show") + { + switch(option.name) { + case "playhead": + var playbackHolder = document.getElementById('playback-holder'); + if (playbackHolder == null) + { + playbackHolder = document.createElement('div'); + playbackHolder.style.width = "100%"; + playbackHolder.align = 'center'; + playbackHolder.appendChild(interfaceContext.playhead.object); + feedbackHolder.appendChild(playbackHolder); + } + break; + case "page-count": + var pagecountHolder = document.getElementById('page-count'); + if (pagecountHolder == null) + { + pagecountHolder = document.createElement('div'); + pagecountHolder.id = 'page-count'; + } + pagecountHolder.innerHTML = 'Page '+(page.presentedId+1)+' of '+specification.pages.length+''; + var inject = document.getElementById('interface-buttons'); + inject.appendChild(pagecountHolder); + break; + case "volume": + if (document.getElementById('master-volume-holder') == null) + { + feedbackHolder.appendChild(interfaceContext.volume.object); + } + break; + } + } + } // Delete outside reference var outsideReferenceHolder = document.getElementById('outside-reference'); @@ -131,7 +170,6 @@ } var sliderBox = document.getElementById('slider-holder'); - feedbackHolder.innerHTML = null; sliderBox.innerHTML = null; var commentBoxPrefix = "Comment on track"; diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/horizontal-sliders.css --- a/interfaces/horizontal-sliders.css Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/horizontal-sliders.css Mon Jan 25 17:29:34 2016 +0000 @@ -132,4 +132,15 @@ input.track-slider-not-moved[type=range]::-moz-range-track { background: #aaa; +} + +div#page-count { + float: left; + margin: 0px 5px; +} + +div#master-volume-holder { + position: absolute; + top: 10px; + left: 120px; } \ No newline at end of file diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/horizontal-sliders.js --- a/interfaces/horizontal-sliders.js Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/horizontal-sliders.js Mon Jan 25 17:29:34 2016 +0000 @@ -113,6 +113,8 @@ var id = page.id; var feedbackHolder = document.getElementById('feedbackHolder'); + feedbackHolder.innerHTML = null; + var interfaceObj = page.interfaces; if (interfaceObj.length > 1) { @@ -124,6 +126,44 @@ document.getElementById("pageTitle").textContent = interfaceObj.title; } + var interfaceOptions = specification.interfaces.options.concat(interfaceObj.options); + for (var option of interfaceOptions) + { + if (option.type == "show") + { + switch(option.name) { + case "playhead": + var playbackHolder = document.getElementById('playback-holder'); + if (playbackHolder == null) + { + playbackHolder = document.createElement('div'); + playbackHolder.style.width = "100%"; + playbackHolder.align = 'center'; + playbackHolder.appendChild(interfaceContext.playhead.object); + feedbackHolder.appendChild(playbackHolder); + } + break; + case "page-count": + var pagecountHolder = document.getElementById('page-count'); + if (pagecountHolder == null) + { + pagecountHolder = document.createElement('div'); + pagecountHolder.id = 'page-count'; + } + pagecountHolder.innerHTML = 'Page '+(page.presentedId+1)+' of '+specification.pages.length+''; + var inject = document.getElementById('interface-buttons'); + inject.appendChild(pagecountHolder); + break; + case "volume": + if (document.getElementById('master-volume-holder') == null) + { + feedbackHolder.appendChild(interfaceContext.volume.object); + } + break; + } + } + } + // Delete outside reference var outsideReferenceHolder = document.getElementById('outside-reference'); if (outsideReferenceHolder != null) { @@ -131,7 +171,6 @@ } var sliderBox = document.getElementById('slider-holder'); - feedbackHolder.innerHTML = null; sliderBox.innerHTML = null; var commentBoxPrefix = "Comment on track"; @@ -293,6 +332,7 @@ audioEngineContext.audioObjects[i].interfaceDOM.resize(event); } } + document.getElementById("slider").style.height = totalHeight+50+'px'; drawScale(); } diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/mushra.css --- a/interfaces/mushra.css Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/mushra.css Mon Jan 25 17:29:34 2016 +0000 @@ -134,3 +134,14 @@ margin-top: -1px; margin-left: -4px; } + +div#page-count { + float: left; + margin: 0px 5px; +} + +div#master-volume-holder { + position: absolute; + top: 10px; + left: 120px; +} \ No newline at end of file diff -r 5352a2adc6d1 -r 79291bafbf5e interfaces/mushra.js --- a/interfaces/mushra.js Fri Jan 22 17:03:18 2016 +0000 +++ b/interfaces/mushra.js Mon Jan 25 17:29:34 2016 +0000 @@ -114,6 +114,7 @@ var id = audioHolderObject.id; var feedbackHolder = document.getElementById('feedbackHolder'); + feedbackHolder.innerHTML = null; var interfaceObj = audioHolderObject.interfaces; if (interfaceObj.length > 1) { @@ -124,6 +125,43 @@ { document.getElementById("pageTitle").textContent = interfaceObj.title; } + var interfaceOptions = specification.interfaces.options.concat(interfaceObj.options); + for (var option of interfaceOptions) + { + if (option.type == "show") + { + switch(option.name) { + case "playhead": + var playbackHolder = document.getElementById('playback-holder'); + if (playbackHolder == null) + { + playbackHolder = document.createElement('div'); + playbackHolder.style.width = "100%"; + playbackHolder.align = 'center'; + playbackHolder.appendChild(interfaceContext.playhead.object); + feedbackHolder.appendChild(playbackHolder); + } + break; + case "page-count": + var pagecountHolder = document.getElementById('page-count'); + if (pagecountHolder == null) + { + pagecountHolder = document.createElement('div'); + pagecountHolder.id = 'page-count'; + } + pagecountHolder.innerHTML = 'Page '+(audioHolderObject.presentedId+1)+' of '+specification.pages.length+''; + var inject = document.getElementById('interface-buttons'); + inject.appendChild(pagecountHolder); + break; + case "volume": + if (document.getElementById('master-volume-holder') == null) + { + feedbackHolder.appendChild(interfaceContext.volume.object); + } + break; + } + } + } // Delete outside reference var outsideReferenceHolder = document.getElementById('outside-reference'); @@ -132,7 +170,6 @@ } var sliderBox = document.getElementById('slider-holder'); - feedbackHolder.innerHTML = null; sliderBox.innerHTML = null; var commentBoxPrefix = "Comment on track";