Initial commit
This commit is contained in:
		
							
								
								
									
										353
									
								
								Handler/Project_form2/fModelV.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										353
									
								
								Handler/Project_form2/fModelV.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,353 @@ | ||||
| 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 fModelV : Form | ||||
|     { | ||||
|  | ||||
|         public string Value = string.Empty; | ||||
|         public fModelV() | ||||
|         { | ||||
|             InitializeComponent(); | ||||
|             this.KeyPreview = true; | ||||
|             this.KeyDown += (s1, e1) => { if (e1.KeyCode == Keys.Escape) this.Close(); }; | ||||
|             this.StartPosition = FormStartPosition.CenterScreen; | ||||
|             this.FormClosed += __Closed; | ||||
|             this.dv.CellContentClick += dv_CellContentClick; | ||||
|              | ||||
|             this.lbTitle.MouseMove += LbTitle_MouseMove; | ||||
|             this.lbTitle.MouseUp += LbTitle_MouseUp; | ||||
|             this.lbTitle.MouseDown += LbTitle_MouseDown; | ||||
|             this.lbTitle.DoubleClick += LbTitle_DoubleClick; | ||||
|         } | ||||
|  | ||||
|         private void __Closed(object sender, FormClosedEventArgs e) | ||||
|         { | ||||
|             //Pub.sm.setNewStep(StateMachine.eSystemStep.IDLE); | ||||
|             this.ds1.Model.TableNewRow -= Model_TableNewRow; | ||||
|         } | ||||
|  | ||||
|         private void __Load(object sender, EventArgs e) | ||||
|         { | ||||
|              | ||||
|  | ||||
|             this.ds1.Clear(); | ||||
|             this.ds1.Model.Merge(Pub.mdm.dataSet.Model); | ||||
|             this.ds1.Model.TableNewRow += Model_TableNewRow; | ||||
|             this.tmDisplay.Start(); | ||||
|  | ||||
|             if (this.ds1.Model.Rows.Count < 1) | ||||
|             { | ||||
|                 var newdr = this.ds1.Model.NewModelRow(); | ||||
|                 newdr.Title = "New Model"; | ||||
|                 this.ds1.Model.AddModelRow(newdr); | ||||
|                 Util.MsgI("신규 모델 정보가 추가되었습니다.\n\n최초 설정 이므로 각 상태값을 확인 하세요."); | ||||
|             } | ||||
|           | ||||
|             //dispal current | ||||
|             if (Pub.Result.isSetvModel) | ||||
|             { | ||||
|                 arLabel18.Text = Pub.Result.vModel.Title; | ||||
|                 //find data | ||||
|                 var datas = this.ds1.Model.Select("", this.bs.Sort); | ||||
|                 for (int i = 0; i < datas.Length; i++) | ||||
|                 { | ||||
|                     if (datas[i]["Title"].ToString() == Pub.Result.vModel.Title) | ||||
|                     { | ||||
|                         this.bs.Position = i; | ||||
|                         break; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             else arLabel18.Text = "--"; | ||||
|  | ||||
|         } | ||||
|         #region "Mouse Form Move" | ||||
|  | ||||
|         private Boolean fMove = false; | ||||
|         private Point MDownPos; | ||||
|  | ||||
|         private void LbTitle_DoubleClick(object sender, EventArgs e) | ||||
|         { | ||||
|             if (this.WindowState == FormWindowState.Maximized) this.WindowState = FormWindowState.Normal; | ||||
|             else this.WindowState = FormWindowState.Maximized; | ||||
|         } | ||||
|         private void LbTitle_MouseMove(object sender, MouseEventArgs e) | ||||
|         { | ||||
|             if (fMove) | ||||
|             { | ||||
|                 Point offset = new Point(e.X - MDownPos.X, e.Y - MDownPos.Y); | ||||
|                 this.Left += offset.X; | ||||
|                 this.Top += offset.Y; | ||||
|                 offset = new Point(0, 0); | ||||
|             } | ||||
|         } | ||||
|         private void LbTitle_MouseUp(object sender, MouseEventArgs e) | ||||
|         { | ||||
|             fMove = false; | ||||
|         } | ||||
|         private void LbTitle_MouseDown(object sender, MouseEventArgs e) | ||||
|         { | ||||
|             MDownPos = new Point(e.X, e.Y); | ||||
|             fMove = true; | ||||
|         } | ||||
|  | ||||
|         #endregion | ||||
|  | ||||
|         void EntertoTab(Control ctl) | ||||
|         { | ||||
|             if(ctl.HasChildren) | ||||
|             { | ||||
|                 foreach(var item in ctl.Controls) | ||||
|                 { | ||||
|                     if(item.GetType()==typeof(TextBox)) | ||||
|                     { | ||||
|                         var tb = item as TextBox; | ||||
|                         tb.KeyDown += (s1, e1) => | ||||
|                         { | ||||
|                             if (e1.KeyCode == Keys.Enter) SendKeys.Send("{TAB}"); | ||||
|                         }; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         void Model_TableNewRow(object sender, DataTableNewRowEventArgs e) | ||||
|         { | ||||
|              | ||||
|             e.Row["Title"] = DateTime.Now.ToString("yyMMddHHmmss"); | ||||
|           //  e.Row["RowCount"] = 5; | ||||
|           //  e.Row["ColCount"] = 0; | ||||
|          //   e.Row["Light"] = 50; | ||||
|         } | ||||
|  | ||||
|         private void modelBindingNavigatorSaveItem_Click(object sender, EventArgs e) | ||||
|         { | ||||
|             //button - save | ||||
|             this.Validate(); | ||||
|             this.bs.EndEdit(); | ||||
|  | ||||
|             //z position 영역을 문자로 변환한다. | ||||
|             var drv = this.bs.Current as DataRowView; | ||||
|             if (drv == null) return; | ||||
|             var dr = drv.Row as DataSet1.ModelRow; | ||||
|             dr.EndEdit(); | ||||
|             this.ds1.AcceptChanges(); | ||||
|  | ||||
|             Dialog.fPassword f = new Dialog.fPassword(); | ||||
|             if (f.ShowDialog() != DialogResult.OK) return; | ||||
|             if (f.tbInput.Text != Pub.setting.Password_Setup) | ||||
|             { | ||||
|                 Util.MsgE("Password incorrect"); | ||||
|                 return; | ||||
|             } | ||||
|  | ||||
|             Pub.mdm.dataSet.Model.Clear(); | ||||
|             Pub.mdm.dataSet.Model.Merge(this.ds1.Model); | ||||
|             Pub.mdm.dataSet.AcceptChanges(); | ||||
|             Pub.mdm.SaveModelV(); | ||||
|         } | ||||
|  | ||||
|         private void bs_CurrentChanged(object sender, EventArgs e) | ||||
|         { | ||||
|             //z range 을 표시한다. | ||||
|  | ||||
|             //z position 영역을 문자로 변환한다. | ||||
|             //this.list | ||||
|             var drv = this.bs.Current as DataRowView; | ||||
|             if (drv == null) return; | ||||
|             var dr = drv.Row as DataSet1.MCModelRow; | ||||
|         } | ||||
|  | ||||
|         private void tmDisplay_Tick(object sender, EventArgs e) | ||||
|         { | ||||
|  | ||||
|         } | ||||
|  | ||||
|  | ||||
|         private void dv_DataError(object sender, DataGridViewDataErrorEventArgs e) | ||||
|         { | ||||
|  | ||||
|         } | ||||
|  | ||||
|         private void btSelect_Click(object sender, EventArgs e) | ||||
|         { | ||||
|             selectModel(); | ||||
|         } | ||||
|         void selectModel() | ||||
|         { | ||||
|             //select | ||||
|             this.Invalidate(); | ||||
|             this.bs.EndEdit(); | ||||
|             var drv = this.bs.Current as DataRowView; | ||||
|             if (drv == null) return; | ||||
|             var dr = drv.Row as DataSet1.ModelRow; | ||||
|             if (dr.Title == "") return; | ||||
|             this.Value = dr.Title; | ||||
|             DialogResult = System.Windows.Forms.DialogResult.OK; | ||||
|         } | ||||
|  | ||||
|  | ||||
|         private void toolStripButton2_Click_1(object sender, EventArgs e) | ||||
|         { | ||||
|             //iocontrol | ||||
|             var f = new Dialog.QuickControl(); | ||||
|             f.TopMost = true; | ||||
|             f.Opacity = 0.95; | ||||
|             f.Show(); | ||||
|         } | ||||
|  | ||||
|         private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e) | ||||
|         { | ||||
|             var drv = this.bs.Current as DataRowView; | ||||
|             if (drv == null) return; | ||||
|             var dlg = Util.MsgQ("현재 선택된 자료를 삭제하시겠습니까?"); | ||||
|             if (dlg != System.Windows.Forms.DialogResult.Yes) return; | ||||
|             bs.RemoveCurrent(); | ||||
|             this.ds1.Model.AcceptChanges(); | ||||
|         } | ||||
|  | ||||
|        | ||||
|  | ||||
|         private void tbFind_KeyDown(object sender, KeyEventArgs e) | ||||
|         { | ||||
|             if(e.KeyCode == Keys.Enter) | ||||
|             { | ||||
|                 findModel(); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         void findModel() | ||||
|         { | ||||
|             try | ||||
|             { | ||||
|                 if (this.tbFind.Text.Trim() == "") | ||||
|                 { | ||||
|                     this.bs.Filter = ""; | ||||
|                     this.tbFind.BackColor = Color.White; | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     string filter = "title like '%{0}%'"; | ||||
|                     filter = string.Format(filter, tbFind.Text.Trim()); | ||||
|                     this.bs.Filter = filter; | ||||
|                     this.tbFind.BackColor = Color.SkyBlue; | ||||
|                     this.tbFind.SelectAll(); | ||||
|                 } | ||||
|             } | ||||
|             catch (Exception Ex) | ||||
|             { | ||||
|                 this.bs.Filter = ""; | ||||
|                 this.tbFind.BackColor = Color.Tomato; | ||||
|                 Util.MsgE(Ex.Message); | ||||
|             } | ||||
|         } | ||||
|         private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) | ||||
|         { | ||||
|             var f = new Dialog.fTouchKeyFull("INPUT - ", this.tbFind.Text.Trim()); | ||||
|             if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; | ||||
|             var inputLot = f.tbInput.Text.Trim().ToUpper(); | ||||
|             //if (inputLot == "") return; | ||||
|             tbFind.Text = inputLot; | ||||
|             findModel(); | ||||
|             tbFind.Focus(); | ||||
|             tbFind.SelectAll(); | ||||
|         } | ||||
|  | ||||
|        | ||||
|         private void button23_Click(object sender, EventArgs e) | ||||
|         { | ||||
|              | ||||
|         } | ||||
|  | ||||
|        | ||||
|  | ||||
|         private void toolStripButton2_Click(object sender, EventArgs e) | ||||
|         { | ||||
|             var drv = this.bs.Current as DataRowView; | ||||
|             if (drv == null) return; | ||||
|             var dr = drv.Row as DataSet1.ModelRow; | ||||
|             var dlg = Util.MsgQ(string.Format("다음 모델 정보를 복사하시겠습니까?\n\n모델명 : {0}", dr.Title)); | ||||
|             if (dlg != System.Windows.Forms.DialogResult.Yes) return; | ||||
|  | ||||
|             var newdr = this.ds1.Model.NewModelRow(); | ||||
|             Util.CopyData(dr, newdr); | ||||
|             newdr.Title += "-copy-"; | ||||
|             newdr.idx = this.ds1.Model.OrderByDescending(t => t.idx).FirstOrDefault().idx + 1; | ||||
|             newdr.EndEdit(); | ||||
|             this.ds1.Model.AddModelRow(newdr); | ||||
|             if (this.bs.Count > 0) this.bs.Position = this.bs.Count - 1; | ||||
|         } | ||||
|  | ||||
|         void dv_CellContentClick(object sender, DataGridViewCellEventArgs e) | ||||
|         { | ||||
|             if(this.dv.Columns[e.ColumnIndex].DataPropertyName.ToLower()=="spn") | ||||
|             { | ||||
|                 //var drv = dv.Rows[e.RowIndex].DataBoundItem as DataRowView; | ||||
|                 //var dr = drv.Row as DataSet1.ModelRow; | ||||
|                 //var spn = dr.SPN; | ||||
|                 //spn = selectSPn(spn); | ||||
|                 //if(spn != "") | ||||
|                 //{ | ||||
|                 //    dr.SPN = spn; | ||||
|                 //    dv.EndEdit(); | ||||
|                 //} | ||||
|             } | ||||
|         } | ||||
|         //string selectSPn(string selectedname) | ||||
|         //{ | ||||
|         //    var od = new OpenFileDialog(); | ||||
|         //    od.InitialDirectory = Pub.setting.SPNPath; | ||||
|         //    od.FileName = selectedname; | ||||
|         //    if (od.ShowDialog() != System.Windows.Forms.DialogResult.OK) return ""; | ||||
|         //    var fi = new System.IO.FileInfo(od.FileName); | ||||
|         //    if (Pub.setting.SPNPath != fi.Directory.FullName) | ||||
|         //    { | ||||
|         //        Pub.setting.SPNPath = fi.Directory.FullName; | ||||
|         //        Pub.setting.Save(); | ||||
|         //    } | ||||
|         //    var SPN = fi.Name.Replace(fi.Extension, ""); | ||||
|         //    return SPN; | ||||
|         //} | ||||
|  | ||||
|         private void toolStripButton3_Click(object sender, EventArgs e) | ||||
|         { | ||||
|  | ||||
|  | ||||
|             //if(Pub.setting.SPNPath == "") | ||||
|             //{ | ||||
|             //    Util.MsgE("SEM 파일 저장 경로가 입력되지 않았습니다\n"+ | ||||
|             //        "환경설정에서 해당 값을 입력할 수 있습니다"); | ||||
|             //    return; | ||||
|             //} | ||||
|             //Util.RunExplorer(Pub.setting.SPNPath); | ||||
|             //return; | ||||
|  | ||||
|  | ||||
|  | ||||
|             //var drv = this.bs.Current as DataRowView; | ||||
|             //if (drv == null) return; | ||||
|             //var dr = drv.Row as DataSet1.ModelRow; | ||||
|  | ||||
|             //var spn = selectSPn(dr.SPN); | ||||
|             //if(spn != "") | ||||
|             //{ | ||||
|             //    dr.SPN = spn; | ||||
|             //    dr.EndEdit(); | ||||
|             //} | ||||
|         } | ||||
|  | ||||
|         private void tbClose_Click(object sender, EventArgs e) | ||||
|         { | ||||
|             this.Close(); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 ChiKyun Kim
					ChiKyun Kim