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(); }