Mercurial > hg > webaudioevaluationtool
changeset 441:4866152611e6 Dev_main
APE: Touch event support
author | Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk> |
---|---|
date | Mon, 21 Dec 2015 17:03:51 +0000 |
parents | 8b46dbef7c47 |
children | e2bcbf7fe030 9c9fd68693b1 |
files | ape.js |
diffstat | 1 files changed, 30 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/ape.js Mon Dec 21 15:02:43 2015 +0100 +++ b/ape.js Mon Dec 21 17:03:51 2015 +0000 @@ -357,10 +357,12 @@ } }); - $('.track-slider').mousedown(function(event) { interfaceContext.selectObject($(this)[0]); }); + $('.track-slider').on('touchstart',null,function(event) { + interfaceContext.selectObject($(this)[0]); + }); $('.track-slider').mousemove(function(event) { event.preventDefault(); @@ -373,6 +375,15 @@ $(obj).css("left",event.clientX + "px"); interfaceContext.moveObject(); }); + + $('.slider').on('touchmove',null,function(event) { + event.preventDefault(); + var obj = interfaceContext.getSelectedObject(); + if (obj == null) {return;} + var move = event.originalEvent.targetTouches[0].clientX - 6; + $(obj).css("left",move + "px"); + interfaceContext.moveObject(); + }); $(document).mouseup(function(event){ event.preventDefault(); @@ -407,6 +418,24 @@ interfaceContext.releaseObject(); }); + $('.slider').on('touchend',null,function(event){ + var obj = interfaceContext.getSelectedObject(); + if (obj == null) {return;} + var interfaceID = obj.parentElement.getAttribute("interfaceid"); + var trackID = obj.getAttribute("trackindex"); + if (interfaceContext.hasSelectedObjectMoved() == true) + { + var l = $(obj).css("left"); + var id = obj.getAttribute('trackIndex'); + var time = audioEngineContext.timer.getTestTime(); + var rate = convSliderPosToRate(obj); + audioEngineContext.audioObjects[id].metric.moved(time,rate); + interfaceContext.interfaceSliders[interfaceID].metrics[trackID].moved(time,rate); + console.log("slider "+id+" moved to "+rate+' ('+time+')'); + } + interfaceContext.releaseObject(); + }); + if (commentShow) { interfaceContext.showCommentBoxes(feedbackHolder,true);