/*
Product Name: dhtmlxSuite
Version: 4.0.3
Edition: Professional
License: content of this file is covered by DHTMLX Commercial or Enterprise license. Usage without proper license is prohibited. To obtain it contact sales@dhtmlx.com
Copyright UAB Dinamenta http://www.dhtmlx.com
*/
/**
* @desc: enables smart rendering mode (usefull for big trees with lots f items on each level)
* @edition: professional
* @type: public
*/
dhtmlXTreeObject.prototype.enableSmartRendering=function(){
this.enableSmartXMLParsing(true);
this._srnd=true;
this.itemHeight=18;
var that=this;
this.allTree.onscroll=function(){
if (that._srndT) return;
that._srndT=window.setTimeout(function(){
that._srndT=null;
that._renderState();
},300);
};
this.attachEvent("onXLE",function(){
that._renderState();
});
this._singleTimeSRND();
}
dhtmlXTreeObject.prototype._renderState=function(){
//var z=this.allTree.parentNode;
//var t=z.removeChild(this.allTree);
if (!this._idpull[this.rootId]._sready)
this.prepareSR(this.rootId,true);
var top=this.allTree.scrollTop;
var pos=Math.floor(top/this.itemHeight);
var height=Math.ceil(this.allTree.offsetHeight/this.itemHeight);
this._group_render=true;
this._getItemByPos(top,this.itemHeight,height,null,false,this._renderItemSRND);
this._group_render=false;
//z.appendChild(this.allTree);
}
dhtmlXTreeObject.prototype._renderItemSRND=function(a,b){
if (!a.span){
//render row
a.span=-1;
var z=a.parentObject.htmlNode.childNodes[0].childNodes;
var count=b*this.itemHeight; var x=null;
for (var i=1; i1){
if ( ( (Nodes[1].style.display!="none") || (mode==1) ) && (mode!=2) ) {
//nb:solves standard doctype prb in IE
this.allTree.childNodes[0].border = "1";
this.allTree.childNodes[0].border = "0";
var nodestyle="none";
itemObject._open=false;
}
else {
var nodestyle="";
itemObject._open=true;
}
for (var i=1; i