From 175d28e9c44dc8fd4acc0e2da730b1b07d96b992 Mon Sep 17 00:00:00 2001 From: ChsBuffer <33744752+chsbuffer@users.noreply.github.com> Date: Tue, 14 Jan 2020 22:07:04 +0800 Subject: [PATCH] Exception handling & Update translation. Signed-off-by: ChsBuffer <33744752+chsbuffer@users.noreply.github.com> --- Netch/Forms/AboutForm.cs | 6 +-- Netch/Forms/GlobalBypassIPForm.cs | 8 ++-- Netch/Forms/MainForm.Designer.cs | 6 +-- Netch/Forms/MainForm.cs | 74 ++++++++++++++++++------------ Netch/Forms/Mode/Process.cs | 20 ++++---- Netch/Forms/Server/Shadowsocks.cs | 21 +++++---- Netch/Forms/Server/ShadowsocksR.cs | 25 ++++++---- Netch/Forms/Server/Socks5.cs | 17 ++++--- Netch/Forms/Server/Vmess.cs | 35 ++++++++------ Netch/Forms/SettingForm.cs | 28 +++++------ Netch/Forms/SubscribeForm.cs | 18 ++++---- Netch/Resources/zh-CN | 4 +- 12 files changed, 148 insertions(+), 114 deletions(-) diff --git a/Netch/Forms/AboutForm.cs b/Netch/Forms/AboutForm.cs index 595760a5..c58b2865 100644 --- a/Netch/Forms/AboutForm.cs +++ b/Netch/Forms/AboutForm.cs @@ -13,9 +13,9 @@ namespace Netch.Forms private void AboutForm_Load(object sender, EventArgs e) { - Text = Utils.i18N.Translate("About"); - ChannelLabel.Text = Utils.i18N.Translate("Telegram Channel"); - SponsorGroupBox.Text = Utils.i18N.Translate("Sponsor"); + Text = Utils.i18N.Translate(Text); + ChannelLabel.Text = Utils.i18N.Translate(ChannelLabel.Text); + SponsorGroupBox.Text = Utils.i18N.Translate(SponsorGroupBox.Text); } private void AboutForm_FormClosing(object sender, FormClosingEventArgs e) diff --git a/Netch/Forms/GlobalBypassIPForm.cs b/Netch/Forms/GlobalBypassIPForm.cs index 436e6be3..d3844ec4 100644 --- a/Netch/Forms/GlobalBypassIPForm.cs +++ b/Netch/Forms/GlobalBypassIPForm.cs @@ -13,10 +13,10 @@ namespace Netch.Forms private void GlobalBypassIPForm_Load(object sender, EventArgs e) { - Text = Utils.i18N.Translate("Global Bypass IPs"); - AddButton.Text = Utils.i18N.Translate("Add"); - DeleteButton.Text = Utils.i18N.Translate("Delete"); - ControlButton.Text = Utils.i18N.Translate("Save"); + Text = Utils.i18N.Translate(Text); + AddButton.Text = Utils.i18N.Translate(AddButton.Text); + DeleteButton.Text = Utils.i18N.Translate(DeleteButton.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); IPListBox.Items.AddRange(Global.Settings.BypassIPs.ToArray()); diff --git a/Netch/Forms/MainForm.Designer.cs b/Netch/Forms/MainForm.Designer.cs index 471ed341..32f59e75 100644 --- a/Netch/Forms/MainForm.Designer.cs +++ b/Netch/Forms/MainForm.Designer.cs @@ -269,9 +269,9 @@ // // ProfileNameText // - this.ProfileNameText.Location = new System.Drawing.Point(97, 83); + this.ProfileNameText.Location = new System.Drawing.Point(57, 83); this.ProfileNameText.Name = "ProfileNameText"; - this.ProfileNameText.Size = new System.Drawing.Size(415, 23); + this.ProfileNameText.Size = new System.Drawing.Size(455, 23); this.ProfileNameText.TabIndex = 11; // // ProfileLabel @@ -281,7 +281,7 @@ this.ProfileLabel.Name = "ProfileLabel"; this.ProfileLabel.Size = new System.Drawing.Size(84, 17); this.ProfileLabel.TabIndex = 10; - this.ProfileLabel.Text = "Profile Name"; + this.ProfileLabel.Text = "Profile"; // // SpeedPictureBox // diff --git a/Netch/Forms/MainForm.cs b/Netch/Forms/MainForm.cs index 72416dfc..55df2f9f 100644 --- a/Netch/Forms/MainForm.cs +++ b/Netch/Forms/MainForm.cs @@ -281,34 +281,34 @@ namespace Netch.Forms InitMode(); // 加载翻译 - ServerToolStripMenuItem.Text = Utils.i18N.Translate("Server"); - ImportServersFromClipboardToolStripMenuItem.Text = Utils.i18N.Translate("Import Servers From Clipboard"); - AddSocks5ServerToolStripMenuItem.Text = Utils.i18N.Translate("Add [Socks5] Server"); - AddShadowsocksServerToolStripMenuItem.Text = Utils.i18N.Translate("Add [Shadowsocks] Server"); - AddShadowsocksRServerToolStripMenuItem.Text = Utils.i18N.Translate("Add [ShadowsocksR] Server"); - AddVMessServerToolStripMenuItem.Text = Utils.i18N.Translate("Add [VMess] Server"); - ModeToolStripMenuItem.Text = Utils.i18N.Translate("Mode"); - CreateProcessModeToolStripMenuItem.Text = Utils.i18N.Translate("Create Process Mode"); - SubscribeToolStripMenuItem.Text = Utils.i18N.Translate("Subscribe"); - ManageSubscribeLinksToolStripMenuItem.Text = Utils.i18N.Translate("Manage Subscribe Links"); - UpdateServersFromSubscribeLinksToolStripMenuItem.Text = Utils.i18N.Translate("Update Servers From Subscribe Links"); - OptionsToolStripMenuItem.Text = Utils.i18N.Translate("Options"); - RestartServiceToolStripMenuItem.Text = Utils.i18N.Translate("Restart Service"); - UninstallServiceToolStripMenuItem.Text = Utils.i18N.Translate("Uninstall Service"); - ReloadModesToolStripMenuItem.Text = Utils.i18N.Translate("Reload Modes"); - CleanDNSCacheToolStripMenuItem.Text = Utils.i18N.Translate("Clean DNS Cache"); - AboutToolStripButton.Text = Utils.i18N.Translate("About"); - ConfigurationGroupBox.Text = Utils.i18N.Translate("Configuration"); - ServerLabel.Text = Utils.i18N.Translate("Server"); - ModeLabel.Text = Utils.i18N.Translate("Mode"); - ProfileLabel.Text = Utils.i18N.Translate("Profile Name"); - ProfileGroupBox.Text = Utils.i18N.Translate("Profiles"); - SettingsButton.Text = Utils.i18N.Translate("Settings"); - ControlButton.Text = Utils.i18N.Translate("Start"); + ServerToolStripMenuItem.Text = Utils.i18N.Translate(ServerToolStripMenuItem.Text); + ImportServersFromClipboardToolStripMenuItem.Text = Utils.i18N.Translate(ImportServersFromClipboardToolStripMenuItem.Text); + AddSocks5ServerToolStripMenuItem.Text = Utils.i18N.Translate(AddSocks5ServerToolStripMenuItem.Text); + AddShadowsocksServerToolStripMenuItem.Text = Utils.i18N.Translate(AddShadowsocksServerToolStripMenuItem.Text); + AddShadowsocksRServerToolStripMenuItem.Text = Utils.i18N.Translate(AddShadowsocksRServerToolStripMenuItem.Text); + AddVMessServerToolStripMenuItem.Text = Utils.i18N.Translate(AddVMessServerToolStripMenuItem.Text); + ModeToolStripMenuItem.Text = Utils.i18N.Translate(ModeToolStripMenuItem.Text); + CreateProcessModeToolStripMenuItem.Text = Utils.i18N.Translate(CreateProcessModeToolStripMenuItem.Text); + SubscribeToolStripMenuItem.Text = Utils.i18N.Translate(SubscribeToolStripMenuItem.Text); + ManageSubscribeLinksToolStripMenuItem.Text = Utils.i18N.Translate(ManageSubscribeLinksToolStripMenuItem.Text); + UpdateServersFromSubscribeLinksToolStripMenuItem.Text = Utils.i18N.Translate(UpdateServersFromSubscribeLinksToolStripMenuItem.Text); + OptionsToolStripMenuItem.Text = Utils.i18N.Translate(OptionsToolStripMenuItem.Text); + RestartServiceToolStripMenuItem.Text = Utils.i18N.Translate(RestartServiceToolStripMenuItem.Text); + UninstallServiceToolStripMenuItem.Text = Utils.i18N.Translate(UninstallServiceToolStripMenuItem.Text); + ReloadModesToolStripMenuItem.Text = Utils.i18N.Translate(ReloadModesToolStripMenuItem.Text); + CleanDNSCacheToolStripMenuItem.Text = Utils.i18N.Translate(CleanDNSCacheToolStripMenuItem.Text); + AboutToolStripButton.Text = Utils.i18N.Translate(AboutToolStripButton.Text); + ConfigurationGroupBox.Text = Utils.i18N.Translate(ConfigurationGroupBox.Text); + ServerLabel.Text = Utils.i18N.Translate(ServerLabel.Text); + ModeLabel.Text = Utils.i18N.Translate(ModeLabel.Text); + ProfileLabel.Text = Utils.i18N.Translate(ProfileLabel.Text); + ProfileGroupBox.Text = Utils.i18N.Translate(ProfileGroupBox.Text); + SettingsButton.Text = Utils.i18N.Translate(SettingsButton.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); UsedBandwidthLabel.Text = $@"{Utils.i18N.Translate("Used")}{Utils.i18N.Translate(": ")}0 KB"; StatusLabel.Text = $@"{Utils.i18N.Translate("Status")}{Utils.i18N.Translate(": ")}{Utils.i18N.Translate("Waiting for command")}"; - ShowMainFormToolStripButton.Text = Utils.i18N.Translate("Show"); - ExitToolStripButton.Text = Utils.i18N.Translate("Exit"); + ShowMainFormToolStripButton.Text = Utils.i18N.Translate(ShowMainFormToolStripButton.Text); + ExitToolStripButton.Text = Utils.i18N.Translate(ExitToolStripButton.Text); InitProfile(); @@ -961,8 +961,21 @@ namespace Netch.Forms if (Control.ModifierKeys == Keys.Control) { - SaveProfile(index); - ProfileButtons[index].Text = ProfileNameText.Text; + if (ServerComboBox.SelectedIndex == -1) + { + MessageBox.Show(Utils.i18N.Translate("Please select a server first"), Utils.i18N.Translate("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); + return; + } + else if (ModeComboBox.SelectedIndex == -1) + { + MessageBox.Show(Utils.i18N.Translate("Please select an mode first"), Utils.i18N.Translate("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); + return; + } + else + { + SaveProfile(index); + ProfileButtons[index].Text = ProfileNameText.Text; + } } else { @@ -1026,6 +1039,7 @@ namespace Netch.Forms b.Location = new Point(i * 100, 0); b.Click += new EventHandler(ProfileButton_Click); b.Dock = DockStyle.Fill; + b.Text = "None"; ProfileButtons.Add(b); if (!Global.Settings.profiles[i].IsDummy) @@ -1034,7 +1048,7 @@ namespace Netch.Forms } else { - b.Text = Utils.i18N.Translate("None"); + b.Text = Utils.i18N.Translate(b.Text); } } @@ -1059,7 +1073,7 @@ namespace Netch.Forms bool result = false; - foreach(Models.Server server in ServerComboBox.Items) + foreach (Models.Server server in ServerComboBox.Items) { if (server.Remark.Equals(p.ServerRemark)) { diff --git a/Netch/Forms/Mode/Process.cs b/Netch/Forms/Mode/Process.cs index eff5bfed..5d117737 100644 --- a/Netch/Forms/Mode/Process.cs +++ b/Netch/Forms/Mode/Process.cs @@ -54,16 +54,16 @@ namespace Netch.Forms.Mode private void ModeForm_Load(object sender, EventArgs e) { - Text = Utils.i18N.Translate("Create Process Mode"); - ConfigurationGroupBox.Text = Utils.i18N.Translate("Configuration"); - RemarkLabel.Text = Utils.i18N.Translate("Remark"); - FilenameLabel.Text = Utils.i18N.Translate("Filename"); - UseCustomFilenameBox.Text = Utils.i18N.Translate("Use Custom Filename"); - StaySameButton.Text = Utils.i18N.Translate("Stay the same"); - TimeDataButton.Text = Utils.i18N.Translate("Time data"); - AddButton.Text = Utils.i18N.Translate("Add"); - ScanButton.Text = Utils.i18N.Translate("Scan"); - ControlButton.Text = Utils.i18N.Translate("Save"); + Text = Utils.i18N.Translate(Text); + ConfigurationGroupBox.Text = Utils.i18N.Translate(ConfigurationGroupBox.Text); + RemarkLabel.Text = Utils.i18N.Translate(RemarkLabel.Text); + FilenameLabel.Text = Utils.i18N.Translate(FilenameLabel.Text); + UseCustomFilenameBox.Text = Utils.i18N.Translate(UseCustomFilenameBox.Text); + StaySameButton.Text = Utils.i18N.Translate(StaySameButton.Text); + TimeDataButton.Text = Utils.i18N.Translate(TimeDataButton.Text); + AddButton.Text = Utils.i18N.Translate(AddButton.Text); + ScanButton.Text = Utils.i18N.Translate(ScanButton.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); if (Global.Settings.ModeFileNameType == 0) { diff --git a/Netch/Forms/Server/Shadowsocks.cs b/Netch/Forms/Server/Shadowsocks.cs index 854d0c1a..b7a6d7cd 100644 --- a/Netch/Forms/Server/Shadowsocks.cs +++ b/Netch/Forms/Server/Shadowsocks.cs @@ -1,5 +1,6 @@ using System; using System.Drawing; +using System.Text.RegularExpressions; using System.Windows.Forms; namespace Netch.Forms.Server @@ -21,14 +22,14 @@ namespace Netch.Forms.Server private void Shadowsocks_Load(object sender, EventArgs e) { - ConfigurationGroupBox.Text = Utils.i18N.Translate("Configuration"); - RemarkLabel.Text = Utils.i18N.Translate("Remark"); - AddressLabel.Text = Utils.i18N.Translate("Address"); - PasswordLabel.Text = Utils.i18N.Translate("Password"); - EncryptMethodLabel.Text = Utils.i18N.Translate("Encrypt Method"); - PluginLabel.Text = Utils.i18N.Translate("Plugin"); - PluginOptionsLabel.Text = Utils.i18N.Translate("Plugin Options"); - ControlButton.Text = Utils.i18N.Translate("Save"); + ConfigurationGroupBox.Text = Utils.i18N.Translate(ConfigurationGroupBox.Text); + RemarkLabel.Text = Utils.i18N.Translate(RemarkLabel.Text); + AddressLabel.Text = Utils.i18N.Translate(AddressLabel.Text); + PasswordLabel.Text = Utils.i18N.Translate(PasswordLabel.Text); + EncryptMethodLabel.Text = Utils.i18N.Translate(EncryptMethodLabel.Text); + PluginLabel.Text = Utils.i18N.Translate(PluginLabel.Text); + PluginOptionsLabel.Text = Utils.i18N.Translate(PluginOptionsLabel.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); foreach (var encrypt in Global.EncryptMethods.SS) { @@ -83,6 +84,10 @@ namespace Netch.Forms.Server private void ControlButton_Click(object sender, EventArgs e) { + if (!Regex.Match(PortTextBox.Text, "^[0-9]+$").Success) + { + return; + } if (Index == -1) { Global.Settings.Server.Add(new Models.Server() diff --git a/Netch/Forms/Server/ShadowsocksR.cs b/Netch/Forms/Server/ShadowsocksR.cs index 1c8e7023..9ca7a969 100644 --- a/Netch/Forms/Server/ShadowsocksR.cs +++ b/Netch/Forms/Server/ShadowsocksR.cs @@ -1,5 +1,6 @@ using System; using System.Drawing; +using System.Text.RegularExpressions; using System.Windows.Forms; namespace Netch.Forms.Server @@ -21,16 +22,16 @@ namespace Netch.Forms.Server private void ShadowsocksR_Load(object sender, EventArgs e) { - ConfigurationGroupBox.Text = Utils.i18N.Translate("Configuration"); - RemarkLabel.Text = Utils.i18N.Translate("Remark"); - AddressLabel.Text = Utils.i18N.Translate("Address"); - PasswordLabel.Text = Utils.i18N.Translate("Password"); - EncryptMethodLabel.Text = Utils.i18N.Translate("Encrypt Method"); - ProtocolLabel.Text = Utils.i18N.Translate("Protocol"); - ProtocolParamLabel.Text = Utils.i18N.Translate("Protocol Param"); - OBFSLabel.Text = Utils.i18N.Translate("OBFS"); - OBFSParamLabel.Text = Utils.i18N.Translate("OBFS Param"); - ControlButton.Text = Utils.i18N.Translate("Save"); + ConfigurationGroupBox.Text = Utils.i18N.Translate(ConfigurationGroupBox.Text); + RemarkLabel.Text = Utils.i18N.Translate(RemarkLabel.Text); + AddressLabel.Text = Utils.i18N.Translate(AddressLabel.Text); + PasswordLabel.Text = Utils.i18N.Translate(PasswordLabel.Text); + EncryptMethodLabel.Text = Utils.i18N.Translate(EncryptMethodLabel.Text); + ProtocolLabel.Text = Utils.i18N.Translate(ProtocolLabel.Text); + ProtocolParamLabel.Text = Utils.i18N.Translate(ProtocolParamLabel.Text); + OBFSLabel.Text = Utils.i18N.Translate(OBFSLabel.Text); + OBFSParamLabel.Text = Utils.i18N.Translate(OBFSParamLabel.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); foreach (var encrypt in Global.EncryptMethods.SSR) { @@ -99,6 +100,10 @@ namespace Netch.Forms.Server private void ControlButton_Click(object sender, EventArgs e) { + if (!Regex.Match(PortTextBox.Text, "^[0-9]+$").Success) + { + return; + } if (Index == -1) { Global.Settings.Server.Add(new Models.Server() diff --git a/Netch/Forms/Server/Socks5.cs b/Netch/Forms/Server/Socks5.cs index 40dbb7c3..a1489ee4 100644 --- a/Netch/Forms/Server/Socks5.cs +++ b/Netch/Forms/Server/Socks5.cs @@ -1,5 +1,6 @@ using System; using System.Drawing; +using System.Text.RegularExpressions; using System.Windows.Forms; namespace Netch.Forms.Server @@ -21,12 +22,12 @@ namespace Netch.Forms.Server private void Shadowsocks_Load(object sender, EventArgs e) { - ConfigurationGroupBox.Text = Utils.i18N.Translate("Configuration"); - RemarkLabel.Text = Utils.i18N.Translate("Remark"); - AddressLabel.Text = Utils.i18N.Translate("Address"); - UsernameLabel.Text = Utils.i18N.Translate("Username"); - PasswordLabel.Text = Utils.i18N.Translate("Password"); - ControlButton.Text = Utils.i18N.Translate("Save"); + ConfigurationGroupBox.Text = Utils.i18N.Translate(ConfigurationGroupBox.Text); + RemarkLabel.Text = Utils.i18N.Translate(RemarkLabel.Text); + AddressLabel.Text = Utils.i18N.Translate(AddressLabel.Text); + UsernameLabel.Text = Utils.i18N.Translate(UsernameLabel.Text); + PasswordLabel.Text = Utils.i18N.Translate(PasswordLabel.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); if (Index != -1) { @@ -70,6 +71,10 @@ namespace Netch.Forms.Server private void ControlButton_Click(object sender, EventArgs e) { + if (!Regex.Match(PortTextBox.Text, "^[0-9]+$").Success) + { + return; + } if (Index == -1) { Global.Settings.Server.Add(new Models.Server() diff --git a/Netch/Forms/Server/Vmess.cs b/Netch/Forms/Server/Vmess.cs index 199e26f1..aba31b58 100644 --- a/Netch/Forms/Server/Vmess.cs +++ b/Netch/Forms/Server/Vmess.cs @@ -1,5 +1,6 @@ using System; using System.Drawing; +using System.Text.RegularExpressions; using System.Windows.Forms; namespace Netch.Forms.Server @@ -42,21 +43,21 @@ namespace Netch.Forms.Server private void VMess_Load(object sender, EventArgs e) { - ConfigurationGroupBox.Text = Utils.i18N.Translate("Configuration"); - RemarkLabel.Text = Utils.i18N.Translate("Remark"); - AddressLabel.Text = Utils.i18N.Translate("Address"); - UserIDLabel.Text = Utils.i18N.Translate("User ID"); - AlterIDLabel.Text = Utils.i18N.Translate("Alter ID"); - EncryptMethodLabel.Text = Utils.i18N.Translate("Encrypt Method"); - TransferProtocolLabel.Text = Utils.i18N.Translate("Transfer Protocol"); - FakeTypeLabel.Text = Utils.i18N.Translate("Fake Type"); - HostLabel.Text = Utils.i18N.Translate("Host"); - PathLabel.Text = Utils.i18N.Translate("Path"); - QUICSecurityLabel.Text = Utils.i18N.Translate("QUIC Security"); - QUICSecretLabel.Text = Utils.i18N.Translate("QUIC Secret"); - TLSSecureCheckBox.Text = Utils.i18N.Translate("TLS Secure"); - UseMuxCheckBox.Text = Utils.i18N.Translate("Use Mux"); - ControlButton.Text = Utils.i18N.Translate("Save"); + ConfigurationGroupBox.Text = Utils.i18N.Translate(ConfigurationGroupBox.Text); + RemarkLabel.Text = Utils.i18N.Translate(RemarkLabel.Text); + AddressLabel.Text = Utils.i18N.Translate(AddressLabel.Text); + UserIDLabel.Text = Utils.i18N.Translate(UserIDLabel.Text); + AlterIDLabel.Text = Utils.i18N.Translate(AlterIDLabel.Text); + EncryptMethodLabel.Text = Utils.i18N.Translate(EncryptMethodLabel.Text); + TransferProtocolLabel.Text = Utils.i18N.Translate(TransferProtocolLabel.Text); + FakeTypeLabel.Text = Utils.i18N.Translate(FakeTypeLabel.Text); + HostLabel.Text = Utils.i18N.Translate(HostLabel.Text); + PathLabel.Text = Utils.i18N.Translate(PathLabel.Text); + QUICSecurityLabel.Text = Utils.i18N.Translate(QUICSecurityLabel.Text); + QUICSecretLabel.Text = Utils.i18N.Translate(QUICSecretLabel.Text); + TLSSecureCheckBox.Text = Utils.i18N.Translate(TLSSecureCheckBox.Text); + UseMuxCheckBox.Text = Utils.i18N.Translate(UseMuxCheckBox.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); foreach (var encrypt in Global.EncryptMethods.VMess) { @@ -111,6 +112,10 @@ namespace Netch.Forms.Server private void ControlButton_Click(object sender, EventArgs e) { + if (!Regex.Match(PortTextBox.Text, "^[0-9]+$").Success) + { + return; + } if (Index == -1) { Global.Settings.Server.Add(new Models.Server() diff --git a/Netch/Forms/SettingForm.cs b/Netch/Forms/SettingForm.cs index d5d0adbb..ed49a45a 100644 --- a/Netch/Forms/SettingForm.cs +++ b/Netch/Forms/SettingForm.cs @@ -43,15 +43,15 @@ namespace Netch.Forms private void SettingForm_Load(object sender, EventArgs e) { - Text = Utils.i18N.Translate("Settings"); - PortGroupBox.Text = Utils.i18N.Translate("Local Port"); - AllowDevicesCheckBox.Text = Utils.i18N.Translate("Allow other Devices to connect"); - TUNTAPAddressLabel.Text = Utils.i18N.Translate("Address"); - TUNTAPNetmaskLabel.Text = Utils.i18N.Translate("Netmask"); - TUNTAPGatewayLabel.Text = Utils.i18N.Translate("Gateway"); - TUNTAPUseCustomDNSCheckBox.Text = Utils.i18N.Translate("Use Custom DNS"); - GlobalBypassIPsButton.Text = Utils.i18N.Translate("Global Bypass IPs"); - ControlButton.Text = Utils.i18N.Translate("Save"); + Text = Utils.i18N.Translate(Text); + PortGroupBox.Text = Utils.i18N.Translate(PortGroupBox.Text); + AllowDevicesCheckBox.Text = Utils.i18N.Translate(AllowDevicesCheckBox.Text); + TUNTAPAddressLabel.Text = Utils.i18N.Translate(TUNTAPAddressLabel.Text); + TUNTAPNetmaskLabel.Text = Utils.i18N.Translate(TUNTAPNetmaskLabel.Text); + TUNTAPGatewayLabel.Text = Utils.i18N.Translate(TUNTAPGatewayLabel.Text); + TUNTAPUseCustomDNSCheckBox.Text = Utils.i18N.Translate(TUNTAPUseCustomDNSCheckBox.Text); + GlobalBypassIPsButton.Text = Utils.i18N.Translate(GlobalBypassIPsButton.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); ExitWhenClosedCheckBox.Checked = Global.Settings.ExitWhenClosed; StopWhenExitedCheckBox.Checked = Global.Settings.StopWhenExited; @@ -68,11 +68,11 @@ namespace Netch.Forms TUNTAPUseCustomDNSCheckBox.Checked = Global.Settings.TUNTAP.UseCustomDNS; - BehaviorGroupBox.Text = Utils.i18N.Translate("Behavior"); - ExitWhenClosedCheckBox.Text = Utils.i18N.Translate("Exit when closed"); - StopWhenExitedCheckBox.Text = Utils.i18N.Translate("Stop when exited"); - StartWhenOpenedCheckBox.Text = Utils.i18N.Translate("Start when opened"); - CheckUpdateWhenOpenedCheckBox.Text = Utils.i18N.Translate("Check update when opened"); + BehaviorGroupBox.Text = Utils.i18N.Translate(BehaviorGroupBox.Text); + ExitWhenClosedCheckBox.Text = Utils.i18N.Translate(ExitWhenClosedCheckBox.Text); + StopWhenExitedCheckBox.Text = Utils.i18N.Translate(StopWhenExitedCheckBox.Text); + StartWhenOpenedCheckBox.Text = Utils.i18N.Translate(StartWhenOpenedCheckBox.Text); + CheckUpdateWhenOpenedCheckBox.Text = Utils.i18N.Translate(CheckUpdateWhenOpenedCheckBox.Text); if (Global.Settings.TUNTAP.DNS.Count > 0) { diff --git a/Netch/Forms/SubscribeForm.cs b/Netch/Forms/SubscribeForm.cs index 8e5457a1..81e723c1 100644 --- a/Netch/Forms/SubscribeForm.cs +++ b/Netch/Forms/SubscribeForm.cs @@ -36,15 +36,15 @@ namespace Netch.Forms private void SubscribeForm_Load(object sender, EventArgs e) { - Text = Utils.i18N.Translate("Subscribe"); - RemarkColumnHeader.Text = Utils.i18N.Translate("Remark"); - LinkColumnHeader.Text = Utils.i18N.Translate("Link"); - UseSelectedServerCheckBox.Text = Utils.i18N.Translate("Use Selected Server To Update Subscription"); - DeleteToolStripMenuItem.Text = Utils.i18N.Translate("Delete"); - RemarkLabel.Text = Utils.i18N.Translate("Remark"); - LinkLabel.Text = Utils.i18N.Translate("Link"); - AddButton.Text = Utils.i18N.Translate("Add"); - ControlButton.Text = Utils.i18N.Translate("Save"); + Text = Utils.i18N.Translate(Text); + RemarkColumnHeader.Text = Utils.i18N.Translate(RemarkColumnHeader.Text); + LinkColumnHeader.Text = Utils.i18N.Translate(LinkColumnHeader.Text); + UseSelectedServerCheckBox.Text = Utils.i18N.Translate(UseSelectedServerCheckBox.Text); + DeleteToolStripMenuItem.Text = Utils.i18N.Translate(DeleteToolStripMenuItem.Text); + RemarkLabel.Text = Utils.i18N.Translate(RemarkLabel.Text); + LinkLabel.Text = Utils.i18N.Translate(LinkLabel.Text); + AddButton.Text = Utils.i18N.Translate(AddButton.Text); + ControlButton.Text = Utils.i18N.Translate(ControlButton.Text); UserAgentTextBox.Text = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36"; UseSelectedServerCheckBox.Checked = Global.Settings.UseProxyToUpdateSubscription; diff --git a/Netch/Resources/zh-CN b/Netch/Resources/zh-CN index 757ab9f8..4b21a7f7 100644 --- a/Netch/Resources/zh-CN +++ b/Netch/Resources/zh-CN @@ -123,8 +123,8 @@ "Port value illegal. Try again.": "端口值非法。请重试。", "Check update when opened": "打开软件时检查更新", - "Profile Name": "Profile Name", - "Profiles": "Profiles", + "Profile": "配置名", + "Profiles": "配置", "None": "无", "Show": "显示",