JD2022-TU1/main/tools/lib/AbstractPlugin/WinForm/EngineConnectionParameterForm.cs

51 lines
1.7 KiB
C#

using System;
using System.Windows.Forms;
namespace Plugin
{
public partial class EngineConnectionParameterForm : Form
{
private readonly EngineConnectionManager _engineConnectionManager = null;
public EngineConnectionParameterForm(EngineConnectionManager engineConnectionManager)
{
InitializeComponent();
if (engineConnectionManager == null)
throw new ArgumentNullException();
_engineConnectionManager = engineConnectionManager;
_engineConnectionParameterUserControl.DataContext = _engineConnectionManager;
}
public void OnConnectSelectionDone(object sender, EventArgs args)
{
DialogResult = DialogResult.OK;
Close();
}
private EngineConnectionManager ConnectionManager
{
get
{
return (EngineConnectionManager)_engineConnectionParameterUserControl.DataContext;
}
}
private void OnLoad(object sender, EventArgs e)
{
_engineConnectionParameterUserControl.ConnectionRequest += OnConnectSelectionDone;
_engineConnectionManager.Clear();
_engineConnectionManager.Load();
// ip list box gains focus
_engineConnectionParameterUserControl._listBox.Focus();
}
private void OnFormClosed(object sender, FormClosedEventArgs e)
{
_engineConnectionParameterUserControl.DataContext = null;
_engineConnectionParameterUserControl.ConnectionRequest -= OnConnectSelectionDone;
_engineConnectionManager.Save();
}
}
}