using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Project { public partial class fSetting : Form { CSetting dummySetting; //설정을 임시로 저장하고 있다가 완료시에 덮어준다. public fSetting() { InitializeComponent(); //setting dummySetting = new CSetting(); Pub.setting.CopyTo(dummySetting); this.KeyDown += (s1, e1) => { if (e1.KeyCode == Keys.Escape) this.Close(); if (DateTime.Now > Pub.LastInputTime) Pub.LastInputTime = DateTime.Now; }; this.MouseMove += (s1, e1) => { if (DateTime.Now > Pub.LastInputTime) Pub.LastInputTime = DateTime.Now; }; this.FormClosed += __Closed; bsRecipient.DataSource = Pub.mailList; bsMailForm.DataSource = Pub.mailForm; } private void __Closed(object sender, FormClosedEventArgs e) { } private void __Load(object sender, EventArgs e) { this.Show(); this.propertyGrid1.SelectedObject = this.dummySetting; this.propertyGrid1.Refresh(); //기능사용 btdoorr1.BackColor = dummySetting.Disable_safty_R0 ? Color.Tomato : Color.Lime; btdoorr2.BackColor = dummySetting.Disable_safty_R1 ? Color.Tomato : Color.Lime; btdoorr3.BackColor = dummySetting.Disable_safty_R2 ? Color.Tomato : Color.Lime; btdoorf1.BackColor = dummySetting.Disable_safty_F0 ? Color.Tomato : Color.Lime; btdoorf2.BackColor = dummySetting.Disable_safty_F1 ? Color.Tomato : Color.Lime; btdoorf3.BackColor = dummySetting.Disable_safty_F2 ? Color.Tomato : Color.Lime; btBuz.BackColor = dummySetting.Disable_Buzzer == false ? Color.Lime : Color.Tomato; this.btTWLamp.BackColor = dummySetting.Disable_TowerLamp ? Color.Tomato : Color.Lime; this.button2.BackColor = dummySetting.Disable_RoomLight == true ? Color.Tomato : Color.Lime; //진공사용여부 this.btLeftVac.BackColor = dummySetting.Disable_PLVac ? Color.Tomato : Color.Lime; this.btRightVac.BackColor = dummySetting.Disable_PRVac ? Color.Tomato : Color.Lime; this.btPickerVac.BackColor = dummySetting.Disable_PKVac ? Color.Tomato : Color.Lime; //포트사용여부 this.btPort0.BackColor = dummySetting.Disable_Port0 ? Color.Tomato : Color.Lime; this.btPort1.BackColor = dummySetting.Disable_Port1 ? Color.Tomato : Color.Lime; this.btPort2.BackColor = dummySetting.Disable_Port2 ? Color.Tomato : Color.Lime; //프린터사용여부 this.btPrintL.BackColor = dummySetting.Disable_PrinterL ? Color.Tomato : Color.Lime; this.btPrintR.BackColor = dummySetting.Disable_PrinterR ? Color.Tomato : Color.Lime; //언로더QR검증 this.button3.BackColor = dummySetting.Enable_Unloader_QRValidation ? Color.Lime : Color.Tomato; //카드감지센서 this.btCartDetL.BackColor = dummySetting.Detect_CartL ? Color.Lime : Color.Tomato; this.btCartDetC.BackColor = dummySetting.Detect_CartC ? Color.Lime : Color.Tomato; this.btCartDetR.BackColor = dummySetting.Detect_CartR ? Color.Lime : Color.Tomato; //마그넷사용 this.btmag0.BackColor = dummySetting.Enable_Magnet0 ? Color.Lime : Color.Tomato; this.btmag1.BackColor = dummySetting.Enable_Magnet1 ? Color.Lime : Color.Tomato; this.btmag2.BackColor = dummySetting.Enable_Magnet2 ? Color.Lime : Color.Tomato; //인쇄용지감지 this.btDetectPrintL.BackColor = dummySetting.Detect_PrintL ? Color.Lime : Color.Tomato; this.btDetectPrintR.BackColor = dummySetting.Detect_PrintR ? Color.Lime : Color.Tomato; //기능사용 this.button5.BackColor = dummySetting.Disable_Left==false ? Color.Lime : Color.Tomato; this.button6.BackColor = dummySetting.Disable_Right == false ? Color.Lime : Color.Tomato; this.button9.BackColor = dummySetting.Enable_RQAuto ? Color.Lime : Color.Tomato; button10.BackColor = dummySetting.Detect_CenterSafty == false ? Color.Tomato : Color.Lime; lbFile.Text = Lang.FileName; } private void button1_Click(object sender, EventArgs e) { var f = new Dialog.fPassword(); if (f.ShowDialog() != DialogResult.OK) return; var pass = f.tbInput.Text; if (pass != this.dummySetting.Password_Setup) { Util.MsgE("Password incorrect"); return; } this.Invalidate(); var chTable = Pub.userList.GetChanges(); if (chTable != null) { string fn = AppDomain.CurrentDomain.BaseDirectory + "users.xml"; Pub.userList.WriteXml(fn, true); Pub.userList.AcceptChanges(); } bsRecipient.EndEdit(); this.Validate(); var recpTable = Pub.mailList.GetChanges(); if (recpTable != null) { string fn = AppDomain.CurrentDomain.BaseDirectory + "mailList.xml"; Pub.mailList.WriteXml(fn, true); Pub.mailList.AcceptChanges(); } bsMailForm.EndEdit(); var formTable = Pub.mailForm.GetChanges(); if (formTable != null) { string fn = AppDomain.CurrentDomain.BaseDirectory + "mailForm.xml"; Pub.mailForm.WriteXml(fn, true); Pub.mailForm.AcceptChanges(); } try { dummySetting.CopyTo(Pub.setting); Pub.setting.Save(); Pub.log.AddI("Setting Save"); Pub.log.Add(Pub.setting.ToString()); } catch (Exception ex) { Pub.log.AddE("Setting Save Error:" + ex.Message); Util.MsgE("Error\n" + ex.Message + "\n\n다시 시도하세요"); } //Pub.flag.set(eFlag.TestRun, btLoaderDetect.BackColor == Color.Lime); DialogResult = DialogResult.OK; } private void button2_Click(object sender, EventArgs e) { var f = new Dialog.fPassword(); if (f.ShowDialog() != DialogResult.OK) return; var pass = f.tbInput.Text; if (pass == this.dummySetting.Password_Setup) { Pub.log.AddAT("Master Login"); //this.dataGridView1.Enabled = true; } else { Util.MsgE("Password incorrect"); } } private void button6_Click(object sender, EventArgs e) { dummySetting.Disable_Buzzer = !dummySetting.Disable_Buzzer; btBuz.BackColor = dummySetting.Disable_Buzzer ? Color.Tomato : Color.Lime; } private void toolStripButton1_Click(object sender, EventArgs e) { var langfile = Lang.FileName; Lang.CreateFile(); Util.MsgI("다음 파일이 생성되었습니다.\n\n" + langfile); } private void toolStripButton3_Click(object sender, EventArgs e) { var langfile = Lang.FileName; if (System.IO.File.Exists(langfile) == false) { Util.MsgE("언어파일이 없습니다\n" + langfile); return; } arUtil.INIHelper ini = new arUtil.INIHelper(); ini.Load(langfile); this.dataSet1.language.Clear(); foreach (var item in ini.GetItemList("lang").OrderBy(t => t.Key)) { this.dataSet1.language.Rows.Add(new string[] { "lang", item.Key, item.Value.Replace("\n","\\n"), }); } this.dataSet1.language.AcceptChanges(); } private void toolStripButton2_Click(object sender, EventArgs e) { var file = Lang.FileName; var ini = new arUtil.INIHelper(file); this.bsLang.EndEdit(); this.dataSet1.language.AcceptChanges(); foreach (DataSet1.languageRow dr in dataSet1.language.Rows) { if (dr.Key == "") continue; ini.set_Data("lang", dr.Key, dr.Value); } ini.Flush(); Util.MsgE("다음 파일에 저장되었습니다.\n\n" + file); } private void toolStripButton4_Click(object sender, EventArgs e) { //적용 var file = new System.IO.FileInfo(Lang.FileName); var langname = file.Name.Replace(file.Extension, ""); Lang.Loading(langname); } private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) { if (this.tabControl1.SelectedIndex == 2) { if (this.dataSet1.language.Rows.Count < 1) toolStripButton3.PerformClick(); } } private void btTWLamp_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_TowerLamp = !dummySetting.Disable_TowerLamp; but.BackColor = dummySetting.Disable_TowerLamp ? Color.Tomato : Color.Lime; } private void button2_Click_2(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_RoomLight = !dummySetting.Disable_RoomLight; but.BackColor = dummySetting.Disable_RoomLight == true ? Color.Tomato : Color.Lime; } private void button4_Click_1(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_SidQtyCheck = !dummySetting.Disable_SidQtyCheck; but.BackColor = dummySetting.Disable_SidQtyCheck == true ? Color.Tomato : Color.Lime; } private void button2_Click_1(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_safty_R0 = !dummySetting.Disable_safty_R0; but.BackColor = dummySetting.Disable_safty_R0 ? Color.Tomato : Color.Lime; } private void button4_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_safty_R1 = !dummySetting.Disable_safty_R1; but.BackColor = dummySetting.Disable_safty_R1 ? Color.Tomato : Color.Lime; } private void btSafetyP3_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_safty_R2 = !dummySetting.Disable_safty_R2; but.BackColor = dummySetting.Disable_safty_R2 ? Color.Tomato : Color.Lime; } private void btSafetyCvIn_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_safty_F0 = !dummySetting.Disable_safty_F0; but.BackColor = dummySetting.Disable_safty_F0 ? Color.Tomato : Color.Lime; } private void btSafetyCvOut_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_safty_F1 = !dummySetting.Disable_safty_F1; but.BackColor = dummySetting.Disable_safty_F1 ? Color.Tomato : Color.Lime; } private void btLoaderDetect_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_safty_F2 = !dummySetting.Disable_safty_F2; but.BackColor = dummySetting.Disable_safty_F2 ? Color.Tomato : Color.Lime; } private void btLeftVac_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_PLVac = !dummySetting.Disable_PLVac; but.BackColor = dummySetting.Disable_PLVac ? Color.Tomato : Color.Lime; } private void btRightVac_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_PRVac = !dummySetting.Disable_PRVac; but.BackColor = dummySetting.Disable_PRVac ? Color.Tomato : Color.Lime; } private void btPickerVac_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_PKVac = !dummySetting.Disable_PKVac; but.BackColor = dummySetting.Disable_PKVac ? Color.Tomato : Color.Lime; } private void btPort0_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_Port0 = !dummySetting.Disable_Port0; but.BackColor = dummySetting.Disable_Port0 ? Color.Tomato : Color.Lime; } private void btPort1_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_Port1 = !dummySetting.Disable_Port1; but.BackColor = dummySetting.Disable_Port1 ? Color.Tomato : Color.Lime; } private void btPort2_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_Port2 = !dummySetting.Disable_Port2; but.BackColor = dummySetting.Disable_Port2 ? Color.Tomato : Color.Lime; } private void button4_Click_2(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_PrinterL = !dummySetting.Disable_PrinterL; but.BackColor = dummySetting.Disable_PrinterL ? Color.Tomato : Color.Lime; } private void button3_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Disable_PrinterR = !dummySetting.Disable_PrinterR; but.BackColor = dummySetting.Disable_PrinterR ? Color.Tomato : Color.Lime; } private void button3_Click_1(object sender, EventArgs e) { var but = sender as Button; dummySetting.Enable_Unloader_QRValidation = !dummySetting.Enable_Unloader_QRValidation; but.BackColor = dummySetting.Enable_Unloader_QRValidation == false ? Color.Tomato : Color.Lime; } private void button6_Click_1(object sender, EventArgs e) { //카트감지l var but = sender as Button; dummySetting.Detect_CartL = !dummySetting.Detect_CartL; but.BackColor = dummySetting.Detect_CartL == false ? Color.Tomato : Color.Lime; } private void button7_Click(object sender, EventArgs e) { //카드감지c var but = sender as Button; dummySetting.Detect_CartC = !dummySetting.Detect_CartC; but.BackColor = dummySetting.Detect_CartC == false ? Color.Tomato : Color.Lime; } private void button5_Click(object sender, EventArgs e) { //카트감지r var but = sender as Button; dummySetting.Detect_CartR = !dummySetting.Detect_CartR; but.BackColor = dummySetting.Detect_CartR == false ? Color.Tomato : Color.Lime; } private void button7_Click_1(object sender, EventArgs e) { var but = sender as Button; dummySetting.Enable_Magnet0 = !dummySetting.Enable_Magnet0; but.BackColor = dummySetting.Enable_Magnet0 == false ? Color.Tomato : Color.Lime; } private void button6_Click_2(object sender, EventArgs e) { var but = sender as Button; dummySetting.Enable_Magnet1 = !dummySetting.Enable_Magnet1; but.BackColor = dummySetting.Enable_Magnet1 == false ? Color.Tomato : Color.Lime; } private void button5_Click_1(object sender, EventArgs e) { var but = sender as Button; dummySetting.Enable_Magnet2 = !dummySetting.Enable_Magnet2; but.BackColor = dummySetting.Enable_Magnet2 == false ? Color.Tomato : Color.Lime; } private void btDetectPrintL_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Detect_PrintL = !dummySetting.Detect_PrintL; but.BackColor = dummySetting.Detect_PrintL == false ? Color.Tomato : Color.Lime; } private void btDetectPrintR_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Detect_PrintR = !dummySetting.Detect_PrintR; but.BackColor = dummySetting.Detect_PrintR == false ? Color.Tomato : Color.Lime; } private void button5_Click_2(object sender, EventArgs e) { //기능-좌 var but = sender as Button; dummySetting.Disable_Left = !dummySetting.Disable_Left; but.BackColor = dummySetting.Disable_Left == true ? Color.Tomato : Color.Lime; } private void button6_Click_3(object sender, EventArgs e) { //기능-우 var but = sender as Button; dummySetting.Disable_Right = !dummySetting.Disable_Right; but.BackColor = dummySetting.Disable_Right == true ? Color.Tomato : Color.Lime; } private void button7_Click_2(object sender, EventArgs e) { var f = new Dialog.fImportSIDConv(); f.ShowDialog(); } private void button8_Click(object sender, EventArgs e) { var f = new Dialog.fImportSIDInfo(); f.ShowDialog(); } private void button4_Click_3(object sender, EventArgs e) { var fn = System.IO.Path.Combine(Util.CurrentPath, "zpl.txt"); Util.RunExplorer(fn); } private void button9_Click(object sender, EventArgs e) { dummySetting.Enable_RQAuto = !dummySetting.Enable_RQAuto; btBuz.BackColor = dummySetting.Enable_RQAuto == false ? Color.Tomato : Color.Lime; } private void button10_Click(object sender, EventArgs e) { var but = sender as Button; dummySetting.Detect_CenterSafty = !dummySetting.Detect_CenterSafty; but.BackColor = dummySetting.Detect_CenterSafty == false ? Color.Tomato : Color.Lime; } } }