control-freak-ide/Code/client/build/davinci/dojo/dnd/Source.js
plastic-hub-dev-node-saturn 538369cff7 latest
2021-05-12 18:35:18 +02:00

15 lines
6.3 KiB
JavaScript

//>>built
define("dojo/dnd/Source","../_base/array ../_base/declare ../_base/kernel ../_base/lang ../dom-class ../dom-geometry ../mouse ../ready ../topic ./common ./Selector ./Manager xide/mixins/EventedMixin xide/utils".split(" "),function(u,p,v,l,f,m,q,w,x,h,r,g,t,y){var e=p("dojo.dnd.Source",[r,t],{isSource:!0,horizontal:!1,copyOnly:!1,selfCopy:!1,selfAccept:!0,skipForm:!1,withHandles:!1,autoSync:!1,delay:0,accept:["text"],generateText:!0,isCenter:function(){},constructor:function(a,b){l.mixin(this,l.mixin({},
b));a=this.accept;if(a.length)for(this.accept={},b=0;b<a.length;++b)this.accept[a[b]]=1;this.mouseDown=this.isDragging=!1;this.targetBox=this.targetAnchor=null;this.before=!0;this.center=!1;this._lastY=this._lastX=0;this.sourceState="";this.isSource&&f.add(this.node,"dojoDndSource");this.targetState="";this.accept&&f.add(this.node,"dojoDndTarget");this.horizontal&&f.add(this.node,"dojoDndHorizontal");this.subscribe("/dnd/source/over",this.onDndSourceOver);this.subscribe("/dnd/start",this.onDndStart);
this.subscribe("/dnd/drop",this.onDndDrop);this.subscribe("/dnd/cancel",this.onDndCancel)},checkAcceptance:function(a,b){if(this==a)return!this.copyOnly||this.selfAccept;for(var c=0;c<b.length;++c){for(var d=a.getItem(b[c].id).type,n=!1,k=0;k<d.length;++k)if(d[k]in this.accept){n=!0;break}if(!n)return!1}return!0},copyState:function(a,b){if(a)return!0;2>arguments.length&&(b=this==g.manager().target);if(b){if(this.copyOnly)return this.selfCopy}else return this.copyOnly;return!1},destroy:function(){e.superclass.destroy.call(this);
this.targetAnchor=null},onMouseMove:function(a){if(!this.isDragging||"Disabled"!=this.targetState){e.superclass.onMouseMove.call(this,a);var b=g.manager();if(!this.isDragging&&this.mouseDown&&this.isSource&&(Math.abs(a.pageX-this._lastX)>this.delay||Math.abs(a.pageY-this._lastY)>this.delay)){var c=this.getSelectedNodes();c.length&&b.startDrag(this,c,this.copyState(h.getCopyKeyState(a),!0))}if(this.isDragging){var d=c=!1;this.current&&(this.targetBox&&this.targetAnchor==this.current||(this.targetBox=
m.position(this.current,!0)),c=this.horizontal?a.pageX-this.targetBox.x<this.targetBox.w/2==m.isBodyLtr(this.current.ownerDocument):a.pageY-this.targetBox.y<this.targetBox.h/2);d=this.isCenter(a);if(this.current!=this.targetAnchor||c!=this.before||d!=this.center)this._markTargetAnchor(c,d,a),b.canDrop(!this.current||b.source!=this||!(this.current.id in this.selection))}}},onMouseDown:function(a){this.mouseDown||!this._legalMouseDown(a)||this.skipForm&&h.isFormElement(a)||(this.mouseDown=!0,this._lastX=
a.pageX,this._lastY=a.pageY,e.superclass.onMouseDown.call(this,a))},onMouseUp:function(a){this.mouseDown&&(this.mouseDown=!1,e.superclass.onMouseUp.call(this,a))},onDndSourceOver:function(a){this!==a?(this.mouseDown=!1,this.targetAnchor&&this._unmarkTargetAnchor()):this.isDragging&&(a=g.manager(),a.canDrop("Disabled"!=this.targetState&&(!this.current||a.source!=this||!(this.current.id in this.selection))))},onDndStart:function(a,b,c){this.autoSync&&this.sync();this.isSource&&this._changeState("Source",
this==a?c?"Copied":"Moved":"");b=this.accept&&this.checkAcceptance(a,b);this._changeState("Target",b?"":"Disabled");this==a&&g.manager().overSource(this);this.isDragging=!0},onDndDrop:function(a,b,c,d){if(this==d)this.onDrop(a,b,c);this.onDndCancel()},onDndCancel:function(){this.targetAnchor&&(this._unmarkTargetAnchor(),this.targetAnchor=null);this.before=!0;this.mouseDown=this.isDragging=!1;this._changeState("Source","");this._changeState("Target","")},onDrop:function(a,b,c){if(this!=a)this.onDropExternal(a,
b,c);else this.onDropInternal(b,c)},onDropExternal:function(a,b,c){var d=this._normalizedCreator;this._normalizedCreator=this.creator?function(b,c){return d.call(this,a.getItem(b.id).data,c)}:c?function(b){var c=a.getItem(b.id);b=b.cloneNode(!0);b.id=h.getUniqueId();return{node:b,data:c.data,type:c.type}}:function(b){var c=a.getItem(b.id);a.delItem(b.id);return{node:b,data:c.data,type:c.type}};this.selectNone();c||this.creator||a.selectNone();this.insertNodes(!0,b,this.before,this.current);!c&&this.creator&&
a.deleteSelectedNodes();this._normalizedCreator=d},onDropInternal:function(a,b){var c=this._normalizedCreator;if(!(this.current&&this.current.id in this.selection)){if(b)this._normalizedCreator=this.creator?function(a,b){return c.call(this,this.getItem(a.id).data,b)}:function(a){var b=this.getItem(a.id);a=a.cloneNode(!0);a.id=h.getUniqueId();return{node:a,data:b.data,type:b.type}};else{if(!this.current)return;this._normalizedCreator=function(a){var b=this.getItem(a.id);return{node:a,data:b.data,type:b.type}}}this._removeSelection();
this.insertNodes(!0,a,this.before,this.current);this._normalizedCreator=c}},onDraggingOver:function(){},onDraggingOut:function(){},onOverEvent:function(){e.superclass.onOverEvent.call(this);g.manager().overSource(this);if(this.isDragging&&"Disabled"!=this.targetState)this.onDraggingOver()},onOutEvent:function(){e.superclass.onOutEvent.call(this);g.manager().outSource(this);if(this.isDragging&&"Disabled"!=this.targetState)this.onDraggingOut()},_markTargetAnchor:function(a,b,c){if(this.current!=this.targetAnchor||
this.before!==a||this.center!==b)this.targetAnchor&&(this._removeItemClass(this.targetAnchor,this.before?"Before":"After"),this._removeItemClass(this.targetAnchor,"Disallow"),this._removeItemClass(this.targetAnchor,"Center")),this.targetAnchor=this.current,this.targetBox=null,this.before=a,this.center=b,this._before=a,this._center=b,this.targetAnchor&&(b&&(this._removeItemClass(this.targetAnchor,"Before"),this._removeItemClass(this.targetAnchor,"After"),this._addItemClass(this.targetAnchor,"Center")),
!b&&this._addItemClass(this.targetAnchor,this.before?"Before":"After"),b&&!1===c&&this._addItemClass(this.targetAnchor,"Disallow"))},_unmarkTargetAnchor:function(){this.targetAnchor&&(this._removeItemClass(this.targetAnchor,this.before?"Before":"After"),this._removeItemClass(this.targetAnchor,"Center"),this._removeItemClass(this.targetAnchor,"Disallow"),this.targetBox=this.targetAnchor=null,this.center=this.before=!0)},_markDndStatus:function(a){this._changeState("Source",a?"Copied":"Moved")},_legalMouseDown:function(a){if("touchstart"!=
a.type&&!q.isLeft(a))return!1;if(!this.withHandles)return!0;for(a=a.target;a&&a!==this.node;a=a.parentNode){if(f.contains(a,"dojoDndHandle"))return!0;if(f.contains(a,"dojoDndItem")||f.contains(a,"dojoDndIgnore"))break}return!1}});return e});
//# sourceMappingURL=Source.js.map