summaryrefslogtreecommitdiffstats
path: root/deluge/ui/web/js/extjs
diff options
context:
space:
mode:
Diffstat (limited to 'deluge/ui/web/js/extjs')
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions-debug.js338
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions.js84
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/JSLoader.js8
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/Spinner.js74
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/StatusBar.js18
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/form/FileUploadField.js34
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/form/RadioGroupFix.js12
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/form/SpinnerField.js10
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/form/SpinnerGroup.js29
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/form/ToggleField.js13
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/grid/BufferView.js32
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/layout/FormLayoutFix.js2
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/MultiSelectionModelFix.js6
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGrid.js48
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumnResizer.js18
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumns.js4
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridLoader.js2
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUI.js10
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUIFix.js2
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridRenderColumn.js2
-rw-r--r--deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridSorter.js14
21 files changed, 418 insertions, 342 deletions
diff --git a/deluge/ui/web/js/extjs/ext-extensions-debug.js b/deluge/ui/web/js/extjs/ext-extensions-debug.js
index a5b4a60..8a05e61 100644
--- a/deluge/ui/web/js/extjs/ext-extensions-debug.js
+++ b/deluge/ui/web/js/extjs/ext-extensions-debug.js
@@ -50,7 +50,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
autoSize: Ext.emptyFn,
// private
- initComponent: function() {
+ initComponent: function () {
Ext.ux.form.FileUploadField.superclass.initComponent.call(this);
this.addEvents(
@@ -66,7 +66,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
- onRender: function(ct, position) {
+ onRender: function (ct, position) {
Ext.ux.form.FileUploadField.superclass.onRender.call(
this,
ct,
@@ -97,30 +97,30 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
this.resizeEl = this.positionEl = this.wrap;
},
- bindListeners: function() {
+ bindListeners: function () {
this.fileInput.on({
scope: this,
- mouseenter: function() {
+ mouseenter: function () {
this.button.addClass(['x-btn-over', 'x-btn-focus']);
},
- mouseleave: function() {
+ mouseleave: function () {
this.button.removeClass([
'x-btn-over',
'x-btn-focus',
'x-btn-click',
]);
},
- mousedown: function() {
+ mousedown: function () {
this.button.addClass('x-btn-click');
},
- mouseup: function() {
+ mouseup: function () {
this.button.removeClass([
'x-btn-over',
'x-btn-focus',
'x-btn-click',
]);
},
- change: function() {
+ change: function () {
var value = this.fileInput.dom.files;
// Fallback to value.
if (!value) value = this.fileInput.dom.value;
@@ -130,7 +130,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
});
},
- createFileInput: function() {
+ createFileInput: function () {
this.fileInput = this.wrap.createChild({
id: this.getFileInputId(),
name: this.name || this.getId(),
@@ -142,7 +142,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
this.fileInput.dom.multiple = this.multiple;
},
- reset: function() {
+ reset: function () {
if (this.rendered) {
this.fileInput.remove();
this.createFileInput();
@@ -152,12 +152,12 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
- getFileInputId: function() {
+ getFileInputId: function () {
return this.id + '-file';
},
// private
- onResize: function(w, h) {
+ onResize: function (w, h) {
Ext.ux.form.FileUploadField.superclass.onResize.call(this, w, h);
this.wrap.setWidth(w);
@@ -172,23 +172,23 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
- onDestroy: function() {
+ onDestroy: function () {
Ext.ux.form.FileUploadField.superclass.onDestroy.call(this);
Ext.destroy(this.fileInput, this.button, this.wrap);
},
- onDisable: function() {
+ onDisable: function () {
Ext.ux.form.FileUploadField.superclass.onDisable.call(this);
this.doDisable(true);
},
- onEnable: function() {
+ onEnable: function () {
Ext.ux.form.FileUploadField.superclass.onEnable.call(this);
this.doDisable(false);
},
// private
- doDisable: function(disabled) {
+ doDisable: function (disabled) {
this.fileInput.dom.disabled = disabled;
this.button.setDisabled(disabled);
},
@@ -197,7 +197,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
preFocus: Ext.emptyFn,
// private
- alignErrorIcon: function() {
+ alignErrorIcon: function () {
this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]);
},
});
@@ -218,8 +218,8 @@ Ext.form.FileUploadField = Ext.ux.form.FileUploadField;
// Allow radiogroups to be treated as a single form element.
Ext.override(Ext.form.RadioGroup, {
- afterRender: function() {
- this.items.each(function(i) {
+ afterRender: function () {
+ this.items.each(function (i) {
this.relayEvents(i, ['check']);
}, this);
if (this.lazyValue) {
@@ -230,21 +230,21 @@ Ext.override(Ext.form.RadioGroup, {
Ext.form.RadioGroup.superclass.afterRender.call(this);
},
- getName: function() {
+ getName: function () {
return this.items.first().getName();
},
- getValue: function() {
+ getValue: function () {
return this.items.first().getGroupValue();
},
- setValue: function(v) {
+ setValue: function (v) {
if (!this.items.each) {
this.value = v;
this.lazyValue = true;
return;
}
- this.items.each(function(item) {
+ this.items.each(function (item) {
if (item.rendered) {
var checked = item.el.getValue() == String(v);
item.el.dom.checked = checked;
@@ -277,7 +277,7 @@ Ext.ux.form.SpinnerField = Ext.extend(Ext.form.NumberField, {
onBlur: Ext.emptyFn,
adjustSize: Ext.BoxComponent.prototype.adjustSize,
- constructor: function(config) {
+ constructor: function (config) {
var spinnerConfig = Ext.copyTo(
{},
config,
@@ -299,23 +299,23 @@ Ext.ux.form.SpinnerField = Ext.extend(Ext.form.NumberField, {
},
// private
- getResizeEl: function() {
+ getResizeEl: function () {
return this.wrap;
},
// private
- getPositionEl: function() {
+ getPositionEl: function () {
return this.wrap;
},
// private
- alignErrorIcon: function() {
+ alignErrorIcon: function () {
if (this.wrap) {
this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]);
}
},
- validateBlur: function() {
+ validateBlur: function () {
return true;
},
});
@@ -362,7 +362,7 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
colCfg: {},
// private
- onRender: function(ct, position) {
+ onRender: function (ct, position) {
if (!this.el) {
var panelCfg = {
cls: this.groupCls,
@@ -419,9 +419,8 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
// Generate the column configs with the correct width setting
for (var i = 0; i < numCols; i++) {
var cc = Ext.apply({ items: [] }, colCfg);
- cc[
- this.columns[i] <= 1 ? 'columnWidth' : 'width'
- ] = this.columns[i];
+ cc[this.columns[i] <= 1 ? 'columnWidth' : 'width'] =
+ this.columns[i];
if (this.defaults) {
cc.defaults = Ext.apply(
cc.defaults || {},
@@ -470,14 +469,14 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
}
}
- var fields = this.panel.findBy(function(c) {
+ var fields = this.panel.findBy(function (c) {
return c.isFormField;
}, this);
this.items = new Ext.util.MixedCollection();
this.items.addAll(fields);
- this.items.each(function(field) {
+ this.items.each(function (field) {
field.on('spin', this.onFieldChange, this);
field.on('change', this.onFieldChange, this);
}, this);
@@ -498,45 +497,45 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
Ext.ux.form.SpinnerGroup.superclass.onRender.call(this, ct, position);
},
- onFieldChange: function(spinner) {
+ onFieldChange: function (spinner) {
this.fireEvent('change', this, this.getValue());
},
initValue: Ext.emptyFn,
- getValue: function() {
+ getValue: function () {
var value = [this.items.getCount()];
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
value[i] = Number(item.getValue());
});
return value;
},
- getRawValue: function() {
+ getRawValue: function () {
var value = [this.items.getCount()];
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
value[i] = Number(item.getRawValue());
});
return value;
},
- setValue: function(value) {
+ setValue: function (value) {
if (!this.rendered) {
this.value = value;
this.lazyValueSet = true;
} else {
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
item.setValue(value[i]);
});
}
},
- setRawValue: function(value) {
+ setRawValue: function (value) {
if (!this.rendered) {
this.rawValue = value;
this.lazyRawValueSet = true;
} else {
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
item.setRawValue(value[i]);
});
}
@@ -566,7 +565,7 @@ Ext.namespace('Ext.ux.form');
Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
cls: 'x-toggle-field',
- initComponent: function() {
+ initComponent: function () {
Ext.ux.form.ToggleField.superclass.initComponent.call(this);
this.toggle = new Ext.form.Checkbox();
@@ -577,7 +576,7 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
});
},
- onRender: function(ct, position) {
+ onRender: function (ct, position) {
if (!this.el) {
this.panel = new Ext.Panel({
cls: this.groupCls,
@@ -595,16 +594,13 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
this.panel.add(this.input);
this.panel.doLayout();
- this.toggle
- .getEl()
- .parent()
- .setStyle('padding-right', '10px');
+ this.toggle.getEl().parent().setStyle('padding-right', '10px');
}
Ext.ux.form.ToggleField.superclass.onRender.call(this, ct, position);
},
// private
- onResize: function(w, h) {
+ onResize: function (w, h) {
this.panel.setSize(w, h);
this.panel.doLayout();
@@ -613,7 +609,7 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
this.input.setSize(inputWidth, h);
},
- onToggleCheck: function(toggle, checked) {
+ onToggleCheck: function (toggle, checked) {
this.input.setDisabled(!checked);
},
});
@@ -666,7 +662,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
*/
cleanDelay: 500,
- initTemplates: function() {
+ initTemplates: function () {
Ext.ux.grid.BufferView.superclass.initTemplates.call(this);
var ts = this.templates;
// empty div to act as a place holder for a row
@@ -688,23 +684,23 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
ts.rowBody.compile();
},
- getStyleRowHeight: function() {
+ getStyleRowHeight: function () {
return Ext.isBorderBox
? this.rowHeight + this.borderHeight
: this.rowHeight;
},
- getCalculatedRowHeight: function() {
+ getCalculatedRowHeight: function () {
return this.rowHeight + this.borderHeight;
},
- getVisibleRowCount: function() {
+ getVisibleRowCount: function () {
var rh = this.getCalculatedRowHeight(),
visibleHeight = this.scroller.dom.clientHeight;
return visibleHeight < 1 ? 0 : Math.ceil(visibleHeight / rh);
},
- getVisibleRows: function() {
+ getVisibleRows: function () {
var count = this.getVisibleRowCount(),
sc = this.scroller.dom.scrollTop,
start =
@@ -717,7 +713,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
};
},
- doRender: function(cs, rs, ds, startRow, colCount, stripe, onlyBody) {
+ doRender: function (cs, rs, ds, startRow, colCount, stripe, onlyBody) {
var ts = this.templates,
ct = ts.cell,
rt = ts.row,
@@ -782,18 +778,18 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
return buf.join('');
},
- isRowRendered: function(index) {
+ isRowRendered: function (index) {
var row = this.getRow(index);
return row && row.childNodes.length > 0;
},
- syncScroll: function() {
+ syncScroll: function () {
Ext.ux.grid.BufferView.superclass.syncScroll.apply(this, arguments);
this.update();
},
// a (optionally) buffered method to update contents of gridview
- update: function() {
+ update: function () {
if (this.scrollDelay) {
if (!this.renderTask) {
this.renderTask = new Ext.util.DelayedTask(this.doUpdate, this);
@@ -804,14 +800,14 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
}
},
- onRemove: function(ds, record, index, isUpdate) {
+ onRemove: function (ds, record, index, isUpdate) {
Ext.ux.grid.BufferView.superclass.onRemove.apply(this, arguments);
if (isUpdate !== true) {
this.update();
}
},
- doUpdate: function() {
+ doUpdate: function () {
if (this.getVisibleRowCount() > 0) {
var g = this.grid,
cm = g.colModel,
@@ -839,14 +835,14 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
},
// a buffered method to clean rows
- clean: function() {
+ clean: function () {
if (!this.cleanTask) {
this.cleanTask = new Ext.util.DelayedTask(this.doClean, this);
}
this.cleanTask.delay(this.cleanDelay);
},
- doClean: function() {
+ doClean: function () {
if (this.getVisibleRowCount() > 0) {
var vr = this.getVisibleRows();
vr.first -= this.cacheSize;
@@ -869,7 +865,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
}
},
- removeTask: function(name) {
+ removeTask: function (name) {
var task = this[name];
if (task && task.cancel) {
task.cancel();
@@ -877,13 +873,13 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
}
},
- destroy: function() {
+ destroy: function () {
this.removeTask('cleanTask');
this.removeTask('renderTask');
Ext.ux.grid.BufferView.superclass.destroy.call(this);
},
- layout: function() {
+ layout: function () {
Ext.ux.grid.BufferView.superclass.layout.call(this);
this.update();
},
@@ -902,7 +898,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
// remove spaces for hidden elements and make show(), hide(), enable() and disable() act on
// the label. don't use hideLabel with this.
Ext.override(Ext.layout.FormLayout, {
- renderItem: function(c, position, target) {
+ renderItem: function (c, position, target) {
if (
c &&
!c.rendered &&
@@ -942,7 +938,7 @@ Ext.override(Ext.layout.FormLayout, {
* @author Damien Churchill <damoxc@gmail.com>
*/
Ext.override(Ext.tree.MultiSelectionModel, {
- onNodeClick: function(node, e) {
+ onNodeClick: function (node, e) {
if (e.ctrlKey && this.isSelected(node)) {
this.unselect(node);
} else if (e.shiftKey && !this.isSelected(node)) {
@@ -963,7 +959,7 @@ Ext.override(Ext.tree.MultiSelectionModel, {
}
// Select all the nodes
- parentNode.eachChild(function(n) {
+ parentNode.eachChild(function (n) {
var i = parentNode.indexOf(n);
if (fi < i && i < li) {
this.select(n, e, true, true);
@@ -977,7 +973,7 @@ Ext.override(Ext.tree.MultiSelectionModel, {
}
},
- select: function(node, e, keepExisting, suppressEvent) {
+ select: function (node, e, keepExisting, suppressEvent) {
if (keepExisting !== true) {
this.clearSelections(true);
}
@@ -1023,7 +1019,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
columnsText: 'Columns',
- initComponent: function() {
+ initComponent: function () {
if (!this.root) {
this.root = new Ext.tree.AsyncTreeNode({ text: 'Root' });
}
@@ -1095,7 +1091,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- initColumns: function() {
+ initColumns: function () {
var cs = this.columns,
len = cs.length,
columns = [],
@@ -1124,7 +1120,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.columns = columns;
},
- onRender: function() {
+ onRender: function () {
Ext.tree.TreePanel.superclass.onRender.apply(this, arguments);
this.el.addClass('x-treegrid');
@@ -1173,7 +1169,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- setRootNode: function(node) {
+ setRootNode: function (node) {
node.attributes.uiProvider = Ext.ux.tree.TreeGridRootNodeUI;
node = Ext.ux.tree.TreeGrid.superclass.setRootNode.call(this, node);
if (this.innerCt) {
@@ -1184,7 +1180,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return node;
},
- clearInnerCt: function() {
+ clearInnerCt: function () {
if (Ext.isIE) {
var dom = this.innerCt.dom;
while (dom.firstChild) {
@@ -1195,7 +1191,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- initEvents: function() {
+ initEvents: function () {
Ext.ux.tree.TreeGrid.superclass.initEvents.apply(this, arguments);
this.mon(this.innerBody, 'scroll', this.syncScroll, this);
@@ -1207,7 +1203,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
});
},
- onResize: function(w, h) {
+ onResize: function (w, h) {
Ext.ux.tree.TreeGrid.superclass.onResize.apply(this, arguments);
var bd = this.innerBody.dom;
@@ -1231,7 +1227,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.setScrollOffset(sw);
} else {
var me = this;
- setTimeout(function() {
+ setTimeout(function () {
me.setScrollOffset(
bd.offsetWidth - bd.clientWidth > 10 ? sw : 0
);
@@ -1240,7 +1236,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- updateColumnWidths: function() {
+ updateColumnWidths: function () {
var cols = this.columns,
colCount = cols.length,
groups = this.outerCt.query('colgroup'),
@@ -1279,7 +1275,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.syncHeaderScroll();
},
- getVisibleColumns: function() {
+ getVisibleColumns: function () {
var columns = [],
cs = this.columns,
len = cs.length,
@@ -1293,7 +1289,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return columns;
},
- getTotalColumnWidth: function() {
+ getTotalColumnWidth: function () {
var total = 0;
for (
var i = 0, cs = this.getVisibleColumns(), len = cs.length;
@@ -1305,13 +1301,13 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return total;
},
- setScrollOffset: function(scrollOffset) {
+ setScrollOffset: function (scrollOffset) {
this.scrollOffset = scrollOffset;
this.updateColumnWidths();
},
// private
- handleHdDown: function(e, t) {
+ handleHdDown: function (e, t) {
var hd = e.getTarget('.x-treegrid-hd');
if (hd && Ext.fly(t).hasClass('x-grid3-hd-btn')) {
@@ -1329,7 +1325,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.hmenu.on(
'hide',
- function() {
+ function () {
Ext.fly(hd).removeClass('x-grid3-hd-menu-open');
},
this,
@@ -1344,7 +1340,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- handleHdOver: function(e, t) {
+ handleHdOver: function (e, t) {
var hd = e.getTarget('.x-treegrid-hd');
if (hd && !this.headersDisabled) {
index = this.findHeaderIndex(hd);
@@ -1362,7 +1358,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- handleHdOut: function(e, t) {
+ handleHdOut: function (e, t) {
var hd = e.getTarget('.x-treegrid-hd');
if (hd && (!Ext.isIE || !e.within(hd, true))) {
this.activeHdRef = null;
@@ -1371,7 +1367,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- findHeaderIndex: function(hd) {
+ findHeaderIndex: function (hd) {
hd = hd.dom || hd;
var cs = hd.parentNode.childNodes;
for (var i = 0, c; (c = cs[i]); i++) {
@@ -1383,7 +1379,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- beforeColMenuShow: function() {
+ beforeColMenuShow: function () {
var cols = this.columns,
colCount = cols.length,
i,
@@ -1406,7 +1402,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- handleHdMenuClick: function(item) {
+ handleHdMenuClick: function (item) {
var index = this.hdCtxIndex,
id = item.getItemId();
@@ -1427,7 +1423,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return true;
},
- setColumnVisible: function(index, visible) {
+ setColumnVisible: function (index, visible) {
this.columns[index].hidden = !visible;
this.updateColumnWidths();
},
@@ -1435,26 +1431,26 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
/**
* Scrolls the grid to the top
*/
- scrollToTop: function() {
+ scrollToTop: function () {
this.innerBody.dom.scrollTop = 0;
this.innerBody.dom.scrollLeft = 0;
},
// private
- syncScroll: function() {
+ syncScroll: function () {
this.syncHeaderScroll();
var mb = this.innerBody.dom;
this.fireEvent('bodyscroll', mb.scrollLeft, mb.scrollTop);
},
// private
- syncHeaderScroll: function() {
+ syncHeaderScroll: function () {
var mb = this.innerBody.dom;
this.innerHd.dom.scrollLeft = mb.scrollLeft;
this.innerHd.dom.scrollLeft = mb.scrollLeft; // second time for IE (1/2 time first fails, other browsers ignore)
},
- registerNode: function(n) {
+ registerNode: function (n) {
Ext.ux.tree.TreeGrid.superclass.registerNode.call(this, n);
if (!n.uiProvider && !n.isRoot && !n.ui.isTreeGridNodeUI) {
n.ui = new Ext.ux.tree.TreeGridNodeUI(n);
@@ -1480,17 +1476,17 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
*/
minWidth: 14,
- constructor: function(config) {
+ constructor: function (config) {
Ext.apply(this, config);
Ext.tree.ColumnResizer.superclass.constructor.call(this);
},
- init: function(tree) {
+ init: function (tree) {
this.tree = tree;
tree.on('render', this.initEvents, this);
},
- initEvents: function(tree) {
+ initEvents: function (tree) {
tree.mon(tree.innerHd, 'mousemove', this.handleHdMove, this);
this.tracker = new Ext.dd.DragTracker({
onBeforeStart: this.onBeforeStart.createDelegate(this),
@@ -1504,7 +1500,7 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
tree.on('beforedestroy', this.tracker.destroy, this.tracker);
},
- handleHdMove: function(e, t) {
+ handleHdMove: function (e, t) {
var hw = 5,
x = e.getPageX(),
hd = e.getTarget('.x-treegrid-hd', 3, true);
@@ -1539,12 +1535,12 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
}
},
- onBeforeStart: function(e) {
+ onBeforeStart: function (e) {
this.dragHd = this.activeHd;
return !!this.dragHd;
},
- onStart: function(e) {
+ onStart: function (e) {
this.dragHeadersDisabled = this.tree.headersDisabled;
this.tree.headersDisabled = true;
this.proxy = this.tree.body.createChild({ cls: 'x-treegrid-resizer' });
@@ -1563,14 +1559,14 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
this.tree.innerBody.translatePoints(this.hdX).left;
},
- onDrag: function(e) {
+ onDrag: function (e) {
var cursorX = this.tracker.getXY()[0];
this.proxy.setWidth(
(cursorX - this.hdX).constrain(this.minWidth, this.maxWidth)
);
},
- onEnd: function(e) {
+ onEnd: function (e) {
var nw = this.proxy.getWidth(),
tree = this.tree,
disabled = this.dragHeadersDisabled;
@@ -1581,7 +1577,7 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
tree.columns[this.hdIndex].width = nw;
tree.updateColumnWidths();
- setTimeout(function() {
+ setTimeout(function () {
tree.headersDisabled = disabled;
}, 100);
},
@@ -1592,9 +1588,9 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
* licensing@sencha.com
* http://www.sencha.com/license
*/
-(function() {
+(function () {
Ext.override(Ext.list.Column, {
- init: function() {
+ init: function () {
var types = Ext.data.Types,
st = this.sortType;
@@ -1637,7 +1633,7 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
* @extends Ext.tree.TreeLoader
*/
Ext.ux.tree.TreeGridLoader = Ext.extend(Ext.tree.TreeLoader, {
- createNode: function(attr) {
+ createNode: function (attr) {
if (!attr.uiProvider) {
attr.uiProvider = Ext.ux.tree.TreeGridNodeUI;
}
@@ -1657,7 +1653,7 @@ Ext.ux.tree.TreeGridLoader = Ext.extend(Ext.tree.TreeLoader, {
Ext.ux.tree.TreeGridNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
isTreeGridNodeUI: true,
- renderElements: function(n, a, targetNode, bulkRender) {
+ renderElements: function (n, a, targetNode, bulkRender) {
var t = n.getOwnerTree(),
cols = t.columns,
c = cols[0],
@@ -1757,7 +1753,7 @@ Ext.ux.tree.TreeGridNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
},
// private
- animExpand: function(cb) {
+ animExpand: function (cb) {
this.ctNode.style.display = '';
Ext.ux.tree.TreeGridNodeUI.superclass.animExpand.call(this, cb);
},
@@ -1767,7 +1763,7 @@ Ext.ux.tree.TreeGridRootNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
isTreeGridNodeUI: true,
// private
- render: function() {
+ render: function () {
if (!this.rendered) {
this.wrap = this.ctNode = this.node.ownerTree.innerCt.dom;
this.node.expanded = true;
@@ -1777,13 +1773,13 @@ Ext.ux.tree.TreeGridRootNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
// weird table-layout: fixed issue in webkit
var ct = this.ctNode;
ct.style.tableLayout = null;
- (function() {
+ (function () {
ct.style.tableLayout = 'fixed';
}.defer(1));
}
},
- destroy: function() {
+ destroy: function () {
if (this.elNode) {
Ext.dd.Registry.unregister(this.elNode.id);
}
@@ -1804,7 +1800,7 @@ Ext.ux.tree.TreeGridRootNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
*/
Ext.override(Ext.ux.tree.TreeGridNodeUI, {
- updateColumns: function() {
+ updateColumns: function () {
if (!this.rendered) return;
var a = this.node.attributes,
@@ -1827,7 +1823,7 @@ Ext.override(Ext.ux.tree.TreeGridNodeUI, {
},
});
Ext.tree.RenderColumn = Ext.extend(Ext.tree.Column, {
- constructor: function(c) {
+ constructor: function (c) {
c.tpl = c.tpl || new Ext.XTemplate('{' + c.dataIndex + ':this.format}');
c.tpl.format = c.renderer;
c.tpl.col = this;
@@ -1877,7 +1873,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
*/
sortDescText: 'Sort Descending',
- constructor: function(tree, config) {
+ constructor: function (tree, config) {
if (!Ext.isObject(config)) {
config = {
property: tree.columns[0].dataIndex || 'text',
@@ -1895,7 +1891,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
tree.ddAppendOnly = true;
var me = this;
- this.defaultSortFn = function(n1, n2) {
+ this.defaultSortFn = function (n1, n2) {
var desc = me.dir && me.dir.toLowerCase() == 'desc',
prop = me.property || 'text',
sortType = me.sortType,
@@ -1938,7 +1934,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
tree.on('headermenuclick', this.onHeaderMenuClick, this);
},
- onAfterTreeRender: function() {
+ onAfterTreeRender: function () {
if (this.tree.hmenu) {
this.tree.hmenu.insert(
0,
@@ -1957,14 +1953,14 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
this.updateSortIcon(0, 'asc');
},
- onHeaderMenuClick: function(c, id, index) {
+ onHeaderMenuClick: function (c, id, index) {
if (id === 'asc' || id === 'desc') {
this.onHeaderClick(c, null, index);
return false;
}
},
- onHeaderClick: function(c, el, i) {
+ onHeaderClick: function (c, el, i) {
if (c && !this.tree.headersDisabled) {
var me = this;
@@ -1976,7 +1972,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
: this.caseSensitive;
me.sortFn = c.sortFn || this.defaultSortFn;
- this.tree.root.cascade(function(n) {
+ this.tree.root.cascade(function (n) {
if (!n.isLeaf()) {
me.updateSort(me.tree, n);
}
@@ -1987,13 +1983,13 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
},
// private
- updateSortIcon: function(col, dir) {
+ updateSortIcon: function (col, dir) {
var sc = this.sortClasses,
hds = this.tree.innerHd.select('td').removeClass(sc);
hds.item(col).addClass(sc[dir == 'desc' ? 1 : 0]);
},
});
-Ext.ux.JSLoader = function(options) {
+Ext.ux.JSLoader = function (options) {
Ext.ux.JSLoader.scripts[++Ext.ux.JSLoader.index] = {
url: options.url,
success: true,
@@ -2007,7 +2003,7 @@ Ext.ux.JSLoader = function(options) {
Ext.Ajax.request({
url: options.url,
scriptIndex: Ext.ux.JSLoader.index,
- success: function(response, options) {
+ success: function (response, options) {
var script = Ext.ux.JSLoader.scripts[options.scriptIndex];
try {
eval(response.responseText);
@@ -2019,7 +2015,7 @@ Ext.ux.JSLoader = function(options) {
script.onLoad.call(script.scope, script.options);
}
},
- failure: function(response, options) {
+ failure: function (response, options) {
var script = Ext.ux.JSLoader.scripts[options.scriptIndex];
script.success = false;
script.onError(script.options, response.status);
@@ -2028,7 +2024,7 @@ Ext.ux.JSLoader = function(options) {
};
Ext.ux.JSLoader.index = 0;
Ext.ux.JSLoader.scripts = [];
-Ext.ux.JSLoader.stdError = function(options, e) {
+Ext.ux.JSLoader.stdError = function (options, e) {
window.alert(
'Error loading script:\n\n' + options.url + '\n\nstatus: ' + e
);
@@ -2053,13 +2049,13 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
defaultValue: 0,
accelerate: false,
- constructor: function(config) {
+ constructor: function (config) {
Ext.ux.Spinner.superclass.constructor.call(this, config);
Ext.apply(this, config);
this.mimicing = false;
},
- init: function(field) {
+ init: function (field) {
this.field = field;
field.afterMethod('onRender', this.doRender, this);
@@ -2071,7 +2067,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
field.beforeMethod('onDestroy', this.doDestroy, this);
},
- doRender: function(ct, position) {
+ doRender: function (ct, position) {
var el = (this.el = this.field.getEl());
var f = this.field;
@@ -2116,7 +2112,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.initSpinner();
},
- doAfterRender: function() {
+ doAfterRender: function () {
var y;
if (Ext.isIE && this.el.getY() != (y = this.trigger.getY())) {
this.el.position();
@@ -2124,14 +2120,14 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
}
},
- doEnable: function() {
+ doEnable: function () {
if (this.wrap) {
this.disabled = false;
this.wrap.removeClass(this.field.disabledClass);
}
},
- doDisable: function() {
+ doDisable: function () {
if (this.wrap) {
this.disabled = true;
this.wrap.addClass(this.field.disabledClass);
@@ -2139,14 +2135,14 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
}
},
- doResize: function(w, h) {
+ doResize: function (w, h) {
if (typeof w == 'number') {
this.el.setWidth(w - this.trigger.getWidth());
}
this.wrap.setWidth(this.el.getWidth() + this.trigger.getWidth());
},
- doFocus: function() {
+ doFocus: function () {
if (!this.mimicing) {
this.wrap.addClass('x-trigger-wrap-focus');
this.mimicing = true;
@@ -2163,21 +2159,21 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
// private
- checkTab: function(e) {
+ checkTab: function (e) {
if (e.getKey() == e.TAB) {
this.triggerBlur();
}
},
// private
- mimicBlur: function(e) {
+ mimicBlur: function (e) {
if (!this.wrap.contains(e.target) && this.field.validateBlur(e)) {
this.triggerBlur();
}
},
// private
- triggerBlur: function() {
+ triggerBlur: function () {
this.mimicing = false;
Ext.get(Ext.isIE ? document.body : document).un(
'mousedown',
@@ -2190,12 +2186,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.onBlur.call(this.field);
},
- initTrigger: function() {
+ initTrigger: function () {
this.trigger.addClassOnOver('x-form-trigger-over');
this.trigger.addClassOnClick('x-form-trigger-click');
},
- initSpinner: function() {
+ initSpinner: function () {
this.field.addEvents({
spin: true,
spinup: true,
@@ -2203,22 +2199,22 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
});
this.keyNav = new Ext.KeyNav(this.el, {
- up: function(e) {
+ up: function (e) {
e.preventDefault();
this.onSpinUp();
},
- down: function(e) {
+ down: function (e) {
e.preventDefault();
this.onSpinDown();
},
- pageUp: function(e) {
+ pageUp: function (e) {
e.preventDefault();
this.onSpinUpAlternate();
},
- pageDown: function(e) {
+ pageDown: function (e) {
e.preventDefault();
this.onSpinDownAlternate();
},
@@ -2252,7 +2248,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.dd.onDrag = this.onDrag.createDelegate(this);
},
- onMouseOver: function() {
+ onMouseOver: function () {
if (this.disabled) {
return;
}
@@ -2265,12 +2261,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onMouseOut: function() {
+ onMouseOut: function () {
this.trigger.removeClass(this.tmpHoverClass);
},
//private
- onMouseMove: function() {
+ onMouseMove: function () {
if (this.disabled) {
return;
}
@@ -2285,7 +2281,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onMouseDown: function() {
+ onMouseDown: function () {
if (this.disabled) {
return;
}
@@ -2298,12 +2294,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onMouseUp: function() {
+ onMouseUp: function () {
this.trigger.removeClass(this.tmpClickClass);
},
//private
- onTriggerClick: function() {
+ onTriggerClick: function () {
if (this.disabled || this.el.dom.readOnly) {
return;
}
@@ -2313,7 +2309,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- getMiddle: function() {
+ getMiddle: function () {
var t = this.trigger.getTop();
var h = this.trigger.getHeight();
var middle = t + h / 2;
@@ -2322,7 +2318,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
//private
//checks if control is allowed to spin
- isSpinnable: function() {
+ isSpinnable: function () {
if (this.disabled || this.el.dom.readOnly) {
Ext.EventObject.preventDefault(); //prevent scrolling when disabled/readonly
return false;
@@ -2330,7 +2326,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
return true;
},
- handleMouseWheel: function(e) {
+ handleMouseWheel: function (e) {
//disable scrolling when not focused
if (this.wrap.hasClass('x-trigger-wrap-focus') == false) {
return;
@@ -2347,18 +2343,18 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- startDrag: function() {
+ startDrag: function () {
this.proxy.show();
this._previousY = Ext.fly(this.dd.getDragEl()).getTop();
},
//private
- endDrag: function() {
+ endDrag: function () {
this.proxy.hide();
},
//private
- onDrag: function() {
+ onDrag: function () {
if (this.disabled) {
return;
}
@@ -2379,7 +2375,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinUp: function() {
+ onSpinUp: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -2394,7 +2390,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinDown: function() {
+ onSpinDown: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -2409,7 +2405,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinUpAlternate: function() {
+ onSpinUpAlternate: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -2419,7 +2415,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinDownAlternate: function() {
+ onSpinDownAlternate: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -2428,7 +2424,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.fireEvent('spindown', this);
},
- spin: function(down, alternate) {
+ spin: function (down, alternate) {
var v = parseFloat(this.field.getValue());
var incr =
alternate == true
@@ -2441,7 +2437,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.setRawValue(v);
},
- fixBoundries: function(value) {
+ fixBoundries: function (value) {
var v = value;
if (this.field.minValue != undefined && v < this.field.minValue) {
@@ -2455,7 +2451,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
// private
- fixPrecision: function(value) {
+ fixPrecision: function (value) {
var nan = isNaN(value);
if (
!this.field.allowDecimals ||
@@ -2470,7 +2466,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
);
},
- doDestroy: function() {
+ doDestroy: function () {
if (this.trigger) {
this.trigger.remove();
}
@@ -2692,7 +2688,7 @@ sb.setStatus({
activeThreadId: 0,
// private
- initComponent: function() {
+ initComponent: function () {
if (this.statusAlign == 'right') {
this.cls += ' x-status-right';
}
@@ -2700,7 +2696,7 @@ sb.setStatus({
},
// private
- afterRender: function() {
+ afterRender: function () {
Ext.ux.StatusBar.superclass.afterRender.call(this);
var right = this.statusAlign == 'right';
@@ -2769,7 +2765,7 @@ statusBar.setStatus({
</code></pre>
* @return {Ext.ux.StatusBar} this
*/
- setStatus: function(o) {
+ setStatus: function (o) {
o = o || {};
if (typeof o == 'string') {
@@ -2816,7 +2812,7 @@ statusBar.setStatus({
* </ul>
* @return {Ext.ux.StatusBar} this
*/
- clearStatus: function(o) {
+ clearStatus: function (o) {
o = o || {};
if (o.threadId && o.threadId !== this.activeThreadId) {
@@ -2839,7 +2835,7 @@ statusBar.setStatus({
remove: false,
useDisplay: true,
scope: this,
- callback: function() {
+ callback: function () {
this.setStatus({
text: text,
iconCls: iconCls,
@@ -2865,7 +2861,7 @@ statusBar.setStatus({
* @param {String} text (optional) The text to set (defaults to '')
* @return {Ext.ux.StatusBar} this
*/
- setText: function(text) {
+ setText: function (text) {
this.activeThreadId++;
this.text = text || '';
if (this.rendered) {
@@ -2878,7 +2874,7 @@ statusBar.setStatus({
* Returns the current status text.
* @return {String} The status text
*/
- getText: function() {
+ getText: function () {
return this.text;
},
@@ -2888,7 +2884,7 @@ statusBar.setStatus({
* @param {String} iconCls (optional) The icon class to set (defaults to '', and any current icon class is removed)
* @return {Ext.ux.StatusBar} this
*/
- setIcon: function(cls) {
+ setIcon: function (cls) {
this.activeThreadId++;
cls = cls || '';
@@ -2917,7 +2913,7 @@ statusBar.setStatus({
* {@link #busyIconCls} will be used in conjunction with all of the default options for {@link #setStatus}.
* @return {Ext.ux.StatusBar} this
*/
- showBusy: function(o) {
+ showBusy: function (o) {
if (typeof o == 'string') {
o = { text: o };
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions.js b/deluge/ui/web/js/extjs/ext-extensions.js
new file mode 100644
index 0000000..e6cb62c
--- /dev/null
+++ b/deluge/ui/web/js/extjs/ext-extensions.js
@@ -0,0 +1,84 @@
+Ext.ns("Ext.ux.form");
+Ext.ux.form.FileUploadField=Ext.extend(Ext.form.TextField,{buttonText:"Browse...",buttonOnly:!1,buttonOffset:3,multiple:!1,readOnly:!0,autoSize:Ext.emptyFn,initComponent:function(){Ext.ux.form.FileUploadField.superclass.initComponent.call(this);this.addEvents("fileselected")},onRender:function(a,b){Ext.ux.form.FileUploadField.superclass.onRender.call(this,a,b);this.wrap=this.el.wrap({cls:"x-form-field-wrap x-form-file-wrap"});this.el.addClass("x-form-file-text");this.el.dom.removeAttribute("name");this.createFileInput();
+var c=Ext.applyIf(this.buttonCfg||{},{text:this.buttonText});this.button=new Ext.Button(Ext.apply(c,{renderTo:this.wrap,cls:"x-form-file-btn"+(c.iconCls?" x-btn-icon":"")}));this.buttonOnly&&(this.el.hide(),this.wrap.setWidth(this.button.getEl().getWidth()));this.bindListeners();this.resizeEl=this.positionEl=this.wrap},bindListeners:function(){this.fileInput.on({scope:this,mouseenter:function(){this.button.addClass(["x-btn-over","x-btn-focus"])},mouseleave:function(){this.button.removeClass(["x-btn-over",
+"x-btn-focus","x-btn-click"])},mousedown:function(){this.button.addClass("x-btn-click")},mouseup:function(){this.button.removeClass(["x-btn-over","x-btn-focus","x-btn-click"])},change:function(){var a=this.fileInput.dom.files;a||(a=this.fileInput.dom.value);this.setValue(a);this.fireEvent("fileselected",this,a)}})},createFileInput:function(){this.fileInput=this.wrap.createChild({id:this.getFileInputId(),name:this.name||this.getId(),cls:"x-form-file",tag:"input",type:"file",size:1});this.fileInput.dom.multiple=
+this.multiple},reset:function(){this.rendered&&(this.fileInput.remove(),this.createFileInput(),this.bindListeners());Ext.ux.form.FileUploadField.superclass.reset.call(this)},getFileInputId:function(){return this.id+"-file"},onResize:function(a,b){Ext.ux.form.FileUploadField.superclass.onResize.call(this,a,b);this.wrap.setWidth(a);this.buttonOnly||(a=this.wrap.getWidth()-this.button.getEl().getWidth()-this.buttonOffset,this.el.setWidth(a))},onDestroy:function(){Ext.ux.form.FileUploadField.superclass.onDestroy.call(this);
+Ext.destroy(this.fileInput,this.button,this.wrap)},onDisable:function(){Ext.ux.form.FileUploadField.superclass.onDisable.call(this);this.doDisable(!0)},onEnable:function(){Ext.ux.form.FileUploadField.superclass.onEnable.call(this);this.doDisable(!1)},doDisable:function(a){this.fileInput.dom.disabled=a;this.button.setDisabled(a)},preFocus:Ext.emptyFn,alignErrorIcon:function(){this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0])}});Ext.reg("fileuploadfield",Ext.ux.form.FileUploadField);
+Ext.form.FileUploadField=Ext.ux.form.FileUploadField;
+Ext.override(Ext.form.RadioGroup,{afterRender:function(){this.items.each(function(a){this.relayEvents(a,["check"])},this);this.lazyValue&&(this.setValue(this.value),delete this.value,delete this.lazyValue);Ext.form.RadioGroup.superclass.afterRender.call(this)},getName:function(){return this.items.first().getName()},getValue:function(){return this.items.first().getGroupValue()},setValue:function(a){this.items.each?this.items.each(function(b){if(b.rendered){var c=b.el.getValue()==String(a);b.el.dom.checked=
+c;b.el.dom.defaultChecked=c;b.wrap[c?"addClass":"removeClass"](b.checkedCls)}}):(this.value=a,this.lazyValue=!0)}});Ext.ns("Ext.ux.form");
+Ext.ux.form.SpinnerField=Ext.extend(Ext.form.NumberField,{actionMode:"wrap",deferHeight:!0,autoSize:Ext.emptyFn,onBlur:Ext.emptyFn,adjustSize:Ext.BoxComponent.prototype.adjustSize,constructor:function(a){var b=Ext.copyTo({},a,"incrementValue,alternateIncrementValue,accelerate,defaultValue,triggerClass,splitterClass"),b=this.spinner=new Ext.ux.Spinner(b),b=a.plugins?Ext.isArray(a.plugins)?a.plugins.push(b):[a.plugins,b]:b;Ext.ux.form.SpinnerField.superclass.constructor.call(this,Ext.apply(a,{plugins:b}))},
+getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},alignErrorIcon:function(){this.wrap&&this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0])},validateBlur:function(){return!0}});Ext.reg("spinnerfield",Ext.ux.form.SpinnerField);Ext.form.SpinnerField=Ext.ux.form.SpinnerField;Ext.override(Ext.ux.form.SpinnerField,{onBlur:Ext.form.Field.prototype.onBlur});Ext.ns("Ext.ux.form");
+Ext.ux.form.SpinnerGroup=Ext.extend(Ext.form.CheckboxGroup,{defaultType:"spinnerfield",anchor:"98%",groupCls:"x-form-spinner-group",colCfg:{},onRender:function(a,b){if(!this.el){var c={cls:this.groupCls,layout:"column",border:!1,renderTo:a},d=Ext.apply({defaultType:this.defaultType,layout:"form",border:!1,labelWidth:60,defaults:{hideLabel:!0,anchor:"60%"}},this.colCfg);if(this.items[0].items){Ext.apply(c,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items});for(var e=
+0,g=this.items.length;e<g;e++)Ext.applyIf(this.items[e],d)}else{var f,h=[];"string"==typeof this.columns&&(this.columns=this.items.length);if(!Ext.isArray(this.columns)){f=[];for(e=0;e<this.columns;e++)f.push(0.01*(100/this.columns));this.columns=f}f=this.columns.length;for(e=0;e<f;e++)g=Ext.apply({items:[]},d),g[1>=this.columns[e]?"columnWidth":"width"]=this.columns[e],this.defaults&&(g.defaults=Ext.apply(g.defaults||{},this.defaults)),h.push(g);if(this.vertical)for(var d=Math.ceil(this.items.length/
+f),k=0,e=0,g=this.items.length;e<g;e++)0<e&&0==e%d&&k++,this.items[e].fieldLabel&&(this.items[e].hideLabel=!1),h[k].items.push(this.items[e]);else{e=0;for(g=this.items.length;e<g;e++)d=e%f,this.items[e].fieldLabel&&(this.items[e].hideLabel=!1),h[d].items.push(this.items[e])}Ext.apply(c,{layoutConfig:{columns:f},items:h})}this.panel=new Ext.Panel(c);this.el=this.panel.getEl();this.forId&&this.itemCls&&(c=this.el.up(this.itemCls).child("label",!0))&&c.setAttribute("htmlFor",this.forId);c=this.panel.findBy(function(a){return a.isFormField},
+this);this.items=new Ext.util.MixedCollection;this.items.addAll(c);this.items.each(function(a){a.on("spin",this.onFieldChange,this);a.on("change",this.onFieldChange,this)},this);this.lazyValueSet&&(this.setValue(this.value),delete this.value,delete this.lazyValueSet);this.lazyRawValueSet&&(this.setRawValue(this.rawValue),delete this.rawValue,delete this.lazyRawValueSet)}Ext.ux.form.SpinnerGroup.superclass.onRender.call(this,a,b)},onFieldChange:function(a){this.fireEvent("change",this,this.getValue())},
+initValue:Ext.emptyFn,getValue:function(){var a=[this.items.getCount()];this.items.each(function(b,c){a[c]=Number(b.getValue())});return a},getRawValue:function(){var a=[this.items.getCount()];this.items.each(function(b,c){a[c]=Number(b.getRawValue())});return a},setValue:function(a){this.rendered?this.items.each(function(b,c){b.setValue(a[c])}):(this.value=a,this.lazyValueSet=!0)},setRawValue:function(a){this.rendered?this.items.each(function(b,c){b.setRawValue(a[c])}):(this.rawValue=a,this.lazyRawValueSet=
+!0)}});Ext.reg("spinnergroup",Ext.ux.form.SpinnerGroup);Ext.namespace("Ext.ux.form");
+Ext.ux.form.ToggleField=Ext.extend(Ext.form.Field,{cls:"x-toggle-field",initComponent:function(){Ext.ux.form.ToggleField.superclass.initComponent.call(this);this.toggle=new Ext.form.Checkbox;this.toggle.on("check",this.onToggleCheck,this);this.input=new Ext.form.TextField({disabled:!0})},onRender:function(a,b){this.el||(this.panel=new Ext.Panel({cls:this.groupCls,layout:"table",layoutConfig:{columns:2},border:!1,renderTo:a}),this.panel.ownerCt=this,this.el=this.panel.getEl(),this.panel.add(this.toggle),
+this.panel.add(this.input),this.panel.doLayout(),this.toggle.getEl().parent().setStyle("padding-right","10px"));Ext.ux.form.ToggleField.superclass.onRender.call(this,a,b)},onResize:function(a,b){this.panel.setSize(a,b);this.panel.doLayout();var c=a-this.toggle.getSize().width-25;this.input.setSize(c,b)},onToggleCheck:function(a,b){this.input.setDisabled(!b)}});Ext.reg("togglefield",Ext.ux.form.ToggleField);Ext.ns("Ext.ux.grid");
+Ext.ux.grid.BufferView=Ext.extend(Ext.grid.GridView,{rowHeight:19,borderHeight:2,scrollDelay:100,cacheSize:20,cleanDelay:500,initTemplates:function(){Ext.ux.grid.BufferView.superclass.initTemplates.call(this);var a=this.templates;a.rowHolder=new Ext.Template('<div class="x-grid3-row {alt}" style="{tstyle}"></div>');a.rowHolder.disableFormats=!0;a.rowHolder.compile();a.rowBody=new Ext.Template('<table class="x-grid3-row-table" border="0" cellspacing="0" cellpadding="0" style="{tstyle}">',"<tbody><tr>{cells}</tr>",
+this.enableRowBody?'<tr class="x-grid3-row-body-tr" style="{bodyStyle}"><td colspan="{cols}" class="x-grid3-body-cell" tabIndex="0" hidefocus="on"><div class="x-grid3-row-body">{body}</div></td></tr>':"","</tbody></table>");a.rowBody.disableFormats=!0;a.rowBody.compile()},getStyleRowHeight:function(){return Ext.isBorderBox?this.rowHeight+this.borderHeight:this.rowHeight},getCalculatedRowHeight:function(){return this.rowHeight+this.borderHeight},getVisibleRowCount:function(){var a=this.getCalculatedRowHeight(),
+b=this.scroller.dom.clientHeight;return 1>b?0:Math.ceil(b/a)},getVisibleRows:function(){var a=this.getVisibleRowCount(),b=this.scroller.dom.scrollTop,b=0===b?0:Math.floor(b/this.getCalculatedRowHeight())-1;return{first:Math.max(b,0),last:Math.min(b+a+2,this.ds.getCount()-1)}},doRender:function(a,b,c,d,e,g,f){for(var h=this.templates,k=h.cell,l=h.row,t=h.rowBody,p=e-1,u=this.getStyleRowHeight(),y=this.getVisibleRows(),x=[],n,m={},q={tstyle:"width:"+this.getTotalWidth()+";height:"+u+"px;"},r,w=0,A=
+b.length;w<A;w++){r=b[w];var u=[],v=w+d,z=v>=y.first&&v<=y.last;if(z)for(var s=0;s<e;s++){n=a[s];m.id=n.id;m.css=0===s?"x-grid3-cell-first ":s==p?"x-grid3-cell-last ":"";m.attr=m.cellAttr="";m.value=n.renderer(r.data[n.name],m,r,v,s,c);m.style=n.style;if(void 0===m.value||""===m.value)m.value="&#160;";r.dirty&&"undefined"!==typeof r.modified[n.name]&&(m.css+=" x-grid3-dirty-cell");u[u.length]=k.apply(m)}n=[];g&&0===(v+1)%2&&(n[0]="x-grid3-row-alt");r.dirty&&(n[1]=" x-grid3-dirty-row");q.cols=e;this.getRowClass&&
+(n[2]=this.getRowClass(r,v,q,c));q.alt=n.join(" ");q.cells=u.join("");x[x.length]=!z?h.rowHolder.apply(q):f?t.apply(q):l.apply(q)}return x.join("")},isRowRendered:function(a){return(a=this.getRow(a))&&0<a.childNodes.length},syncScroll:function(){Ext.ux.grid.BufferView.superclass.syncScroll.apply(this,arguments);this.update()},update:function(){this.scrollDelay?(this.renderTask||(this.renderTask=new Ext.util.DelayedTask(this.doUpdate,this)),this.renderTask.delay(this.scrollDelay)):this.doUpdate()},
+onRemove:function(a,b,c,d){Ext.ux.grid.BufferView.superclass.onRemove.apply(this,arguments);!0!==d&&this.update()},doUpdate:function(){if(0<this.getVisibleRowCount()){for(var a=this.grid,b=a.colModel,c=a.store,d=this.getColumnData(),e=this.getVisibleRows(),g,f=e.first;f<=e.last;f++)if(!this.isRowRendered(f)&&(g=this.getRow(f))){var h=this.doRender(d,[c.getAt(f)],c,f,b.getColumnCount(),a.stripeRows,!0);g.innerHTML=h}this.clean()}},clean:function(){this.cleanTask||(this.cleanTask=new Ext.util.DelayedTask(this.doClean,
+this));this.cleanTask.delay(this.cleanDelay)},doClean:function(){if(0<this.getVisibleRowCount()){var a=this.getVisibleRows();a.first-=this.cacheSize;a.last+=this.cacheSize;var b=0,c=this.getRows();0>=a.first&&(b=a.last+1);for(var d=this.ds.getCount();b<d;b++)if((b<a.first||b>a.last)&&c[b].innerHTML)c[b].innerHTML=""}},removeTask:function(a){var b=this[a];b&&b.cancel&&(b.cancel(),this[a]=null)},destroy:function(){this.removeTask("cleanTask");this.removeTask("renderTask");Ext.ux.grid.BufferView.superclass.destroy.call(this)},
+layout:function(){Ext.ux.grid.BufferView.superclass.layout.call(this);this.update()}});
+Ext.override(Ext.layout.FormLayout,{renderItem:function(a,b,c){if(a&&!a.rendered&&(a.isFormField||a.fieldLabel)&&"hidden"!=a.inputType){var d=this.getTemplateArgs(a);"number"==typeof b&&(b=c.dom.childNodes[b]||null);a.formItem=b?this.fieldTpl.insertBefore(b,d,!0):this.fieldTpl.append(c,d,!0);a.actionMode="formItem";a.render("x-form-el-"+a.id);a.container=a.formItem;a.actionMode="container"}else Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments)}});
+Ext.override(Ext.tree.MultiSelectionModel,{onNodeClick:function(a,b){if(b.ctrlKey&&this.isSelected(a))this.unselect(a);else if(b.shiftKey&&!this.isSelected(a)){var c=a.parentNode;if(this.lastSelNode.parentNode.id==c.id){var d=c.indexOf(a),e=c.indexOf(this.lastSelNode);this.select(this.lastSelNode,b,!1,!0);d>e&&(d+=e,e=d-e,d-=e);c.eachChild(function(a){var f=c.indexOf(a);d<f&&f<e&&this.select(a,b,!0,!0)},this);this.select(a,b,!0)}}else this.select(a,b,b.ctrlKey)},select:function(a,b,c,d){!0!==c&&this.clearSelections(!0);
+if(this.isSelected(a))return this.lastSelNode=a;this.selNodes.push(a);this.lastSelNode=this.selMap[a.id]=a;a.ui.onSelectedChange(!0);!0!==d&&this.fireEvent("selectionchange",this,this.selNodes);return a}});Ext.ns("Ext.ux.tree");
+Ext.ux.tree.TreeGrid=Ext.extend(Ext.tree.TreePanel,{rootVisible:!1,useArrows:!0,lines:!1,borderWidth:Ext.isBorderBox?0:2,cls:"x-treegrid",columnResize:!0,enableSort:!0,reserveScrollOffset:!0,enableHdMenu:!0,columnsText:"Columns",initComponent:function(){this.root||(this.root=new Ext.tree.AsyncTreeNode({text:"Root"}));var a=this.loader;a?Ext.isObject(a)&&!a.load&&(a=new Ext.ux.tree.TreeGridLoader(a)):a=new Ext.ux.tree.TreeGridLoader({dataUrl:this.dataUrl,requestMethod:this.requestMethod,store:this.store});
+this.loader=a;Ext.ux.tree.TreeGrid.superclass.initComponent.call(this);this.initColumns();this.enableSort&&(this.treeGridSorter=new Ext.ux.tree.TreeGridSorter(this,this.enableSort));this.columnResize&&(this.colResizer=new Ext.tree.ColumnResizer(this.columnResize),this.colResizer.init(this));this.internalTpl||(this.internalTpl=new Ext.XTemplate('<div class="x-grid3-header">','<div class="x-treegrid-header-inner">','<div class="x-grid3-header-offset">','<table style="table-layout: fixed;" cellspacing="0" cellpadding="0" border="0"><colgroup><tpl for="columns"><col /></tpl></colgroup>',
+'<thead><tr class="x-grid3-hd-row">','<tpl for="columns">','<td class="x-grid3-hd x-grid3-cell x-treegrid-hd" style="text-align: {align};" id="',this.id,'-xlhd-{#}">','<div class="x-grid3-hd-inner x-treegrid-hd-inner" unselectable="on">',this.enableHdMenu?'<a class="x-grid3-hd-btn" href="#"></a>':"",'{header}<img class="x-grid3-sort-icon" src="',Ext.BLANK_IMAGE_URL,'" />',"</div>","</td></tpl>","</tr></thead>","</table>","</div></div>","</div>",'<div class="x-treegrid-root-node">','<table class="x-treegrid-root-table" cellpadding="0" cellspacing="0" style="table-layout: fixed;"></table>',
+"</div>"));this.colgroupTpl||(this.colgroupTpl=new Ext.XTemplate('<colgroup><tpl for="columns"><col style="width: {width}px"/></tpl></colgroup>'))},initColumns:function(){var a=this.columns,b=a.length,c=[],d,e;for(d=0;d<b;d++)e=a[d],e.isColumn||(e.xtype=e.xtype?/^tg/.test(e.xtype)?e.xtype:"tg"+e.xtype:"tgcolumn",e=Ext.create(e)),e.init(this),c.push(e),!1!==this.enableSort&&!1!==e.sortable&&(this.enableSort=e.sortable=!0);this.columns=c},onRender:function(){Ext.tree.TreePanel.superclass.onRender.apply(this,
+arguments);this.el.addClass("x-treegrid");this.outerCt=this.body.createChild({cls:"x-tree-root-ct x-treegrid-ct "+(this.useArrows?"x-tree-arrows":this.lines?"x-tree-lines":"x-tree-no-lines")});this.internalTpl.overwrite(this.outerCt,{columns:this.columns});this.mainHd=Ext.get(this.outerCt.dom.firstChild);this.innerHd=Ext.get(this.mainHd.dom.firstChild);this.innerBody=Ext.get(this.outerCt.dom.lastChild);this.innerCt=Ext.get(this.innerBody.dom.firstChild);this.colgroupTpl.insertFirst(this.innerCt,{columns:this.columns});
+this.hideHeaders?this.el.child(".x-grid3-header").setDisplayed("none"):!1!==this.enableHdMenu&&(this.hmenu=new Ext.menu.Menu({id:this.id+"-hctx"}),!1!==this.enableColumnHide&&(this.colMenu=new Ext.menu.Menu({id:this.id+"-hcols-menu"}),this.colMenu.on({scope:this,beforeshow:this.beforeColMenuShow,itemclick:this.handleHdMenuClick}),this.hmenu.add({itemId:"columns",hideOnClick:!1,text:this.columnsText,menu:this.colMenu,iconCls:"x-cols-icon"})),this.hmenu.on("itemclick",this.handleHdMenuClick,this))},
+setRootNode:function(a){a.attributes.uiProvider=Ext.ux.tree.TreeGridRootNodeUI;a=Ext.ux.tree.TreeGrid.superclass.setRootNode.call(this,a);this.innerCt&&this.colgroupTpl.insertFirst(this.innerCt,{columns:this.columns});return a},clearInnerCt:function(){if(Ext.isIE)for(var a=this.innerCt.dom;a.firstChild;)a.removeChild(a.firstChild);else Ext.ux.tree.TreeGrid.superclass.clearInnerCt.call(this)},initEvents:function(){Ext.ux.tree.TreeGrid.superclass.initEvents.apply(this,arguments);this.mon(this.innerBody,
+"scroll",this.syncScroll,this);this.mon(this.innerHd,"click",this.handleHdDown,this);this.mon(this.mainHd,{scope:this,mouseover:this.handleHdOver,mouseout:this.handleHdOut})},onResize:function(a,b){Ext.ux.tree.TreeGrid.superclass.onResize.apply(this,arguments);var c=this.innerBody.dom,d=this.innerHd.dom;if(c&&(Ext.isNumber(b)&&(c.style.height=this.body.getHeight(!0)-d.offsetHeight+"px"),Ext.isNumber(a))){var e=Ext.num(this.scrollOffset,Ext.getScrollBarWidth());if(this.reserveScrollOffset||10<c.offsetWidth-
+c.clientWidth)this.setScrollOffset(e);else{var g=this;setTimeout(function(){g.setScrollOffset(10<c.offsetWidth-c.clientWidth?e:0)},10)}}},updateColumnWidths:function(){var a=this.columns,b=a.length,c=this.outerCt.query("colgroup"),d=c.length,e,g,f,h;for(f=0;f<b;f++){e=a[f];for(h=0;h<d;h++)g=c[h],g.childNodes[f].style.width=(e.hidden?0:e.width)+"px"}f=0;c=this.innerHd.query("td");for(len=c.length;f<len;f++)e=Ext.fly(c[f]),a[f]&&a[f].hidden?e.addClass("x-treegrid-hd-hidden"):e.removeClass("x-treegrid-hd-hidden");
+a=this.getTotalColumnWidth();Ext.fly(this.innerHd.dom.firstChild).setWidth(a+(this.scrollOffset||0));this.outerCt.select("table").setWidth(a);this.syncHeaderScroll()},getVisibleColumns:function(){var a=[],b=this.columns,c=b.length,d;for(d=0;d<c;d++)b[d].hidden||a.push(b[d]);return a},getTotalColumnWidth:function(){for(var a=0,b=0,c=this.getVisibleColumns(),d=c.length;b<d;b++)a+=c[b].width;return a},setScrollOffset:function(a){this.scrollOffset=a;this.updateColumnWidths()},handleHdDown:function(a,
+b){var c=a.getTarget(".x-treegrid-hd");if(c&&Ext.fly(b).hasClass("x-grid3-hd-btn")){var d=this.hmenu.items,e=this.columns,g=this.findHeaderIndex(c),e=e[g];a.stopEvent();Ext.fly(c).addClass("x-grid3-hd-menu-open");this.hdCtxIndex=g;this.fireEvent("headerbuttonclick",d,e,c,g);this.hmenu.on("hide",function(){Ext.fly(c).removeClass("x-grid3-hd-menu-open")},this,{single:!0});this.hmenu.show(b,"tl-bl?")}else c&&(g=this.findHeaderIndex(c),this.fireEvent("headerclick",this.columns[g],c,g))},handleHdOver:function(a,
+b){var c=a.getTarget(".x-treegrid-hd");if(c&&!this.headersDisabled){index=this.findHeaderIndex(c);this.activeHdRef=b;this.activeHdIndex=index;var d=Ext.get(c);this.activeHdRegion=d.getRegion();d.addClass("x-grid3-hd-over");if(this.activeHdBtn=d.child(".x-grid3-hd-btn"))this.activeHdBtn.dom.style.height=c.firstChild.offsetHeight-1+"px"}},handleHdOut:function(a,b){var c=a.getTarget(".x-treegrid-hd");if(c&&(!Ext.isIE||!a.within(c,!0)))this.activeHdRef=null,Ext.fly(c).removeClass("x-grid3-hd-over"),c.style.cursor=
+""},findHeaderIndex:function(a){a=a.dom||a;for(var b=a.parentNode.childNodes,c=0,d;d=b[c];c++)if(d==a)return c;return-1},beforeColMenuShow:function(){var a=this.columns,b=a.length,c,d;this.colMenu.removeAll();for(c=1;c<b;c++)d=a[c],!1!==d.hideable&&this.colMenu.add(new Ext.menu.CheckItem({itemId:"col-"+c,text:d.header,checked:!d.hidden,hideOnClick:!1,disabled:!1===d.hideable}))},handleHdMenuClick:function(a){var b=this.hdCtxIndex,c=a.getItemId();!1!==this.fireEvent("headermenuclick",this.columns[b],
+c,b)&&(b=c.substr(4),0<b&&this.columns[b]&&this.setColumnVisible(b,!a.checked));return!0},setColumnVisible:function(a,b){this.columns[a].hidden=!b;this.updateColumnWidths()},scrollToTop:function(){this.innerBody.dom.scrollTop=0;this.innerBody.dom.scrollLeft=0},syncScroll:function(){this.syncHeaderScroll();var a=this.innerBody.dom;this.fireEvent("bodyscroll",a.scrollLeft,a.scrollTop)},syncHeaderScroll:function(){var a=this.innerBody.dom;this.innerHd.dom.scrollLeft=a.scrollLeft;this.innerHd.dom.scrollLeft=
+a.scrollLeft},registerNode:function(a){Ext.ux.tree.TreeGrid.superclass.registerNode.call(this,a);!a.uiProvider&&(!a.isRoot&&!a.ui.isTreeGridNodeUI)&&(a.ui=new Ext.ux.tree.TreeGridNodeUI(a))}});Ext.reg("treegrid",Ext.ux.tree.TreeGrid);
+Ext.tree.ColumnResizer=Ext.extend(Ext.util.Observable,{minWidth:14,constructor:function(a){Ext.apply(this,a);Ext.tree.ColumnResizer.superclass.constructor.call(this)},init:function(a){this.tree=a;a.on("render",this.initEvents,this)},initEvents:function(a){a.mon(a.innerHd,"mousemove",this.handleHdMove,this);this.tracker=new Ext.dd.DragTracker({onBeforeStart:this.onBeforeStart.createDelegate(this),onStart:this.onStart.createDelegate(this),onDrag:this.onDrag.createDelegate(this),onEnd:this.onEnd.createDelegate(this),
+tolerance:3,autoStart:300});this.tracker.initEl(a.innerHd);a.on("beforedestroy",this.tracker.destroy,this.tracker)},handleHdMove:function(a,b){var c=a.getPageX(),d=a.getTarget(".x-treegrid-hd",3,!0);if(d){var e=d.getRegion(),g=d.dom.style,f=d.dom.parentNode;if(5>=c-e.left&&d.dom!==f.firstChild){for(c=d.dom.previousSibling;c&&Ext.fly(c).hasClass("x-treegrid-hd-hidden");)c=c.previousSibling;c&&(this.activeHd=Ext.get(c),g.cursor=Ext.isWebKit?"e-resize":"col-resize")}else if(5>=e.right-c){for(c=d.dom;c&&
+Ext.fly(c).hasClass("x-treegrid-hd-hidden");)c=c.previousSibling;c&&(this.activeHd=Ext.get(c),g.cursor=Ext.isWebKit?"w-resize":"col-resize")}else delete this.activeHd,g.cursor=""}},onBeforeStart:function(a){this.dragHd=this.activeHd;return!!this.dragHd},onStart:function(a){this.dragHeadersDisabled=this.tree.headersDisabled;this.tree.headersDisabled=!0;this.proxy=this.tree.body.createChild({cls:"x-treegrid-resizer"});this.proxy.setHeight(this.tree.body.getHeight());a=this.tracker.getXY()[0];this.hdX=
+this.dragHd.getX();this.hdIndex=this.tree.findHeaderIndex(this.dragHd);this.proxy.setX(this.hdX);this.proxy.setWidth(a-this.hdX);this.maxWidth=this.tree.outerCt.getWidth()-this.tree.innerBody.translatePoints(this.hdX).left},onDrag:function(a){a=this.tracker.getXY()[0];this.proxy.setWidth((a-this.hdX).constrain(this.minWidth,this.maxWidth))},onEnd:function(a){a=this.proxy.getWidth();var b=this.tree,c=this.dragHeadersDisabled;this.proxy.remove();delete this.dragHd;b.columns[this.hdIndex].width=a;b.updateColumnWidths();
+setTimeout(function(){b.headersDisabled=c},100)}});
+(function(){Ext.override(Ext.list.Column,{init:function(){var a=Ext.data.Types,b=this.sortType;this.type?Ext.isString(this.type)&&(this.type=Ext.data.Types[this.type.toUpperCase()]||a.AUTO):this.type=a.AUTO;Ext.isString(b)?this.sortType=Ext.data.SortTypes[b]:Ext.isEmpty(b)&&(this.sortType=this.type.sortType)}});Ext.tree.Column=Ext.extend(Ext.list.Column,{});Ext.tree.NumberColumn=Ext.extend(Ext.list.NumberColumn,{});Ext.tree.DateColumn=Ext.extend(Ext.list.DateColumn,{});Ext.tree.BooleanColumn=Ext.extend(Ext.list.BooleanColumn,
+{});Ext.reg("tgcolumn",Ext.tree.Column);Ext.reg("tgnumbercolumn",Ext.tree.NumberColumn);Ext.reg("tgdatecolumn",Ext.tree.DateColumn);Ext.reg("tgbooleancolumn",Ext.tree.BooleanColumn)})();Ext.ux.tree.TreeGridLoader=Ext.extend(Ext.tree.TreeLoader,{createNode:function(a){a.uiProvider||(a.uiProvider=Ext.ux.tree.TreeGridNodeUI);return Ext.tree.TreeLoader.prototype.createNode.call(this,a)}});
+Ext.ux.tree.TreeGridNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{isTreeGridNodeUI:!0,renderElements:function(a,b,c,d){var e=a.getOwnerTree(),g=e.columns,f=g[0],h,k,l;this.indentMarkup=a.parentNode?a.parentNode.ui.getChildIndent():"";k=['<tbody class="x-tree-node">','<tr ext:tree-node-id="',a.id,'" class="x-tree-node-el x-tree-node-leaf ',b.cls,'">','<td class="x-treegrid-col">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />',
+'<img src="',b.icon||this.emptyIcon,'" class="x-tree-node-icon',b.icon?" x-tree-node-inline-icon":"",b.iconCls?" "+b.iconCls:"",'" unselectable="on" />','<a hidefocus="on" class="x-tree-node-anchor" href="',b.href?b.href:"#",'" tabIndex="1" ',b.hrefTarget?' target="'+b.hrefTarget+'"':"",">",'<span unselectable="on">',f.tpl?f.tpl.apply(b):b[f.dataIndex]||f.text,"</span></a>","</td>"];h=1;for(l=g.length;h<l;h++)f=g[h],k.push('<td class="x-treegrid-col ',f.cls?f.cls:"",'">','<div unselectable="on" class="x-treegrid-text"',
+f.align?' style="text-align: '+f.align+';"':"",">",f.tpl?f.tpl.apply(b):b[f.dataIndex],"</div>","</td>");k.push('</tr><tr class="x-tree-node-ct"><td colspan="',g.length,'">','<table class="x-treegrid-node-ct-table" cellpadding="0" cellspacing="0" style="table-layout: fixed; display: none; width: ',e.innerCt.getWidth(),'px;"><colgroup>');h=0;for(l=g.length;h<l;h++)k.push('<col style="width: ',g[h].hidden?0:g[h].width,'px;" />');k.push("</colgroup></table></td></tr></tbody>");!0!==d&&a.nextSibling&&
+a.nextSibling.ui.getEl()?this.wrap=Ext.DomHelper.insertHtml("beforeBegin",a.nextSibling.ui.getEl(),k.join("")):this.wrap=Ext.DomHelper.insertHtml("beforeEnd",c,k.join(""));this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1].firstChild.firstChild;a=this.elNode.firstChild.childNodes;this.indentNode=a[0];this.ecNode=a[1];this.iconNode=a[2];this.anchor=a[3];this.textNode=a[3].firstChild},animExpand:function(a){this.ctNode.style.display="";Ext.ux.tree.TreeGridNodeUI.superclass.animExpand.call(this,
+a)}});Ext.ux.tree.TreeGridRootNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{isTreeGridNodeUI:!0,render:function(){this.rendered||(this.wrap=this.ctNode=this.node.ownerTree.innerCt.dom,this.node.expanded=!0);if(Ext.isWebKit){var a=this.ctNode;a.style.tableLayout=null;(function(){a.style.tableLayout="fixed"}).defer(1)}},destroy:function(){this.elNode&&Ext.dd.Registry.unregister(this.elNode.id);delete this.node},collapse:Ext.emptyFn,expand:Ext.emptyFn});
+Ext.override(Ext.ux.tree.TreeGridNodeUI,{updateColumns:function(){if(this.rendered){var a=this.node.attributes,b=this.node.getOwnerTree().columns,c=b[0];this.anchor.firstChild.innerHTML=c.tpl?c.tpl.apply(a):a[c.dataIndex]||c.text;i=1;for(len=b.length;i<len;i++)c=b[i],this.elNode.childNodes[i].firstChild.innerHTML=c.tpl?c.tpl.apply(a):a[c.dataIndex]||c.text}}});
+Ext.tree.RenderColumn=Ext.extend(Ext.tree.Column,{constructor:function(a){a.tpl=a.tpl||new Ext.XTemplate("{"+a.dataIndex+":this.format}");a.tpl.format=a.renderer;a.tpl.col=this;Ext.tree.RenderColumn.superclass.constructor.call(this,a)}});Ext.reg("tgrendercolumn",Ext.tree.RenderColumn);Ext.ns("Ext.ux.tree");
+Ext.ux.tree.TreeGridSorter=Ext.extend(Ext.tree.TreeSorter,{sortClasses:["sort-asc","sort-desc"],sortAscText:"Sort Ascending",sortDescText:"Sort Descending",constructor:function(a,b){Ext.isObject(b)||(b={property:a.columns[0].dataIndex||"text",folderSort:!0});Ext.ux.tree.TreeGridSorter.superclass.constructor.apply(this,arguments);this.tree=a;a.on("headerclick",this.onHeaderClick,this);a.ddAppendOnly=!0;var c=this;this.defaultSortFn=function(a,b){var g=c.dir&&"desc"==c.dir.toLowerCase(),f=c.property||
+"text",h=c.sortType,k=!0===c.caseSensitive,l=c.leafAttr||"leaf",t=a.attributes,p=b.attributes;if(c.folderSort){if(t[l]&&!p[l])return 1;if(!t[l]&&p[l])return-1}l=t[f];f=p[f];p=h?h(l):k?l:l.toUpperCase();v2=h?h(f):k?f:f.toUpperCase();return p<v2?g?1:-1:p>v2?g?-1:1:0};a.on("afterrender",this.onAfterTreeRender,this,{single:!0});a.on("headermenuclick",this.onHeaderMenuClick,this)},onAfterTreeRender:function(){this.tree.hmenu&&this.tree.hmenu.insert(0,{itemId:"asc",text:this.sortAscText,cls:"xg-hmenu-sort-asc"},
+{itemId:"desc",text:this.sortDescText,cls:"xg-hmenu-sort-desc"});this.updateSortIcon(0,"asc")},onHeaderMenuClick:function(a,b,c){if("asc"===b||"desc"===b)return this.onHeaderClick(a,null,c),!1},onHeaderClick:function(a,b,c){if(a&&!this.tree.headersDisabled){var d=this;d.property=a.dataIndex;d.dir=a.dir="desc"===a.dir?"asc":"desc";d.sortType=a.sortType;d.caseSensitive===Ext.isBoolean(a.caseSensitive)?a.caseSensitive:this.caseSensitive;d.sortFn=a.sortFn||this.defaultSortFn;this.tree.root.cascade(function(a){a.isLeaf()||
+d.updateSort(d.tree,a)});this.updateSortIcon(c,a.dir)}},updateSortIcon:function(a,b){var c=this.sortClasses;this.tree.innerHd.select("td").removeClass(c).item(a).addClass(c["desc"==b?1:0])}});
+Ext.ux.JSLoader=function(a){Ext.ux.JSLoader.scripts[++Ext.ux.JSLoader.index]={url:a.url,success:!0,jsLoadObj:null,options:a,onLoad:a.onLoad||Ext.emptyFn,onError:a.onError||Ext.ux.JSLoader.stdError,scope:a.scope||this};Ext.Ajax.request({url:a.url,scriptIndex:Ext.ux.JSLoader.index,success:function(a,c){var d=Ext.ux.JSLoader.scripts[c.scriptIndex];try{eval(a.responseText)}catch(e){d.success=!1,d.onError(d.options,e)}d.success&&d.onLoad.call(d.scope,d.options)},failure:function(a,c){var d=Ext.ux.JSLoader.scripts[c.scriptIndex];
+d.success=!1;d.onError(d.options,a.status)}})};Ext.ux.JSLoader.index=0;Ext.ux.JSLoader.scripts=[];Ext.ux.JSLoader.stdError=function(a,b){window.alert("Error loading script:\n\n"+a.url+"\n\nstatus: "+b)};
+Ext.ux.Spinner=Ext.extend(Ext.util.Observable,{incrementValue:1,alternateIncrementValue:5,triggerClass:"x-form-spinner-trigger",splitterClass:"x-form-spinner-splitter",alternateKey:Ext.EventObject.shiftKey,defaultValue:0,accelerate:!1,constructor:function(a){Ext.ux.Spinner.superclass.constructor.call(this,a);Ext.apply(this,a);this.mimicing=!1},init:function(a){this.field=a;a.afterMethod("onRender",this.doRender,this);a.afterMethod("onEnable",this.doEnable,this);a.afterMethod("onDisable",this.doDisable,
+this);a.afterMethod("afterRender",this.doAfterRender,this);a.afterMethod("onResize",this.doResize,this);a.afterMethod("onFocus",this.doFocus,this);a.beforeMethod("onDestroy",this.doDestroy,this)},doRender:function(a,b){var c=this.el=this.field.getEl(),d=this.field;d.wrap?this.wrap=d.wrap.addClass("x-form-field-wrap"):d.wrap=this.wrap=c.wrap({cls:"x-form-field-wrap"});this.trigger=this.wrap.createChild({tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.triggerClass});d.width||this.wrap.setWidth(c.getWidth()+
+this.trigger.getWidth());this.splitter=this.wrap.createChild({tag:"div",cls:this.splitterClass,style:"width:13px; height:2px;"});this.splitter.setRight(Ext.isIE?1:2).setTop(10).show();this.proxy=this.trigger.createProxy("",this.splitter,!0);this.proxy.addClass("x-form-spinner-proxy");this.proxy.setStyle("left","0px");this.proxy.setSize(14,1);this.proxy.hide();this.dd=new Ext.dd.DDProxy(this.splitter.dom.id,"SpinnerDrag",{dragElId:this.proxy.id});this.initTrigger();this.initSpinner()},doAfterRender:function(){var a;
+if(Ext.isIE&&this.el.getY()!=(a=this.trigger.getY()))this.el.position(),this.el.setY(a)},doEnable:function(){this.wrap&&(this.disabled=!1,this.wrap.removeClass(this.field.disabledClass))},doDisable:function(){this.wrap&&(this.disabled=!0,this.wrap.addClass(this.field.disabledClass),this.el.removeClass(this.field.disabledClass))},doResize:function(a,b){"number"==typeof a&&this.el.setWidth(a-this.trigger.getWidth());this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth())},doFocus:function(){this.mimicing||
+(this.wrap.addClass("x-trigger-wrap-focus"),this.mimicing=!0,Ext.get(Ext.isIE?document.body:document).on("mousedown",this.mimicBlur,this,{delay:10}),this.el.on("keydown",this.checkTab,this))},checkTab:function(a){a.getKey()==a.TAB&&this.triggerBlur()},mimicBlur:function(a){!this.wrap.contains(a.target)&&this.field.validateBlur(a)&&this.triggerBlur()},triggerBlur:function(){this.mimicing=!1;Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this);this.el.un("keydown",this.checkTab,
+this);this.field.beforeBlur();this.wrap.removeClass("x-trigger-wrap-focus");this.field.onBlur.call(this.field)},initTrigger:function(){this.trigger.addClassOnOver("x-form-trigger-over");this.trigger.addClassOnClick("x-form-trigger-click")},initSpinner:function(){this.field.addEvents({spin:!0,spinup:!0,spindown:!0});this.keyNav=new Ext.KeyNav(this.el,{up:function(a){a.preventDefault();this.onSpinUp()},down:function(a){a.preventDefault();this.onSpinDown()},pageUp:function(a){a.preventDefault();this.onSpinUpAlternate()},
+pageDown:function(a){a.preventDefault();this.onSpinDownAlternate()},scope:this});this.repeater=new Ext.util.ClickRepeater(this.trigger,{accelerate:this.accelerate});this.field.mon(this.repeater,"click",this.onTriggerClick,this,{preventDefault:!0});this.field.mon(this.trigger,{mouseover:this.onMouseOver,mouseout:this.onMouseOut,mousemove:this.onMouseMove,mousedown:this.onMouseDown,mouseup:this.onMouseUp,scope:this,preventDefault:!0});this.field.mon(this.wrap,"mousewheel",this.handleMouseWheel,this);
+this.dd.setXConstraint(0,0,10);this.dd.setYConstraint(1500,1500,10);this.dd.endDrag=this.endDrag.createDelegate(this);this.dd.startDrag=this.startDrag.createDelegate(this);this.dd.onDrag=this.onDrag.createDelegate(this)},onMouseOver:function(){if(!this.disabled){var a=this.getMiddle();this.tmpHoverClass=Ext.EventObject.getPageY()<a?"x-form-spinner-overup":"x-form-spinner-overdown";this.trigger.addClass(this.tmpHoverClass)}},onMouseOut:function(){this.trigger.removeClass(this.tmpHoverClass)},onMouseMove:function(){if(!this.disabled){var a=
+this.getMiddle();Ext.EventObject.getPageY()>a&&"x-form-spinner-overup"==this.tmpHoverClass||Ext.EventObject.getPageY()}},onMouseDown:function(){if(!this.disabled){var a=this.getMiddle();this.tmpClickClass=Ext.EventObject.getPageY()<a?"x-form-spinner-clickup":"x-form-spinner-clickdown";this.trigger.addClass(this.tmpClickClass)}},onMouseUp:function(){this.trigger.removeClass(this.tmpClickClass)},onTriggerClick:function(){if(!this.disabled&&!this.el.dom.readOnly){var a=this.getMiddle();this["onSpin"+
+(Ext.EventObject.getPageY()<a?"Up":"Down")]()}},getMiddle:function(){var a=this.trigger.getTop(),b=this.trigger.getHeight();return a+b/2},isSpinnable:function(){return this.disabled||this.el.dom.readOnly?(Ext.EventObject.preventDefault(),!1):!0},handleMouseWheel:function(a){if(!1!=this.wrap.hasClass("x-trigger-wrap-focus")){var b=a.getWheelDelta();0<b?(this.onSpinUp(),a.stopEvent()):0>b&&(this.onSpinDown(),a.stopEvent())}},startDrag:function(){this.proxy.show();this._previousY=Ext.fly(this.dd.getDragEl()).getTop()},
+endDrag:function(){this.proxy.hide()},onDrag:function(){if(!this.disabled){var a=Ext.fly(this.dd.getDragEl()).getTop(),b="";this._previousY>a&&(b="Up");this._previousY<a&&(b="Down");if(""!=b)this["onSpin"+b]();this._previousY=a}},onSpinUp:function(){if(!1!=this.isSpinnable())if(!0==Ext.EventObject.shiftKey)this.onSpinUpAlternate();else this.spin(!1,!1),this.field.fireEvent("spin",this),this.field.fireEvent("spinup",this)},onSpinDown:function(){if(!1!=this.isSpinnable())if(!0==Ext.EventObject.shiftKey)this.onSpinDownAlternate();
+else this.spin(!0,!1),this.field.fireEvent("spin",this),this.field.fireEvent("spindown",this)},onSpinUpAlternate:function(){!1!=this.isSpinnable()&&(this.spin(!1,!0),this.field.fireEvent("spin",this),this.field.fireEvent("spinup",this))},onSpinDownAlternate:function(){!1!=this.isSpinnable()&&(this.spin(!0,!0),this.field.fireEvent("spin",this),this.field.fireEvent("spindown",this))},spin:function(a,b){var c=parseFloat(this.field.getValue()),d=!0==b?this.alternateIncrementValue:this.incrementValue;
+!0==a?c-=d:c+=d;c=isNaN(c)?this.defaultValue:c;c=this.fixBoundries(c);this.field.setRawValue(c)},fixBoundries:function(a){void 0!=this.field.minValue&&a<this.field.minValue&&(a=this.field.minValue);void 0!=this.field.maxValue&&a>this.field.maxValue&&(a=this.field.maxValue);return this.fixPrecision(a)},fixPrecision:function(a){var b=isNaN(a);return!this.field.allowDecimals||-1==this.field.decimalPrecision||b||!a?b?"":a:parseFloat(parseFloat(a).toFixed(this.field.decimalPrecision))},doDestroy:function(){this.trigger&&
+this.trigger.remove();this.wrap&&(this.wrap.remove(),delete this.field.wrap);this.splitter&&this.splitter.remove();this.dd&&(this.dd.unreg(),this.dd=null);this.proxy&&this.proxy.remove();this.repeater&&this.repeater.purgeListeners();this.mimicing&&Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this)}});Ext.form.Spinner=Ext.ux.Spinner;
+Ext.ux.StatusBar=Ext.extend(Ext.Toolbar,{cls:"x-statusbar",busyIconCls:"x-status-busy",busyText:"Loading...",autoClear:5E3,emptyText:"&nbsp;",activeThreadId:0,initComponent:function(){"right"==this.statusAlign&&(this.cls+=" x-status-right");Ext.ux.StatusBar.superclass.initComponent.call(this)},afterRender:function(){Ext.ux.StatusBar.superclass.afterRender.call(this);var a="right"==this.statusAlign;this.currIconCls=this.iconCls||this.defaultIconCls;this.statusEl=new Ext.Toolbar.TextItem({cls:"x-status-text "+
+(this.currIconCls||""),text:this.text||this.defaultText||""});a?(this.add("->"),this.add(this.statusEl)):(this.insert(0,this.statusEl),this.insert(1,"->"));this.doLayout()},setStatus:function(a){a=a||{};"string"==typeof a&&(a={text:a});void 0!==a.text&&this.setText(a.text);void 0!==a.iconCls&&this.setIcon(a.iconCls);if(a.clear){a=a.clear;var b=this.autoClear,c={useDefaults:!0,anim:!0};"object"==typeof a?(a=Ext.applyIf(a,c),a.wait&&(b=a.wait)):"number"==typeof a?(b=a,a=c):"boolean"==typeof a&&(a=c);
+a.threadId=this.activeThreadId;this.clearStatus.defer(b,this,[a])}return this},clearStatus:function(a){a=a||{};if(a.threadId&&a.threadId!==this.activeThreadId)return this;var b=a.useDefaults?this.defaultText:this.emptyText,c=a.useDefaults?this.defaultIconCls?this.defaultIconCls:"":"";a.anim?this.statusEl.el.fadeOut({remove:!1,useDisplay:!0,scope:this,callback:function(){this.setStatus({text:b,iconCls:c});this.statusEl.el.show()}}):(this.statusEl.hide(),this.setStatus({text:b,iconCls:c}),this.statusEl.show());
+return this},setText:function(a){this.activeThreadId++;this.text=a||"";this.rendered&&this.statusEl.setText(this.text);return this},getText:function(){return this.text},setIcon:function(a){this.activeThreadId++;a=a||"";this.rendered?(this.currIconCls&&(this.statusEl.removeClass(this.currIconCls),this.currIconCls=null),0<a.length&&(this.statusEl.addClass(a),this.currIconCls=a)):this.currIconCls=a;return this},showBusy:function(a){"string"==typeof a&&(a={text:a});a=Ext.applyIf(a||{},{text:this.busyText,
+iconCls:this.busyIconCls});return this.setStatus(a)}});Ext.reg("statusbar",Ext.ux.StatusBar);
diff --git a/deluge/ui/web/js/extjs/ext-extensions/JSLoader.js b/deluge/ui/web/js/extjs/ext-extensions/JSLoader.js
index 9631fd8..e4691b0 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/JSLoader.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/JSLoader.js
@@ -1,4 +1,4 @@
-Ext.ux.JSLoader = function(options) {
+Ext.ux.JSLoader = function (options) {
Ext.ux.JSLoader.scripts[++Ext.ux.JSLoader.index] = {
url: options.url,
success: true,
@@ -12,7 +12,7 @@ Ext.ux.JSLoader = function(options) {
Ext.Ajax.request({
url: options.url,
scriptIndex: Ext.ux.JSLoader.index,
- success: function(response, options) {
+ success: function (response, options) {
var script = Ext.ux.JSLoader.scripts[options.scriptIndex];
try {
eval(response.responseText);
@@ -24,7 +24,7 @@ Ext.ux.JSLoader = function(options) {
script.onLoad.call(script.scope, script.options);
}
},
- failure: function(response, options) {
+ failure: function (response, options) {
var script = Ext.ux.JSLoader.scripts[options.scriptIndex];
script.success = false;
script.onError(script.options, response.status);
@@ -33,7 +33,7 @@ Ext.ux.JSLoader = function(options) {
};
Ext.ux.JSLoader.index = 0;
Ext.ux.JSLoader.scripts = [];
-Ext.ux.JSLoader.stdError = function(options, e) {
+Ext.ux.JSLoader.stdError = function (options, e) {
window.alert(
'Error loading script:\n\n' + options.url + '\n\nstatus: ' + e
);
diff --git a/deluge/ui/web/js/extjs/ext-extensions/Spinner.js b/deluge/ui/web/js/extjs/ext-extensions/Spinner.js
index ff272d2..ccef895 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/Spinner.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/Spinner.js
@@ -18,13 +18,13 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
defaultValue: 0,
accelerate: false,
- constructor: function(config) {
+ constructor: function (config) {
Ext.ux.Spinner.superclass.constructor.call(this, config);
Ext.apply(this, config);
this.mimicing = false;
},
- init: function(field) {
+ init: function (field) {
this.field = field;
field.afterMethod('onRender', this.doRender, this);
@@ -36,7 +36,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
field.beforeMethod('onDestroy', this.doDestroy, this);
},
- doRender: function(ct, position) {
+ doRender: function (ct, position) {
var el = (this.el = this.field.getEl());
var f = this.field;
@@ -81,7 +81,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.initSpinner();
},
- doAfterRender: function() {
+ doAfterRender: function () {
var y;
if (Ext.isIE && this.el.getY() != (y = this.trigger.getY())) {
this.el.position();
@@ -89,14 +89,14 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
}
},
- doEnable: function() {
+ doEnable: function () {
if (this.wrap) {
this.disabled = false;
this.wrap.removeClass(this.field.disabledClass);
}
},
- doDisable: function() {
+ doDisable: function () {
if (this.wrap) {
this.disabled = true;
this.wrap.addClass(this.field.disabledClass);
@@ -104,14 +104,14 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
}
},
- doResize: function(w, h) {
+ doResize: function (w, h) {
if (typeof w == 'number') {
this.el.setWidth(w - this.trigger.getWidth());
}
this.wrap.setWidth(this.el.getWidth() + this.trigger.getWidth());
},
- doFocus: function() {
+ doFocus: function () {
if (!this.mimicing) {
this.wrap.addClass('x-trigger-wrap-focus');
this.mimicing = true;
@@ -128,21 +128,21 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
// private
- checkTab: function(e) {
+ checkTab: function (e) {
if (e.getKey() == e.TAB) {
this.triggerBlur();
}
},
// private
- mimicBlur: function(e) {
+ mimicBlur: function (e) {
if (!this.wrap.contains(e.target) && this.field.validateBlur(e)) {
this.triggerBlur();
}
},
// private
- triggerBlur: function() {
+ triggerBlur: function () {
this.mimicing = false;
Ext.get(Ext.isIE ? document.body : document).un(
'mousedown',
@@ -155,12 +155,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.onBlur.call(this.field);
},
- initTrigger: function() {
+ initTrigger: function () {
this.trigger.addClassOnOver('x-form-trigger-over');
this.trigger.addClassOnClick('x-form-trigger-click');
},
- initSpinner: function() {
+ initSpinner: function () {
this.field.addEvents({
spin: true,
spinup: true,
@@ -168,22 +168,22 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
});
this.keyNav = new Ext.KeyNav(this.el, {
- up: function(e) {
+ up: function (e) {
e.preventDefault();
this.onSpinUp();
},
- down: function(e) {
+ down: function (e) {
e.preventDefault();
this.onSpinDown();
},
- pageUp: function(e) {
+ pageUp: function (e) {
e.preventDefault();
this.onSpinUpAlternate();
},
- pageDown: function(e) {
+ pageDown: function (e) {
e.preventDefault();
this.onSpinDownAlternate();
},
@@ -217,7 +217,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.dd.onDrag = this.onDrag.createDelegate(this);
},
- onMouseOver: function() {
+ onMouseOver: function () {
if (this.disabled) {
return;
}
@@ -230,12 +230,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onMouseOut: function() {
+ onMouseOut: function () {
this.trigger.removeClass(this.tmpHoverClass);
},
//private
- onMouseMove: function() {
+ onMouseMove: function () {
if (this.disabled) {
return;
}
@@ -250,7 +250,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onMouseDown: function() {
+ onMouseDown: function () {
if (this.disabled) {
return;
}
@@ -263,12 +263,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onMouseUp: function() {
+ onMouseUp: function () {
this.trigger.removeClass(this.tmpClickClass);
},
//private
- onTriggerClick: function() {
+ onTriggerClick: function () {
if (this.disabled || this.el.dom.readOnly) {
return;
}
@@ -278,7 +278,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- getMiddle: function() {
+ getMiddle: function () {
var t = this.trigger.getTop();
var h = this.trigger.getHeight();
var middle = t + h / 2;
@@ -287,7 +287,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
//private
//checks if control is allowed to spin
- isSpinnable: function() {
+ isSpinnable: function () {
if (this.disabled || this.el.dom.readOnly) {
Ext.EventObject.preventDefault(); //prevent scrolling when disabled/readonly
return false;
@@ -295,7 +295,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
return true;
},
- handleMouseWheel: function(e) {
+ handleMouseWheel: function (e) {
//disable scrolling when not focused
if (this.wrap.hasClass('x-trigger-wrap-focus') == false) {
return;
@@ -312,18 +312,18 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- startDrag: function() {
+ startDrag: function () {
this.proxy.show();
this._previousY = Ext.fly(this.dd.getDragEl()).getTop();
},
//private
- endDrag: function() {
+ endDrag: function () {
this.proxy.hide();
},
//private
- onDrag: function() {
+ onDrag: function () {
if (this.disabled) {
return;
}
@@ -344,7 +344,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinUp: function() {
+ onSpinUp: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -359,7 +359,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinDown: function() {
+ onSpinDown: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -374,7 +374,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinUpAlternate: function() {
+ onSpinUpAlternate: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -384,7 +384,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
- onSpinDownAlternate: function() {
+ onSpinDownAlternate: function () {
if (this.isSpinnable() == false) {
return;
}
@@ -393,7 +393,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.fireEvent('spindown', this);
},
- spin: function(down, alternate) {
+ spin: function (down, alternate) {
var v = parseFloat(this.field.getValue());
var incr =
alternate == true
@@ -406,7 +406,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.setRawValue(v);
},
- fixBoundries: function(value) {
+ fixBoundries: function (value) {
var v = value;
if (this.field.minValue != undefined && v < this.field.minValue) {
@@ -420,7 +420,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
// private
- fixPrecision: function(value) {
+ fixPrecision: function (value) {
var nan = isNaN(value);
if (
!this.field.allowDecimals ||
@@ -435,7 +435,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
);
},
- doDestroy: function() {
+ doDestroy: function () {
if (this.trigger) {
this.trigger.remove();
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions/StatusBar.js b/deluge/ui/web/js/extjs/ext-extensions/StatusBar.js
index a12b8f9..1f6a5f0 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/StatusBar.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/StatusBar.js
@@ -183,7 +183,7 @@ sb.setStatus({
activeThreadId: 0,
// private
- initComponent: function() {
+ initComponent: function () {
if (this.statusAlign == 'right') {
this.cls += ' x-status-right';
}
@@ -191,7 +191,7 @@ sb.setStatus({
},
// private
- afterRender: function() {
+ afterRender: function () {
Ext.ux.StatusBar.superclass.afterRender.call(this);
var right = this.statusAlign == 'right';
@@ -260,7 +260,7 @@ statusBar.setStatus({
</code></pre>
* @return {Ext.ux.StatusBar} this
*/
- setStatus: function(o) {
+ setStatus: function (o) {
o = o || {};
if (typeof o == 'string') {
@@ -307,7 +307,7 @@ statusBar.setStatus({
* </ul>
* @return {Ext.ux.StatusBar} this
*/
- clearStatus: function(o) {
+ clearStatus: function (o) {
o = o || {};
if (o.threadId && o.threadId !== this.activeThreadId) {
@@ -330,7 +330,7 @@ statusBar.setStatus({
remove: false,
useDisplay: true,
scope: this,
- callback: function() {
+ callback: function () {
this.setStatus({
text: text,
iconCls: iconCls,
@@ -356,7 +356,7 @@ statusBar.setStatus({
* @param {String} text (optional) The text to set (defaults to '')
* @return {Ext.ux.StatusBar} this
*/
- setText: function(text) {
+ setText: function (text) {
this.activeThreadId++;
this.text = text || '';
if (this.rendered) {
@@ -369,7 +369,7 @@ statusBar.setStatus({
* Returns the current status text.
* @return {String} The status text
*/
- getText: function() {
+ getText: function () {
return this.text;
},
@@ -379,7 +379,7 @@ statusBar.setStatus({
* @param {String} iconCls (optional) The icon class to set (defaults to '', and any current icon class is removed)
* @return {Ext.ux.StatusBar} this
*/
- setIcon: function(cls) {
+ setIcon: function (cls) {
this.activeThreadId++;
cls = cls || '';
@@ -408,7 +408,7 @@ statusBar.setStatus({
* {@link #busyIconCls} will be used in conjunction with all of the default options for {@link #setStatus}.
* @return {Ext.ux.StatusBar} this
*/
- showBusy: function(o) {
+ showBusy: function (o) {
if (typeof o == 'string') {
o = { text: o };
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions/form/FileUploadField.js b/deluge/ui/web/js/extjs/ext-extensions/form/FileUploadField.js
index ca15073..3ab2347 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/form/FileUploadField.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/form/FileUploadField.js
@@ -50,7 +50,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
autoSize: Ext.emptyFn,
// private
- initComponent: function() {
+ initComponent: function () {
Ext.ux.form.FileUploadField.superclass.initComponent.call(this);
this.addEvents(
@@ -66,7 +66,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
- onRender: function(ct, position) {
+ onRender: function (ct, position) {
Ext.ux.form.FileUploadField.superclass.onRender.call(
this,
ct,
@@ -97,30 +97,30 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
this.resizeEl = this.positionEl = this.wrap;
},
- bindListeners: function() {
+ bindListeners: function () {
this.fileInput.on({
scope: this,
- mouseenter: function() {
+ mouseenter: function () {
this.button.addClass(['x-btn-over', 'x-btn-focus']);
},
- mouseleave: function() {
+ mouseleave: function () {
this.button.removeClass([
'x-btn-over',
'x-btn-focus',
'x-btn-click',
]);
},
- mousedown: function() {
+ mousedown: function () {
this.button.addClass('x-btn-click');
},
- mouseup: function() {
+ mouseup: function () {
this.button.removeClass([
'x-btn-over',
'x-btn-focus',
'x-btn-click',
]);
},
- change: function() {
+ change: function () {
var value = this.fileInput.dom.files;
// Fallback to value.
if (!value) value = this.fileInput.dom.value;
@@ -130,7 +130,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
});
},
- createFileInput: function() {
+ createFileInput: function () {
this.fileInput = this.wrap.createChild({
id: this.getFileInputId(),
name: this.name || this.getId(),
@@ -142,7 +142,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
this.fileInput.dom.multiple = this.multiple;
},
- reset: function() {
+ reset: function () {
if (this.rendered) {
this.fileInput.remove();
this.createFileInput();
@@ -152,12 +152,12 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
- getFileInputId: function() {
+ getFileInputId: function () {
return this.id + '-file';
},
// private
- onResize: function(w, h) {
+ onResize: function (w, h) {
Ext.ux.form.FileUploadField.superclass.onResize.call(this, w, h);
this.wrap.setWidth(w);
@@ -172,23 +172,23 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
- onDestroy: function() {
+ onDestroy: function () {
Ext.ux.form.FileUploadField.superclass.onDestroy.call(this);
Ext.destroy(this.fileInput, this.button, this.wrap);
},
- onDisable: function() {
+ onDisable: function () {
Ext.ux.form.FileUploadField.superclass.onDisable.call(this);
this.doDisable(true);
},
- onEnable: function() {
+ onEnable: function () {
Ext.ux.form.FileUploadField.superclass.onEnable.call(this);
this.doDisable(false);
},
// private
- doDisable: function(disabled) {
+ doDisable: function (disabled) {
this.fileInput.dom.disabled = disabled;
this.button.setDisabled(disabled);
},
@@ -197,7 +197,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
preFocus: Ext.emptyFn,
// private
- alignErrorIcon: function() {
+ alignErrorIcon: function () {
this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]);
},
});
diff --git a/deluge/ui/web/js/extjs/ext-extensions/form/RadioGroupFix.js b/deluge/ui/web/js/extjs/ext-extensions/form/RadioGroupFix.js
index 134e7a1..416c098 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/form/RadioGroupFix.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/form/RadioGroupFix.js
@@ -10,8 +10,8 @@
// Allow radiogroups to be treated as a single form element.
Ext.override(Ext.form.RadioGroup, {
- afterRender: function() {
- this.items.each(function(i) {
+ afterRender: function () {
+ this.items.each(function (i) {
this.relayEvents(i, ['check']);
}, this);
if (this.lazyValue) {
@@ -22,21 +22,21 @@ Ext.override(Ext.form.RadioGroup, {
Ext.form.RadioGroup.superclass.afterRender.call(this);
},
- getName: function() {
+ getName: function () {
return this.items.first().getName();
},
- getValue: function() {
+ getValue: function () {
return this.items.first().getGroupValue();
},
- setValue: function(v) {
+ setValue: function (v) {
if (!this.items.each) {
this.value = v;
this.lazyValue = true;
return;
}
- this.items.each(function(item) {
+ this.items.each(function (item) {
if (item.rendered) {
var checked = item.el.getValue() == String(v);
item.el.dom.checked = checked;
diff --git a/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerField.js b/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerField.js
index d14f320..890fb5b 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerField.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerField.js
@@ -19,7 +19,7 @@ Ext.ux.form.SpinnerField = Ext.extend(Ext.form.NumberField, {
onBlur: Ext.emptyFn,
adjustSize: Ext.BoxComponent.prototype.adjustSize,
- constructor: function(config) {
+ constructor: function (config) {
var spinnerConfig = Ext.copyTo(
{},
config,
@@ -41,23 +41,23 @@ Ext.ux.form.SpinnerField = Ext.extend(Ext.form.NumberField, {
},
// private
- getResizeEl: function() {
+ getResizeEl: function () {
return this.wrap;
},
// private
- getPositionEl: function() {
+ getPositionEl: function () {
return this.wrap;
},
// private
- alignErrorIcon: function() {
+ alignErrorIcon: function () {
if (this.wrap) {
this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]);
}
},
- validateBlur: function() {
+ validateBlur: function () {
return true;
},
});
diff --git a/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerGroup.js b/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerGroup.js
index eafc4e1..ee761aa 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerGroup.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/form/SpinnerGroup.js
@@ -23,7 +23,7 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
colCfg: {},
// private
- onRender: function(ct, position) {
+ onRender: function (ct, position) {
if (!this.el) {
var panelCfg = {
cls: this.groupCls,
@@ -80,9 +80,8 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
// Generate the column configs with the correct width setting
for (var i = 0; i < numCols; i++) {
var cc = Ext.apply({ items: [] }, colCfg);
- cc[
- this.columns[i] <= 1 ? 'columnWidth' : 'width'
- ] = this.columns[i];
+ cc[this.columns[i] <= 1 ? 'columnWidth' : 'width'] =
+ this.columns[i];
if (this.defaults) {
cc.defaults = Ext.apply(
cc.defaults || {},
@@ -131,14 +130,14 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
}
}
- var fields = this.panel.findBy(function(c) {
+ var fields = this.panel.findBy(function (c) {
return c.isFormField;
}, this);
this.items = new Ext.util.MixedCollection();
this.items.addAll(fields);
- this.items.each(function(field) {
+ this.items.each(function (field) {
field.on('spin', this.onFieldChange, this);
field.on('change', this.onFieldChange, this);
}, this);
@@ -159,45 +158,45 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
Ext.ux.form.SpinnerGroup.superclass.onRender.call(this, ct, position);
},
- onFieldChange: function(spinner) {
+ onFieldChange: function (spinner) {
this.fireEvent('change', this, this.getValue());
},
initValue: Ext.emptyFn,
- getValue: function() {
+ getValue: function () {
var value = [this.items.getCount()];
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
value[i] = Number(item.getValue());
});
return value;
},
- getRawValue: function() {
+ getRawValue: function () {
var value = [this.items.getCount()];
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
value[i] = Number(item.getRawValue());
});
return value;
},
- setValue: function(value) {
+ setValue: function (value) {
if (!this.rendered) {
this.value = value;
this.lazyValueSet = true;
} else {
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
item.setValue(value[i]);
});
}
},
- setRawValue: function(value) {
+ setRawValue: function (value) {
if (!this.rendered) {
this.rawValue = value;
this.lazyRawValueSet = true;
} else {
- this.items.each(function(item, i) {
+ this.items.each(function (item, i) {
item.setRawValue(value[i]);
});
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions/form/ToggleField.js b/deluge/ui/web/js/extjs/ext-extensions/form/ToggleField.js
index 27eebf3..eb60c3b 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/form/ToggleField.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/form/ToggleField.js
@@ -21,7 +21,7 @@ Ext.namespace('Ext.ux.form');
Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
cls: 'x-toggle-field',
- initComponent: function() {
+ initComponent: function () {
Ext.ux.form.ToggleField.superclass.initComponent.call(this);
this.toggle = new Ext.form.Checkbox();
@@ -32,7 +32,7 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
});
},
- onRender: function(ct, position) {
+ onRender: function (ct, position) {
if (!this.el) {
this.panel = new Ext.Panel({
cls: this.groupCls,
@@ -50,16 +50,13 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
this.panel.add(this.input);
this.panel.doLayout();
- this.toggle
- .getEl()
- .parent()
- .setStyle('padding-right', '10px');
+ this.toggle.getEl().parent().setStyle('padding-right', '10px');
}
Ext.ux.form.ToggleField.superclass.onRender.call(this, ct, position);
},
// private
- onResize: function(w, h) {
+ onResize: function (w, h) {
this.panel.setSize(w, h);
this.panel.doLayout();
@@ -68,7 +65,7 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
this.input.setSize(inputWidth, h);
},
- onToggleCheck: function(toggle, checked) {
+ onToggleCheck: function (toggle, checked) {
this.input.setDisabled(!checked);
},
});
diff --git a/deluge/ui/web/js/extjs/ext-extensions/grid/BufferView.js b/deluge/ui/web/js/extjs/ext-extensions/grid/BufferView.js
index e9f0e0c..0fce3b4 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/grid/BufferView.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/grid/BufferView.js
@@ -46,7 +46,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
*/
cleanDelay: 500,
- initTemplates: function() {
+ initTemplates: function () {
Ext.ux.grid.BufferView.superclass.initTemplates.call(this);
var ts = this.templates;
// empty div to act as a place holder for a row
@@ -68,23 +68,23 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
ts.rowBody.compile();
},
- getStyleRowHeight: function() {
+ getStyleRowHeight: function () {
return Ext.isBorderBox
? this.rowHeight + this.borderHeight
: this.rowHeight;
},
- getCalculatedRowHeight: function() {
+ getCalculatedRowHeight: function () {
return this.rowHeight + this.borderHeight;
},
- getVisibleRowCount: function() {
+ getVisibleRowCount: function () {
var rh = this.getCalculatedRowHeight(),
visibleHeight = this.scroller.dom.clientHeight;
return visibleHeight < 1 ? 0 : Math.ceil(visibleHeight / rh);
},
- getVisibleRows: function() {
+ getVisibleRows: function () {
var count = this.getVisibleRowCount(),
sc = this.scroller.dom.scrollTop,
start =
@@ -97,7 +97,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
};
},
- doRender: function(cs, rs, ds, startRow, colCount, stripe, onlyBody) {
+ doRender: function (cs, rs, ds, startRow, colCount, stripe, onlyBody) {
var ts = this.templates,
ct = ts.cell,
rt = ts.row,
@@ -162,18 +162,18 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
return buf.join('');
},
- isRowRendered: function(index) {
+ isRowRendered: function (index) {
var row = this.getRow(index);
return row && row.childNodes.length > 0;
},
- syncScroll: function() {
+ syncScroll: function () {
Ext.ux.grid.BufferView.superclass.syncScroll.apply(this, arguments);
this.update();
},
// a (optionally) buffered method to update contents of gridview
- update: function() {
+ update: function () {
if (this.scrollDelay) {
if (!this.renderTask) {
this.renderTask = new Ext.util.DelayedTask(this.doUpdate, this);
@@ -184,14 +184,14 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
}
},
- onRemove: function(ds, record, index, isUpdate) {
+ onRemove: function (ds, record, index, isUpdate) {
Ext.ux.grid.BufferView.superclass.onRemove.apply(this, arguments);
if (isUpdate !== true) {
this.update();
}
},
- doUpdate: function() {
+ doUpdate: function () {
if (this.getVisibleRowCount() > 0) {
var g = this.grid,
cm = g.colModel,
@@ -219,14 +219,14 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
},
// a buffered method to clean rows
- clean: function() {
+ clean: function () {
if (!this.cleanTask) {
this.cleanTask = new Ext.util.DelayedTask(this.doClean, this);
}
this.cleanTask.delay(this.cleanDelay);
},
- doClean: function() {
+ doClean: function () {
if (this.getVisibleRowCount() > 0) {
var vr = this.getVisibleRows();
vr.first -= this.cacheSize;
@@ -249,7 +249,7 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
}
},
- removeTask: function(name) {
+ removeTask: function (name) {
var task = this[name];
if (task && task.cancel) {
task.cancel();
@@ -257,13 +257,13 @@ Ext.ux.grid.BufferView = Ext.extend(Ext.grid.GridView, {
}
},
- destroy: function() {
+ destroy: function () {
this.removeTask('cleanTask');
this.removeTask('renderTask');
Ext.ux.grid.BufferView.superclass.destroy.call(this);
},
- layout: function() {
+ layout: function () {
Ext.ux.grid.BufferView.superclass.layout.call(this);
this.update();
},
diff --git a/deluge/ui/web/js/extjs/ext-extensions/layout/FormLayoutFix.js b/deluge/ui/web/js/extjs/ext-extensions/layout/FormLayoutFix.js
index 14ac55a..3ccce2b 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/layout/FormLayoutFix.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/layout/FormLayoutFix.js
@@ -12,7 +12,7 @@
// remove spaces for hidden elements and make show(), hide(), enable() and disable() act on
// the label. don't use hideLabel with this.
Ext.override(Ext.layout.FormLayout, {
- renderItem: function(c, position, target) {
+ renderItem: function (c, position, target) {
if (
c &&
!c.rendered &&
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/MultiSelectionModelFix.js b/deluge/ui/web/js/extjs/ext-extensions/tree/MultiSelectionModelFix.js
index 979bd2c..ba26a72 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/MultiSelectionModelFix.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/MultiSelectionModelFix.js
@@ -13,7 +13,7 @@
* @author Damien Churchill <damoxc@gmail.com>
*/
Ext.override(Ext.tree.MultiSelectionModel, {
- onNodeClick: function(node, e) {
+ onNodeClick: function (node, e) {
if (e.ctrlKey && this.isSelected(node)) {
this.unselect(node);
} else if (e.shiftKey && !this.isSelected(node)) {
@@ -34,7 +34,7 @@ Ext.override(Ext.tree.MultiSelectionModel, {
}
// Select all the nodes
- parentNode.eachChild(function(n) {
+ parentNode.eachChild(function (n) {
var i = parentNode.indexOf(n);
if (fi < i && i < li) {
this.select(n, e, true, true);
@@ -48,7 +48,7 @@ Ext.override(Ext.tree.MultiSelectionModel, {
}
},
- select: function(node, e, keepExisting, suppressEvent) {
+ select: function (node, e, keepExisting, suppressEvent) {
if (keepExisting !== true) {
this.clearSelections(true);
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGrid.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGrid.js
index d3d5fc3..7a74360 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGrid.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGrid.js
@@ -26,7 +26,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
columnsText: 'Columns',
- initComponent: function() {
+ initComponent: function () {
if (!this.root) {
this.root = new Ext.tree.AsyncTreeNode({ text: 'Root' });
}
@@ -98,7 +98,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- initColumns: function() {
+ initColumns: function () {
var cs = this.columns,
len = cs.length,
columns = [],
@@ -127,7 +127,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.columns = columns;
},
- onRender: function() {
+ onRender: function () {
Ext.tree.TreePanel.superclass.onRender.apply(this, arguments);
this.el.addClass('x-treegrid');
@@ -176,7 +176,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- setRootNode: function(node) {
+ setRootNode: function (node) {
node.attributes.uiProvider = Ext.ux.tree.TreeGridRootNodeUI;
node = Ext.ux.tree.TreeGrid.superclass.setRootNode.call(this, node);
if (this.innerCt) {
@@ -187,7 +187,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return node;
},
- clearInnerCt: function() {
+ clearInnerCt: function () {
if (Ext.isIE) {
var dom = this.innerCt.dom;
while (dom.firstChild) {
@@ -198,7 +198,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- initEvents: function() {
+ initEvents: function () {
Ext.ux.tree.TreeGrid.superclass.initEvents.apply(this, arguments);
this.mon(this.innerBody, 'scroll', this.syncScroll, this);
@@ -210,7 +210,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
});
},
- onResize: function(w, h) {
+ onResize: function (w, h) {
Ext.ux.tree.TreeGrid.superclass.onResize.apply(this, arguments);
var bd = this.innerBody.dom;
@@ -234,7 +234,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.setScrollOffset(sw);
} else {
var me = this;
- setTimeout(function() {
+ setTimeout(function () {
me.setScrollOffset(
bd.offsetWidth - bd.clientWidth > 10 ? sw : 0
);
@@ -243,7 +243,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- updateColumnWidths: function() {
+ updateColumnWidths: function () {
var cols = this.columns,
colCount = cols.length,
groups = this.outerCt.query('colgroup'),
@@ -282,7 +282,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.syncHeaderScroll();
},
- getVisibleColumns: function() {
+ getVisibleColumns: function () {
var columns = [],
cs = this.columns,
len = cs.length,
@@ -296,7 +296,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return columns;
},
- getTotalColumnWidth: function() {
+ getTotalColumnWidth: function () {
var total = 0;
for (
var i = 0, cs = this.getVisibleColumns(), len = cs.length;
@@ -308,13 +308,13 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return total;
},
- setScrollOffset: function(scrollOffset) {
+ setScrollOffset: function (scrollOffset) {
this.scrollOffset = scrollOffset;
this.updateColumnWidths();
},
// private
- handleHdDown: function(e, t) {
+ handleHdDown: function (e, t) {
var hd = e.getTarget('.x-treegrid-hd');
if (hd && Ext.fly(t).hasClass('x-grid3-hd-btn')) {
@@ -332,7 +332,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
this.hmenu.on(
'hide',
- function() {
+ function () {
Ext.fly(hd).removeClass('x-grid3-hd-menu-open');
},
this,
@@ -347,7 +347,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- handleHdOver: function(e, t) {
+ handleHdOver: function (e, t) {
var hd = e.getTarget('.x-treegrid-hd');
if (hd && !this.headersDisabled) {
index = this.findHeaderIndex(hd);
@@ -365,7 +365,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- handleHdOut: function(e, t) {
+ handleHdOut: function (e, t) {
var hd = e.getTarget('.x-treegrid-hd');
if (hd && (!Ext.isIE || !e.within(hd, true))) {
this.activeHdRef = null;
@@ -374,7 +374,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
}
},
- findHeaderIndex: function(hd) {
+ findHeaderIndex: function (hd) {
hd = hd.dom || hd;
var cs = hd.parentNode.childNodes;
for (var i = 0, c; (c = cs[i]); i++) {
@@ -386,7 +386,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- beforeColMenuShow: function() {
+ beforeColMenuShow: function () {
var cols = this.columns,
colCount = cols.length,
i,
@@ -409,7 +409,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
},
// private
- handleHdMenuClick: function(item) {
+ handleHdMenuClick: function (item) {
var index = this.hdCtxIndex,
id = item.getItemId();
@@ -430,7 +430,7 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
return true;
},
- setColumnVisible: function(index, visible) {
+ setColumnVisible: function (index, visible) {
this.columns[index].hidden = !visible;
this.updateColumnWidths();
},
@@ -438,26 +438,26 @@ Ext.ux.tree.TreeGrid = Ext.extend(Ext.tree.TreePanel, {
/**
* Scrolls the grid to the top
*/
- scrollToTop: function() {
+ scrollToTop: function () {
this.innerBody.dom.scrollTop = 0;
this.innerBody.dom.scrollLeft = 0;
},
// private
- syncScroll: function() {
+ syncScroll: function () {
this.syncHeaderScroll();
var mb = this.innerBody.dom;
this.fireEvent('bodyscroll', mb.scrollLeft, mb.scrollTop);
},
// private
- syncHeaderScroll: function() {
+ syncHeaderScroll: function () {
var mb = this.innerBody.dom;
this.innerHd.dom.scrollLeft = mb.scrollLeft;
this.innerHd.dom.scrollLeft = mb.scrollLeft; // second time for IE (1/2 time first fails, other browsers ignore)
},
- registerNode: function(n) {
+ registerNode: function (n) {
Ext.ux.tree.TreeGrid.superclass.registerNode.call(this, n);
if (!n.uiProvider && !n.isRoot && !n.ui.isTreeGridNodeUI) {
n.ui = new Ext.ux.tree.TreeGridNodeUI(n);
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumnResizer.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumnResizer.js
index 870172e..de73608 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumnResizer.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumnResizer.js
@@ -15,17 +15,17 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
*/
minWidth: 14,
- constructor: function(config) {
+ constructor: function (config) {
Ext.apply(this, config);
Ext.tree.ColumnResizer.superclass.constructor.call(this);
},
- init: function(tree) {
+ init: function (tree) {
this.tree = tree;
tree.on('render', this.initEvents, this);
},
- initEvents: function(tree) {
+ initEvents: function (tree) {
tree.mon(tree.innerHd, 'mousemove', this.handleHdMove, this);
this.tracker = new Ext.dd.DragTracker({
onBeforeStart: this.onBeforeStart.createDelegate(this),
@@ -39,7 +39,7 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
tree.on('beforedestroy', this.tracker.destroy, this.tracker);
},
- handleHdMove: function(e, t) {
+ handleHdMove: function (e, t) {
var hw = 5,
x = e.getPageX(),
hd = e.getTarget('.x-treegrid-hd', 3, true);
@@ -74,12 +74,12 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
}
},
- onBeforeStart: function(e) {
+ onBeforeStart: function (e) {
this.dragHd = this.activeHd;
return !!this.dragHd;
},
- onStart: function(e) {
+ onStart: function (e) {
this.dragHeadersDisabled = this.tree.headersDisabled;
this.tree.headersDisabled = true;
this.proxy = this.tree.body.createChild({ cls: 'x-treegrid-resizer' });
@@ -98,14 +98,14 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
this.tree.innerBody.translatePoints(this.hdX).left;
},
- onDrag: function(e) {
+ onDrag: function (e) {
var cursorX = this.tracker.getXY()[0];
this.proxy.setWidth(
(cursorX - this.hdX).constrain(this.minWidth, this.maxWidth)
);
},
- onEnd: function(e) {
+ onEnd: function (e) {
var nw = this.proxy.getWidth(),
tree = this.tree,
disabled = this.dragHeadersDisabled;
@@ -116,7 +116,7 @@ Ext.tree.ColumnResizer = Ext.extend(Ext.util.Observable, {
tree.columns[this.hdIndex].width = nw;
tree.updateColumnWidths();
- setTimeout(function() {
+ setTimeout(function () {
tree.headersDisabled = disabled;
}, 100);
},
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumns.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumns.js
index 312bf21..0c88f17 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumns.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridColumns.js
@@ -4,9 +4,9 @@
* licensing@sencha.com
* http://www.sencha.com/license
*/
-(function() {
+(function () {
Ext.override(Ext.list.Column, {
- init: function() {
+ init: function () {
var types = Ext.data.Types,
st = this.sortType;
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridLoader.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridLoader.js
index eb5156a..db14848 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridLoader.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridLoader.js
@@ -9,7 +9,7 @@
* @extends Ext.tree.TreeLoader
*/
Ext.ux.tree.TreeGridLoader = Ext.extend(Ext.tree.TreeLoader, {
- createNode: function(attr) {
+ createNode: function (attr) {
if (!attr.uiProvider) {
attr.uiProvider = Ext.ux.tree.TreeGridNodeUI;
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUI.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUI.js
index e58a801..09b1718 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUI.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUI.js
@@ -11,7 +11,7 @@
Ext.ux.tree.TreeGridNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
isTreeGridNodeUI: true,
- renderElements: function(n, a, targetNode, bulkRender) {
+ renderElements: function (n, a, targetNode, bulkRender) {
var t = n.getOwnerTree(),
cols = t.columns,
c = cols[0],
@@ -111,7 +111,7 @@ Ext.ux.tree.TreeGridNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
},
// private
- animExpand: function(cb) {
+ animExpand: function (cb) {
this.ctNode.style.display = '';
Ext.ux.tree.TreeGridNodeUI.superclass.animExpand.call(this, cb);
},
@@ -121,7 +121,7 @@ Ext.ux.tree.TreeGridRootNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
isTreeGridNodeUI: true,
// private
- render: function() {
+ render: function () {
if (!this.rendered) {
this.wrap = this.ctNode = this.node.ownerTree.innerCt.dom;
this.node.expanded = true;
@@ -131,13 +131,13 @@ Ext.ux.tree.TreeGridRootNodeUI = Ext.extend(Ext.tree.TreeNodeUI, {
// weird table-layout: fixed issue in webkit
var ct = this.ctNode;
ct.style.tableLayout = null;
- (function() {
+ (function () {
ct.style.tableLayout = 'fixed';
}.defer(1));
}
},
- destroy: function() {
+ destroy: function () {
if (this.elNode) {
Ext.dd.Registry.unregister(this.elNode.id);
}
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUIFix.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUIFix.js
index 4c21bc3..7708bd7 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUIFix.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridNodeUIFix.js
@@ -9,7 +9,7 @@
*/
Ext.override(Ext.ux.tree.TreeGridNodeUI, {
- updateColumns: function() {
+ updateColumns: function () {
if (!this.rendered) return;
var a = this.node.attributes,
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridRenderColumn.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridRenderColumn.js
index 20bde8a..ed95d95 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridRenderColumn.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridRenderColumn.js
@@ -1,5 +1,5 @@
Ext.tree.RenderColumn = Ext.extend(Ext.tree.Column, {
- constructor: function(c) {
+ constructor: function (c) {
c.tpl = c.tpl || new Ext.XTemplate('{' + c.dataIndex + ':this.format}');
c.tpl.format = c.renderer;
c.tpl.col = this;
diff --git a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridSorter.js b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridSorter.js
index 376f414..fdf1f38 100644
--- a/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridSorter.js
+++ b/deluge/ui/web/js/extjs/ext-extensions/tree/TreeGridSorter.js
@@ -40,7 +40,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
*/
sortDescText: 'Sort Descending',
- constructor: function(tree, config) {
+ constructor: function (tree, config) {
if (!Ext.isObject(config)) {
config = {
property: tree.columns[0].dataIndex || 'text',
@@ -58,7 +58,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
tree.ddAppendOnly = true;
var me = this;
- this.defaultSortFn = function(n1, n2) {
+ this.defaultSortFn = function (n1, n2) {
var desc = me.dir && me.dir.toLowerCase() == 'desc',
prop = me.property || 'text',
sortType = me.sortType,
@@ -101,7 +101,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
tree.on('headermenuclick', this.onHeaderMenuClick, this);
},
- onAfterTreeRender: function() {
+ onAfterTreeRender: function () {
if (this.tree.hmenu) {
this.tree.hmenu.insert(
0,
@@ -120,14 +120,14 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
this.updateSortIcon(0, 'asc');
},
- onHeaderMenuClick: function(c, id, index) {
+ onHeaderMenuClick: function (c, id, index) {
if (id === 'asc' || id === 'desc') {
this.onHeaderClick(c, null, index);
return false;
}
},
- onHeaderClick: function(c, el, i) {
+ onHeaderClick: function (c, el, i) {
if (c && !this.tree.headersDisabled) {
var me = this;
@@ -139,7 +139,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
: this.caseSensitive;
me.sortFn = c.sortFn || this.defaultSortFn;
- this.tree.root.cascade(function(n) {
+ this.tree.root.cascade(function (n) {
if (!n.isLeaf()) {
me.updateSort(me.tree, n);
}
@@ -150,7 +150,7 @@ Ext.ux.tree.TreeGridSorter = Ext.extend(Ext.tree.TreeSorter, {
},
// private
- updateSortIcon: function(col, dir) {
+ updateSortIcon: function (col, dir) {
var sc = this.sortClasses,
hds = this.tree.innerHd.select('td').removeClass(sc);
hds.item(col).addClass(sc[dir == 'desc' ? 1 : 0]);