code: function(lazySource) {
          // Only expand if currently collapsed.
          if (this.isLoading || (this.expanded && !lazySource)) { 
              return; 
          }
  
          var ret = true;
  
          // When returning from the lazy load handler, expand is called again
          // in order to render the new children.  The "expand" event already
          // fired before fething the new data, so we need to skip it now.
          if (!lazySource) {
              // fire the expand event handler
              ret = this.tree.onExpand(this);
  
              if (false === ret) {
                  this.logger.log("Expand was stopped by the abstract onExpand");
                  return;
              }
              
              ret = this.tree.fireEvent("expand", this);
          }
  
          if (false === ret) {
              this.logger.log("Expand was stopped by the custom event handler");
              return;
          }
  
          if (!this.getEl()) {
              this.expanded = true;
              return;
          }
  
          if (!this.childrenRendered) {
              this.logger.log("children not rendered yet");
              this.getChildrenEl().innerHTML = this.renderChildren();
          } else {
              this.logger.log("children already rendered");
          }
  
          this.expanded = true;
  
          this.updateIcon();
  
          // this.getSpacer().title = this.getStateText();
  
          // We do an extra check for children here because the lazy
          // load feature can expose nodes that have no children.
  
          // if (!this.hasChildren()) {
          if (this.isLoading) {
              this.expanded = false;
              return;
          }
  
          if (! this.multiExpand) {
              var sibs = this.getSiblings();
              for (var i=0; sibs && i<sibs.length; ++i) {
                  if (sibs[i] != this && sibs[i].expanded) { 
                      sibs[i].collapse(); 
                  }
              }
          }
  
          this.showChildren();
  
          ret = this.tree.fireEvent("expandComplete", this);
      }
docs: Shows this nodes children (creating them if necessary), changes the
  toggle style, and collapses its siblings if multiExpand is not set.
  @method expand