日期:2014-05-17 浏览次数:20900 次
function xmlPointer(data){
this.d=data;
}
xmlPointer.prototype={
text:function(){ if (!_isFF) return this.d.xml; var x = new XMLSerializer(); return x.serializeToString(this.d); },
get:function(name){return this.d.getAttribute(name); },
exists:function(){return !!this.d },
content:function(){return this.d.firstChild?this.d.firstChild.data:""; }, // <4k in FF
each:function(name,f,t,i){ var a=this.d.childNodes; var c=new xmlPointer(); if (a.length) for (i=i||0; i<a.length; i++) if (a[i].tagName==name) { c.d=a[i]; if(f.apply(t,[c,i])==-1) return; } },
get_all:function(){ var a={}; var b=this.d.attributes; for (var i=0; i<b.length; i++) a[b[i].name]=b[i].value; return a; },
sub:function(name){ var a=this.d.childNodes; var c=new xmlPointer(); if (a.length) for (var i=0; i<a.length; i++) if (a[i].tagName==name) { c.d=a[i]; return c; } },
up:function(name){ return new xmlPointer(this.d.parentNode); },
set:function(name,val){ this.d.setAttribute(name,val); },
clone:function(name){ return new xmlPointer(this.d); },
sub_exists:function(name){ var a=this.d.childNodes; if (a.length) for (var i=0; i<a.length; i++) if (a[i].tagName==name) return true; return false; },
through:function(name,rule,v,f,t){ var a=this.d.childNodes; if (a.length) for (var i=0; i<a.length; i++) { if (a[i].tagName==name && a[i].getAttribute(rule)!=null && a[i].getAttribute(rule)!="" && (!v || a[i].getAttribute(rule)==v )) { var c=new xmlPointer(a[i]); f.apply(t,[c,i]); } var w=this.d; this.d=a[i]; this.through(name,rule,v,f,t); this.d=w; } }
}
/**
* @desc: tree constructor
* @param: htmlObject - parent html object or id of parent html object
* @param: width - tree width
* @param: height - tree height
* @param: rootId - id of virtual root node (same as tree node id attribute in xml)
* @type: public
* @topic: 0
*/
function dhtmlXTreeObject(htmlObject, width, height, rootId){
if (_isIE) try { document.execCommand("BackgroundImageCache", false, true); } catch (e){}
if (typeof(htmlObject)!="object")
this.parentObject=document.getElementById(htmlObject);
else
this.parentObject=htmlObject;
this.parentObject.style.overflow="hidden";
this._itim_dg=true;
this.dlmtr=",";
this.dropLower=false;
this.enableIEImageFix();
this.xmlstate=0;
this.mytype="tree";
this.smcheck=true; //smart checkboxes
this.width=width;
this.height=height;
this.rootId=rootId;
this.childCalc=null;
this.def_img_x="18px";
this.def_img_y="18px";
this.def_line_img_x="18px";
this.def_line_img_y="18px";
this._dragged=new Array();
this._selected=new Array();
this.style_pointer="pointer";
this._aimgs=true;
this.htmlcA=" [";
this.htmlcB="]";
this.lWin=window;
this.cMenu=0;
this.mlitems=0;
this.iconURL="";
this.dadmode=0;
this.slowParse=false;
this.autoScroll=true;
this.hfMode=0;
this.nodeCut=new Array();
this.XMLsource=0;
this.XMLloadingWarning=0;
this._idpull={};
this._pullSize=0;
this.treeLinesOn=true;
this.tscheck=false;
this.timgen=true;
this.dpcpy=false;
this._ld_id=null;
this._oie_onXLE=[];
this.imPath=window.dhx_globalImgPath||"";
this.checkArray=new Array("iconUncheckAll.gif","iconCheckAll.gif","iconCheckGray.gif","iconUncheckDis.gif","iconCheckDis.gif","iconCheckDis.gif");
this.radioArray=new Array("radio_off.gif","radio_on.gif","radio_on.gif","