private void FormTrayEdit_Load(object sender, EventArgs e) { this.Left = 620; this.Top = 170; IsDisplayed = true; // Tuple이 내용을 통채로 copy하는 것이 아니라..포인터처럼 어드레스만 copy하도록 되어 있기 때문에 모든 내용을 일일이 copy해 주어야 한다. //mc.board.workingedit = mc.board.working; //localWorkEdit = mc.board.unloading; //mc.board.workingedit.pad.status = localWorkEdit.pad.status; BT_Ready.BackColor = UtilityControl.colorCode[(int)COLORCODE.READY]; BT_Skip.BackColor = UtilityControl.colorCode[(int)COLORCODE.SKIP]; BT_AttachDone.BackColor = UtilityControl.colorCode[(int)COLORCODE.ATTACH_OK]; BT_AttachFail.BackColor = UtilityControl.colorCode[(int)COLORCODE.ATTACH_FAIL]; BT_PCB_SIZE_ERROR.BackColor = UtilityControl.colorCode[(int)COLORCODE.PCB_SIZE_ERR]; BT_BARCODE_ERROR.BackColor = UtilityControl.colorCode[(int)COLORCODE.BARCODE_ERR]; BT_NO_EPOXY.BackColor = UtilityControl.colorCode[(int)COLORCODE.NO_EPOXY]; BT_EPOXY_UNDERFILL.BackColor = UtilityControl.colorCode[(int)COLORCODE.EPOXY_UNDERFLOW]; BT_EPOXY_OVERFILL.BackColor = UtilityControl.colorCode[(int)COLORCODE.EPOXY_OVERFLOW]; BT_EPOXY_POS_ERROR.BackColor = UtilityControl.colorCode[(int)COLORCODE.EPOXY_POS_ERR]; BT_ATTACH_OVERPRESS.BackColor = UtilityControl.colorCode[(int)COLORCODE.ATTACH_OVERPRESS]; BT_ATTACH_UNDERPRESS.BackColor = UtilityControl.colorCode[(int)COLORCODE.ATTACH_UNDERPRESS]; BT_PEDESTAL_VAC_FAIL.BackColor = UtilityControl.colorCode[(int)COLORCODE.PEDESTAL_SUC_ERR]; mc.board.initialize(BOARD_ZONE.WORKEDIT, out ret.b); CopyWorkData(); BoardStatus_WorkArea.activate(mc.para.mcType.FrRr, BOARD_ZONE.WORKEDIT, (int)mc.para.MT.padCount.x.value, (int)mc.para.MT.padCount.y.value); EVENT.boardStatus(BOARD_ZONE.WORKEDIT, mc.board.padStatus(BOARD_ZONE.WORKEDIT), (int)mc.para.MT.padCount.x.value, (int)mc.para.MT.padCount.y.value); refresh(); }
//BOARD_WORK_DATA localWorkEdit = new BOARD_WORK_DATA(); // BOARD_WORK_DATA prevBoardStatus; private void Control_Click(object sender, EventArgs e) { if (windowState) { EVENT.hWindow2Display(); } if (sender.Equals(BT_Close)) { //FormSelect ff = new FormSelect(); FormUserMessage ff = new FormUserMessage(); ff.SetDisplayItems(DIAG_SEL_MODE.YesNoCancel, DIAG_ICON_MODE.QUESTION, textResource.MB_ETC_PARA_SAVE); //MainForm.UserMessageBox(DIAG_SEL_MODE.YesNoCancel, DIAG_ICON_MODE.QUESTION, "변경된 데이터를 Update할까요?", "[Tray Edit] : "); ff.ShowDialog(); ret.usrDialog = FormUserMessage.diagResult; //mc.message.YesNoCancel("변경된 데이터를 Update할까요?", out ret.dialog, "[Tray Edit] : "); if (ret.usrDialog == DIAG_RESULT.Yes) { // 20130513 , Update 시 한번더 로그인 하도록 추가 //FormLogIn fl = new FormLogIn(); //fl.ShowDialog(); //if (FormLogIn.logInCheck == false) return; //else //{ //mc.para.paraLogWrite(mc.user.userName + "로그인"); UpdateWorkData(); //mc.para.paraLogWrite(); //} } else if (ret.usrDialog == DIAG_RESULT.No) { ; } else { goto EXIT; } IsDisplayed = false; editFlag = false; EVENT.boardStatus(BOARD_ZONE.WORKING, mc.board.padStatus(BOARD_ZONE.WORKING), (int)mc.para.MT.padCount.x.value, (int)mc.para.MT.padCount.y.value); this.Close(); } if (sender.Equals(BT_Empty)) { editFlag = false; //mc.board.padStatus(BOARD_ZONE.WORKING, indexRow, indexColumn, PAD_STATUS.INVALID, out ret.b); } if (sender.Equals(BT_Ready)) { editFlag = true; padApplyStatus = PAD_STATUS.READY; //mc.board.padStatus(BOARD_ZONE.WORKING, indexRow, indexColumn, PAD_STATUS.READY, out ret.b); } if (sender.Equals(BT_Skip)) { editFlag = true; padApplyStatus = PAD_STATUS.SKIP; //mc.board.padStatus(BOARD_ZONE.WORKING, indexRow, indexColumn, PAD_STATUS.SKIP, out ret.b); } if (sender.Equals(BT_AttachDone)) { editFlag = true; padApplyStatus = PAD_STATUS.ATTACH_DONE; //mc.board.padStatus(BOARD_ZONE.WORKING, indexRow, indexColumn, PAD_STATUS.PLACE, out ret.b); } if (sender.Equals(BT_AttachFail)) { editFlag = true; padApplyStatus = PAD_STATUS.ATTACH_FAIL; //mc.board.padStatus(BOARD_ZONE.WORKING, indexRow, indexColumn, PAD_STATUS.PLACE_ERROR, out ret.b); } if (sender.Equals(BT_PadStatus)) { { if (editFlag) { //editFlag = false; if (CB_AllChange.Checked) { mc.message.OkCancel(textResource.MB_ETC_UPDATE_TRAY_INFO_ALL, out ret.dialog, "[Tray Edit] : "); if (ret.dialog != System.Windows.Forms.DialogResult.OK) { goto EXIT; } for (int i = 0; i < (int)mc.para.MT.padCount.x.value; i++) { for (int j = 0; j < (int)mc.para.MT.padCount.y.value; j++) { if (WorkAreaControl.workArea[i, j] == 1) // WorkArea값이 1일때만 업데이트 { mc.board.padStatus(BOARD_ZONE.WORKEDIT, i, j, padApplyStatus, out ret.b); } } } } else { if (WorkAreaControl.workArea[indexRow, indexColumn] == 1) // WorkArea값이 1일때만 업데이트 { mc.board.padStatus(BOARD_ZONE.WORKEDIT, indexRow, indexColumn, padApplyStatus, out ret.b); } } BoardStatus_WorkArea.backupPadStatus = mc.board.padStatus(BOARD_ZONE.WORKEDIT); } } } if (sender.Equals(BT_Left)) { //editFlag = false; if (mc.para.mcType.FrRr == McTypeFrRr.FRONT) { indexRow--; if (indexRow < 0) { indexRow = 0; } } else { indexRow++; if (indexRow >= (int)mc.para.MT.padCount.x.value) { indexRow = (int)mc.para.MT.padCount.x.value - 1; } } BoardStatus_WorkArea.SelectChange(indexRow, indexColumn); if (editFlag) { if (WorkAreaControl.workArea[indexRow, indexColumn] == 1) // WorkArea값이 1일때만 업데이트 { mc.board.padStatus(BOARD_ZONE.WORKEDIT, indexRow, indexColumn, padApplyStatus, out ret.b); BoardStatus_WorkArea.backupPadStatus = mc.board.padStatus(BOARD_ZONE.WORKEDIT); } } } if (sender.Equals(BT_Right)) { //editFlag = false; if (mc.para.mcType.FrRr == McTypeFrRr.FRONT) { indexRow++; if (indexRow >= (int)mc.para.MT.padCount.x.value) { indexRow = (int)mc.para.MT.padCount.x.value - 1; } } else { indexRow--; if (indexRow < 0) { indexRow = 0; } } BoardStatus_WorkArea.SelectChange(indexRow, indexColumn); if (editFlag) { if (WorkAreaControl.workArea[indexRow, indexColumn] == 1) // WorkArea값이 1일때만 업데이트 { mc.board.padStatus(BOARD_ZONE.WORKEDIT, indexRow, indexColumn, padApplyStatus, out ret.b); BoardStatus_WorkArea.backupPadStatus = mc.board.padStatus(BOARD_ZONE.WORKEDIT); } } } if (sender.Equals(BT_Up)) { //editFlag = false; if (mc.para.mcType.FrRr == McTypeFrRr.FRONT) { indexColumn++; if (indexColumn >= (int)mc.para.MT.padCount.y.value) { indexColumn = (int)mc.para.MT.padCount.y.value - 1; } } else { indexColumn--; if (indexColumn < 0) { indexColumn = 0; } } BoardStatus_WorkArea.SelectChange(indexRow, indexColumn); if (editFlag) { if (WorkAreaControl.workArea[indexRow, indexColumn] == 1) // WorkArea값이 1일때만 업데이트 { mc.board.padStatus(BOARD_ZONE.WORKEDIT, indexRow, indexColumn, padApplyStatus, out ret.b); BoardStatus_WorkArea.backupPadStatus = mc.board.padStatus(BOARD_ZONE.WORKEDIT); } } } if (sender.Equals(BT_Down)) { //editFlag = false; if (mc.para.mcType.FrRr == McTypeFrRr.FRONT) { indexColumn--; if (indexColumn < 0) { indexColumn = 0; } } else { indexColumn++; if (indexColumn >= (int)mc.para.MT.padCount.y.value) { indexColumn = (int)mc.para.MT.padCount.y.value - 1; } } BoardStatus_WorkArea.SelectChange(indexRow, indexColumn); if (editFlag) { if (WorkAreaControl.workArea[indexRow, indexColumn] == 1) // WorkArea값이 1일때만 업데이트 { mc.board.padStatus(BOARD_ZONE.WORKEDIT, indexRow, indexColumn, padApplyStatus, out ret.b); BoardStatus_WorkArea.backupPadStatus = mc.board.padStatus(BOARD_ZONE.WORKEDIT); } } } EXIT: refresh(); }