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 IControls_FireManager { public partial class Form_Project_New : Form { public Form_Project_New() { InitializeComponent(); /// /// 이벤트 /// // 폼닫기 이벤트를 등록 (이벤트 핸들러 해제용) this.FormClosing += new FormClosingEventHandler(CreateForm_FormClosing); // 윈도우 스타일 변경 이벤트 핸들러 등록 _Event.WindowStyleSet_SendMessage_Event += new _Event.WindowStyleSet_SendMessage_Handler(_Event_WindowStyleSet_SendMessage_Event); /// /// 스타일 변경 /// UI_Style_Initialize(); } // 폼닫기 이벤트를 등록 (이벤트 핸들러 해제용) public void CreateForm_FormClosing(object sender, FormClosingEventArgs e) { // 윈도우 스타일 변경 이벤트 핸들러 해제 _Event.WindowStyleSet_SendMessage_Event -= new _Event.WindowStyleSet_SendMessage_Handler(_Event_WindowStyleSet_SendMessage_Event); } // 윈도우 스타일 변경 이벤트 public void _Event_WindowStyleSet_SendMessage_Event() { UI_Style_Initialize(); } // 스타일 초기화 함수 private void UI_Style_Initialize() { } // 환경옵션의 경로에 프로젝트명이 중복되는지 확인한다 private bool Check_ProjectName(string ProjectName) { // 지정된 경로에 폴더 조회 string result = _File.Get_FolderNameList(_Data.Project_Path); if (result != null) { // 폴더리스트 생성 string[] FolderNames = _Convert.String_to_ArrayString(result); foreach (string FolderName in FolderNames) { // 모두 대문자로 변경하여 비교함 if (FolderName.ToUpper().ToString() == ProjectName.ToUpper().ToString()) return false; } } return true; } private void UiButton_Project_Save_Click(object sender, EventArgs e) { // 공백제거 this.EditBox_ProjectName.Text = this.EditBox_ProjectName.Text.Trim(); if (this.EditBox_ProjectName.Text == null || this.EditBox_ProjectName.Text == _Text.DEFAULT_PROJECT_NAME || this.EditBox_ProjectName.Text.Length == 0) { // 팝업창 : 프로젝트명이 잘못되었습니다 _Popup.Create(Popup_Type.Confirm, Popup_Style.Normal, _Text.Warnning, 250, 150, _Text.NotCorrectProjectNameInform, 0); } else if (Check_ProjectName(this.EditBox_ProjectName.Text) == false) { // 팝업창 : 이미 지정된 경로에 프로젝트명이 존재합니다 _Popup.Create(Popup_Type.Confirm, Popup_Style.Normal, _Text.Warnning, 300, 150, _Text.SameProjectNameInform, 0); } else if (_Error.Data_Confirm_NotDefineString(this.EditBox_ProjectName.Text.Trim()) != null) { ;// 상위 비교문에서 팝업처리 } else { // 해쉬 및 리스트 초기화 (수신기 전체 삭제와 동일) _Data.HASH_RECEIVER.Clear(); _Data.LIST_RECEIVER_ID.Clear(); _Data.HASH_XMLDEVTYPE.Clear(); _Data.LIST_XMLDEVTYPE_ID.Clear(); //_Data.HASH_PAGE.Clear(); //_Data.LIST_PAGE_ID.Clear(); // _Receiver.xml 제거 : cyim 2012.8.29 -> 복구 2013.5.27 //_Data.HASH_XMLRECEIVER.Clear(); _Data.LIST_XMLRECEIVER_ID.Clear(); _Data.List_ExcelPoint.Clear(); _Data.HASH_CodePosition.Clear(); _Data.LIST_CodePosition_NAME.Clear(); _Data.LIST_XmlDBNotSave_Receiver.Clear(); _Data.Hash_ImportPoint.Clear(); // 수신기 아이디 초기화 _Data.INIT_RECEIVER_ID = 1; // 데이타베이스 경로 초기화 _Data.DB_FullPath = null; // 프로젝트명 기본값으로 전환 _Data.Project_Name = this.EditBox_ProjectName.Text.Trim(); // 프로젝트 폴더생성 _File.Create_ProjectFolder(_Data.Project_Path, _Data.Project_Name); // 파일생성 _File.Write_Receiver_XML(_Data.Project_Path + "\\" + _Data.Project_Name); // 워크뷰 및 트리뷰 에 알림 _Event.WorkView_Clear_SendMessage_Write(); _Event.TreeView_Clear_SendMessage_Write(_Data.Project_Name); // 종료 this.Close(); } } } }