using SA_LTT;
|
using System;
|
using System.Drawing;
|
using System.Threading;
|
using System.Windows.Forms;
|
|
namespace SA_LTT_UI.Viewer
|
{
|
public partial class PreAlignViwer : Form
|
{
|
MainFrame _mainFrame;
|
Thread t_UIUpdate;
|
|
bool updateCheck;
|
|
protected override CreateParams CreateParams
|
{
|
get
|
{
|
CreateParams MyCp = base.CreateParams;
|
MyCp.ExStyle |= 0x02000000;
|
|
return MyCp;
|
}
|
}
|
|
public PreAlignViwer(MainFrame mainFrame)
|
{
|
InitializeComponent();
|
|
_mainFrame = mainFrame;
|
t_UIUpdate = new Thread(UIUpdateTh);
|
t_UIUpdate.Start();
|
}
|
|
private void UIUpdateTh()
|
{
|
while (_mainFrame.equipment.IsDisposed == false)
|
{
|
Thread.Sleep(10);
|
|
if (updateCheck == false)
|
{
|
updateCheck = true;
|
UIUpdate();
|
}
|
}
|
}
|
|
private void UIUpdate()
|
{
|
if (InvokeRequired)
|
{
|
BeginInvoke(new UIUpdateDelegate(UIUpdate));
|
return;
|
}
|
else
|
{
|
try
|
{
|
lb_PortName.Text = _mainFrame.equipment.preAligner.PortName;
|
lb_PortName.BackColor = _mainFrame.equipment.preAligner.IsOpen ? Color.Lime : Color.Red;
|
|
lb_Version.Text = $"Version - {_mainFrame.equipment.preAligner.Version}";
|
|
lb_RunEnable.BackColor = _mainFrame.equipment.preAligner.IsRunEnable ? Color.Lime : Color.Red;
|
lb_WaferExist.BackColor = _mainFrame.equipment.preAligner.IsWaferExist ? Color.Lime : Color.Red;
|
lb_Vacuum.BackColor = _mainFrame.equipment.preAligner.IsVacuumOn ? Color.Lime : Color.Red;
|
lb_IsHome.BackColor = _mainFrame.equipment.preAligner.IsHome ? Color.Lime : Color.Red;
|
|
tb_PositionX.Text = _mainFrame.equipment.preAligner.PositionX.ToString();
|
tb_PositionY.Text = _mainFrame.equipment.preAligner.PositionY.ToString();
|
tb_PositionT.Text = _mainFrame.equipment.preAligner.PositionT.ToString();
|
|
if (_mainFrame.equipment.preAligner.IsRunEnable && (_mainFrame.equipment.ProcessStatus == ProcessStatus.Idle || _mainFrame.equipment.ProcessStatus == ProcessStatus.Pause))
|
{
|
if (gb_Control.Enabled == false)
|
{
|
gb_Control.Enabled = true;
|
}
|
}
|
else
|
{
|
if (gb_Control.Enabled)
|
{
|
gb_Control.Enabled = false;
|
}
|
}
|
}
|
catch (Exception e)
|
{
|
EquipmentLogManager.Instance.WriteExceptionLog(e.StackTrace);
|
}
|
finally
|
{
|
updateCheck = false;
|
}
|
}
|
}
|
|
private void btn_Home_Click(object sender, EventArgs e)
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text}");
|
_mainFrame.equipment.preAligner.Home();
|
}
|
|
private void btn_Align_Click(object sender, EventArgs e)
|
{
|
DateTime dt = DateTime.Now;
|
double angle = 0;
|
|
if(double.TryParse(tb_Angle.Text, out angle))
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text} {angle}");
|
_mainFrame.equipment.preAligner.Align(angle);
|
}
|
|
tb_AlignTime.Text = $"{(DateTime.Now - dt).TotalSeconds:F3} s";
|
}
|
|
private void btn_Again_Click(object sender, EventArgs e)
|
{
|
double angle = 0;
|
|
if (double.TryParse(tb_Angle.Text, out angle))
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text} {angle}");
|
_mainFrame.equipment.preAligner.Again(angle);
|
}
|
}
|
|
private void btn_VacuumOn_Click(object sender, EventArgs e)
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text}");
|
_mainFrame.equipment.preAligner.VacuumOn();
|
}
|
|
private void btn_VacuumOff_Click(object sender, EventArgs e)
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text}");
|
_mainFrame.equipment.preAligner.VacuumOff();
|
}
|
|
private void PreAlignViwer_FormClosing(object sender, FormClosingEventArgs e)
|
{
|
e.Cancel = true;
|
this.Hide();
|
}
|
|
private void btn_Center_Click(object sender, EventArgs e)
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text}");
|
_mainFrame.equipment.preAligner.Center();
|
}
|
|
private void btn_PinDown_Click(object sender, EventArgs e)
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text}");
|
_mainFrame.equipment.preAligner.PinUp();
|
}
|
|
private void btn_PinUp_Click(object sender, EventArgs e)
|
{
|
EquipmentLogManager.Instance.WriteButtonLog($"{this.Name} : {((Control)sender).Text}");
|
_mainFrame.equipment.preAligner.PinDown();
|
}
|
}
|
}
|