using KDCS.Utils; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace KMBIM { public partial class Form_Upward : Form { public double m_D = 0, m_MainHgt = 0, m_BranchHgt = 0, m_Tolerance = 0, m_ReducerDist = 0; public List m_HgtLst = new List(); public double MainHeight { get { return m_MainHgt; } set { m_MainHgt = value; } } public double BranchHeight { get { return m_BranchHgt; } set { m_BranchHgt = value; } } public double CapDist { get { return m_D; } set { m_D = value; } } public double SpkrTol { get { return m_Tolerance; } set { m_Tolerance = value; } } public double TeeReducerDist { get { return m_ReducerDist; } set { m_ReducerDist = value; } } public Form_Upward() { InitializeComponent(); } private void Form_Upward_Load(object sender, EventArgs e) { this.KeyPreview = true; //대화상자 기본값 txt_mainHgt.Text = "" + m_MainHgt; txt_branchHgt.Text = "" + m_BranchHgt; if(Reg.getReg("Up_D") == "") { Reg.setReg("Up_D", "" + m_D); txt_D.Text = "" + m_D; } else { string Str_Up_D = Reg.getReg("Up_D"); txt_D.Text = Str_Up_D; } if(Reg.getReg("Up_Tol") == "") { Reg.setReg("Up_Tol", "" + m_Tolerance); txt_Tolerance.Text = "" + m_Tolerance; } else { string Str_Up_Tol = Reg.getReg("Up_Tol"); txt_Tolerance.Text = Str_Up_Tol; } if (Reg.getReg("Up_ReducerDist") == "") { Reg.setReg("Up_ReducerDist", "" + m_ReducerDist); txt_Up_TeeReducerLen.Text = "" + m_ReducerDist; } else { string Str_Down_RedDist = Reg.getReg("Up_ReducerDist"); txt_Up_TeeReducerLen.Text = Str_Down_RedDist; } //txt_D.Text = "" + m_D; } //가지배관 높이 private void txt_branchHgt_TextChanged(object sender, EventArgs e) { if (txt_branchHgt.Text == "") return; m_BranchHgt = double.Parse(txt_branchHgt.Text); } //(D)캡까지의 간격 private void txt_D_TextChanged(object sender, EventArgs e) { if (txt_D.Text == "") return; else { CapDist = double.Parse(txt_D.Text); Reg.setReg("Up_D", CapDist.ToString()); } } //스프링클러 허용오차 private void txt_Tolerance_TextChanged(object sender, EventArgs e) { if (txt_Tolerance.Text == "") return; else { SpkrTol = double.Parse(txt_Tolerance.Text); Reg.setReg("Up_Tol", SpkrTol.ToString()); } } //Tee 분기 레듀셔 길이 private void txt_Up_TeeReducerLen_TextChanged(object sender, EventArgs e) { if (txt_Up_TeeReducerLen.Text == "") return; else { TeeReducerDist = double.Parse(txt_Up_TeeReducerLen.Text); Reg.setReg("Up_ReducerDist", TeeReducerDist.ToString()); } } //확인 버튼 private void button1_Click(object sender, EventArgs e) { //헤드 리스트 중 메인관과 사이 거리가 안나오면 이벤트 취소 foreach (double SPhgt in m_HgtLst) { //(메인 가지 T연결 최소값) double MinHgt = m_BranchHgt + 60; double SpkrHgt = Math.Round(Unit.FeetToMM(SPhgt),3); if (SpkrHgt < MinHgt) { MessageBox.Show("스프링클러 헤드가 가지배관 높이보다 낮아 작도할 수 없습니다.", "오류"); this.DialogResult = DialogResult.None; break; } } } private void Form_Upward_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Escape) { //this.Close(); this.DialogResult = DialogResult.Cancel; } else if (e.KeyCode == Keys.Enter) { this.DialogResult = DialogResult.OK; } } private void txt_branchHgt_KeyPress(object sender, KeyPressEventArgs e) { int keyCode = (int)e.KeyChar; if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && keyCode != 46) e.Handled = true; if (keyCode == 46) { if (string.IsNullOrEmpty(txt_branchHgt.Text) || txt_branchHgt.Text.Contains('.') == true) e.Handled = true; } } private void txt_D_KeyPress(object sender, KeyPressEventArgs e) { int keyCode = (int)e.KeyChar; if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && keyCode != 46) e.Handled = true; if (keyCode == 46) { if (string.IsNullOrEmpty(txt_D.Text) || txt_D.Text.Contains('.') == true) e.Handled = true; } } private void txt_Tolerance_KeyPress(object sender, KeyPressEventArgs e) { int keyCode = (int)e.KeyChar; if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && keyCode != 46) e.Handled = true; if (keyCode == 46) { if (string.IsNullOrEmpty(txt_Tolerance.Text) || txt_Tolerance.Text.Contains('.') == true) e.Handled = true; } } private void txt_Up_TeeReducerLen_KeyPress(object sender, KeyPressEventArgs e) { int keyCode = (int)e.KeyChar; if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && keyCode != 46) e.Handled = true; if (keyCode == 46) { if (string.IsNullOrEmpty(txt_Up_TeeReducerLen.Text) || txt_Up_TeeReducerLen.Text.Contains('.') == true) e.Handled = true; } } } }