comparison ape.js @ 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 44a6fe06e71a
comparison
equal deleted inserted replaced
440:8b46dbef7c47 441:4866152611e6
355 { 355 {
356 audioObject.interfaceDOM.enable(); 356 audioObject.interfaceDOM.enable();
357 } 357 }
358 358
359 }); 359 });
360
361 $('.track-slider').mousedown(function(event) { 360 $('.track-slider').mousedown(function(event) {
361 interfaceContext.selectObject($(this)[0]);
362 });
363 $('.track-slider').on('touchstart',null,function(event) {
362 interfaceContext.selectObject($(this)[0]); 364 interfaceContext.selectObject($(this)[0]);
363 }); 365 });
364 366
365 $('.track-slider').mousemove(function(event) { 367 $('.track-slider').mousemove(function(event) {
366 event.preventDefault(); 368 event.preventDefault();
369 $('.slider').mousemove(function(event) { 371 $('.slider').mousemove(function(event) {
370 event.preventDefault(); 372 event.preventDefault();
371 var obj = interfaceContext.getSelectedObject(); 373 var obj = interfaceContext.getSelectedObject();
372 if (obj == null) {return;} 374 if (obj == null) {return;}
373 $(obj).css("left",event.clientX + "px"); 375 $(obj).css("left",event.clientX + "px");
376 interfaceContext.moveObject();
377 });
378
379 $('.slider').on('touchmove',null,function(event) {
380 event.preventDefault();
381 var obj = interfaceContext.getSelectedObject();
382 if (obj == null) {return;}
383 var move = event.originalEvent.targetTouches[0].clientX - 6;
384 $(obj).css("left",move + "px");
374 interfaceContext.moveObject(); 385 interfaceContext.moveObject();
375 }); 386 });
376 387
377 $(document).mouseup(function(event){ 388 $(document).mouseup(function(event){
378 event.preventDefault(); 389 event.preventDefault();
401 $('.comment-div').removeClass('comment-box-playing'); 412 $('.comment-div').removeClass('comment-box-playing');
402 $('#comment-div-'+id).addClass('comment-box-playing'); 413 $('#comment-div-'+id).addClass('comment-box-playing');
403 var outsideReference = document.getElementById('outside-reference'); 414 var outsideReference = document.getElementById('outside-reference');
404 if (outsideReference != undefined) 415 if (outsideReference != undefined)
405 $(outsideReference).removeClass('track-slider-playing'); 416 $(outsideReference).removeClass('track-slider-playing');
417 }
418 interfaceContext.releaseObject();
419 });
420
421 $('.slider').on('touchend',null,function(event){
422 var obj = interfaceContext.getSelectedObject();
423 if (obj == null) {return;}
424 var interfaceID = obj.parentElement.getAttribute("interfaceid");
425 var trackID = obj.getAttribute("trackindex");
426 if (interfaceContext.hasSelectedObjectMoved() == true)
427 {
428 var l = $(obj).css("left");
429 var id = obj.getAttribute('trackIndex');
430 var time = audioEngineContext.timer.getTestTime();
431 var rate = convSliderPosToRate(obj);
432 audioEngineContext.audioObjects[id].metric.moved(time,rate);
433 interfaceContext.interfaceSliders[interfaceID].metrics[trackID].moved(time,rate);
434 console.log("slider "+id+" moved to "+rate+' ('+time+')');
406 } 435 }
407 interfaceContext.releaseObject(); 436 interfaceContext.releaseObject();
408 }); 437 });
409 438
410 439