예제 #1
0
  public String getHtml() {
    StringBuffer sb = new StringBuffer();
    String styleStr = "";
    if (XString.isNotEmpty(this.style)) {
      styleStr = styleStr + this.style;
    }
    if (!this.lazyLoad) {
      sb.append(
          "<div id='"
              + this.ID
              + "_container' class='treeContainer' style='-moz-user-select:none;"
              + styleStr
              + "'><div xtype='_Tree' onselectstart='stopEvent(event);' id='"
              + this.ID
              + "' method='"
              + this.method
              + "' class='treeItem'><table><tr><td>");
    }
    for (int i = 0; i < this.items.size(); i++) {
      if ((this.lazyLoad) && (getItem(i).getLevel() <= this.parentLevel)) {
        continue;
      }
      if ((i != 0) && (getItem(i).getLevel() > getItem(i - 1).getLevel())) {
        if ((getItem(i).getLevel() == this.level) && (!this.lazyLoad) && (!this.lazy))
          sb.append("<div style='display:none'>");
        else {
          sb.append("<div>");
        }
      }

      sb.append(((TreeItem) this.items.get(i)).getOuterHtml());
      if ((i != this.items.size() - 1) && (getItem(i).getLevel() > getItem(i + 1).getLevel())) {
        for (int j = 0; j < getItem(i).getLevel() - getItem(i + 1).getLevel(); j++) {
          sb.append("</div>");
        }
      }
      if (i == this.items.size() - 1) {
        for (int j = 0; j < getItem(i).getLevel() - this.parentLevel; j++) {
          sb.append("</div>");
        }
      }
    }
    if (!this.lazyLoad) {
      sb.append("</td></tr></table></div></div>\n\r");
      HtmlScript script = new HtmlScript();
      script.setInnerHTML(getScript());
      sb.append(script.getOuterHtml());
    }

    return sb.toString();
  }