function A_$(a,b,c){arguments.length&&this.Init(a,b,c)}AdfObject.createSubclass(A_$,AdfDragSource);A_$.prototype.Init=function(a,b,c){A_$.superclass.Init.call(this,a,b);this.dI=c};A_$.prototype.Init=A_$.prototype.Init;A_$.prototype.isAvailable=function(a,b){AdfAssert.assertPrototype(a,AdfDnDContext);AdfAssert.assertPrototype(b,AdfUIInputEvent);return null!=A_6j(this.getComponent().getPeer(),b)?!0:!1};A_$.prototype.isAvailable=A_$.prototype.isAvailable;
A_$.prototype.GetDragTransferable=function(a){return this.getComponent().getPeer().getTransferable(a,this.dI)};A_$.prototype.GetDragTransferable=A_$.prototype.GetDragTransferable;A_$.prototype.GetDragOverFeedback=function(a){AdfAssert.assertPrototype(a,AdfUIInputEvent);var b=this.getComponent().getPeer();a=A_6j(b,a);if(null==a)return null;a=a.firstChild.cloneNode(!0);A_ak(b,a);return a};A_$.prototype.GetDragOverFeedback=A_$.prototype.GetDragOverFeedback;
A_$.prototype.GetDragOffset=function(a){var b=this.getComponent().getPeer(),c=a.getNativeEventTarget(),b=b.getDomElement(),d=A_0i(c,b),e=c=0,b=AdfAgent.AGENT;null!=d&&(c=d[1],d=b.getElementPosition(c.firstChild),a=b.getMousePosition(a.getNativeEvent()),c=a.x-d.x-c.firstChild.offsetWidth,e=a.y-d.y);return{x:c,y:e}};A_$.prototype.GetDragOffset=A_$.prototype.GetDragOffset;A_$.prototype.dragDropEnd=function(){this.getComponent().getPeer().Bl()};A_$.prototype.dragDropEnd=A_$.prototype.dragDropEnd;