//>>built define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/_base/html dojo/_base/window ../_Plugin ../../_RowSelector ../../EnhancedGrid".split(" "),function(h,m,n,k,p,q,r,t){h=h("dojox.grid.enhanced.plugins.AutoScroll",q,{name:"autoScroll",autoScrollInterval:1E3,autoScrollMargin:30,constructor:function(b,a){this.grid=b;this._scrolling=this.readyForAutoScroll=!1;a=n.isObject(a)?a:{};"interval"in a&&(this.autoScrollInterval=a.interval);"margin"in a&&(this.autoScrollMargin=a.margin);this._initEvents(); this._mixinGrid()},_initEvents:function(){var b=this.grid;this.connect(b,"onCellMouseDown",function(){this.readyForAutoScroll=!0});this.connect(b,"onHeaderCellMouseDown",function(){this.readyForAutoScroll=!0});this.connect(b,"onRowSelectorMouseDown",function(){this.readyForAutoScroll=!0});this.connect(p.doc,"onmouseup",function(a){this._manageAutoScroll(!0);this.readyForAutoScroll=!1});this.connect(p.doc,"onmousemove",function(a){if(this.readyForAutoScroll){this._event=a;var c=k.position(b.domNode), g=b._getHeaderHeight(),f=this.autoScrollMargin,d=a.clientY,e=a.clientX;a=c.y;var h=c.x,l=c.h,c=c.w;if(e>=h&&e<=h+c){if(d>=a+g&&da+l-f&&d<=a+l){this._manageAutoScroll(!1,!0,!0);return}if(d>=a&&d<=a+l&&m.some(b.views.views,function(a,b){if(a instanceof r)return!1;b=k.position(a.domNode);return e=b.x?(this._manageAutoScroll(!1,!1,!1,a),!0):e>b.x+b.w-f&&eb){g=f[e].index;c.scrollLeft+=d-b+10;break}}else for(b=0,e=f.length-1;0<=e;--e)if(d=k.position(f[e].getHeaderNode()),d=d.x-a.x,d