using Navigation; using System; using System.Threading; using System.Windows.Forms; namespace SHARP_CLAS_UI { public partial class Form_Parameter_System : Form { #region Property #endregion #region Field delegate void UI_Update_Delegate(); Form_Frame _Parent; Thread UI_Update_Th; bool update_check; Parameter_Mode mode; Parameter_Setting setting; #endregion #region Construct public Form_Parameter_System(Form_Frame _Parent) { InitializeComponent(); this._Parent = _Parent; mode = Parameter_System_Manager.Instance.Get_Mode(); setting = Parameter_System_Manager.Instance.Get_Setting(); ThreadInit(); } #endregion #region Form_Function private void btn_Skip_Mode_Click(object sender, EventArgs e) { if (mode == null) return; if (btn_Agv_Use == (Button)sender) { mode.Agv_Skip = false; } else if (btn_Agv_Notuse == (Button)sender) { mode.Agv_Skip = true; } if (btn_Ablation_Stage_1_1_Use == (Button)sender) { mode.Ablation_Stage_1_1_Skip = false; } else if (btn_Ablation_Stage_1_1_Notuse == (Button)sender) { if (!mode.Ablation_Stage_2_1_Skip) { mode.Ablation_Stage_1_1_Skip = true; } } if (btn_Ablation_Stage_1_2_Use == (Button)sender) { mode.Ablation_Stage_1_2_Skip = false; } else if (btn_Ablation_Stage_1_2_Notuse == (Button)sender) { if (!mode.Ablation_Stage_2_2_Skip) { mode.Ablation_Stage_1_2_Skip = true; } } if (btn_Ablation_Stage_2_1_Use == (Button)sender) { mode.Ablation_Stage_2_1_Skip = false; } else if (btn_Ablation_Stage_2_1_Notuse == (Button)sender) { if (!mode.Ablation_Stage_1_1_Skip) { mode.Ablation_Stage_2_1_Skip = true; } } if (btn_Ablation_Stage_2_2_Use == (Button)sender) { mode.Ablation_Stage_2_2_Skip = false; } else if (btn_Ablation_Stage_2_2_Notuse == (Button)sender) { if (!mode.Ablation_Stage_1_2_Skip) { mode.Ablation_Stage_2_2_Skip = true; } } if (btn_Ld_Bcr_Use == (Button)sender) { mode.LD_Bcr_Skip = false; } else if (btn_Ld_Bcr_Notuse == (Button)sender) { mode.LD_Bcr_Skip = true; } if (btn_Cell_Id_Bcr_Use == (Button)sender) { mode.Cell_Id_Bcr_Skip = false; } else if (btn_Cell_Id_Bcr_Notuse == (Button)sender) { mode.Cell_Id_Bcr_Skip = true; } if (btn_Uld_Bcr_Use == (Button)sender) { mode.Uld_Bcr_Skip = false; } else if (btn_Uld_Bcr_Notuse == (Button)sender) { mode.Uld_Bcr_Skip = true; } if (btn_Film_Judge_Use == (Button)sender) { mode.Film_Judge_Skip = false; } else if (btn_Film_Judge_Notuse == (Button)sender) { mode.Film_Judge_Skip = true; } if (btn_Pre_Align_Use == (Button)sender) { mode.Pre_Align_Skip = false; } else if (btn_Pre_Align_Notuse == (Button)sender) { mode.Pre_Align_Skip = true; } if (btn_Fine_Align_Use == (Button)sender) { mode.Fine_Align_Skip = false; } else if (btn_Fine_Align_Notuse == (Button)sender) { mode.Fine_Align_Skip = true; } if (btn_Measurement_Use == (Button)sender) { mode.Measurement_Skip = false; } else if (btn_Measurement_Notuse == (Button)sender) { mode.Measurement_Skip = true; } if (btn_Ablation_Use == (Button)sender) { mode.Ablation_Skip = false; } else if (btn_Ablation_Notuse == (Button)sender) { mode.Ablation_Skip = true; } if (btn_Plasma_Use == (Button)sender) { mode.Plasma_Skip = false; } else if (btn_Plasma_Notuse == (Button)sender) { mode.Plasma_Skip = true; } if (btn_LD_Stacker_Use == (Button)sender) { mode.LD_Stacker_Skip = false; } else if (btn_LD_Stacker_Notuse == (Button)sender) { mode.LD_Stacker_Skip = true; } if (btn_ULD_Stacker_Use == (Button)sender) { mode.ULD_Stacker_Skip = false; } else if (btn_ULD_Stacker_Notuse == (Button)sender) { mode.ULD_Stacker_Skip = true; } if (btn_Film_Judge_Tray == (Button)sender) { mode.Film_Judge_Mode = false; } else if (btn_Film_Judge_Pre_Align == (Button)sender) { mode.Film_Judge_Mode = true; } if(btn_Auto_Power_Use == (Button)sender) { mode.Auto_Power_Skip = false; } else if(btn_Auto_Power_Notuse == (Button)sender) { mode.Auto_Power_Skip = true; } } private void tb_Setting_TextChanged(object sender, EventArgs e) { } private void btn_Setting_Reset_Click(object sender, EventArgs e) { setting = Parameter_System_Manager.Instance.Get_Setting(); } private void btn_Setting_Save_Click(object sender, EventArgs e) { Parameter_Setting set = Parameter_System_Manager.Instance.Get_Setting(); System.Reflection.PropertyInfo[] properties = typeof(Parameter_Setting).GetProperties(); foreach (System.Reflection.PropertyInfo property in properties) { object ori_data = property.GetValue(set); object new_data = property.GetValue(setting); if (!ori_data.Equals(new_data)) { _Parent.Write_Setting_Parameter_Log($"{property.Name}, {ori_data} -> {new_data}"); } } Parameter_System_Manager.Instance.Save_System_Setting(setting); } private void btn_Mode_Save_Click(object sender, EventArgs e) { Parameter_Mode mod = Parameter_System_Manager.Instance.Get_Mode(); System.Reflection.PropertyInfo[] properties = typeof(Parameter_Mode).GetProperties(); foreach (System.Reflection.PropertyInfo property in properties) { object ori_data = property.GetValue(mod); object new_data = property.GetValue(mode); if (!ori_data.Equals(new_data)) { _Parent.Write_Mode_Parameter_Log($"{property.Name}, {ori_data} -> {new_data}"); } } Parameter_System_Manager.Instance.Save_System_Mode(mode); } private void btn_Mode_Reset_Click(object sender, EventArgs e) { mode = Parameter_System_Manager.Instance.Get_Mode(); } #endregion #region Function public void Set_Language() { try { // Mode lb_AGV.Text = resLanguage.AGV; lb_Ablation_Stage_1.Text = resLanguage.Ablation_Stage_1; lb_Ablation_Stage_2.Text = resLanguage.Ablation_Stage_2; lb_LD_BCR.Text = resLanguage.LD_BCR; lb_Cell_ID_BCR.Text = resLanguage.CELL_ID_BCR; lb_ULD_BCR.Text = resLanguage.ULD_BCR; lb_Film_Judge.Text = resLanguage.Film_Judge; lb_Pre_Align.Text = resLanguage.PRE_ALIGN; lb_Fine_Align.Text = resLanguage.FINE_ALIGN; lb_Measurement.Text = resLanguage.MEASUREMENT; lb_Ablation.Text = resLanguage.Ablation; lb_Plasma.Text = resLanguage.Plasma; lb_Film_Judge_Mode.Text = resLanguage.Film; lb_LD_Stacker.Text = resLanguage.LD_STACKER; lb_ULD_Stacker.Text = resLanguage.ULD_STACKER; btn_Mode_Reset.Text = resLanguage.RESET; btn_Mode_Save.Text = resLanguage.Save; btn_Agv_Use.Text = resLanguage.USE; btn_Agv_Notuse.Text = resLanguage.NOT_USE; btn_Ablation_Stage_1_1_Use.Text = resLanguage.USE; btn_Ablation_Stage_1_1_Notuse.Text = resLanguage.NOT_USE; btn_Ablation_Stage_1_2_Use.Text = resLanguage.USE; btn_Ablation_Stage_1_2_Notuse.Text = resLanguage.NOT_USE; btn_Ablation_Stage_2_1_Use.Text = resLanguage.USE; btn_Ablation_Stage_2_1_Notuse.Text = resLanguage.NOT_USE; btn_Ablation_Stage_2_2_Use.Text = resLanguage.USE; btn_Ablation_Stage_2_2_Notuse.Text = resLanguage.NOT_USE; btn_Ld_Bcr_Use.Text = resLanguage.USE; btn_Ld_Bcr_Notuse.Text = resLanguage.NOT_USE; btn_Cell_Id_Bcr_Use.Text = resLanguage.USE; btn_Cell_Id_Bcr_Notuse.Text = resLanguage.NOT_USE; btn_Uld_Bcr_Use.Text = resLanguage.USE; btn_Uld_Bcr_Notuse.Text = resLanguage.NOT_USE; btn_Film_Judge_Use.Text = resLanguage.USE; btn_Film_Judge_Notuse.Text = resLanguage.NOT_USE; btn_Pre_Align_Use.Text = resLanguage.USE; btn_Pre_Align_Notuse.Text = resLanguage.NOT_USE; btn_Fine_Align_Use.Text = resLanguage.USE; btn_Fine_Align_Notuse.Text = resLanguage.NOT_USE; btn_Measurement_Use.Text = resLanguage.USE; btn_Measurement_Notuse.Text = resLanguage.NOT_USE; btn_Ablation_Use.Text = resLanguage.USE; btn_Ablation_Notuse.Text = resLanguage.NOT_USE; btn_Plasma_Use.Text = resLanguage.USE; btn_Plasma_Notuse.Text = resLanguage.NOT_USE; btn_LD_Stacker_Use.Text = resLanguage.USE; btn_LD_Stacker_Notuse.Text = resLanguage.NOT_USE; btn_ULD_Stacker_Use.Text = resLanguage.USE; btn_ULD_Stacker_Notuse.Text = resLanguage.NOT_USE; btn_Film_Judge_Tray.Text = resLanguage.TRAY; btn_Film_Judge_Pre_Align.Text = resLanguage.PRE_ALIGN; //Setting lb_Speed_parameter.Text = resLanguage.Speed_Parameter; lb_Film_Judge_Speed.Text = resLanguage.Film_Judge_Speed; lb_Pre_Align_Speed.Text = resLanguage.Pre_Align_Speed; lb_Fine_Align_Speed.Text = resLanguage.Fine_Align_Speed; lb_Measurement_Speed.Text = resLanguage.Measurement_Speed; lb_Ablation_Speed.Text = resLanguage.Ablation_Speed; lb_Plasma_Speed.Text = resLanguage.Plasma_Speed; //lb_Conveyor_Speed.Text = resLanguage. lb_Retry_parameter.Text = resLanguage.Retry_Parameter; lb_Vision_Retry_Count.Text = resLanguage.Vision_Retry_Count; lb_Bcr_Retry_Count.Text = resLanguage.BCR_Retry_Count; lb_Clamp_Retry_Count.Text = resLanguage.Clamp_Retry_Count; lb_Time_out_parameter.Text = resLanguage.Time_Out_Parameter; lb_Vacuum_Time_Out.Text = resLanguage.Vaccum_Timeout_sec; lb_Cylinder_Time_Out.Text = resLanguage.Cylinder_Timeout_sec; lb_Vision_Time_Out.Text = resLanguage.Vision_Timeout_sec; lb_Vision_Connect_Time.Text = resLanguage.Vision_Hear_Beat_Timeout_sec; lb_Delay_parameter.Text = resLanguage.Delay_Parameter; lb_Vision_Move_Delay.Text = resLanguage.Vision_Move_Delay_sec; lb_Inposition_parameter.Text = resLanguage.Inposition_Parameter; lb_Inposition_Range.Text = resLanguage.Inposition_Range_mm; lb_Dust_Collector_parameter.Text = resLanguage.Dust_Collector_Parameter; lb_Dust_Collector.Text = resLanguage.Dust_Collector; btn_Setting_Reset.Text = resLanguage.RESET; btn_Setting_Save.Text = resLanguage.Save; } catch(Exception ex) { } } public void Set_User_Level(Navigator.User_Level level) { if (_Parent._equip.User.Level <= En_User_Level.Operator) { pnl_Setting.Enabled = false; } else { pnl_Setting.Enabled = true; } } private void ThreadInit() { UI_Update_Th = new Thread(UI_Update_Th_Set); UI_Update_Th.Start(); } private void UI_Update_Th_Set() { while (!this.IsDisposed) { Thread.Sleep(100); if (!update_check) { update_check = true; UI_Update(); } } } private void UI_Update() { if (InvokeRequired) { BeginInvoke(new UI_Update_Delegate(UI_Update)); return; } else { try { if (_Parent._equip.equip_mode == En_Equipment_Mode.Auto && this.Enabled) { this.Enabled = false; } else if (_Parent._equip.equip_mode != En_Equipment_Mode.Auto && !this.Enabled) { this.Enabled = true; } Update_Skip_Mode(); Update_Setting(); } catch (Exception ex) { } finally { update_check = false; } } } private void Update_Skip_Mode() { Parameter_Mode mod = Parameter_System_Manager.Instance.Get_Mode(); btn_Agv_Use.BackColor = !mode.Agv_Skip ? mod.Agv_Skip == mode.Agv_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Agv_Notuse.BackColor = mode.Agv_Skip ? mod.Agv_Skip == mode.Agv_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_1_1_Use.BackColor = !mode.Ablation_Stage_1_1_Skip ? mod.Ablation_Stage_1_1_Skip == mode.Ablation_Stage_1_1_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_1_1_Notuse.BackColor = mode.Ablation_Stage_1_1_Skip ? mod.Ablation_Stage_1_1_Skip == mode.Ablation_Stage_1_1_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_1_2_Use.BackColor = !mode.Ablation_Stage_1_2_Skip ? mod.Ablation_Stage_1_2_Skip == mode.Ablation_Stage_1_2_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_1_2_Notuse.BackColor = mode.Ablation_Stage_1_2_Skip ? mod.Ablation_Stage_1_2_Skip == mode.Ablation_Stage_1_2_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_2_1_Use.BackColor = !mode.Ablation_Stage_2_1_Skip ? mod.Ablation_Stage_2_1_Skip == mode.Ablation_Stage_2_1_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_2_1_Notuse.BackColor = mode.Ablation_Stage_2_1_Skip ? mod.Ablation_Stage_2_1_Skip == mode.Ablation_Stage_2_1_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_2_2_Use.BackColor = !mode.Ablation_Stage_2_2_Skip ? mod.Ablation_Stage_2_2_Skip == mode.Ablation_Stage_2_2_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Stage_2_2_Notuse.BackColor = mode.Ablation_Stage_2_2_Skip ? mod.Ablation_Stage_2_2_Skip == mode.Ablation_Stage_2_2_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ld_Bcr_Use.BackColor = !mode.LD_Bcr_Skip ? mod.LD_Bcr_Skip == mode.LD_Bcr_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ld_Bcr_Notuse.BackColor = mode.LD_Bcr_Skip ? mod.LD_Bcr_Skip == mode.LD_Bcr_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Cell_Id_Bcr_Use.BackColor = !mode.Cell_Id_Bcr_Skip ? mod.Cell_Id_Bcr_Skip == mode.Cell_Id_Bcr_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Cell_Id_Bcr_Notuse.BackColor = mode.Cell_Id_Bcr_Skip ? mod.Cell_Id_Bcr_Skip == mode.Cell_Id_Bcr_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Uld_Bcr_Use.BackColor = !mode.Uld_Bcr_Skip ? mod.Uld_Bcr_Skip == mode.Uld_Bcr_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Uld_Bcr_Notuse.BackColor = mode.Uld_Bcr_Skip ? mod.Uld_Bcr_Skip == mode.Uld_Bcr_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Film_Judge_Use.BackColor = !mode.Film_Judge_Skip ? mod.Film_Judge_Skip == mode.Film_Judge_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Film_Judge_Notuse.BackColor = mode.Film_Judge_Skip ? mod.Film_Judge_Skip == mode.Film_Judge_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Pre_Align_Use.BackColor = !mode.Pre_Align_Skip ? mod.Pre_Align_Skip == mode.Pre_Align_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Pre_Align_Notuse.BackColor = mode.Pre_Align_Skip ? mod.Pre_Align_Skip == mode.Pre_Align_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Fine_Align_Use.BackColor = !mode.Fine_Align_Skip ? mod.Fine_Align_Skip == mode.Fine_Align_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Fine_Align_Notuse.BackColor = mode.Fine_Align_Skip ? mod.Fine_Align_Skip == mode.Fine_Align_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Measurement_Use.BackColor = !mode.Measurement_Skip ? mod.Measurement_Skip == mode.Measurement_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Measurement_Notuse.BackColor = mode.Measurement_Skip ? mod.Measurement_Skip == mode.Measurement_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Use.BackColor = !mode.Ablation_Skip ? mod.Ablation_Skip == mode.Ablation_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Ablation_Notuse.BackColor = mode.Ablation_Skip ? mod.Ablation_Skip == mode.Ablation_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Plasma_Use.BackColor = !mode.Plasma_Skip ? mod.Plasma_Skip == mode.Plasma_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Plasma_Notuse.BackColor = mode.Plasma_Skip ? mod.Plasma_Skip == mode.Plasma_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_LD_Stacker_Use.BackColor = !mode.LD_Stacker_Skip ? mod.LD_Stacker_Skip == mode.LD_Stacker_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_LD_Stacker_Notuse.BackColor = mode.LD_Stacker_Skip ? mod.LD_Stacker_Skip == mode.LD_Stacker_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_ULD_Stacker_Use.BackColor = !mode.ULD_Stacker_Skip ? mod.ULD_Stacker_Skip == mode.ULD_Stacker_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_ULD_Stacker_Notuse.BackColor = mode.ULD_Stacker_Skip ? mod.ULD_Stacker_Skip == mode.ULD_Stacker_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Film_Judge_Tray.BackColor = !mode.Film_Judge_Mode ? mod.Film_Judge_Mode == mode.Film_Judge_Mode ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Film_Judge_Pre_Align.BackColor = mode.Film_Judge_Mode ? mod.Film_Judge_Mode == mode.Film_Judge_Mode ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Auto_Power_Use.BackColor = !mode.Auto_Power_Skip ? mod.Auto_Power_Skip == mode.Auto_Power_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; btn_Auto_Power_Notuse.BackColor = mode.Auto_Power_Skip ? mod.Auto_Power_Skip == mode.Auto_Power_Skip ? System.Drawing.Color.DodgerBlue : System.Drawing.Color.Red : System.Drawing.Color.White; } private void Update_Setting() { if (setting == null) return; Parameter_Setting set = Parameter_System_Manager.Instance.Get_Setting(); if(ActiveControl == null || ActiveControl.Name != "tb_Film_Judge_Speed") { tb_Film_Judge_Speed.Text = setting.Film_Judge_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Pre_Align_Speed") { tb_Pre_Align_Speed.Text = setting.Pre_Align_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Fine_Align_Speed") { tb_Fine_Align_Speed.Text = setting.Fine_Align_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Measurement_Speed") { tb_Measurement_Speed.Text = setting.Measurement_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Ablation_Speed") { tb_Ablation_Speed.Text = setting.Ablation_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Plasma_Speed") { tb_Plasma_Speed.Text = setting.Plasma_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Conveyor_Speed") { tb_Conveyor_Speed.Text = setting.Conveyor_Speed.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Vision_Retry_Count") { tb_Vision_Retry_Count.Text = setting.Vision_Retry_Count.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Bcr_Retry_Count") { tb_Bcr_Retry_Count.Text = setting.Bcr_Retry_Count.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Clamp_Retry_Count") { tb_Clamp_Retry_Count.Text = setting.Clamp_Retry_Count.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Vacuum_Time_Out") { tb_Vacuum_Time_Out.Text = setting.Vacuum_Timeout.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Inposition_Range") { tb_Inposition_Range.Text = setting.Inposition_Offset.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Cylinder_Time_Out") { tb_Cylinder_Time_Out.Text = setting.Cylinder_Timeout.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Vision_Time_Out") { tb_Vision_Time_Out.Text = setting.Vision_Timeout.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Conveyor_Time_Out") { tb_Conveyor_Time_Out.Text = setting.Conveyor_Timeout.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Vision_Move_Delay") { tb_Vision_Move_Delay.Text = setting.Vision_Move_Delay.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Vision_Connect_Time") { tb_Vision_Connect_Time.Text = setting.Vision_Connect_Time.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Dust_Collector") { tb_Dust_Collector.Text = setting.Dust_Collector.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Fine_Align_Mark_Offset_Range") { tb_Fine_Align_Mark_Offset_Range.Text = setting.Fine_Align_Mark_Offset_Range.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Tray_Alarm_Range") { tb_Tray_Alarm_Range.Text = setting.Tray_Alarm_Range.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Tray_Move_Pitch") { tb_Tray_Move_Pitch.Text = setting.Tray_Move_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_LD_In_Tray_Move_Last_Pitch") { tb_LD_In_Tray_Move_Last_Pitch.Text = setting.LD_In_Tray_Move_Last_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_LD_Empty_Tray_Move_Last_Pitch") { tb_LD_Empty_Tray_Move_Last_Pitch.Text = setting.LD_Empty_Tray_Move_Last_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_ULD_Ok_Tray_Move_Last_Pitch") { tb_ULD_Ok_Tray_Move_Last_Pitch.Text = setting.ULD_Ok_Tray_Move_Last_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_ULD_Ng_Tray_Move_Last_Pitch") { tb_ULD_Ng_Tray_Move_Last_Pitch.Text = setting.ULD_Ng_Tray_Move_Last_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_ULD_Empty_Tray_Move_Last_Pitch") { tb_ULD_Empty_Tray_Move_Last_Pitch.Text = setting.ULD_Empty_Tray_Move_Last_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Stage_1_1_Power_Offset") { tb_Stage_1_1_Power_Offset.Text = setting.Stage_1_1_Power_Offset.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Stage_1_2_Power_Offset") { tb_Stage_1_2_Power_Offset.Text = setting.Stage_1_2_Power_Offset.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Stage_2_1_Power_Offset") { tb_Stage_2_1_Power_Offset.Text = setting.Stage_2_1_Power_Offset.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Stage_2_2_Power_Offset") { tb_Stage_2_2_Power_Offset.Text = setting.Stage_2_2_Power_Offset.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Handler_Pitch") { tb_Handler_Pitch.Text = setting.Handler_Pitch.ToString(); } if (ActiveControl == null || ActiveControl.Name != "tb_Cleaning_Count") { tb_Cleaning_Count.Text = setting.Cleaning_Count.ToString(); } tb_Film_Judge_Speed.BackColor = setting.Film_Judge_Speed == set.Film_Judge_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Pre_Align_Speed.BackColor = setting.Pre_Align_Speed == set.Pre_Align_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Fine_Align_Speed.BackColor = setting.Fine_Align_Speed == set.Fine_Align_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Measurement_Speed.BackColor = setting.Measurement_Speed == set.Measurement_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Ablation_Speed.BackColor = setting.Ablation_Speed == set.Ablation_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Plasma_Speed.BackColor = setting.Plasma_Speed == set.Plasma_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Conveyor_Speed.BackColor = setting.Conveyor_Speed == set.Conveyor_Speed ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Vision_Retry_Count.BackColor = setting.Vision_Retry_Count == set.Vision_Retry_Count ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Bcr_Retry_Count.BackColor = setting.Bcr_Retry_Count == set.Bcr_Retry_Count ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Clamp_Retry_Count.BackColor = setting.Clamp_Retry_Count == set.Clamp_Retry_Count ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Inposition_Range.BackColor = setting.Inposition_Offset == set.Inposition_Offset ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Vacuum_Time_Out.BackColor = setting.Vacuum_Timeout == set.Vacuum_Timeout ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Cylinder_Time_Out.BackColor = setting.Cylinder_Timeout == set.Cylinder_Timeout ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Vision_Time_Out.BackColor = setting.Vision_Timeout == set.Vision_Timeout ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Conveyor_Time_Out.BackColor = setting.Conveyor_Timeout == set.Conveyor_Timeout ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Vision_Move_Delay.BackColor = setting.Vision_Move_Delay == set.Vision_Move_Delay ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Vision_Connect_Time.BackColor = setting.Vision_Connect_Time == set.Vision_Connect_Time ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Dust_Collector.BackColor = setting.Dust_Collector == set.Dust_Collector ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Fine_Align_Mark_Offset_Range.BackColor = setting.Fine_Align_Mark_Offset_Range == set.Fine_Align_Mark_Offset_Range ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Tray_Alarm_Range.BackColor = setting.Tray_Alarm_Range == set.Tray_Alarm_Range ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Tray_Move_Pitch.BackColor = setting.Tray_Move_Pitch == set.Tray_Move_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_LD_In_Tray_Move_Last_Pitch.BackColor = setting.LD_In_Tray_Move_Last_Pitch == set.LD_In_Tray_Move_Last_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_LD_Empty_Tray_Move_Last_Pitch.BackColor = setting.LD_Empty_Tray_Move_Last_Pitch == set.LD_Empty_Tray_Move_Last_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_ULD_Ok_Tray_Move_Last_Pitch.BackColor = setting.ULD_Ok_Tray_Move_Last_Pitch == set.ULD_Ok_Tray_Move_Last_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_ULD_Ng_Tray_Move_Last_Pitch.BackColor = setting.ULD_Ng_Tray_Move_Last_Pitch == set.ULD_Ng_Tray_Move_Last_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_ULD_Empty_Tray_Move_Last_Pitch.BackColor = setting.ULD_Empty_Tray_Move_Last_Pitch == set.ULD_Empty_Tray_Move_Last_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Stage_1_1_Power_Offset.BackColor = setting.Stage_1_1_Power_Offset == set.Stage_1_1_Power_Offset ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Stage_1_2_Power_Offset.BackColor = setting.Stage_1_2_Power_Offset == set.Stage_1_2_Power_Offset ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Stage_2_1_Power_Offset.BackColor = setting.Stage_2_1_Power_Offset == set.Stage_2_1_Power_Offset ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Stage_2_2_Power_Offset.BackColor = setting.Stage_2_2_Power_Offset == set.Stage_2_2_Power_Offset ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Handler_Pitch.BackColor = setting.Handler_Pitch == set.Handler_Pitch ? System.Drawing.Color.White : System.Drawing.Color.Red; tb_Cleaning_Count.BackColor = setting.Cleaning_Count == set.Cleaning_Count ? System.Drawing.Color.White : System.Drawing.Color.Red; } #endregion private void tb_Film_Judge_Speed_Leave(object sender, EventArgs e) { SetSettingData(sender); } private void tb_Film_Judge_Speed_KeyDown(object sender, KeyEventArgs e) { } private void SettingData_Leave(object sender, EventArgs e) { SetSettingData(sender); } private void SettingData_KeyDown(object sender, KeyEventArgs e) { if (e.KeyData == Keys.Enter) { SetSettingData(sender); } } private void SetSettingData(object sender) { TextBox tb = (TextBox)sender; double double_data; int int_data; switch (tb.Name) { case "tb_Film_Judge_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Film_Judge_Speed = double_data; break; } case "tb_Pre_Align_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Pre_Align_Speed = double_data; break; } case "tb_Fine_Align_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Fine_Align_Speed = double_data; break; } case "tb_Measurement_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Measurement_Speed = double_data; break; } case "tb_Ablation_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Ablation_Speed = double_data; break; } case "tb_Plasma_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Plasma_Speed = double_data; break; } case "tb_Conveyor_Speed": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Conveyor_Speed = double_data; break; } case "tb_Vision_Retry_Count": { int.TryParse(tb.Text, out int_data); setting.Vision_Retry_Count = int_data; break; } case "tb_Bcr_Retry_Count": { int.TryParse(tb.Text, out int_data); setting.Bcr_Retry_Count = int_data; break; } case "tb_Clamp_Retry_Count": { int.TryParse(tb.Text, out int_data); setting.Clamp_Retry_Count = int_data; break; } case "tb_Vacuum_Time_Out": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Vacuum_Timeout = double_data; break; } case "tb_Cylinder_Time_Out": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Cylinder_Timeout = double_data; break; } case "tb_Vision_Time_Out": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Vision_Timeout = double_data; break; } case "tb_Conveyor_Time_Out": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Conveyor_Timeout = double_data; break; } case "tb_Vision_Move_Delay": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Vision_Move_Delay = double_data; break; } case "tb_Inposition_Range": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(Math.Abs(double_data).ToString("F3")); setting.Inposition_Offset = double_data; break; } case "tb_Vision_Connect_Time": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Vision_Connect_Time = double_data; break; } case "tb_Dust_Collector": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Dust_Collector = double_data; break; } case "tb_Fine_Align_Mark_Offset_Range": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); setting.Fine_Align_Mark_Offset_Range = double_data; break; } case "tb_Tray_Alarm_Range": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 1) { setting.Tray_Alarm_Range = 1; } else { setting.Tray_Alarm_Range = double_data; } break; } case "tb_Tray_Move_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 0.01) { setting.Tray_Move_Pitch = 0.01; } else { setting.Tray_Move_Pitch = double_data; } break; } case "tb_LD_In_Tray_Move_Last_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 0) { setting.LD_In_Tray_Move_Last_Pitch = 0; } else { setting.LD_In_Tray_Move_Last_Pitch = double_data; } break; } case "tb_LD_Empty_Tray_Move_Last_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 0) { setting.LD_Empty_Tray_Move_Last_Pitch = 0; } else { setting.LD_Empty_Tray_Move_Last_Pitch = double_data; } break; } case "tb_ULD_Ok_Tray_Move_Last_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 0) { setting.ULD_Ok_Tray_Move_Last_Pitch = 0; } else { setting.ULD_Ok_Tray_Move_Last_Pitch = double_data; } break; } case "tb_ULD_Ng_Tray_Move_Last_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 0) { setting.ULD_Ng_Tray_Move_Last_Pitch = 0; } else { setting.ULD_Ng_Tray_Move_Last_Pitch = double_data; } break; } case "tb_ULD_Empty_Tray_Move_Last_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 0) { setting.ULD_Empty_Tray_Move_Last_Pitch = 0; } else { setting.ULD_Empty_Tray_Move_Last_Pitch = double_data; } break; } case "tb_Stage_1_1_Power_Offset": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < -10 || double_data > 20) { setting.Stage_1_1_Power_Offset = 0; } else { setting.Stage_1_1_Power_Offset = double_data; } break; } case "tb_Stage_1_2_Power_Offset": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < -10 || double_data > 20) { setting.Stage_1_2_Power_Offset = 0; } else { setting.Stage_1_2_Power_Offset = double_data; } break; } case "tb_Stage_2_1_Power_Offset": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < -10 || double_data > 20) { setting.Stage_2_1_Power_Offset = 0; } else { setting.Stage_2_1_Power_Offset = double_data; } break; } case "tb_Stage_2_2_Power_Offset": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < -10 || double_data > 20) { setting.Stage_2_2_Power_Offset = 0; } else { setting.Stage_2_2_Power_Offset = double_data; } break; } case "tb_Handler_Pitch": { double.TryParse(tb.Text, out double_data); double_data = double.Parse(double_data.ToString("F3")); if (double_data < 100 || double_data > 400) { setting.Handler_Pitch = 100; } else { setting.Handler_Pitch = double_data; } break; } case "tb_Cleaning_Count": { int.TryParse(tb.Text, out int_data); if(int_data < 0) { int_data = 0; } setting.Cleaning_Count = int_data; break; } } } } }