code: function() { 
          this.logger.log("Generating html");
          var sb = [];
  
          sb[sb.length] = '<table id="ygtvtableel' + this.index + '" border="0" cellpadding="0" cellspacing="0" class="ygtvtable ygtvdepth' + this.depth;
          if (this.enableHighlight) {
              sb[sb.length] = ' ygtv-highlight' + this.highlightState;
          }
          if (this.className) {
              sb[sb.length] = ' ' + this.className;
          }           
          sb[sb.length] = '"><tr class="ygtvrow">';
          
          for (var i=0;i<this.depth;++i) {
              sb[sb.length] = '<td class="ygtvcell ' + this.getDepthStyle(i) + '"><div class="ygtvspacer"></div></td>';
          }
  
          if (this.hasIcon) {
              sb[sb.length] = '<td id="' + this.getToggleElId();
              sb[sb.length] = '" class="ygtvcell ';
              sb[sb.length] = this.getStyle() ;
              sb[sb.length] = '"><a href="#" class="ygtvspacer">&#160;</a></td>';
          }
  
          sb[sb.length] = '<td id="' + this.contentElId; 
          sb[sb.length] = '" class="ygtvcell ';
          sb[sb.length] = this.contentStyle  + ' ygtvcontent" ';
          sb[sb.length] = (this.nowrap) ? ' nowrap="nowrap" ' : '';
          sb[sb.length] = ' >';
          sb[sb.length] = this.getContentHtml();
          sb[sb.length] = '</td></tr></table>';
  
          return sb.join("");
  
      }
docs: Get the markup for the node.  This may be overrided so that we can
  support different types of nodes.
  @method getNodeHtml
  @return {string} The HTML that will render this node.