Ignore:
Timestamp:
02/13/05 07:38:04 (15 years ago)
Author:
gogo
Message:

Speed enhancements.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/plugins/Linker/dTree/dtree.js

    r1 r3  
    162162 
    163163dTree.prototype.toString = function() { 
    164  
     164  this.setCS_All(); 
    165165  var str = '<div class="dtree">\n'; 
    166166 
     
    205205      cn._ai = n; 
    206206 
    207       this.setCS(cn); 
     207      // this.setCS(cn); 
    208208 
    209209      if (!cn.target && this.config.target) cn.target = this.config.target; 
     
    359359}; 
    360360 
    361  
     361dTree.prototype.setCS_All = function() 
     362{ 
     363  var ids = { }; // ID => { _hc: haschildren, _ls_is: lastsibling} 
     364 
     365  for(var n = 0; n < this.aNodes.length; n++) 
     366  { 
     367    var node = this.aNodes[n]; 
     368    if(!ids[node.pid]) 
     369    { 
     370      ids[node.pid] = { _hc: true, _ls_is: node.id }; 
     371    } 
     372    else 
     373    { 
     374      ids[node.pid]._hc    = true; 
     375      ids[node.pid]._ls_is = node.id; 
     376    } 
     377 
     378    if(!ids[node.id]) 
     379    { 
     380      ids[node.id] = { _hc: false, _ls_is: null } 
     381    } 
     382  } 
     383 
     384  for(var n = 0; n < this.aNodes.length; n++) 
     385  { 
     386    var node = this.aNodes[n]; 
     387    node._ls = ids[node.pid]._ls_is == node.id ? true : false; 
     388    node._hc = ids[node.id]._hc; 
     389  } 
     390} 
    362391 
    363392// Returns the selected node 
Note: See TracChangeset for help on using the changeset viewer.