summaryrefslogtreecommitdiffstats
path: root/deluge/ui/web/js/ext-extensions-debug.js
diff options
context:
space:
mode:
authorDamien Churchill <damoc@gmail.com>2009-08-03 22:26:18 +0000
committerDamien Churchill <damoc@gmail.com>2009-08-03 22:26:18 +0000
commitfa2dedda73643b4a93765c18e9f8e0ac54b68ef2 (patch)
treee9d1302fcbf6192e8592358f43a1492115afbaa0 /deluge/ui/web/js/ext-extensions-debug.js
parentf216ffe54ed7c83c3fa80aa477fb353249f1cebd (diff)
downloaddeluge-fa2dedda73643b4a93765c18e9f8e0ac54b68ef2.tar.gz
deluge-fa2dedda73643b4a93765c18e9f8e0ac54b68ef2.tar.bz2
deluge-fa2dedda73643b4a93765c18e9f8e0ac54b68ef2.zip
add an override to setValue within the ext spinner extension so setValue amounts are run through the strategy
Diffstat (limited to 'deluge/ui/web/js/ext-extensions-debug.js')
-rw-r--r--deluge/ui/web/js/ext-extensions-debug.js56
1 files changed, 32 insertions, 24 deletions
diff --git a/deluge/ui/web/js/ext-extensions-debug.js b/deluge/ui/web/js/ext-extensions-debug.js
index 3179723d4..51b87d595 100644
--- a/deluge/ui/web/js/ext-extensions-debug.js
+++ b/deluge/ui/web/js/ext-extensions-debug.js
@@ -30,6 +30,7 @@ Ext.ux.form.Spinner = function(config){
'spinup' : true,
'spindown' : true
});
+ this.initStrategy();
}
Ext.extend(Ext.ux.form.Spinner, Ext.form.TriggerField, {
@@ -103,30 +104,32 @@ Ext.extend(Ext.ux.form.Spinner, Ext.form.TriggerField, {
this.dd.endDrag = this.endDrag.createDelegate(this);
this.dd.startDrag = this.startDrag.createDelegate(this);
this.dd.onDrag = this.onDrag.createDelegate(this);
-
- /*
- jsakalos suggestion
- http://extjs.com/forum/showthread.php?p=121850#post121850 */
- if('object' == typeof this.strategy && this.strategy.xtype) {
- switch(this.strategy.xtype) {
- case 'number':
- this.strategy = new Ext.ux.form.Spinner.NumberStrategy(this.strategy);
- break;
-
- case 'date':
- this.strategy = new Ext.ux.form.Spinner.DateStrategy(this.strategy);
- break;
-
- case 'time':
- this.strategy = new Ext.ux.form.Spinner.TimeStrategy(this.strategy);
- break;
-
- default:
- delete(this.strategy);
- break;
- }
- delete(this.strategy.xtype);
- }
+ },
+
+ initStrategy: function() {
+ /*
+ jsakalos suggestion
+ http://extjs.com/forum/showthread.php?p=121850#post121850 */
+ if('object' == typeof this.strategy && this.strategy.xtype) {
+ switch(this.strategy.xtype) {
+ case 'number':
+ this.strategy = new Ext.ux.form.Spinner.NumberStrategy(this.strategy);
+ break;
+
+ case 'date':
+ this.strategy = new Ext.ux.form.Spinner.DateStrategy(this.strategy);
+ break;
+
+ case 'time':
+ this.strategy = new Ext.ux.form.Spinner.TimeStrategy(this.strategy);
+ break;
+
+ default:
+ delete(this.strategy);
+ break;
+ }
+ delete(this.strategy.xtype);
+ }
if(this.strategy == undefined){
this.strategy = new Ext.ux.form.Spinner.NumberStrategy();
@@ -299,6 +302,11 @@ Ext.extend(Ext.ux.form.Spinner, Ext.form.TriggerField, {
this.fireEvent("spin", this);
this.fireEvent("spindown", this);
this.fireEvent("change", this);
+ },
+
+ setValue: function(value) {
+ value = this.strategy.fixBoundries(value);
+ this.setRawValue(value);
}
});