split out the add connection window into a seperate file
This commit is contained in:
parent
67e27b9b7a
commit
dd82f95975
|
@ -0,0 +1,122 @@
|
||||||
|
/*!
|
||||||
|
* Deluge.AddConnectionWindow.js
|
||||||
|
*
|
||||||
|
* Copyright (c) Damien Churchill 2009-2010 <damoxc@gmail.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 3, or (at your option)
|
||||||
|
* any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, write to:
|
||||||
|
* The Free Software Foundation, Inc.,
|
||||||
|
* 51 Franklin Street, Fifth Floor
|
||||||
|
* Boston, MA 02110-1301, USA.
|
||||||
|
*
|
||||||
|
* In addition, as a special exception, the copyright holders give
|
||||||
|
* permission to link the code of portions of this program with the OpenSSL
|
||||||
|
* library.
|
||||||
|
* You must obey the GNU General Public License in all respects for all of
|
||||||
|
* the code used other than OpenSSL. If you modify file(s) with this
|
||||||
|
* exception, you may extend this exception to your version of the file(s),
|
||||||
|
* but you are not obligated to do so. If you do not wish to do so, delete
|
||||||
|
* this exception statement from your version. If you delete this exception
|
||||||
|
* statement from all source files in the program, then also delete it here.
|
||||||
|
*/
|
||||||
|
Ext.ns('Deluge');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @class Deluge.AddConnectionWindow
|
||||||
|
* @extends Ext.Window
|
||||||
|
*/
|
||||||
|
Deluge.AddConnectionWindow = Ext.extend(Ext.Window, {
|
||||||
|
|
||||||
|
title: _('Add Connection'),
|
||||||
|
iconCls: 'x-deluge-add-window-icon',
|
||||||
|
|
||||||
|
layout: 'fit',
|
||||||
|
width: 300,
|
||||||
|
height: 195,
|
||||||
|
|
||||||
|
bodyStyle: 'padding: 10px 5px;',
|
||||||
|
closeAction: 'hide',
|
||||||
|
|
||||||
|
initComponent: function() {
|
||||||
|
Deluge.AddConnectionWindow.superclass.initComponent.call(this);
|
||||||
|
|
||||||
|
this.addEvents('hostadded');
|
||||||
|
|
||||||
|
this.addButton(_('Close'), this.hide, this);
|
||||||
|
this.addButton(_('Add'), this.onAddClick, this);
|
||||||
|
|
||||||
|
this.on('hide', this.onHide, this);
|
||||||
|
|
||||||
|
this.form = this.add({
|
||||||
|
xtype: 'form',
|
||||||
|
defaultType: 'textfield',
|
||||||
|
baseCls: 'x-plain',
|
||||||
|
labelWidth: 60,
|
||||||
|
items: [{
|
||||||
|
fieldLabel: _('Host'),
|
||||||
|
name: 'host',
|
||||||
|
anchor: '75%',
|
||||||
|
value: ''
|
||||||
|
}, {
|
||||||
|
xtype: 'spinnerfield',
|
||||||
|
fieldLabel: _('Port'),
|
||||||
|
name: 'port',
|
||||||
|
strategy: {
|
||||||
|
xtype: 'number',
|
||||||
|
decimalPrecision: 0,
|
||||||
|
minValue: -1,
|
||||||
|
maxValue: 65535
|
||||||
|
},
|
||||||
|
value: '58846',
|
||||||
|
anchor: '40%'
|
||||||
|
}, {
|
||||||
|
fieldLabel: _('Username'),
|
||||||
|
name: 'username',
|
||||||
|
anchor: '75%',
|
||||||
|
value: ''
|
||||||
|
}, {
|
||||||
|
fieldLabel: _('Password'),
|
||||||
|
anchor: '75%',
|
||||||
|
name: 'password',
|
||||||
|
inputType: 'password',
|
||||||
|
value: ''
|
||||||
|
}]
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
onAddClick: function() {
|
||||||
|
var values = this.form.getForm().getValues();
|
||||||
|
deluge.client.web.add_host(values.host, values.port, values.username, values.password, {
|
||||||
|
success: function(result) {
|
||||||
|
if (!result[0]) {
|
||||||
|
Ext.MessageBox.show({
|
||||||
|
title: _('Error'),
|
||||||
|
msg: "Unable to add host: " + result[1],
|
||||||
|
buttons: Ext.MessageBox.OK,
|
||||||
|
modal: false,
|
||||||
|
icon: Ext.MessageBox.ERROR,
|
||||||
|
iconCls: 'x-deluge-icon-error'
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.fireEvent('hostadded');
|
||||||
|
}
|
||||||
|
this.hide();
|
||||||
|
},
|
||||||
|
scope: this
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
onHide: function() {
|
||||||
|
this.form.getForm().reset();
|
||||||
|
}
|
||||||
|
});
|
|
@ -35,114 +35,6 @@
|
||||||
return value + ':' + r.data['port']
|
return value + ':' + r.data['port']
|
||||||
}
|
}
|
||||||
|
|
||||||
Deluge.AddConnectionWindow = Ext.extend(Ext.Window, {
|
|
||||||
|
|
||||||
constructor: function(config) {
|
|
||||||
config = Ext.apply({
|
|
||||||
layout: 'fit',
|
|
||||||
width: 300,
|
|
||||||
height: 195,
|
|
||||||
bodyStyle: 'padding: 10px 5px;',
|
|
||||||
buttonAlign: 'right',
|
|
||||||
closeAction: 'hide',
|
|
||||||
closable: true,
|
|
||||||
plain: true,
|
|
||||||
title: _('Add Connection'),
|
|
||||||
iconCls: 'x-deluge-add-window-icon'
|
|
||||||
}, config);
|
|
||||||
Deluge.AddConnectionWindow.superclass.constructor.call(this, config);
|
|
||||||
},
|
|
||||||
|
|
||||||
initComponent: function() {
|
|
||||||
Deluge.AddConnectionWindow.superclass.initComponent.call(this);
|
|
||||||
|
|
||||||
this.addEvents('hostadded');
|
|
||||||
|
|
||||||
this.addButton(_('Close'), this.hide, this);
|
|
||||||
this.addButton(_('Add'), this.onAddClick, this);
|
|
||||||
|
|
||||||
this.on('hide', this.onHide, this);
|
|
||||||
|
|
||||||
this.form = this.add({
|
|
||||||
xtype: 'form',
|
|
||||||
defaultType: 'textfield',
|
|
||||||
id: 'connectionAddForm',
|
|
||||||
baseCls: 'x-plain',
|
|
||||||
labelWidth: 55
|
|
||||||
});
|
|
||||||
|
|
||||||
this.hostField = this.form.add({
|
|
||||||
fieldLabel: _('Host'),
|
|
||||||
id: 'host',
|
|
||||||
name: 'host',
|
|
||||||
anchor: '100%',
|
|
||||||
value: ''
|
|
||||||
});
|
|
||||||
|
|
||||||
this.portField = this.form.add({
|
|
||||||
fieldLabel: _('Port'),
|
|
||||||
id: 'port',
|
|
||||||
xtype: 'spinnerfield',
|
|
||||||
name: 'port',
|
|
||||||
strategy: {
|
|
||||||
xtype: 'number',
|
|
||||||
decimalPrecision: 0,
|
|
||||||
minValue: -1,
|
|
||||||
maxValue: 65535
|
|
||||||
},
|
|
||||||
value: '58846',
|
|
||||||
anchor: '50%'
|
|
||||||
});
|
|
||||||
|
|
||||||
this.usernameField = this.form.add({
|
|
||||||
fieldLabel: _('Username'),
|
|
||||||
id: 'username',
|
|
||||||
name: 'username',
|
|
||||||
anchor: '100%',
|
|
||||||
value: ''
|
|
||||||
});
|
|
||||||
|
|
||||||
this.passwordField = this.form.add({
|
|
||||||
fieldLabel: _('Password'),
|
|
||||||
anchor: '100%',
|
|
||||||
id: '_password',
|
|
||||||
name: '_password',
|
|
||||||
inputType: 'password',
|
|
||||||
value: ''
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
onAddClick: function() {
|
|
||||||
var host = this.hostField.getValue();
|
|
||||||
var port = this.portField.getValue();
|
|
||||||
var username = this.usernameField.getValue();
|
|
||||||
var password = this.passwordField.getValue();
|
|
||||||
|
|
||||||
deluge.client.web.add_host(host, port, username, password, {
|
|
||||||
success: function(result) {
|
|
||||||
if (!result[0]) {
|
|
||||||
Ext.MessageBox.show({
|
|
||||||
title: _('Error'),
|
|
||||||
msg: "Unable to add host: " + result[1],
|
|
||||||
buttons: Ext.MessageBox.OK,
|
|
||||||
modal: false,
|
|
||||||
icon: Ext.MessageBox.ERROR,
|
|
||||||
iconCls: 'x-deluge-icon-error'
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
this.fireEvent('hostadded');
|
|
||||||
}
|
|
||||||
this.hide();
|
|
||||||
},
|
|
||||||
scope: this
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
onHide: function() {
|
|
||||||
this.form.getForm().reset();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
Deluge.ConnectionManager = Ext.extend(Ext.Window, {
|
Deluge.ConnectionManager = Ext.extend(Ext.Window, {
|
||||||
|
|
||||||
layout: 'fit',
|
layout: 'fit',
|
||||||
|
@ -314,6 +206,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// private
|
||||||
onAddClick: function(button, e) {
|
onAddClick: function(button, e) {
|
||||||
if (!this.addWindow) {
|
if (!this.addWindow) {
|
||||||
this.addWindow = new Deluge.AddConnectionWindow();
|
this.addWindow = new Deluge.AddConnectionWindow();
|
||||||
|
@ -322,6 +215,7 @@
|
||||||
this.addWindow.show();
|
this.addWindow.show();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// private
|
||||||
onHostAdded: function() {
|
onHostAdded: function() {
|
||||||
this.loadHosts();
|
this.loadHosts();
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue