﻿Type.registerNamespace("Infragistics.Web.UI");$IG.ResizeBehavior=function(a){$IG.ResizeBehavior.initializeBase(this,[a]);this._props=["","","",0,0,2000,2000,0,0,0,0,0,"","","","","",""]};$IG.ResizeBehavior.prototype={enabled:true,get_pairs:function(){},set_pairs:function(b){b=b.split("|");for(var a=0;a<b.length;a+=2){var d=parseInt(b[a]),c=b[a+1];this._props[d]=(d>2&&d<12)?parseInt(c):$util.replace(c,"&pipe;","|");if(d==2){this._border=parseInt(c.substring(0,1))}}},get_handleClass:function(){return this._get_(0)},set_handleClass:function(a){this._set_(0,a);if(this._hand){this._hand.className=a}},get_handleImage:function(){return this._get_(1)},set_handleImage:function(a){this._set_(1,a);if(this._hand){this._hand.src=a}},get_resizeBorder:function(){return this._get_(2)},set_resizeBorder:function(a){this._set_(2,a);this._border=$util.isEmpty(a)?null:parseInt(a.substring(0,1))},get_minimumWidth:function(){return this._get_(3)},set_minimumWidth:function(a){this._set_(3,a)},get_minimumHeight:function(){return this._get_(4)},set_minimumHeight:function(a){this._set_(4,a)},get_maximumWidth:function(){return this._get_(5)},set_maximumWidth:function(a){this._set_(5,a)},get_maximumHeight:function(){return this._get_(6)},set_maximumHeight:function(a){this._set_(6,a)},get_offsetLeft:function(){return this._get_(7)},set_offsetLeft:function(a){this._set_(7,a)},get_offsetTop:function(){return this._get_(8)},set_offsetTop:function(a){this._set_(8,a)},get_offsetRight:function(){return this._get_(9)},set_offsetRight:function(a){this._set_(9,a)},get_offsetBottom:function(){return this._get_(10)},set_offsetBottom:function(a){this._set_(10,a)},get_parentType:function(){return this._get_(11)},set_parentType:function(a){this._set_(11,a)},get_toolTip:function(){return this._get_(12)},set_toolTip:function(a,b){if(!b){this._set_(12,a)}b=this._hand;if(b){b.alt=b.title=a}},get_resize:function(){return this._get_(13)},set_resize:function(a){this._set_(13,a,"Resize")},add_resize:function(a){$util.addClientEvent(this,"Resize",a)},remove_resize:function(a){$util.removeClientEvent(this,"Resize",a)},get_resizing:function(){return this._get_(14)},set_resizing:function(a){this._set_(14,a,"Resizing")},add_resizing:function(a){$util.addClientEvent(this,"Resizing",a)},remove_resizing:function(a){$util.removeClientEvent(this,"Resizing",a)},get_mouseover:function(){return this._get_(15)},set_mouseover:function(a){this._set_(15,a,"MouseOver")},add_mouseover:function(a){$util.addClientEvent(this,"MouseOver",a)},remove_mouseover:function(a){$util.removeClientEvent(this,"MouseOver",a)},get_mouseout:function(){return this._get_(16)},set_mouseout:function(a){this._set_(16,a,"MouseOut")},add_mouseout:function(a){$util.addClientEvent(this,"MouseOut",a)},remove_mouseout:function(a){$util.removeClientEvent(this,"MouseOut",a)},get_initialize:function(){return this._get_(17)},set_initialize:function(a){this._set_(17,a,"Initialize")},getFrameElement:function(){return this._handDad},getHandleElement:function(){return this._hand},initialize:function(){$IG.ResizeBehavior.callBaseMethod(this,"initialize");this._target=this.getTargetElement();if(!this._target){throw"Target element for ResizeBehavior not found";return}if(this._onTimer(true)){delete this._onTimer}else{ig_ui_timer(this)}},_shift:function(){this._s.marginLeft=(this._shiftX+this._divX-this._bdr)+"px";this._s.marginTop=(this._shiftY+this._divY-this._bdr)+"px"},_onTimer:function(d){if(this._width){return true}var b=this._target,f=this._control;var e=b?b.offsetWidth:0;if(!e||e==0){return false}if(f&&f.canResize&&!f.canResize()){return false}this._width=e;this._height=b.offsetHeight;var g=b.nodeName;this._bdr=this._divX=this._divY=0;e=this.get_parentType();this._div=(e==2)||!(g=="DIV"||g=="SPAN");var c=(g=="TABLE"&&e!=2)?b.rows[0]:null;if(c){c=c.cells[0]}else{if(e==1){this._div=false}}if(g=="TD"){c=b}var h=0,a=$util.getRuntimeStyle(b);if(this._div&&!c){e=$util.getStyleValue(a,"position");if(b.type=="hidden"){alert("Can not attach resizer to a hidden element "+b.id)}}if(e=="absolute"||e=="relative"){h=$util.getStyleValue(a,"zIndex");if(!h||h<1){h=99999}}this._shiftX=$util.getOffset(a,true,true);this._shiftY=$util.getOffset(a,false,true);this._widthFix=this._shiftX+$util.getOffset(a,true,false,true);this._heightFix=this._shiftY+$util.getOffset(a,false,false,true);this._shiftHandX=$util.toIntPX(a,"borderRightWidth");this._shiftHandY=$util.toIntPX(a,"borderBottomWidth");e=this.get_offsetLeft();this._shiftX=-this._shiftX+e;this._shiftWidth=e-this.get_offsetRight();e=this.get_offsetTop();this._shiftY=-this._shiftY+e;this._shiftHeight=e-this.get_offsetBottom();e=this.get_stateValue();if(e){e=e.split(",");if(!$util.isEmpty(e[0])){this._width=$util.toInt(e[0])}if(!$util.isEmpty(e[1])){this._height=$util.toInt(e[1])}}this._handDad=document.createElement("DIV");this._s=a=this._handDad.style;if(c){b=c}if(!c&&this._div){c=b;b=b.parentNode;if(h>0){a.zIndex=h+1}}else{c=b.firstChild}a.width=a.height="0px";this._shift();a.position="absolute";b.insertBefore(this._handDad,c);e=this.get_handleImage();if(e&&e.length>0){this._im=b=document.createElement("IMG");b.src=e;b._me=this;$addHandlers(b,{readystatechange:this._resize,load:this._resize},this)}else{b=document.createElement("DIV")}b.className=this.get_handleClass();b.style.position="absolute";b.unselectable="on";this._hand=b;this.set_toolTip(this.get_toolTip(),true);this._handDad.appendChild(b);e=$util.getStyleValue(null,"cursor",b);if(!e||e=="auto"){b.style.cursor=e="SE-resize"}this._s.cursor=e;$addHandlers(this._hand,{mousedown:this._onMouseDown,mouseover:this._onMouseOver,mouseout:this._onMouseOut},this);this._onMouseMoveFn=Function.createDelegate(this,this._onMouseMove);this._onMouseUpFn=Function.createDelegate(this,this._onMouseUp);this._onSelectFn=Function.createDelegate(this,this._onSelectStart);this._resize();if(!f){this._raiseClientEvent("Initialize")}return true},_resize:function(p){var h=this._im,q=this._hand,f=this._target;if(!q){return}if(h&&(h.complete||h.readyState=="complete")){p=this._im=null}var s=this._width,j=this._height;if(p){var o=p.button;if(o==0&&p.rawEvent){o=p.rawEvent.button}if(o==1){this._but=1}if(this._but==1&&this._drag&&o!=1){this._onMouseUp(p);return}if(!p.type||p.type.indexOf("m")!=0){return}var a=p.clientX,c=p.clientY;if(this._x==null){this._x=a;this._y=c;this._widthOld=s;this._heightOld=j}a-=this._x;c-=this._y;if(a==0&&c==0){return}s=this._widthOld+a;j=this._heightOld+c;var g=this._raiseClientEvent("Resizing","Resize",p,null,s,j,this._widthOld,this._heightOld);if(g&&g.get_cancel()){return}}else{if(this._im){return}}var k=q.offsetWidth,m=q.offsetHeight;s=Math.min(Math.max(s,Math.max(this.get_minimumWidth(),k)+this._widthFix),this.get_maximumWidth());j=Math.min(Math.max(j,Math.max(this.get_minimumHeight(),m)+this._heightFix),this.get_maximumHeight());var n=f.style;var r=s-this._widthFix,l=j-this._heightFix;if(this.enabled){n.width=r+"px";n.height=l+"px";r=f.offsetWidth;l=f.offsetHeight;if(r>s){s=r;n.width=(s-this._widthFix)+"px"}if(l>j){j=l;n.height=(j-this._heightFix)+"px"}if(this._control&&this._control.onResize){this._control.onResize(p)}}this._width=s;this._height=j;if(this._div){var d=$util.getPosition(f),i=$util.getPosition(this._handDad);this._divY-=(i.y-d.y+this._bdr-this.get_offsetTop());this._divX-=(i.x-d.x+this._bdr-this.get_offsetLeft());if(!this._drag){this._shift()}}if(this._drag){this._onMouseOver(p,true)}q.style.left=(f.offsetWidth-k-this._shiftWidth-this._shiftHandX)+"px";q.style.top=(f.offsetHeight-m-this._shiftHeight-this._shiftHandY)+"px"},setSize:function(a,b){this._width=a;this._height=b;this._resize();this.set_stateValue(this._width+","+this._height,true)},dispose:function(){if(this._hand){$clearHandlers(this._hand)}this._onMouseUp();$IG.ResizeBehavior.callBaseMethod(this,"dispose")},_onMouseOver:function(f,c){if(f&&c!==true){this._mouseIn=true}if(this._drag&&c!==true){return}var d=this._handDad;var b=this._target.offsetWidth-this._shiftWidth,a=this._target.offsetHeight-this._shiftHeight;this._s.width=((b>0)?b:0)+"px";this._s.height=((a>0)?a:0)+"px";if(this._drag&&this._div){this._shift();return}if(c===true){return}this._raiseClientEvent(this._prefix+"MouseOver",null,f);if(!this._border){return}this._s.border=this.get_resizeBorder();this._bdr=this._border;this._shift()},_onMouseOut:function(a,b){if(a&&b!==true){this._mouseIn=false}if(this._drag){return}this._raiseClientEvent(this._prefix+"MouseOut",null,a);this._s.border=this._s.width=this._s.height="0px";this._bdr=0;if(!this._border){return}this._shift()},_onMouseDown:function(a){if(a.button==0){this._x=null;if(!a){if((a=window.event)==null){return}}this._drag=true;$util.cancelEvent(a);$addHandler(document,"mousemove",this._onMouseMoveFn);$addHandler(document,"mouseup",this._onMouseUpFn);if(Sys.Browser.agent===Sys.Browser.Safari){document.onselectstart=this._onSelectFn}else{$addHandler(document,"selectstart",this._onSelectFn)}this._showIframe(true)}},_showIframe:function(){var a=this._control;if(a&&a._get_resizeAreaElem){$util._setMouseBlock(a._get_resizeAreaElem())}},_onMouseMove:function(a){if(this._drag){this._resize(a?a:window.event);this._showIframe(true)}},_onMouseUp:function(d){$util._setMouseBlock();this._x=null;if(!this._drag){return}if((this._widthOld==null||this._heightOld==null)||(this._widthOld==this._width&&this._heightOld==this._height)){return}this.__dragResized=false;var c,a=null;var b=this._raiseClientEvent("Resized","Resize",d,null,this._width,this._height,this._widthOld,this._heightOld);if(b){if(b.get_cancel()){a=this._width=this._widthOld;this._height=this._heightOld}else{if((c=b._width)!=null){a=this._width=c}if((c=b._height)!=null){a=this._height=c}}}this._drag=false;if(a!=null||this._div){this._resize()}else{if(this._control&&this._control.onResize){this._control.onResize()}}this.set_stateValue(this._width+","+this._height,true);$removeHandler(document,"mousemove",this._onMouseMoveFn);$removeHandler(document,"mouseup",this._onMouseUpFn);if(Sys.Browser.agent===Sys.Browser.Safari){document.onselectstart=null}else{$removeHandler(document,"selectstart",this._onSelectFn)}if(!this._mouseIn){this._onMouseOut(d,true)}},_onSelectStart:function(a){return this._drag?$util.cancelEvent(a):true}};$IG.ResizeBehavior.registerClass("Infragistics.Web.UI.ResizeBehavior",$IG.Behavior);$IG.ResizeEventArgs=function(){$IG.ResizeEventArgs.initializeBase(this)};$IG.ResizeEventArgs.prototype={get_width:function(){return this._props[2]},get_height:function(){return this._props[3]},get_oldWidth:function(){return this._props[4]},get_oldHeight:function(){return this._props[5]},set_width:function(a){this._props[2]=this._width=a},set_height:function(a){this._props[3]=this._height=a}};$IG.ResizeEventArgs.registerClass("Infragistics.Web.UI.ResizeEventArgs",$IG.CancelEventArgs);