mirror of
https://git.deluge-torrent.org/deluge
synced 2025-08-02 22:48:40 +00:00
move the columntree stuff into deluge-ext
This commit is contained in:
parent
49e54e1789
commit
0bcb847a00
2 changed files with 89 additions and 88 deletions
|
@ -50,4 +50,91 @@ Deluge.ProgressBar = Ext.extend(Ext.ProgressBar, {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
Ext.reg('deluge-progress', Deluge.ProgressBar);
|
Ext.reg('deluge-progress', Deluge.ProgressBar);
|
||||||
|
|
||||||
|
Ext.tree.ColumnTree = Ext.extend(Ext.tree.TreePanel, {
|
||||||
|
lines:false,
|
||||||
|
borderWidth: Ext.isBorderBox ? 0 : 2, // the combined left/right border for each cell
|
||||||
|
cls:'x-column-tree',
|
||||||
|
|
||||||
|
onRender : function(){
|
||||||
|
Ext.tree.ColumnTree.superclass.onRender.apply(this, arguments);
|
||||||
|
this.headers = this.body.createChild(
|
||||||
|
{cls:'x-tree-headers'},this.innerCt.dom);
|
||||||
|
|
||||||
|
var cols = this.columns, c;
|
||||||
|
var totalWidth = 0;
|
||||||
|
|
||||||
|
for(var i = 0, len = cols.length; i < len; i++){
|
||||||
|
c = cols[i];
|
||||||
|
totalWidth += c.width;
|
||||||
|
this.headers.createChild({
|
||||||
|
cls:'x-tree-hd ' + (c.cls?c.cls+'-hd':''),
|
||||||
|
cn: {
|
||||||
|
cls:'x-tree-hd-text',
|
||||||
|
html: c.header
|
||||||
|
},
|
||||||
|
style:'width:'+(c.width-this.borderWidth)+'px;'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
this.headers.createChild({cls:'x-clear'});
|
||||||
|
// prevent floats from wrapping when clipped
|
||||||
|
this.headers.setWidth(totalWidth);
|
||||||
|
this.innerCt.setWidth(totalWidth);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Ext.tree.ColumnNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
|
||||||
|
focus: Ext.emptyFn, // prevent odd scrolling behavior
|
||||||
|
|
||||||
|
renderElements : function(n, a, targetNode, bulkRender){
|
||||||
|
this.indentMarkup = n.parentNode ? n.parentNode.ui.getChildIndent() : '';
|
||||||
|
|
||||||
|
var t = n.getOwnerTree();
|
||||||
|
var cols = t.columns;
|
||||||
|
var bw = t.borderWidth;
|
||||||
|
var c = cols[0];
|
||||||
|
|
||||||
|
var cb = typeof a.checked == 'boolean';
|
||||||
|
var href = a.href ? a.href : Ext.isGecko ? "" : "#";
|
||||||
|
|
||||||
|
var buf = [
|
||||||
|
'<li class="x-tree-node"><div ext:tree-node-id="',n.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ', a.cls,'" unselectable="on">',
|
||||||
|
'<div class="x-tree-col" style="width:',c.width-bw,'px;">',
|
||||||
|
'<span class="x-tree-node-indent">',this.indentMarkup,"</span>",
|
||||||
|
'<img src="', this.emptyIcon, '" class="x-tree-ec-icon x-tree-elbow">',
|
||||||
|
'<img src="', a.icon || this.emptyIcon, '" class="x-tree-node-icon',(a.icon ? " x-tree-node-inline-icon" : ""),(a.iconCls ? " "+a.iconCls : ""),'" unselectable="on" />',
|
||||||
|
cb ? ('<input class="x-tree-node-cb" type="checkbox" ' + (a.checked ? 'checked="checked" />' : '/>')) : '',
|
||||||
|
'<a hidefocus="on" class="x-tree-node-anchor" href="',href,'" tabIndex="1" ',
|
||||||
|
a.hrefTarget ? ' target="'+a.hrefTarget+'"' : "", '>',
|
||||||
|
'<span unselectable="on">', n.text || (c.renderer ? c.renderer(a[c.dataIndex], n, a) : a[c.dataIndex]),"</span></a>",
|
||||||
|
"</div>"];
|
||||||
|
for(var i = 1, len = cols.length; i < len; i++){
|
||||||
|
c = cols[i];
|
||||||
|
|
||||||
|
buf.push('<div class="x-tree-col ',(c.cls?c.cls:''),'" style="width:',c.width-bw,'px;">',
|
||||||
|
'<div class="x-tree-col-text">',(c.renderer ? c.renderer(a[c.dataIndex], n, a) : a[c.dataIndex]),"</div>",
|
||||||
|
"</div>");
|
||||||
|
}
|
||||||
|
buf.push(
|
||||||
|
'<div class="x-clear"></div></div>',
|
||||||
|
'<ul class="x-tree-node-ct" style="display:none;"></ul>',
|
||||||
|
"</li>");
|
||||||
|
|
||||||
|
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];
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
});
|
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue