/** * Ext JS Library 3.4.0 * Copyright(c) 2006-2011 Sencha Inc. * licensing@sencha.com * http://www.sencha.com/license */ /** * @class Ext.ux.tree.TreeGridNodeUI * @extends Ext.tree.TreeNodeUI */ Ext.ux.tree.TreeGridNodeUI = Ext.extend(Ext.tree.TreeNodeUI, { isTreeGridNodeUI: true, renderElements: function (n, a, targetNode, bulkRender) { var t = n.getOwnerTree(), cols = t.columns, c = cols[0], i, buf, len; this.indentMarkup = n.parentNode ? n.parentNode.ui.getChildIndent() : ''; buf = [ '', '', '', '', this.indentMarkup, '', '', '', '', '', c.tpl ? c.tpl.apply(a) : a[c.dataIndex] || c.text, '', '', ]; for (i = 1, len = cols.length; i < len; i++) { c = cols[i]; buf.push( '', '
', c.tpl ? c.tpl.apply(a) : a[c.dataIndex], '
', '' ); } buf.push( '', '' ); for (i = 0, len = cols.length; i < len; i++) { buf.push( '' ); } buf.push(''); if (bulkRender !== true && n.nextSibling && n.nextSibling.ui.getEl()) { this.wrap = Ext.DomHelper.insertHtml( 'beforeBegin', n.nextSibling.ui.getEl(), buf.join('') ); } else { this.wrap = Ext.DomHelper.insertHtml( 'beforeEnd', targetNode, buf.join('') ); } this.elNode = this.wrap.childNodes[0]; this.ctNode = this.wrap.childNodes[1].firstChild.firstChild; var cs = this.elNode.firstChild.childNodes; this.indentNode = cs[0]; this.ecNode = cs[1]; this.iconNode = cs[2]; this.anchor = cs[3]; this.textNode = cs[3].firstChild; }, // private animExpand: function (cb) { this.ctNode.style.display = ''; Ext.ux.tree.TreeGridNodeUI.superclass.animExpand.call(this, cb); }, }); Ext.ux.tree.TreeGridRootNodeUI = Ext.extend(Ext.tree.TreeNodeUI, { isTreeGridNodeUI: true, // private render: function () { if (!this.rendered) { this.wrap = this.ctNode = this.node.ownerTree.innerCt.dom; this.node.expanded = true; } if (Ext.isWebKit) { // weird table-layout: fixed issue in webkit var ct = this.ctNode; ct.style.tableLayout = null; (function () { ct.style.tableLayout = 'fixed'; }.defer(1)); } }, destroy: function () { if (this.elNode) { Ext.dd.Registry.unregister(this.elNode.id); } delete this.node; }, collapse: Ext.emptyFn, expand: Ext.emptyFn, });