From 5db7c7940791e326a410cbd6ea64131264af5e7c Mon Sep 17 00:00:00 2001 From: celeron533 Date: Tue, 20 Feb 2018 18:27:26 +0800 Subject: [PATCH] Minor changes on Forward Proxy --- .../Controller/ShadowsocksController.cs | 14 +---- shadowsocks-csharp/View/ProxyForm.cs | 54 +++++++++---------- 2 files changed, 26 insertions(+), 42 deletions(-) diff --git a/shadowsocks-csharp/Controller/ShadowsocksController.cs b/shadowsocks-csharp/Controller/ShadowsocksController.cs index e51c1ae1..e548c245 100644 --- a/shadowsocks-csharp/Controller/ShadowsocksController.cs +++ b/shadowsocks-csharp/Controller/ShadowsocksController.cs @@ -240,19 +240,9 @@ namespace Shadowsocks.Controller } } - public void DisableProxy() + public void SaveProxy(ProxyConfig proxyConfig) { - _config.proxy.useProxy = false; - SaveConfig(_config); - } - - public void EnableProxy(int type, string proxy, int port, int timeout) - { - _config.proxy.useProxy = true; - _config.proxy.proxyType = type; - _config.proxy.proxyServer = proxy; - _config.proxy.proxyPort = port; - _config.proxy.proxyTimeout = timeout; + _config.proxy = proxyConfig; SaveConfig(_config); } diff --git a/shadowsocks-csharp/View/ProxyForm.cs b/shadowsocks-csharp/View/ProxyForm.cs index 2837477a..be7cddbe 100644 --- a/shadowsocks-csharp/View/ProxyForm.cs +++ b/shadowsocks-csharp/View/ProxyForm.cs @@ -12,7 +12,7 @@ namespace Shadowsocks.View private ShadowsocksController controller; // this is a copy of configuration that we are working on - private ProxyConfig _modifiedConfiguration; + private ProxyConfig _modifiedProxyConfig; public ProxyForm(ShadowsocksController controller) { @@ -49,54 +49,48 @@ namespace Shadowsocks.View private void LoadCurrentConfiguration() { - _modifiedConfiguration = controller.GetConfigurationCopy().proxy; - UseProxyCheckBox.Checked = _modifiedConfiguration.useProxy; - ProxyServerTextBox.Text = _modifiedConfiguration.proxyServer; - ProxyPortTextBox.Text = _modifiedConfiguration.proxyPort.ToString(); - ProxyTimeoutTextBox.Text = _modifiedConfiguration.proxyTimeout.ToString(); - ProxyTypeComboBox.SelectedIndex = _modifiedConfiguration.proxyType; + _modifiedProxyConfig = controller.GetConfigurationCopy().proxy; + UseProxyCheckBox.Checked = _modifiedProxyConfig.useProxy; + ProxyServerTextBox.Text = _modifiedProxyConfig.proxyServer; + ProxyPortTextBox.Text = _modifiedProxyConfig.proxyPort.ToString(); + ProxyTimeoutTextBox.Text = _modifiedProxyConfig.proxyTimeout.ToString(); + ProxyTypeComboBox.SelectedIndex = _modifiedProxyConfig.proxyType; } private void OKButton_Click(object sender, EventArgs e) { - if (UseProxyCheckBox.Checked) + if (_modifiedProxyConfig.useProxy=UseProxyCheckBox.Checked) { - int port; - int timeout; - if (!int.TryParse(ProxyPortTextBox.Text, out port)) + if (!int.TryParse(ProxyPortTextBox.Text, out _modifiedProxyConfig.proxyPort)) { MessageBox.Show(I18N.GetString("Illegal port number format")); return; } - if (!int.TryParse(ProxyTimeoutTextBox.Text, out timeout)) + if (!int.TryParse(ProxyTimeoutTextBox.Text, out _modifiedProxyConfig.proxyTimeout)) { MessageBox.Show(I18N.GetString("Illegal timeout format")); return; } - var type = ProxyTypeComboBox.SelectedIndex; - var proxy = ProxyServerTextBox.Text; + _modifiedProxyConfig.proxyType = ProxyTypeComboBox.SelectedIndex; + try { - Configuration.CheckServer(proxy); - Configuration.CheckPort(port); - Configuration.CheckTimeout(timeout, ProxyConfig.MaxProxyTimeoutSec); + Configuration.CheckServer(_modifiedProxyConfig.proxyServer = ProxyServerTextBox.Text); + Configuration.CheckPort(_modifiedProxyConfig.proxyPort); + Configuration.CheckTimeout(_modifiedProxyConfig.proxyTimeout, ProxyConfig.MaxProxyTimeoutSec); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } - - controller.EnableProxy(type, proxy, port, timeout); - } - else - { - controller.DisableProxy(); } + controller.SaveProxy(_modifiedProxyConfig); + this.Close(); } @@ -119,17 +113,17 @@ namespace Shadowsocks.View { if (UseProxyCheckBox.Checked) { - ProxyServerTextBox.Enabled = true; - ProxyPortTextBox.Enabled = true; - ProxyTimeoutTextBox.Enabled = true; + ProxyServerTextBox.Enabled = + ProxyPortTextBox.Enabled = + ProxyTimeoutTextBox.Enabled = ProxyTypeComboBox.Enabled = true; } else { - ProxyServerTextBox.Enabled = false; - ProxyPortTextBox.Enabled = false; - ProxyTimeoutTextBox.Enabled = false; - ProxyTypeComboBox.Enabled = false; + ProxyServerTextBox.Enabled = + ProxyPortTextBox.Enabled = + ProxyTimeoutTextBox.Enabled = + ProxyTypeComboBox.Enabled = false; } } }