Refactor: MainForm AddServerMenuStrip get IServerUtil from Tag

This commit is contained in:
ChsBuffer
2021-04-30 17:02:34 +08:00
parent 460d295a66
commit 60f0637b03

View File

@@ -14,6 +14,7 @@ using System.Linq;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
using Netch.Interfaces;
namespace Netch.Forms namespace Netch.Forms
{ {
@@ -60,7 +61,8 @@ namespace Netch.Forms
{ {
Name = $"Add{fullName}ServerToolStripMenuItem", Name = $"Add{fullName}ServerToolStripMenuItem",
Size = new Size(259, 22), Size = new Size(259, 22),
Text = i18N.TranslateFormat("Add [{0}] Server", fullName) Text = i18N.TranslateFormat("Add [{0}] Server", fullName),
Tag = serversUtil
}; };
_mainFormText.Add(control.Name, new[] { "Add [{0}] Server", fullName }); _mainFormText.Add(control.Name, new[] { "Add [{0}] Server", fullName });
@@ -227,15 +229,10 @@ namespace Netch.Forms
if (sender == null) if (sender == null)
throw new ArgumentNullException(nameof(sender)); throw new ArgumentNullException(nameof(sender));
// TODO get Util from Tag var util = (IServerUtil)((ToolStripMenuItem)sender).Tag;
var s = ((ToolStripMenuItem)sender).Text;
var start = s.IndexOf("[", StringComparison.Ordinal) + 1;
var end = s.IndexOf("]", start, StringComparison.Ordinal);
var result = s.Substring(start, end - start);
Hide(); Hide();
ServerHelper.GetUtilByFullName(result).Create(); util.Create();
LoadServers(); LoadServers();
Configuration.Save(); Configuration.Save();