comparison interfaces/ape.js @ 1317:8790518a8c8a

Minor APE fixes. Dragging now centred rather than edge. Scale markers aligned without window resizing needed.
author Nicholas Jillings <nickjillings@users.noreply.github.com>
date Fri, 29 Jan 2016 11:39:29 +0000
parents 279930a008ca
children c0022a09c4f6
comparison
equal deleted inserted replaced
1316:279930a008ca 1317:8790518a8c8a
375 375
376 $('.slider').mousemove(function(event) { 376 $('.slider').mousemove(function(event) {
377 event.preventDefault(); 377 event.preventDefault();
378 var obj = interfaceContext.getSelectedObject(); 378 var obj = interfaceContext.getSelectedObject();
379 if (obj == null) {return;} 379 if (obj == null) {return;}
380 $(obj).css("left",event.clientX + "px"); 380 $(obj).css("left",event.clientX-6 + "px");
381 interfaceContext.moveObject(); 381 interfaceContext.moveObject();
382 }); 382 });
383 383
384 $('.slider').on('touchmove',null,function(event) { 384 $('.slider').on('touchmove',null,function(event) {
385 event.preventDefault(); 385 event.preventDefault();
500 this.scale.id = 'sliderScaleHolder-'+this.id; 500 this.scale.id = 'sliderScaleHolder-'+this.id;
501 this.scale.align = 'left'; 501 this.scale.align = 'left';
502 this.sliderDOM.appendChild(this.scale); 502 this.sliderDOM.appendChild(this.scale);
503 var positionScale = this.canvas.style.width.substr(0,this.canvas.style.width.length-2); 503 var positionScale = this.canvas.style.width.substr(0,this.canvas.style.width.length-2);
504 var offset = Number(this.canvas.attributes['marginsize'].value); 504 var offset = Number(this.canvas.attributes['marginsize'].value);
505 var dest = document.getElementById("slider-holder").appendChild(this.sliderDOM);
505 for (var scaleObj of interfaceObject.scales) 506 for (var scaleObj of interfaceObject.scales)
506 { 507 {
507 var value = document.createAttribute('value');
508 var position = Number(scaleObj.position)*0.01; 508 var position = Number(scaleObj.position)*0.01;
509 value.nodeValue = position; 509 var pixelPosition = (position*$(this.canvas).width())+offset;
510 var pixelPosition = (position*positionScale)+offset;
511 var scaleDOM = document.createElement('span'); 510 var scaleDOM = document.createElement('span');
512 scaleDOM.textContent = scaleObj.text; 511 scaleDOM.textContent = scaleObj.text;
512 scaleDOM.setAttribute('value',position)
513 this.scale.appendChild(scaleDOM); 513 this.scale.appendChild(scaleDOM);
514 scaleDOM.style.left = Math.floor((pixelPosition-($(scaleDOM).width()/2)))+'px'; 514 scaleDOM.style.left = Math.floor((pixelPosition-($(scaleDOM).width()/2)))+'px';
515 scaleDOM.setAttributeNode(value); 515 }
516 }
517
518 var dest = document.getElementById("slider-holder");
519 dest.appendChild(this.sliderDOM);
520 516
521 this.createSliderObject = function(audioObject) 517 this.createSliderObject = function(audioObject)
522 { 518 {
523 var trackObj = document.createElement('div'); 519 var trackObj = document.createElement('div');
520 trackObj.align = "center";
524 trackObj.className = 'track-slider track-slider-disabled track-slider-'+audioObject.id; 521 trackObj.className = 'track-slider track-slider-disabled track-slider-'+audioObject.id;
525 trackObj.id = 'track-slider-'+this.id+'-'+audioObject.id; 522 trackObj.id = 'track-slider-'+this.id+'-'+audioObject.id;
526 trackObj.setAttribute('trackIndex',audioObject.id); 523 trackObj.setAttribute('trackIndex',audioObject.id);
527 if (this.name != undefined) { 524 if (this.name != undefined) {
528 trackObj.setAttribute('interface-name',this.name); 525 trackObj.setAttribute('interface-name',this.name);