comparison interfaces/mushra.js @ 1356:386415d2a5c1

Added master volume. Ensured playhead, page-count and volume <interfaceoption> show options are enabled on all test pages.
author Nicholas Jillings <nickjillings@users.noreply.github.com>
date Mon, 25 Jan 2016 17:29:34 +0000
parents 9af89ccadb59
children 159b87e5de67
comparison
equal deleted inserted replaced
1355:7e0678b5f87a 1356:386415d2a5c1
112 function loadTest(audioHolderObject) 112 function loadTest(audioHolderObject)
113 { 113 {
114 var id = audioHolderObject.id; 114 var id = audioHolderObject.id;
115 115
116 var feedbackHolder = document.getElementById('feedbackHolder'); 116 var feedbackHolder = document.getElementById('feedbackHolder');
117 feedbackHolder.innerHTML = null;
117 var interfaceObj = audioHolderObject.interfaces; 118 var interfaceObj = audioHolderObject.interfaces;
118 if (interfaceObj.length > 1) 119 if (interfaceObj.length > 1)
119 { 120 {
120 console.log("WARNING - This interface only supports one <interface> node per page. Using first interface node"); 121 console.log("WARNING - This interface only supports one <interface> node per page. Using first interface node");
121 } 122 }
122 interfaceObj = interfaceObj[0]; 123 interfaceObj = interfaceObj[0];
123 if(interfaceObj.title != null) 124 if(interfaceObj.title != null)
124 { 125 {
125 document.getElementById("pageTitle").textContent = interfaceObj.title; 126 document.getElementById("pageTitle").textContent = interfaceObj.title;
126 } 127 }
128 var interfaceOptions = specification.interfaces.options.concat(interfaceObj.options);
129 for (var option of interfaceOptions)
130 {
131 if (option.type == "show")
132 {
133 switch(option.name) {
134 case "playhead":
135 var playbackHolder = document.getElementById('playback-holder');
136 if (playbackHolder == null)
137 {
138 playbackHolder = document.createElement('div');
139 playbackHolder.style.width = "100%";
140 playbackHolder.align = 'center';
141 playbackHolder.appendChild(interfaceContext.playhead.object);
142 feedbackHolder.appendChild(playbackHolder);
143 }
144 break;
145 case "page-count":
146 var pagecountHolder = document.getElementById('page-count');
147 if (pagecountHolder == null)
148 {
149 pagecountHolder = document.createElement('div');
150 pagecountHolder.id = 'page-count';
151 }
152 pagecountHolder.innerHTML = '<span>Page '+(audioHolderObject.presentedId+1)+' of '+specification.pages.length+'</span>';
153 var inject = document.getElementById('interface-buttons');
154 inject.appendChild(pagecountHolder);
155 break;
156 case "volume":
157 if (document.getElementById('master-volume-holder') == null)
158 {
159 feedbackHolder.appendChild(interfaceContext.volume.object);
160 }
161 break;
162 }
163 }
164 }
127 165
128 // Delete outside reference 166 // Delete outside reference
129 var outsideReferenceHolder = document.getElementById('outside-reference'); 167 var outsideReferenceHolder = document.getElementById('outside-reference');
130 if (outsideReferenceHolder != null) { 168 if (outsideReferenceHolder != null) {
131 document.getElementById('interface-buttons').removeChild(outsideReferenceHolder); 169 document.getElementById('interface-buttons').removeChild(outsideReferenceHolder);
132 } 170 }
133 171
134 var sliderBox = document.getElementById('slider-holder'); 172 var sliderBox = document.getElementById('slider-holder');
135 feedbackHolder.innerHTML = null;
136 sliderBox.innerHTML = null; 173 sliderBox.innerHTML = null;
137 174
138 var commentBoxPrefix = "Comment on track"; 175 var commentBoxPrefix = "Comment on track";
139 if (interfaceObj.commentBoxPrefix != undefined) { 176 if (interfaceObj.commentBoxPrefix != undefined) {
140 commentBoxPrefix = interfaceObj.commentBoxPrefix; 177 commentBoxPrefix = interfaceObj.commentBoxPrefix;