finish the queue preferences page
This commit is contained in:
parent
ccaf4e65f7
commit
63af59ab46
|
@ -1,8 +1,186 @@
|
|||
/*
|
||||
Deluge.Preferences.addPage(_('Queue'), {
|
||||
border: false,
|
||||
xtype: 'form',
|
||||
layout: 'form',
|
||||
items: []
|
||||
Ext.namespace('Ext.deluge.preferences');
|
||||
Ext.deluge.preferences.Queue = Ext.extend(Ext.form.FormPanel, {
|
||||
constructor: function(config) {
|
||||
config = Ext.apply({
|
||||
border: false,
|
||||
title: _('Queue'),
|
||||
layout: 'form'
|
||||
}, config);
|
||||
Ext.deluge.preferences.Queue.superclass.constructor.call(this, config);
|
||||
},
|
||||
|
||||
initComponent: function() {
|
||||
Ext.deluge.preferences.Queue.superclass.initComponent.call(this);
|
||||
|
||||
var optMan = Deluge.Preferences.getOptionsManager();
|
||||
|
||||
var fieldset = this.add({
|
||||
xtype: 'fieldset',
|
||||
border: false,
|
||||
title: _('General'),
|
||||
autoHeight: true,
|
||||
labelWidth: 1,
|
||||
defaultType: 'checkbox'
|
||||
});
|
||||
optMan.bind('queue_new_to_top', fieldset.add({
|
||||
fieldLabel: '',
|
||||
labelSeparator: '',
|
||||
boxLabel: _('Queue new torrents to top'),
|
||||
name: 'queue_new_to_top'
|
||||
}));
|
||||
|
||||
fieldset = this.add({
|
||||
xtype: 'fieldset',
|
||||
border: false,
|
||||
title: _('Active Torrents'),
|
||||
autoHeight: true,
|
||||
labelWidth: 150,
|
||||
defaultType: 'uxspinner',
|
||||
style: 'margin-bottom: 0px; padding-bottom: 0px;',
|
||||
});
|
||||
optMan.bind('max_active_limit', fieldset.add({
|
||||
fieldLabel: _('Total Active'),
|
||||
name: 'max_active_limit',
|
||||
value: 8,
|
||||
width: 80,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
decimalPrecision: 0,
|
||||
minValue: -1,
|
||||
maxValue: 99999
|
||||
},
|
||||
}));
|
||||
optMan.bind('max_active_downloading', fieldset.add({
|
||||
fieldLabel: _('Total Active Downloading'),
|
||||
name: 'max_active_downloading',
|
||||
value: 3,
|
||||
width: 80,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
decimalPrecision: 0,
|
||||
minValue: -1,
|
||||
maxValue: 99999
|
||||
},
|
||||
}));
|
||||
optMan.bind('max_active_seeding', fieldset.add({
|
||||
fieldLabel: _('Total Active Seeding'),
|
||||
name: 'max_active_seeding',
|
||||
value: 5,
|
||||
width: 80,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
decimalPrecision: 0,
|
||||
minValue: -1,
|
||||
maxValue: 99999
|
||||
},
|
||||
}));
|
||||
optMan.bind('dont_count_slow_torrents', fieldset.add({
|
||||
xtype: 'checkbox',
|
||||
name: 'dont_count_slow_torrents',
|
||||
height: 40,
|
||||
hideLabel: true,
|
||||
boxLabel: _('Do not count slow torrents')
|
||||
}));
|
||||
|
||||
fieldset = this.add({
|
||||
xtype: 'fieldset',
|
||||
border: false,
|
||||
title: _('Seeding'),
|
||||
autoHeight: true,
|
||||
labelWidth: 150,
|
||||
defaultType: 'uxspinner',
|
||||
style: 'margin-bottom: 0px; padding-bottom: 0px;',
|
||||
});
|
||||
optMan.bind('share_ratio_limit', fieldset.add({
|
||||
fieldLabel: _('Share Ratio Limit'),
|
||||
name: 'share_ratio_limit',
|
||||
value: 8,
|
||||
width: 80,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
decimalPrecision: 0,
|
||||
minValue: -1,
|
||||
maxValue: 99999
|
||||
},
|
||||
}));
|
||||
optMan.bind('seed_time_ratio_limit', fieldset.add({
|
||||
fieldLabel: _('Share Time Ratio'),
|
||||
name: 'seed_time_ratio_limit',
|
||||
value: 3,
|
||||
width: 80,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
decimalPrecision: 0,
|
||||
minValue: -1,
|
||||
maxValue: 99999
|
||||
},
|
||||
}));
|
||||
optMan.bind('seed_time_limit', fieldset.add({
|
||||
fieldLabel: _('Seed Time (m)'),
|
||||
name: 'seed_time_limit',
|
||||
value: 5,
|
||||
width: 80,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
decimalPrecision: 0,
|
||||
minValue: -1,
|
||||
maxValue: 99999
|
||||
},
|
||||
}));
|
||||
|
||||
fieldset = this.add({
|
||||
xtype: 'fieldset',
|
||||
border: false,
|
||||
autoHeight: true,
|
||||
|
||||
layout: 'table',
|
||||
layoutConfig: {columns: 2},
|
||||
labelWidth: 0,
|
||||
defaultType: 'checkbox',
|
||||
|
||||
defaults: {
|
||||
fieldLabel: '',
|
||||
labelSeparator: ''
|
||||
}
|
||||
});
|
||||
this.stopAtRatio = fieldset.add({
|
||||
name: 'stop_seed_at_ratio',
|
||||
boxLabel: _('Stop seeding when share ratio reaches:')
|
||||
});
|
||||
this.stopAtRatio.on('check', this.onStopRatioCheck, this);
|
||||
optMan.bind('stop_seed_at_ratio', this.stopAtRatio);
|
||||
|
||||
this.stopRatio = fieldset.add({
|
||||
xtype: 'uxspinner',
|
||||
name: 'stop_seed_ratio',
|
||||
ctCls: 'x-deluge-indent-checkbox',
|
||||
disabled: true,
|
||||
value: 2.0,
|
||||
width: 60,
|
||||
strategy: {
|
||||
xtype: 'number',
|
||||
minValue: -1,
|
||||
maxValue: 99999,
|
||||
incrementValue: 0.1,
|
||||
alternateIncrementValue: 1,
|
||||
decimalPrecision: 1
|
||||
}
|
||||
});
|
||||
optMan.bind('stop_seed_ratio', this.stopRatio);
|
||||
|
||||
this.removeAtRatio = fieldset.add({
|
||||
name: 'remove_seed_at_ratio',
|
||||
ctCls: 'x-deluge-indent-checkbox',
|
||||
boxLabel: _('Remove torrent when share ratio is reached'),
|
||||
disabled: true,
|
||||
colspan: 2
|
||||
});
|
||||
optMan.bind('remove_seed_at_ratio', this.removeAtRatio);
|
||||
},
|
||||
|
||||
onStopRatioCheck: function(e, checked) {
|
||||
this.stopRatio.setDisabled(!checked);
|
||||
this.removeAtRatio.setDisabled(!checked);
|
||||
}
|
||||
});
|
||||
*/
|
||||
Deluge.Preferences.addPage(new Ext.deluge.preferences.Queue());
|
Loading…
Reference in New Issue