Mercurial > hg > webaudioevaluationtool
comparison interfaces/mushra.js @ 2781:c59bcb698684
#138 Added page fixed images to ABX, discrete, horizontal and mushra
author | Nicholas Jillings <nicholas.jillings@mail.bcu.ac.uk> |
---|---|
date | Fri, 21 Apr 2017 15:50:44 +0100 |
parents | c74c698795a9 |
children | cae61c5bbed1 |
comparison
equal
deleted
inserted
replaced
2780:9c031a976321 | 2781:c59bcb698684 |
---|---|
135 | 135 |
136 if (interfaceObj.title !== null) { | 136 if (interfaceObj.title !== null) { |
137 document.getElementById("pageTitle").textContent = interfaceObj.title; | 137 document.getElementById("pageTitle").textContent = interfaceObj.title; |
138 } | 138 } |
139 | 139 |
140 if (interfaceObj.image !== undefined) { | |
141 document.getElementById("testContent").insertBefore(interfaceContext.imageHolder.root, document.getElementById("slider")); | |
142 interfaceContext.imageHolder.setImage(interfaceObj.image); | |
143 } | |
144 | |
140 // Delete outside reference | 145 // Delete outside reference |
141 var outsideReferenceHolder = document.getElementById("outside-reference-holder"); | 146 var outsideReferenceHolder = document.getElementById("outside-reference-holder"); |
142 outsideReferenceHolder.innerHTML = ""; | 147 outsideReferenceHolder.innerHTML = ""; |
143 | 148 |
144 var sliderBox = document.getElementById('slider-holder'); | 149 var sliderBox = document.getElementById('slider-holder'); |
358 this.getValue = function () { | 363 this.getValue = function () { |
359 return this.slider.value; | 364 return this.slider.value; |
360 }; | 365 }; |
361 | 366 |
362 this.resize = function (event) { | 367 this.resize = function (event) { |
363 this.holder.style.height = window.innerHeight - 200 + 'px'; | 368 var imgHeight = 0; |
364 this.slider.style.height = window.innerHeight - 250 + 'px'; | 369 if (document.getElementById("imageController")) { |
370 imgHeight = $(interfaceContext.imageHolder.root).height(); | |
371 } | |
372 this.holder.style.height = window.innerHeight - 200 - imgHeight + 'px'; | |
373 this.slider.style.height = window.innerHeight - 250 - imgHeight + 'px'; | |
365 }; | 374 }; |
366 this.updateLoading = function (progress) { | 375 this.updateLoading = function (progress) { |
367 progress = String(progress); | 376 progress = String(progress); |
368 progress = progress.substr(0, 5); | 377 progress = progress.substr(0, 5); |
369 this.play.textContent = "Loading: " + progress + "%"; | 378 this.play.textContent = "Loading: " + progress + "%"; |
387 | 396 |
388 function resizeWindow(event) { | 397 function resizeWindow(event) { |
389 // Function called when the window has been resized. | 398 // Function called when the window has been resized. |
390 // MANDATORY FUNCTION | 399 // MANDATORY FUNCTION |
391 | 400 |
392 var outsideRef = document.getElementById('outside-reference'); | 401 var outsideRef = document.getElementById('outside-reference'), |
402 imageHeight = 0; | |
403 if (document.getElementById("imageController")) { | |
404 imgHeight = $(interfaceContext.imageHolder.root).height(); | |
405 } | |
393 if (outsideRef !== null) { | 406 if (outsideRef !== null) { |
394 outsideRef.style.left = (window.innerWidth - 120) / 2 + 'px'; | 407 outsideRef.style.left = (window.innerWidth - 120) / 2 + 'px'; |
395 } | 408 } |
396 | 409 |
397 // Auto-align | 410 // Auto-align |
398 var numObj = document.getElementsByClassName('track-slider').length; | 411 var numObj = document.getElementsByClassName('track-slider').length; |
399 var totalWidth = (numObj - 1) * 150 + 100; | 412 var totalWidth = (numObj - 1) * 150 + 100; |
400 var diff = (window.innerWidth - totalWidth) / 2; | 413 var diff = (window.innerWidth - totalWidth) / 2; |
401 document.getElementById('slider').style.height = window.innerHeight - 180 + 'px'; | 414 document.getElementById('slider').style.height = window.innerHeight - 180 - imgHeight + 'px'; |
402 if (diff <= 0) { | 415 if (diff <= 0) { |
403 diff = 0; | 416 diff = 0; |
404 } | 417 } |
405 document.getElementById('slider-holder').style.marginLeft = diff + 'px'; | 418 document.getElementById('slider-holder').style.marginLeft = diff + 'px'; |
406 for (var i in audioEngineContext.audioObjects) { | 419 for (var i in audioEngineContext.audioObjects) { |
407 if (audioEngineContext.audioObjects[i].specification.type != 'outside-reference') { | 420 if (audioEngineContext.audioObjects[i].specification.type != 'outside-reference') { |
408 audioEngineContext.audioObjects[i].interfaceDOM.resize(event); | 421 audioEngineContext.audioObjects[i].interfaceDOM.resize(event); |
409 } | 422 } |
410 } | 423 } |
411 document.getElementById('scale-holder').style.marginLeft = (diff - 100) + 'px'; | 424 document.getElementById('scale-holder').style.marginLeft = (diff - 100) + 'px'; |
412 document.getElementById('scale-text-holder').style.height = window.innerHeight - 194 + 'px'; | 425 document.getElementById('scale-text-holder').style.height = window.innerHeight - imgHeight - 194 + 'px'; |
413 // Cheers edge for making me delete a canvas every resize. | 426 // Cheers edge for making me delete a canvas every resize. |
414 var canvas = document.getElementById('scale-canvas'); | 427 var canvas = document.getElementById('scale-canvas'); |
415 var new_canvas = document.createElement("canvas"); | 428 var new_canvas = document.createElement("canvas"); |
416 new_canvas.id = 'scale-canvas'; | 429 new_canvas.id = 'scale-canvas'; |
417 canvas.parentElement.appendChild(new_canvas); | 430 canvas.parentElement.appendChild(new_canvas); |
418 canvas.parentElement.removeChild(canvas); | 431 canvas.parentElement.removeChild(canvas); |
419 new_canvas.width = totalWidth; | 432 new_canvas.width = totalWidth; |
420 new_canvas.height = window.innerHeight - 194; | 433 new_canvas.height = window.innerHeight - 194 - imgHeight; |
421 drawScale(); | 434 drawScale(); |
422 } | 435 } |
423 | 436 |
424 function drawScale() { | 437 function drawScale() { |
425 var interfaceObj = testState.currentStateMap.interfaces[0]; | 438 var interfaceObj = testState.currentStateMap.interfaces[0]; |