Fix #5654 - roojspacker - get it working as a doc tool...
[roojs1] / docs.old / symbols / src / Roo_tree_TreeNodeUI.js.html
diff --git a/docs.old/symbols/src/Roo_tree_TreeNodeUI.js.html b/docs.old/symbols/src/Roo_tree_TreeNodeUI.js.html
new file mode 100644 (file)
index 0000000..c023aea
--- /dev/null
@@ -0,0 +1,535 @@
+<html><head><title>../roojs1/Roo/tree/TreeNodeUI.js</title><link rel="stylesheet" type="text/css" href="../../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
+ * Based on:
+ * Ext JS Library 1.1.1
+ * Copyright(c) 2006-2007, Ext JS, LLC.
+ *
+ * Originally Released Under LGPL - original licence link has changed is not relivant.
+ *
+ * Fork - LGPL
+ * &lt;script type=&quot;text/javascript&quot;&gt;
+ */
+/**
+ * @class Roo.tree.TreeNodeUI
+ * @constructor
+ * @param {Object} node The node to render
+ * The TreeNode UI implementation is separate from the
+ * tree implementation. Unless you are customizing the tree UI,
+ * you should never have to use this directly.
+ */
+</span><span class="jsdoc-var">Roo.tree.TreeNodeUI </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">){
+    </span><span class="jsdoc-var">this.node </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">;
+    </span><span class="jsdoc-var">this.rendered </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+    </span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+    </span><span class="jsdoc-var">this.emptyIcon </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.BLANK_IMAGE_URL</span><span class="jsdoc-syntax">;
+};
+
+</span><span class="jsdoc-var">Roo.tree.TreeNodeUI.prototype </span><span class="jsdoc-syntax">= {
+    </span><span class="jsdoc-var">removeChild </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.ctNode.removeChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node.ui.getEl</span><span class="jsdoc-syntax">());
+        }
+    },
+
+    </span><span class="jsdoc-var">beforeLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+         </span><span class="jsdoc-var">this.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-loading&quot;</span><span class="jsdoc-syntax">);
+    },
+
+    </span><span class="jsdoc-var">afterLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+         </span><span class="jsdoc-var">this.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-loading&quot;</span><span class="jsdoc-syntax">);
+    },
+
+    </span><span class="jsdoc-var">onTextChange </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">oldText</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.textNode.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">;
+        }
+    },
+
+    </span><span class="jsdoc-var">onDisableChange </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">state</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">state</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">state</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-disabled&quot;</span><span class="jsdoc-syntax">);
+        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-var">this.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-disabled&quot;</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">onSelectedChange </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">state</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">state</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.focus</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-var">this.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-selected&quot;</span><span class="jsdoc-syntax">);
+        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-comment">//this.blur();
+            </span><span class="jsdoc-var">this.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-selected&quot;</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">onMove </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">tree</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">oldParent</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">newParent</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">refNode</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-var">this.childIndent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">targetNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">newParent.ui.getContainer</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">targetNode</span><span class="jsdoc-syntax">){</span><span class="jsdoc-comment">//target not rendered
+                </span><span class="jsdoc-var">this.holder </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;div&quot;</span><span class="jsdoc-syntax">);
+                </span><span class="jsdoc-var">this.holder.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">);
+                </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+            }
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">insertBefore </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">refNode </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">refNode.ui.getEl</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">insertBefore</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-var">targetNode.insertBefore</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">insertBefore</span><span class="jsdoc-syntax">);
+            }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+                </span><span class="jsdoc-var">targetNode.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">);
+            }
+            </span><span class="jsdoc-var">this.node.renderIndent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">addClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">removeClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">remove </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.holder </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;div&quot;</span><span class="jsdoc-syntax">);
+            </span><span class="jsdoc-var">this.holder.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">fireEvent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.node.fireEvent.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">);
+    },
+
+    </span><span class="jsdoc-var">initEvents </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-var">this.node.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;move&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onMove</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">E </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.EventManager</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">a </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.anchor</span><span class="jsdoc-syntax">;
+
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'_treeui'</span><span class="jsdoc-syntax">);
+
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isOpera</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// opera render bug ignores the CSS
+            </span><span class="jsdoc-var">el.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;text-decoration&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;none&quot;</span><span class="jsdoc-syntax">);
+        }
+
+        </span><span class="jsdoc-var">el.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;click&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">el.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;dblclick&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onDblClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.checkbox</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">Roo.EventManager.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.checkbox</span><span class="jsdoc-syntax">,
+                    </span><span class="jsdoc-var">Roo.isIE </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'click' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'change'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onCheckChange</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+        }
+
+        </span><span class="jsdoc-var">el.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;contextmenu&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onContextMenu</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">icon </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.iconNode</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">icon.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;click&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">icon.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;dblclick&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onDblClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">icon.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;contextmenu&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onContextMenu</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">E.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ecNode</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;click&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.ecClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
+
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.node.disabled</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-disabled&quot;</span><span class="jsdoc-syntax">);
+        }
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.node.hidden</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-disabled&quot;</span><span class="jsdoc-syntax">);
+        }
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ot </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node.getOwnerTree</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">dd </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ot.enableDD </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">ot.enableDrag </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">ot.enableDrop</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd </span><span class="jsdoc-syntax">&amp;&amp; (!</span><span class="jsdoc-var">this.node.isRoot </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">ot.rootVisible</span><span class="jsdoc-syntax">)){
+            </span><span class="jsdoc-var">Roo.dd.Registry.register</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">, {
+                </span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">,
+                </span><span class="jsdoc-var">handles</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.getDDHandles</span><span class="jsdoc-syntax">(),
+                </span><span class="jsdoc-var">isHandle</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false
+            </span><span class="jsdoc-syntax">});
+        }
+    },
+
+    </span><span class="jsdoc-var">getDDHandles </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.iconNode</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.textNode</span><span class="jsdoc-syntax">];
+    },
+
+    </span><span class="jsdoc-var">hide </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.wrap.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;none&quot;</span><span class="jsdoc-syntax">;
+        }
+    },
+
+    </span><span class="jsdoc-var">show </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.wrap.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">;
+        }
+    },
+
+    </span><span class="jsdoc-var">onContextMenu </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.node.hasListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;contextmenu&quot;</span><span class="jsdoc-syntax">) || </span><span class="jsdoc-var">this.node.getOwnerTree</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.hasListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;contextmenu&quot;</span><span class="jsdoc-syntax">)) {
+            </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-var">this.focus</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;contextmenu&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">onClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.dropping</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">e.stopEvent</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+        }
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;beforeclick&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">this.node.attributes.href</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;click&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+                </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+            }
+            </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+            }
+
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.node.attributes.singleClickExpand </span><span class="jsdoc-syntax">&amp;&amp; !</span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">this.node.hasChildNodes</span><span class="jsdoc-syntax">()){
+                </span><span class="jsdoc-var">this.node.toggle</span><span class="jsdoc-syntax">();
+            }
+
+            </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;click&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-var">e.stopEvent</span><span class="jsdoc-syntax">();
+        }
+    },
+
+    </span><span class="jsdoc-var">onDblClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+        }
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.checkbox</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.toggleCheck</span><span class="jsdoc-syntax">();
+        }
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">this.node.hasChildNodes</span><span class="jsdoc-syntax">()){
+            </span><span class="jsdoc-var">this.node.toggle</span><span class="jsdoc-syntax">();
+        }
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;dblclick&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+    },
+
+    </span><span class="jsdoc-var">onCheckChange </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">checked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.checkbox.checked</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-var">this.node.attributes.checked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">checked</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checkchange'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">checked</span><span class="jsdoc-syntax">);
+    },
+
+    </span><span class="jsdoc-var">ecClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">this.node.hasChildNodes</span><span class="jsdoc-syntax">()){
+            </span><span class="jsdoc-var">this.node.toggle</span><span class="jsdoc-syntax">();
+        }
+    },
+
+    </span><span class="jsdoc-var">startDrop </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-var">this.dropping </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-comment">// delayed drop so the click event doesn't get fired on a drop
+    </span><span class="jsdoc-var">endDrop </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+       </span><span class="jsdoc-var">setTimeout</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+           </span><span class="jsdoc-var">this.dropping </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+       }</span><span class="jsdoc-var">.createDelegate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">), 50);
+    },
+
+    </span><span class="jsdoc-var">expand </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-var">this.ctNode.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">focus </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.node.preventHScroll</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">try</span><span class="jsdoc-syntax">{</span><span class="jsdoc-var">this.anchor.focus</span><span class="jsdoc-syntax">();
+            }</span><span class="jsdoc-keyword">catch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){}
+        }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">Roo.isIE</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">try</span><span class="jsdoc-syntax">{
+                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">noscroll </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node.getOwnerTree</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getTreeEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom</span><span class="jsdoc-syntax">;
+                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">l </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">noscroll.scrollLeft</span><span class="jsdoc-syntax">;
+                </span><span class="jsdoc-var">this.anchor.focus</span><span class="jsdoc-syntax">();
+                </span><span class="jsdoc-var">noscroll.scrollLeft </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">l</span><span class="jsdoc-syntax">;
+            }</span><span class="jsdoc-keyword">catch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){}
+        }
+    },
+
+    </span><span class="jsdoc-var">toggleCheck </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.checkbox</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">cb.checked </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? !</span><span class="jsdoc-var">cb.checked </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">);
+        }
+    },
+
+    </span><span class="jsdoc-var">blur </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">try</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-var">this.anchor.blur</span><span class="jsdoc-syntax">();
+        }</span><span class="jsdoc-keyword">catch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){}
+    },
+
+    </span><span class="jsdoc-var">animExpand </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">callback</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ctNode</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">ct.stopFx</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.node.hasChildNodes</span><span class="jsdoc-syntax">()){
+            </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-var">this.ctNode.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-var">Roo.callback</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">callback</span><span class="jsdoc-syntax">);
+            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+        }
+        </span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+
+        </span><span class="jsdoc-var">ct.slideIn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'t'</span><span class="jsdoc-syntax">, {
+           </span><span class="jsdoc-var">callback </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+               </span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+               </span><span class="jsdoc-var">Roo.callback</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">callback</span><span class="jsdoc-syntax">);
+            },
+            </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-var">duration</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.node.ownerTree.duration </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">.</span><span class="jsdoc-syntax">25
+        });
+    },
+
+    </span><span class="jsdoc-var">highlight </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">tree </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node.getOwnerTree</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.highlight</span><span class="jsdoc-syntax">(
+            </span><span class="jsdoc-var">tree.hlColor </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">&quot;C3DAF9&quot;</span><span class="jsdoc-syntax">,
+            {</span><span class="jsdoc-var">endColor</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">tree.hlBaseColor</span><span class="jsdoc-syntax">}
+        );
+    },
+
+    </span><span class="jsdoc-var">collapse </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-var">this.ctNode.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;none&quot;</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">animCollapse </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">callback</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ctNode</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">ct.enableDisplayMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">ct.stopFx</span><span class="jsdoc-syntax">();
+
+        </span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+
+        </span><span class="jsdoc-var">ct.slideOut</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'t'</span><span class="jsdoc-syntax">, {
+            </span><span class="jsdoc-var">callback </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+               </span><span class="jsdoc-var">this.animating </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+               </span><span class="jsdoc-var">Roo.callback</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">callback</span><span class="jsdoc-syntax">);
+            },
+            </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-var">duration</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.node.ownerTree.duration </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">.</span><span class="jsdoc-syntax">25
+        });
+    },
+
+    </span><span class="jsdoc-var">getContainer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.ctNode</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">getEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">appendDDGhost </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ghostNode</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-var">ghostNode.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode.cloneNode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">));
+    },
+
+    </span><span class="jsdoc-var">getDDRepairXY </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">Roo.lib.Dom.getXY</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.iconNode</span><span class="jsdoc-syntax">);
+    },
+
+    </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-var">this.render</span><span class="jsdoc-syntax">();
+    },
+
+    </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">bulkRender</span><span class="jsdoc-syntax">){
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">n </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.attributes</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">targetNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.parentNode </span><span class="jsdoc-syntax">?
+              </span><span class="jsdoc-var">n.parentNode.ui.getContainer</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-var">n.ownerTree.innerCt.dom</span><span class="jsdoc-syntax">;
+
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.rendered </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+
+            </span><span class="jsdoc-var">this.renderElements</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">targetNode</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">bulkRender</span><span class="jsdoc-syntax">);
+
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.qtip</span><span class="jsdoc-syntax">){
+               </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.textNode.setAttributeNS</span><span class="jsdoc-syntax">){
+                   </span><span class="jsdoc-var">this.textNode.setAttributeNS</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;ext&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;qtip&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a.qtip</span><span class="jsdoc-syntax">);
+                   </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.qtipTitle</span><span class="jsdoc-syntax">){
+                       </span><span class="jsdoc-var">this.textNode.setAttributeNS</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;ext&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;qtitle&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a.qtipTitle</span><span class="jsdoc-syntax">);
+                   }
+               }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+                   </span><span class="jsdoc-var">this.textNode.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;ext:qtip&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a.qtip</span><span class="jsdoc-syntax">);
+                   </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.qtipTitle</span><span class="jsdoc-syntax">){
+                       </span><span class="jsdoc-var">this.textNode.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;ext:qtitle&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a.qtipTitle</span><span class="jsdoc-syntax">);
+                   }
+               }
+            }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.qtipCfg</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-var">a.qtipCfg.target </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.id</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.textNode</span><span class="jsdoc-syntax">);
+                </span><span class="jsdoc-var">Roo.QuickTips.register</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a.qtipCfg</span><span class="jsdoc-syntax">);
+            }
+            </span><span class="jsdoc-var">this.initEvents</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.node.expanded</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+            }
+        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">bulkRender </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">) {
+                </span><span class="jsdoc-var">targetNode.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wrap</span><span class="jsdoc-syntax">);
+            }
+        }
+    },
+
+    </span><span class="jsdoc-var">renderElements </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">targetNode</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">bulkRender</span><span class="jsdoc-syntax">)
+    {
+        </span><span class="jsdoc-comment">// add some indent caching, this helps performance when rendering a large tree
+        </span><span class="jsdoc-var">this.indentMarkup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.parentNode </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">n.parentNode.ui.getChildIndent</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.getOwnerTree</span><span class="jsdoc-syntax">();
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">txt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t.renderer </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">t.renderer</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.attributes</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-var">Roo.util.Format.htmlEncode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.text</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.attributes.html</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
+            </span><span class="jsdoc-var">txt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.attributes.html</span><span class="jsdoc-syntax">;
+        }
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">tip </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t.rendererTip </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">t.rendererTip</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.attributes</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-var">txt</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">a.checked </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'boolean'</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">href </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">a.href </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">a.href </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.isGecko </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">&quot;&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;#&quot;</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buf </span><span class="jsdoc-syntax">= [</span><span class="jsdoc-string">'&lt;li class=&quot;x-tree-node&quot;&gt;&lt;div class=&quot;x-tree-node-el '</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a.cls</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'&quot;&gt;'</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-string">'&lt;span class=&quot;x-tree-node-indent&quot;&gt;'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.indentMarkup</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">&quot;&lt;/span&gt;&quot;</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-string">'&lt;img src=&quot;'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.emptyIcon</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'&quot; class=&quot;x-tree-ec-icon&quot; /&gt;'</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-string">'&lt;img src=&quot;'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a.icon </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.emptyIcon</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'&quot; class=&quot;x-tree-node-icon'</span><span class="jsdoc-syntax">,(</span><span class="jsdoc-var">a.icon </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">&quot; x-tree-node-inline-icon&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">),(</span><span class="jsdoc-var">a.iconCls </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">&quot; &quot;</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">a.iconCls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">),</span><span class="jsdoc-string">'&quot; unselectable=&quot;on&quot; /&gt;'</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-var">cb </span><span class="jsdoc-syntax">? (</span><span class="jsdoc-string">'&lt;input class=&quot;x-tree-node-cb&quot; type=&quot;checkbox&quot; ' </span><span class="jsdoc-syntax">+ (</span><span class="jsdoc-var">a.checked </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'checked=&quot;checked&quot; /&gt;' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' /&gt;'</span><span class="jsdoc-syntax">)) : </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-string">'&lt;a hidefocus=&quot;on&quot; href=&quot;'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">href</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'&quot; tabIndex=&quot;1&quot; '</span><span class="jsdoc-syntax">,
+             </span><span class="jsdoc-var">a.hrefTarget </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">' target=&quot;'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">a.hrefTarget</span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'&quot;' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">, 
+                </span><span class="jsdoc-string">'&gt;&lt;span unselectable=&quot;on&quot; qtip=&quot;' </span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">tip </span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'&quot;&gt;'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">txt</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">&quot;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&quot;</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-string">'&lt;ul class=&quot;x-tree-node-ct&quot; style=&quot;display:none;&quot;&gt;&lt;/ul&gt;'</span><span class="jsdoc-syntax">,
+            </span><span class="jsdoc-string">&quot;&lt;/li&gt;&quot;</span><span class="jsdoc-syntax">];
+
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">bulkRender </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">n.nextSibling </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">n.nextSibling.ui.getEl</span><span class="jsdoc-syntax">()){
+            </span><span class="jsdoc-var">this.wrap </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.DomHelper.insertHtml</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;beforeBegin&quot;</span><span class="jsdoc-syntax">,
+                                </span><span class="jsdoc-var">n.nextSibling.ui.getEl</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">buf.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">));
+        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-var">this.wrap </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.DomHelper.insertHtml</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;beforeEnd&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">targetNode</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">buf.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">));
+        }
+
+        </span><span class="jsdoc-var">this.elNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.wrap.childNodes</span><span class="jsdoc-syntax">[0];
+        </span><span class="jsdoc-var">this.ctNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.wrap.childNodes</span><span class="jsdoc-syntax">[1];
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cs </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.elNode.childNodes</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-var">this.indentNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cs</span><span class="jsdoc-syntax">[0];
+        </span><span class="jsdoc-var">this.ecNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cs</span><span class="jsdoc-syntax">[1];
+        </span><span class="jsdoc-var">this.iconNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cs</span><span class="jsdoc-syntax">[2];
+        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">= 3;
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.checkbox </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cs</span><span class="jsdoc-syntax">[3];
+            </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">++;
+        }
+        </span><span class="jsdoc-var">this.anchor </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cs</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">];
+        </span><span class="jsdoc-var">this.textNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cs</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.firstChild</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">getAnchor </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.anchor</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">getTextEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.textNode</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">getIconEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.iconNode</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">isChecked </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.checkbox </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.checkbox.checked </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">updateExpandIcon </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">n </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">c1</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">c2</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.isLast</span><span class="jsdoc-syntax">() ? </span><span class="jsdoc-string">&quot;x-tree-elbow-end&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;x-tree-elbow&quot;</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">hasChild </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">n.hasChildNodes</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hasChild</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.expanded</span><span class="jsdoc-syntax">){
+                    </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">&quot;-minus&quot;</span><span class="jsdoc-syntax">;
+                    </span><span class="jsdoc-var">c1 </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;x-tree-node-collapsed&quot;</span><span class="jsdoc-syntax">;
+                    </span><span class="jsdoc-var">c2 </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;x-tree-node-expanded&quot;</span><span class="jsdoc-syntax">;
+                }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+                    </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">&quot;-plus&quot;</span><span class="jsdoc-syntax">;
+                    </span><span class="jsdoc-var">c1 </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;x-tree-node-expanded&quot;</span><span class="jsdoc-syntax">;
+                    </span><span class="jsdoc-var">c2 </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;x-tree-node-collapsed&quot;</span><span class="jsdoc-syntax">;
+                }
+                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.wasLeaf</span><span class="jsdoc-syntax">){
+                    </span><span class="jsdoc-var">this.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-leaf&quot;</span><span class="jsdoc-syntax">);
+                    </span><span class="jsdoc-var">this.wasLeaf </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
+                }
+                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.c1 </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">c1 </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.c2 </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">c2</span><span class="jsdoc-syntax">){
+                    </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.replaceClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c1</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">c2</span><span class="jsdoc-syntax">);
+                    </span><span class="jsdoc-var">this.c1 </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">c1</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">this.c2 </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">c2</span><span class="jsdoc-syntax">;
+                }
+            }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+                </span><span class="jsdoc-comment">// this changes non-leafs into leafs if they have no children.
+                // it's not very rational behaviour..
+                
+                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.wasLeaf </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">this.node.leaf</span><span class="jsdoc-syntax">){
+                    </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.elNode</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.replaceClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-tree-node-expanded&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;x-tree-node-leaf&quot;</span><span class="jsdoc-syntax">);
+                    </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">this.c1</span><span class="jsdoc-syntax">;
+                    </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">this.c2</span><span class="jsdoc-syntax">;
+                    </span><span class="jsdoc-var">this.wasLeaf </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+                }
+            }
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ecc </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;x-tree-ec-icon &quot;</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ecc </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">ecc</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-var">this.ecNode.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ecc</span><span class="jsdoc-syntax">;
+                </span><span class="jsdoc-var">this.ecc </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ecc</span><span class="jsdoc-syntax">;
+            }
+        }
+    },
+
+    </span><span class="jsdoc-var">getChildIndent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.childIndent</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buf </span><span class="jsdoc-syntax">= [];
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">while</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">p</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">p.isRoot </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-var">p.isRoot </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">p.ownerTree.rootVisible</span><span class="jsdoc-syntax">)){
+                    </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">p.isLast</span><span class="jsdoc-syntax">()) {
+                        </span><span class="jsdoc-var">buf.unshift</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'&lt;img src=&quot;'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.emptyIcon</span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'&quot; class=&quot;x-tree-elbow-line&quot; /&gt;'</span><span class="jsdoc-syntax">);
+                    } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
+                        </span><span class="jsdoc-var">buf.unshift</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'&lt;img src=&quot;'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.emptyIcon</span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'&quot; class=&quot;x-tree-icon&quot; /&gt;'</span><span class="jsdoc-syntax">);
+                    }
+                }
+                </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">p.parentNode</span><span class="jsdoc-syntax">;
+            }
+            </span><span class="jsdoc-var">this.childIndent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">buf.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">);
+        }
+        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.childIndent</span><span class="jsdoc-syntax">;
+    },
+
+    </span><span class="jsdoc-var">renderIndent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">indent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node.parentNode</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">p</span><span class="jsdoc-syntax">){
+                </span><span class="jsdoc-var">indent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">p.ui.getChildIndent</span><span class="jsdoc-syntax">();
+            }
+            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.indentMarkup </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">indent</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// don't rerender if not required
+                </span><span class="jsdoc-var">this.indentNode.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">indent</span><span class="jsdoc-syntax">;
+                </span><span class="jsdoc-var">this.indentMarkup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">indent</span><span class="jsdoc-syntax">;
+            }
+            </span><span class="jsdoc-var">this.updateExpandIcon</span><span class="jsdoc-syntax">();
+        }
+    }
+};
+
+</span><span class="jsdoc-var">Roo.tree.RootTreeNodeUI </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+    </span><span class="jsdoc-var">Roo.tree.RootTreeNodeUI.superclass.constructor.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">);
+};
+</span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.tree.RootTreeNodeUI</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.tree.TreeNodeUI</span><span class="jsdoc-syntax">, {
+    </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">targetNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.node.ownerTree.innerCt.dom</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-var">this.node.expanded </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-var">targetNode.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'&lt;div class=&quot;x-tree-root-node&quot;&gt;&lt;/div&gt;'</span><span class="jsdoc-syntax">;
+            </span><span class="jsdoc-var">this.wrap </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.ctNode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">targetNode.firstChild</span><span class="jsdoc-syntax">;
+        }
+    },
+    </span><span class="jsdoc-var">collapse </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+    },
+    </span><span class="jsdoc-var">expand </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+    }
+});</span></code></body></html>
\ No newline at end of file