Type.registerNamespace("Sys.Extended.UI"),Sys.Extended.UI.IDragSource=function(){},Sys.Extended.UI.IDragSource.prototype={get_dragDataType:function(){throw Error.notImplemented()},getDragData:function(){throw Error.notImplemented()},get_dragMode:function(){throw Error.notImplemented()},onDragStart:function(){throw Error.notImplemented()},onDrag:function(){throw Error.notImplemented()},onDragEnd:function(){throw Error.notImplemented()}},Sys.Extended.UI.IDragSource.registerInterface("Sys.Extended.UI.IDragSource"),Sys.Extended.UI.IDropTarget=function(){},Sys.Extended.UI.IDropTarget.prototype={get_dropTargetElement:function(){throw Error.notImplemented()},canDrop:function(){throw Error.notImplemented()},drop:function(){throw Error.notImplemented()},onDragEnterTarget:function(){throw Error.notImplemented()},onDragLeaveTarget:function(){throw Error.notImplemented()},onDragInTarget:function(){throw Error.notImplemented()}},Sys.Extended.UI.IDropTarget.registerInterface("Sys.Extended.UI.IDropTarget"),Sys.Extended.UI.DragMode=function(){throw Error.invalidOperation()},Sys.Extended.UI.DragMode.prototype={Copy:0,Move:1},Sys.Extended.UI.DragMode.registerEnum("Sys.Extended.UI.DragMode"),Sys.Extended.UI.DragDropEventArgs=function(e,t,r){this._dragMode=e,this._dataType=t,this._data=r},Sys.Extended.UI.DragDropEventArgs.prototype={get_dragMode:function(){return this._dragMode||null},get_dragDataType:function(){return this._dataType||null},get_dragData:function(){return this._data||null}},Sys.Extended.UI.DragDropEventArgs.registerClass("Sys.Extended.UI.DragDropEventArgs"),Sys.Extended.UI._DragDropManager=function(){this._instance=null,this._events=null},Sys.Extended.UI._DragDropManager.prototype={add_dragStart:function(e){this.get_events().addHandler("dragStart",e)},remove_dragStart:function(e){this.get_events().removeHandler("dragStart",e)},get_events:function(){return this._events||(this._events=new Sys.EventHandlerList),this._events},add_dragStop:function(e){this.get_events().addHandler("dragStop",e)},remove_dragStop:function(e){this.get_events().removeHandler("dragStop",e)},_getInstance:function(){return this._instance||(Sys.Browser.agent===Sys.Browser.InternetExplorer?this._instance=new Sys.Extended.UI.IEDragDropManager:this._instance=new Sys.Extended.UI.GenericDragDropManager,this._instance.initialize(),this._instance.add_dragStart(Function.createDelegate(this,this._raiseDragStart)),this._instance.add_dragStop(Function.createDelegate(this,this._raiseDragStop))),this._instance},startDragDrop:function(e,t,r,n){this._getInstance().startDragDrop(e,t,r,n)},registerDropTarget:function(e){this._getInstance().registerDropTarget(e)},unregisterDropTarget:function(e){this._getInstance().unregisterDropTarget(e)},dispose:function(){delete this._events,Sys.Application.unregisterDisposableObject(this),Sys.Application.removeComponent(this)},_raiseDragStart:function(e,t){var r=this.get_events().getHandler("dragStart");r&&r(this,t)},_raiseDragStop:function(e,t){var r=this.get_events().getHandler("dragStop");r&&r(this,t)}},Sys.Extended.UI._DragDropManager.registerClass("Sys.Extended.UI._DragDropManager"),Sys.Extended.UI.DragDropManager=new Sys.Extended.UI._DragDropManager,Sys.Extended.UI.IEDragDropManager=function(){Sys.Extended.UI.IEDragDropManager.initializeBase(this),this._dropTargets=null,this._radius=10,this._useBuiltInDragAndDropFunctions=!0,this._activeDragVisual=null,this._activeContext=null,this._activeDragSource=null,this._underlyingTarget=null,this._oldOffset=null,this._potentialTarget=null,this._isDragging=!1,this._mouseUpHandler=null,this._documentMouseMoveHandler=null,this._documentDragOverHandler=null,this._dragStartHandler=null,this._mouseMoveHandler=null,this._dragEnterHandler=null,this._dragLeaveHandler=null,this._dragOverHandler=null,this._dropHandler=null},Sys.Extended.UI.IEDragDropManager.prototype={add_dragStart:function(e){this.get_events().addHandler("dragStart",e)},remove_dragStart:function(e){this.get_events().removeHandler("dragStart",e)},add_dragStop:function(e){this.get_events().addHandler("dragStop",e)},remove_dragStop:function(e){this.get_events().removeHandler("dragStop",e)},initialize:function(){Sys.Extended.UI.IEDragDropManager.callBaseMethod(this,"initialize"),this._mouseUpHandler=Function.createDelegate(this,this._onMouseUp),this._documentMouseMoveHandler=Function.createDelegate(this,this._onDocumentMouseMove),this._documentDragOverHandler=Function.createDelegate(this,this._onDocumentDragOver),this._dragStartHandler=Function.createDelegate(this,this._onDragStart),this._mouseMoveHandler=Function.createDelegate(this,this._onMouseMove),this._dragEnterHandler=Function.createDelegate(this,this._onDragEnter),this._dragLeaveHandler=Function.createDelegate(this,this._onDragLeave),this._dragOverHandler=Function.createDelegate(this,this._onDragOver),this._dropHandler=Function.createDelegate(this,this._onDrop)},dispose:function(){if(this._dropTargets){for(var e=0;e0&&(this._scrollDeltaX=this._scrollDeltaY=0,e.clientXt.width-this._scrollEdgeConst&&(this._scrollDeltaX=this._scrollByConst),e.clientYt.height-this._scrollEdgeConst&&(this._scrollDeltaY=this._scrollByConst),0!=this._scrollDeltaX||0!=this._scrollDeltaY?this._scroller.set_enabled(!0):this._scroller.set_enabled(!1))},_onScrollerTick:function(){var e=document.body.scrollLeft,t=document.body.scrollTop;window.scrollBy(this._scrollDeltaX,this._scrollDeltaY);var r=document.body.scrollLeft,n=document.body.scrollTop,a=this._activeDragVisual,o={x:parseInt(a.style.left)+(r-e),y:parseInt(a.style.top)+(n-t)};$common.setLocation(a,o)}},Sys.Extended.UI.GenericDragDropManager.registerClass("Sys.Extended.UI.GenericDragDropManager",Sys.Extended.UI.IEDragDropManager);