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];