/* Copyright (c) 2004-2016, The JS Foundation All Rights Reserved. Available via Academic Free License >= 2.1 OR the modified BSD license. see: http://dojotoolkit.org/license for details */ //>>built define("dojo/dnd/Moveable",["../_base/array","../_base/declare","../_base/lang","../dom","../dom-class","../Evented","../has","../on","../topic","../touch","./common","./Mover","../_base/window"],function(_1,_2,_3,_4,_5,_6,_7,on,_8,_9,_a,_b,_c){ var _d; var _e=function(){ }; function _f(){ if("touchAction" in document.body.style){ _d="touchAction"; }else{ if("msTouchAction" in document.body.style){ _d="msTouchAction"; } } _e=function _e(_10,_11){ _10.style[_d]=_11; }; _e(arguments[0],arguments[1]); }; if(_7("touch-action")){ _e=_f; } var _12=_2("dojo.dnd.Moveable",[_6],{handle:"",delay:0,skip:false,constructor:function(_13,_14){ this.node=_4.byId(_13); _e(this.node,"none"); if(!_14){ _14={}; } this.handle=_14.handle?_4.byId(_14.handle):null; if(!this.handle){ this.handle=this.node; } this.delay=_14.delay>0?_14.delay:0; this.skip=_14.skip; this.mover=_14.mover?_14.mover:_b; this.events=[on(this.handle,_9.press,_3.hitch(this,"onMouseDown")),on(this.handle,"dragstart",_3.hitch(this,"onSelectStart")),on(this.handle,"selectstart",_3.hitch(this,"onSelectStart"))]; },markupFactory:function(_15,_16,_17){ return new _17(_16,_15); },destroy:function(){ _1.forEach(this.events,function(_18){ _18.remove(); }); _e(this.node,""); this.events=this.node=this.handle=null; },onMouseDown:function(e){ if(this.skip&&_a.isFormElement(e)){ return; } if(this.delay){ this.events.push(on(this.handle,_9.move,_3.hitch(this,"onMouseMove")),on(this.handle.ownerDocument,_9.release,_3.hitch(this,"onMouseUp"))); this._lastX=e.pageX; this._lastY=e.pageY; }else{ this.onDragDetected(e); } e.stopPropagation(); e.preventDefault(); },onMouseMove:function(e){ if(Math.abs(e.pageX-this._lastX)>this.delay||Math.abs(e.pageY-this._lastY)>this.delay){ this.onMouseUp(e); this.onDragDetected(e); } e.stopPropagation(); e.preventDefault(); },onMouseUp:function(e){ for(var i=0;i<2;++i){ this.events.pop().remove(); } e.stopPropagation(); e.preventDefault(); },onSelectStart:function(e){ if(!this.skip||!_a.isFormElement(e)){ e.stopPropagation(); e.preventDefault(); } },onDragDetected:function(e){ new this.mover(this.node,e,this); },onMoveStart:function(_19){ _8.publish("/dnd/move/start",_19); _5.add(_c.body(),"dojoMove"); _5.add(this.node,"dojoMoveItem"); },onMoveStop:function(_1a){ _8.publish("/dnd/move/stop",_1a); _5.remove(_c.body(),"dojoMove"); _5.remove(this.node,"dojoMoveItem"); },onFirstMove:function(){ },onMove:function(_1b,_1c){ this.onMoving(_1b,_1c); var s=_1b.node.style; s.left=_1c.l+"px"; s.top=_1c.t+"px"; this.onMoved(_1b,_1c); },onMoving:function(){ },onMoved:function(){ }}); return _12; });