igf_objects.js

来自「一个JSF的商业组件的DEMO,infragistics-netadvantag」· JavaScript 代码 · 共 347 行 · 第 1/2 页

JS
347
字号
// (c) 2007 Infragistics - Do NOT modify the content of this file
// Version 8.1.20081.1004

$IG.ObjectBaseProps=new function()
{this.Count=0;};$IG.ObjectBase=function(adr,element,props,owner,csm)
{this._props=props;this._element=element;this._owner=owner;this._address=adr;if(element)
element._object=this;this._csm=csm;$IG.ObjectBase.initializeBase(this);}
$IG.ObjectBase.prototype={get_element:function()
{return this._element;},set_element:function(val){this._element=val;},_get_owner:function(){return this._owner;},_set_owner:function(value){this._owner=value;},_get_address:function(){return this._address;},_set_address:function(val){this._address=val;},_createObjects:function(objectManager)
{},_createCollections:function(collectionsManager)
{},_set_value:function(index,value)
{if(this._csm)
this._csm.set_value(index,value,this._address);},_get_value:function(index,isBool)
{return this._csm?this._csm.get_value(index,isBool,this._address):null;},_get_clientOnlyValue:function(propName)
{return this._csm?this._csm.get_clientOnlyValue(propName,this._address):null;},_get_occasionalProperty:function(propName)
{return this._csm?this._csm.get_occasionalProperty(propName,this._address):null;},_set_occasionalProperty:function(propName,val)
{return this._csm?this._csm.set_occasionalProperty(propName,val,this._address):null;},_saveAdditionalClientState:function()
{},dispose:function()
{if(this._element)
this._element._object=null;}}
$IG.ObjectBase.registerClass('Infragistics.Web.UI.ObjectBase',IgUIComponent);$IG.ControlObjectProps=new function()
{this.Flags=[$IG.ObjectBaseProps.Count+0,0];this.Count=$IG.ObjectBaseProps.Count+1;};$IG.UIObject=function(adr,element,props,owner,csm)
{this._flags=null;$IG.UIObject.initializeBase(this,[adr,element,props,owner,csm]);}
$IG.UIObject.prototype={_getFlags:function()
{if(this._flags==null)
{this.__flagHelper=new $IG.FlagsHelper();var key=[$IG.ObjectBaseProps.Count+0,this.__getDefaultFlags()]
this._flags=new $IG.FlagsObject(this._get_value(key),this);}
return this._flags;},__getDefaultFlags:function()
{if(this.__defaultFlags==null)
{this._ensureFlags();this.__defaultFlags=this.__flagHelper.calculateFlags();}
return this.__defaultFlags;},_updateFlags:function(flags)
{var key=[$IG.ObjectBaseProps.Count+0,this.__getDefaultFlags()]
this._set_value(key,flags)},_ensureFlags:function()
{},_ensureFlag:function(flag,val)
{this.__flagHelper.updateFlag(flag,val);}}
$IG.UIObject.registerClass('Infragistics.Web.UI.UIObject',$IG.ObjectBase);$IG.ListItemProps=new function()
{this.KeyTag=[$IG.ControlObjectProps.Count+0,""];this.NavigateUrl=[$IG.ControlObjectProps.Count+1,""];this.Target=[$IG.ControlObjectProps.Count+2,""];this.Tooltip=[$IG.ControlObjectProps.Count+3,""];this.Count=$IG.ControlObjectProps.Count+4;};$IG.ListItem=function(adr,element,props,owner,csm,collection,parent)
{$IG.ListItem.initializeBase(this,[adr,element,props,owner,csm]);this._parent=parent;this._itemCollection=collection}
$IG.ListItem.prototype={_ensureFlags:function()
{$IG.ListItem.callBaseMethod(this,"_ensureFlag");this._ensureFlag($IG.ClientUIFlags.Hoverable,$IG.DefaultableBoolean.True);this._ensureFlag($IG.ClientUIFlags.Selectable,$IG.DefaultableBoolean.True);this._ensureFlag($IG.ClientUIFlags.Draggable,$IG.DefaultableBoolean.True);this._ensureFlag($IG.ClientUIFlags.Droppable,$IG.DefaultableBoolean.True);},set_key:function(value){this._set_value($IG.ListItemProps.KeyTag,value);},get_key:function()
{return this._get_value($IG.ListItemProps.KeyTag);},set_navigateUrl:function(value){this._set_value($IG.ListItemProps.NavigateUrl,value);},get_navigateUrl:function()
{return this._get_value($IG.ListItemProps.NavigateUrl);},set_target:function(value){this._set_value($IG.ListItemProps.Target,value);},get_target:function()
{return this._get_value($IG.ListItemProps.Target);},set_tooltip:function(value){this._set_value($IG.ListItemProps.Tooltip,value);},get_tooltip:function()
{return this._get_value($IG.ListItemProps.Tooltip);}}
$IG.ListItem.registerClass('Infragistics.Web.UI.ListItem',$IG.UIObject);$IG.DataItemProps=new function()
{this.DataPath=[$IG.ControlObjectProps.Count+0,null];this.Populated=[$IG.ControlObjectProps.Count+1,false];this.IsEmptyParent=[$IG.ControlObjectProps.Count+2,false];this.Count=$IG.ControlObjectProps.Count+3;};$IG.NavItemProps=new function()
{this.Text=[$IG.DataItemProps.Count+0,""];this.Value=[$IG.DataItemProps.Count+1,""];this.Key=[$IG.DataItemProps.Count+2,""];this.Count=$IG.DataItemProps.Count+3;};$IG.NavItem=function(adr,element,props,owner,csm,collection,parent)
{$IG.NavItem.initializeBase(this,[adr,element,props,owner,csm]);this._parent=parent;this._itemCollection=collection}
$IG.NavItem.prototype={_ensureFlags:function()
{$IG.NavItem.callBaseMethod(this,"_ensureFlag");this._ensureFlag($IG.ClientUIFlags.Hoverable,$IG.DefaultableBoolean.True);this._ensureFlag($IG.ClientUIFlags.Selectable,$IG.DefaultableBoolean.True);this._ensureFlag($IG.ClientUIFlags.Draggable,$IG.DefaultableBoolean.True);this._ensureFlag($IG.ClientUIFlags.Droppable,$IG.DefaultableBoolean.True);},set_dataPath:function(value){this._set_value($IG.DataItemProps.DataPath,value);},get_dataPath:function(){return this._get_value($IG.DataItemProps.DataPath);},set_populated:function(value){this._set_value($IG.DataItemProps.Populated,value);},get_populated:function(){return this._get_value($IG.DataItemProps.Populated,true);},set_isEmptyParent:function(value){this._set_value($IG.DataItemProps.IsEmptyParent,value);},get_isEmptyParent:function(){return this._get_value($IG.DataItemProps.IsEmptyParent,true);},set_text:function(value){this._set_value($IG.NavItemProps.Text,value);},get_text:function(){return this._get_value($IG.NavItemProps.Text);},set_valueString:function(value){this._set_value($IG.NavItemProps.Value,value);},get_valueString:function(){return this._get_value($IG.NavItemProps.Value);},set_key:function(value){this._set_value($IG.NavItemProps.KeyTag,value);},get_key:function(){return this._get_value($IG.NavItemProps.KeyTag);},getItems:function(){return this._itemCollection;}}
$IG.NavItem.registerClass('Infragistics.Web.UI.NavItem',$IG.UIObject);$IG.FlagsHelper=function()
{this._flagsHT=[];};$IG.FlagsHelper.prototype={updateFlag:function(flag,val)
{this._flagsHT[flag]=val;},getBoolFlag:function(flag)
{var obj=this._flagsHT[flag];if(obj==null)
return false;else
return obj;},getDBFlag:function(flag)
{var obj=this._flagsHT[flag];if(obj==null)
return $IG.DefaultableBoolean.NotSet;else
return obj;},calcBoolFlag:function(flag)
{var val=this.getBoolFlag(flag);return(val)?flag:0;},calcDBFlag:function(flag)
{var val=this.getDBFlag(flag);return parseInt(flag*.5*val);},calculateFlags:function()
{var flags=0;flags+=this.calcDBFlag($IG.ClientUIFlags.Visible);flags+=this.calcDBFlag($IG.ClientUIFlags.Enabled);flags+=this.calcDBFlag($IG.ClientUIFlags.Selectable);flags+=this.calcBoolFlag($IG.ClientUIFlags.Selected);flags+=this.calcDBFlag($IG.ClientUIFlags.Hoverable);flags+=this.calcBoolFlag($IG.ClientUIFlags.Hovered);flags+=this.calcDBFlag($IG.ClientUIFlags.Editable);flags+=this.calcDBFlag($IG.ClientUIFlags.Focusable);flags+=this.calcBoolFlag($IG.ClientUIFlags.Focused);flags+=this.calcDBFlag($IG.ClientUIFlags.Draggable);flags+=this.calcDBFlag($IG.ClientUIFlags.Droppable);flags+=this.calcDBFlag($IG.ClientUIFlags.KBNavigable);return flags;}}
$IG.FlagsHelper.registerClass('Infragistics.Web.UI.FlagsHelper');$IG.FlagsObject=function(flags,object)
{this._flags=flags;this._object=object};$IG.FlagsObject.prototype={getVisible:function(parent){return this._getFlagValue($IG.ClientUIFlags.Visible,parent);},setVisible:function(val){this._setFlagValue($IG.ClientUIFlags.Visible,val);},getEnabled:function(parent){return this._getFlagValue($IG.ClientUIFlags.Enabled,parent);},setEnabled:function(val){this._setFlagValue($IG.ClientUIFlags.Enabled,val);},getSelectable:function(parent){return this._getFlagValue($IG.ClientUIFlags.Selectable,parent);},setSelectable:function(val){this._setFlagValue($IG.ClientUIFlags.Selectable,val);},getSelected:function(){return this._getFlagValue($IG.ClientUIFlags.Selected,null,true);},setSelected:function(val){this._setFlagValue2($IG.ClientUIFlags.Selected,val);},getHoverable:function(parent){return this._getFlagValue($IG.ClientUIFlags.Hoverable,parent);},setHoverable:function(val){this._setFlagValue($IG.ClientUIFlags.Hoverable,val);},getHovered:function(){return this._getFlagValue($IG.ClientUIFlags.Hovered,null,true);},setHovered:function(val){this._setFlagValue2($IG.ClientUIFlags.Hovered,val);},getEditable:function(parent){return this._getFlagValue($IG.ClientUIFlags.Editable,parent);},setEditable:function(val){this._setFlagValue($IG.ClientUIFlags.Editable,val);},getFocusable:function(parent){return this._getFlagValue($IG.ClientUIFlags.Focusable,parent);},setFocusable:function(val){this._setFlagValue($IG.ClientUIFlags.Focusable,val);},getFocused:function(){return this._getFlagValue($IG.ClientUIFlags.Focused,null,true);},setFocused:function(val){this._setFlagValue2($IG.ClientUIFlags.Focused,val);},getDraggable:function(parent){return this._getFlagValue($IG.ClientUIFlags.Draggable,parent);},setDraggable:function(val){this._setFlagValue($IG.ClientUIFlags.Draggable,val);},getDroppable:function(parent){return this._getFlagValue($IG.ClientUIFlags.Droppable,parent);},setDroppable:function(val){this._setFlagValue($IG.ClientUIFlags.Droppable,val);},getKBNavigable:function(parent){return this._getFlagValue($IG.ClientUIFlags.KBNavigable,parent);},setKBNavigable:function(val){this._setFlagValue($IG.ClientUIFlags.KBNavigable,val);},_getFlagValue:function(flag,parent,isBoolFlag)
{var returnDb=$IG.DefaultableBoolean.NotSet;var trueFlag=this._flags&(flag*.5);var falseFlag=this._flags&flag;if(trueFlag!=0&&falseFlag==0)
returnDb=$IG.DefaultableBoolean.True;else if(falseFlag!=0)
returnDb=$IG.DefaultableBoolean.False;if(parent!=null&&returnDb==$IG.DefaultableBoolean.NotSet&&parent._getFlags)
returnDb=parent._getFlags()._getFlagValue(flag);if(isBoolFlag)
return(returnDb==2)
else if(returnDb==$IG.DefaultableBoolean.True)
return true;else
return false;},_setFlagValue:function(flag,value)
{if(typeof(value)=="boolean")
value=(value)?1:2;var trueFlag=this._flags&(flag*.5);this._flags-=trueFlag;var falseFlag=this._flags&flag;this._flags-=falseFlag;this._flags+=flag*(.5)*value;this._object._updateFlags(this._flags);},_setFlagValue2:function(flag,value)
{if(typeof(val)=="boolean")
val=(val)?1:0;this._flags-=this._flags&flag;this._flags+=(value)?flag:0;this._object._updateFlags(this._flags);},_getFlags:function()
{return this._flags;}}
$IG.FlagsObject.registerClass('Infragistics.Web.UI.FlagsObject');$IG.ImageObject=function(obj,element,props,owner,csm)
{if(!csm)
csm=new $IG.ObjectClientStateManager(props[0]);$IG.ImageObject.initializeBase(this,[obj,element,props,owner,csm]);this._currentState=this._get_clientOnlyValue("s");}
$IG.ImageObject.prototype={setState:function(state)
{if(this._element==null)
return;var url=this._get_clientOnlyValue(state);if(url==null||url.length==0)
url=this._get_clientOnlyValue($IG.ImageState.Normal);this._element.src=url;this._currentState=state;},getState:function(){return this._currentState;}}
$IG.ImageObject.registerClass('Infragistics.Web.UI.ImageObject',$IG.ObjectBase);$IG.ImageState=new function()
{this.Normal='i';this.Hover='h';this.Pressed='p';this.Disabled='d';};Infragistics._Utility=function(){};Infragistics._Utility.prototype={addCompoundClass:function(element,className)
{if(element.className===''){element.className=className;}
else{element.className+=' '+className;}},containsCompoundClass:function(element,className)
{return(element.className.indexOf(className)>=0);},removeCompoundClass:function(element,className)
{element.className=element.className.replace(className,"");element.className=element.className.replace("  "," ");},toggleCompoundClass:function(element,className,apply)
{if(apply)
{if(!this.containsCompoundClass(element,className))
this.addCompoundClass(element,className);}
else
this.removeCompoundClass(element,className);},addClientEvent:function(obj,evtName,val)
{var fnc=this.toFunction(val);if(fnc)
obj.get_events().addHandler(evtName,fnc);else
throw'The "'+val+'" for "'+evtName+'" should be a function, function name, or function text';},removeClientEvent:function(obj,evtName,fnc)
{obj.get_events().removeHandler(evtName,fnc);},getPosition:function(elem)
{var htm,name,style,elem0=elem;var first=true,noTD=true,ieRect=false,end=false;var o={x:0,y:0,scrollX:0,scrollY:0};var ie=document.all&&elem.getBoundingClientRect;var body2=!ie;while(elem)
{name=elem.nodeName;style=this.getRuntimeStyle(elem);htm=name=='HTML';if(end)
{if(htm)break;elem=elem.parentNode;continue;}
var body=name=='BODY';var bdr=false;var pos=this.getStyleValue(style,'position');var abs=pos=='absolute',rel=pos=='relative';if(ie&&rel)
ieRect=abs=true;end=body&&!ie;if((abs&&body)||name=='FORM')
break;var v=elem.offsetTop;if(v)o.y+=v;v=elem.offsetLeft;if(v)o.x+=v;if(!first&&!htm)
{var td=name=='TD',tbl=name=='TABLE';if(ie){if(!tbl||(noTD&&abs)){if(name!='DIV'||!rel)
bdr=true;if(td)
noTD=false;}
if(tbl||(!td&&!tbl))
noTD=true;}
else if((!tbl&&!td)||(td&&abs))
bdr=true;}
if(bdr)
{v=body2&&body;if(!ie&&!v&&(abs||rel))
v=this._isScroll(style,name);this._addBorder(style,o,false,v);}
this._addScroll(elem,o);if(abs)
body2=false;first=false;var pe=elem.parentNode;elem=elem.offsetParent;if(!elem&&end)
{elem=pe;continue;}
if(!ie&&!abs&&elem)while(pe&&pe!=elem)
{if(this._isScroll(style=this.getRuntimeStyle(pe),pe.nodeName))
{this._addScroll(pe,o);this._addBorder(style,o);}
pe=pe.parentNode;}}
if(body2&&htm)
this._addBorder(style,o,true);if(ieRect)
{v=elem0.getBoundingClientRect();o.x=v.left+o.scrollX;o.y=v.top+o.scrollY;if(htm&&style)
this._addBorder(style,o,true);}
return o;},_addScroll:function(elem,o)
{var v=elem.scrollLeft;if(v)o.scrollX+=v;v=elem.scrollTop;if(v)o.scrollY+=v;},_addBorder:function(style,o,neg,twice)
{var v=this.toIntPX(style,'borderLeftWidth',0);if(twice)v+=v;o.x+=neg?-v:v;v=this.toIntPX(style,'borderTopWidth',0);if(twice)v+=v;o.y+=neg?-v:v;},_isScroll:function(style,name)
{var v=name=='DIV'?this.getStyleValue(style,'overflow'):'';return v=='auto'||v=='scroll';},cancelEvent:function(e,type,raw)
{if(!e&&!raw)e=window.event;if(!e)return true;if(type&&type.substring&&e.type!=type)
return true;if(e.stopPropagation)
e.stopPropagation();if(e.preventDefault)
e.preventDefault();e.cancelBubble=true;e.returnValue=false;if(raw)
return false;if(e.rawEvent)
return this.cancelEvent(e.rawEvent,null,true);else if(e.event){return this.cancelEvent(e.event,null,true);}else
return false;},getRuntimeStyle:function(elem)
{if(!elem)
return null;var s=elem.currentStyle;if(s)
return s;var win=document.defaultView;if(!win)
win=window;if(win.getComputedStyle)
s=win.getComputedStyle(elem,'');return s?s:elem.style;},getStyleValue:function(style,prop,elem)
{if(!style)
style=this.getRuntimeStyle(elem);if(!style)
return null;var val=style[prop];if(!this.isEmpty(val)||!style.getPropertyValue)
return val;return style.getPropertyValue(prop);},toInt:function(val,def)
{var ok=false;var i=-1,len=val?val.length:0;while(++i<len)
{var ch=val.charCodeAt(i);if(ch==45&&i==0)
continue;if(ch<48||ch>57)
{val=val.substring(0,i);break;}
ok=true;}
return ok?parseInt(val):def;},toIntPX:function(style,prop,def,elem)
{var px=this.getStyleValue(style,prop,elem);return(px&&px.indexOf('px')>0)?this.toInt(px,0):(def?def:0);},toFunction:function(val)
{if(val instanceof Function)
return val;if(!val||!val.length||!val.charCodeAt)
return null;var fnc=window[val];if(fnc instanceof Function)
return fnc;try{fnc=eval(val);}catch(val){}
return(fnc instanceof Function)?fnc:null;},isEmpty:function(val)
{if(!val)
return true;val=val.length;return!val||val.length<1;},getOpacity:function(elem)
{var op=this.getStyleValue(null,'opacity',elem);if(op)
{op=parseFloat(op);if(op)
{op=Math.floor(op*100);return(op<100&&op>=0)?op:100;}}
op=this.getStyleValue(null,'filter',elem);if(!op)
return 100;op=this.replace(op.toLowerCase(),' ','');var i=op.indexOf('opacity=');return(i<0)?100:this.toInt(op.substring(i+8),100);},findControl:function(id,prefix)
{for(var ig in ig_controls)
{var ctl=ig_controls[ig];if(!ctl.get_id||(prefix&&ig.indexOf(prefix)!=0))
continue;var i=ig.lastIndexOf(id);if(i==0||(i>0&&i+id.length==ig.length&&ig.charAt(i-1)=='_'))
return ctl;}},findChild:function(elem,id)
{var id0=elem.id;var i=id0?id0.lastIndexOf(id):-1;if(i>=0&&i+id.length==id0.length&&id0.charAt(i-1)=='_')
return elem;var elems=elem.childNodes;i=elems?elems.length:0;while(i-->0)
{elem=this.findChild(elems[i],id);if(elem)
return elem;}},addLayoutTarget:function(target)
{var index=-1,elem=target._element;while((elem=elem.parentNode)!=null)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?