private void BusinessWndow_Closing(object sender, CancelEventArgs e) { if (BusinessMessageBox.Show("정말 종료하시겠습니까?", "종료", MessageBoxButton.YesNo) != MessageBoxResult.Yes) { e.Cancel = true; } }
public static int GetTotalBusinessProgressAverage(string xml = BasicPath) { XmlDocument doc = new XmlDocument(); doc.Load(xml); XmlNodeList progresses = doc.GetElementsByTagName("Progress"); int totalLen = progresses.Count; int total = 0; for (int i = 0; i < totalLen; i++) { int val; if (!int.TryParse(progresses[i].InnerText, out val)) { BusinessMessageBox.Show("진행도를 불러오는 중에 문제가 생겼습니다.", "진행도 결점", MessageBoxButton.OK, Error: true); progresses[i].InnerText = "0"; continue; } total += val; } doc.Save(xml); return(total <= 0 || totalLen <= 0 ? -1 : total / totalLen); }
private void CloseBtn_Click(object sender, RoutedEventArgs e) { if (BusinessMessageBox.Show("정말 종료하시겠습니까?", "종료", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { this.Close(); } }
private void SaveDeadlineDateBn_Click(object sender, RoutedEventArgs e) { if (IsDeadlineEditMode) { if (StartDate_DatePicker.SelectedDate != null && EndDate_DatePicker.SelectedDate != null) { var startDate = StartDate_DatePicker.SelectedDate.Value; var endDate = EndDate_DatePicker.SelectedDate.Value; int leftDays = (EndDate_DatePicker.SelectedDate.Value - DateTime.Now).Days; var absLeftDays = Math.Abs(leftDays); LeftDatesLabel.Content = leftDays < 0 ? $"{absLeftDays}일 지남" : $"{absLeftDays}일 남음"; XmlBusinessManager.SetDeadline(BusinessName, new Deadline(startDate, endDate)); BusinessMessageBox.Show($"데드라인을 {startDate.ToShortDateString()}에서 {endDate.ToShortDateString()}까지로 설정했습니다.", "데드라인 설정", MessageBoxButton.OK); } else { BusinessMessageBox.Show("데드라인 설정이 잘 못 되었습니다 올바른 값을 입력해주세요.", "정보 입력", Error: true); } SaveDeadlineDateBn.Content = "데드라인 설정"; SaveDeadlineDateBn.Background = (Brush)BrushConv.ConvertFrom("#FFF06200"); } else { SaveDeadlineDateBn.Content = "변경 확인"; SaveDeadlineDateBn.Background = (Brush)BrushConv.ConvertFrom("#FF00B439"); } StartDate_DatePicker.IsEnabled = !IsDeadlineEditMode; EndDate_DatePicker.IsEnabled = !IsDeadlineEditMode; IsDeadlineEditMode = !IsDeadlineEditMode; }
private void EndDate_DatePicker_SelectedDateChanged(object sender, SelectionChangedEventArgs e) { var startDate = StartDate_DatePicker.SelectedDate == null ? StartDate_DatePicker.DisplayDate : StartDate_DatePicker.SelectedDate.Value; if (DateTime.Compare(startDate, EndDate_DatePicker.SelectedDate.Value) > 0) { BusinessMessageBox.Show("시작일 보다 이전의 날짜는 설정이 불가능합니다.", "정보 입력", Error: true); EndDate_DatePicker.SelectedDate = LastDeadlineEndDate; } }
private void DiagramSaveBtn_Click(object sender, RoutedEventArgs e) { if (!SaveDiagramInformations()) { BusinessMessageBox.Show("저장 도중에 문제가 생겼습니다.", "저장 오류", Error: true); } else { BusinessMessageBox.Show("저장 완료 / " + DateTime.Now.ToShortTimeString(), "저장 성공"); } }
private void SaveBtn_Click(object sender, RoutedEventArgs e) { Result.Title = TitleTextBox.Text; Result.Content = ContentTextBox.Text; Result.BackgroundColor = BackgroundGrid.Background; XmlBusinessManager.CreateNewMemo(BusinessName, Result); BusinessMessageBox.Show("새 메모를 만들었습니다.", "메모 생성"); this.Close(); }
private void OpenBusinessBtn_Click(object sender, RoutedEventArgs e) { if (BusinessTitle.Text == "") { BusinessMessageBox.Show("선택된 업무가 없습니다.", "업무 선택"); return; } BusinessWindow bw = new BusinessWindow(BusinessTitle.Text); bw.Show(); }
private void StartupWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e) { if (Application.Current.Windows.Count / 2 > 1) { BusinessMessageBox.Show("현재 열려있는 모든 창을 다 닫아주세요.", "종료", Error: true); e.Cancel = true; } else if (BusinessMessageBox.Show("정말 종료하시겠습니까?", "종료", MessageBoxButton.YesNo) != MessageBoxResult.Yes) { e.Cancel = true; } }
private void StartDate_DatePicker_SelectedDateChanged(object sender, SelectionChangedEventArgs e) { if (EndDate_DatePicker.SelectedDate == null) { return; } if (DateTime.Compare(StartDate_DatePicker.SelectedDate.Value, EndDate_DatePicker.SelectedDate.Value) > 0) { BusinessMessageBox.Show("종료일 보다 앞선 날짜는 설정이 불가능합니다.", "정보 입력", Error: true); StartDate_DatePicker.SelectedDate = LastDeadlineStartDate; } }
private void DiagramLine_MouseRightButtonDown(object sender, MouseButtonEventArgs e) //DELETE LINE { Line line = sender as Line; if (!movingLine) { if (BusinessMessageBox.Show("정말 이 선을 삭제 하시겠습니까?", "다이어그램 선 삭제", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { DiagramLines.RemoveAll(l => l.Line == line); DiagramCanvas.Children.Remove(line); } } }
//Refreshing public void RefreshTaskListView() { List <WorkTask> tasks = XmlBusinessManager.GetAllTasks(BusinessName); if (tasks == null) { BusinessMessageBox.Show("업무 파일에 심각한 오류가 있습니다.", "에러", MessageBoxButton.OK, true); } BusinessProgressBar.Value = XmlBusinessManager.ReassignBusinessProgress(BusinessName); TitleTextbox.Text = ""; DescribeTextbox.Text = ""; TaskPriorityTextbox.Text = ""; SelectedTask = null; TaskListView.ItemsSource = tasks; }
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) { if (BusinessMessageBox.Show("정말 종료하시겠습니까?", "종료", MessageBoxButton.YesNo) != MessageBoxResult.Yes) { e.Cancel = true; } if (!SaveDiagramInformations()) { if (BusinessMessageBox.Show("저장 도중에 문제가 생겼습니다.\n종료하시겠습니까??", "종료", MessageBoxButton.YesNo) != MessageBoxResult.Yes) { e.Cancel = true; } } }
private void CreateNewTaskBtn_Click(object sender, RoutedEventArgs e) { if (TitleTextbox.Text != "" && DescribeTextbox.Text != "" && TaskPriorityTextbox.Text != "") { Result = new WorkTask(0, TitleTextbox.Text, DescribeTextbox.Text, TaskPriorityTextbox.Text); XmlBusinessManager.CreateNewTask(business, Result); BusinessMessageBox.Show($"새 업무, {Result.Title}를 생성 완료했습니다.", "업무 생성"); this.Close(); } else { BusinessMessageBox.Show("빈 칸을 채워주세요.", "정보 입력"); } }
//MouseDown EventHandler --------- private void DiagramElement_MouseDown(object sender, MouseButtonEventArgs e) { if (!(sender is StackPanel)) { return; } diagramPanel = (StackPanel)sender; if (!movingLine && e.RightButton == MouseButtonState.Pressed) { if (DiagramLines.Any(l => l.CheckConnected(diagramPanel) != 0)) { BusinessMessageBox.Show("이 객체에 연결된 다이어그램선이 있습니다.", "다이어그램 객체 삭제"); } else if (BusinessMessageBox.Show("정말 이 객체를 삭제하시겠습니까?", "다이어그램 객체 삭제", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { DiagramUIElements.Remove(diagramPanel); DiagramCanvas.Children.Remove(diagramPanel); } } else // If not trying to delete it { Func <List <DiagramLine>, UIElement, List <DiagramLine> > GetConnectedLines = (Lines, BaseElement) => { List <DiagramLine> lines = new List <DiagramLine>(); foreach (var line in Lines) { if (line.CheckConnected(BaseElement) != 0) { lines.Add(line); } } return(lines); }; connectedLines = GetConnectedLines(DiagramLines, diagramPanel); MPoint1 = e.GetPosition(DiagramCanvas); MPoint2 = e.GetPosition(diagramPanel); MPoint1.X -= diagramPanel.Margin.Left + MPoint2.X; MPoint1.Y -= diagramPanel.Margin.Top + MPoint2.Y; Mouse.Capture(diagramPanel); MMove = true; } }
private void RefreshBusinessList() { try { IEnumerable <Business> businesses = XmlBusinessManager.GetBusinesses(); var val = XmlBusinessManager.GetTotalBusinessProgressAverage(); int progressAver = val > 100 ? 100 : val; BusinessListView.ItemsSource = businesses; ProgressAverBar.Value = progressAver; AttainedBusinessPercentage.Text = progressAver == -1 ? "전체 0% 달성" : $"전체 {progressAver}% 달성"; } catch { BusinessMessageBox.Show("목록을 불러오는데에 실패하였습니다. 프로그램 파일을 건드렸는지 확인 부탁드립니다.", "에러", MessageBoxButton.OK, Error: true); } }
//</Memo> //<According> private void AttachAccountingFile_Click(object sender, RoutedEventArgs e) { if (!Directory.Exists($"./{BusinessName}")) { IOBusiness.CreateBusinessDirectory(BusinessName); } OpenFileDialog ofd = new OpenFileDialog(); if (ofd.ShowDialog() == true) { IOBusiness.AttachFileToAccountBook(BusinessName, ofd.FileName); BusinessMessageBox.Show("회계장부가 등록되었습니다.", "회계장부 파일"); RefreshAccountingFiles(); } }
private void DeleteTaskBtn_Click(object sender, RoutedEventArgs e) { if (SelectedTask == null) { BusinessMessageBox.Show("선택된 업무가 없습니다.", "삭제 실패"); return; } else if (BusinessMessageBox.Show($"정말 {SelectedTask.Title}를 삭제하시겠습니까?", "삭제", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { XmlBusinessManager.DeleteTask(BusinessName, SelectedTask.Index); BusinessMessageBox.Show($"{SelectedTask.Title}에 대한 삭제가 완료되었습니다.", "삭제 완료"); SelectedTask = null; RefreshTaskListView(); } }
private void SubmitBtn_Click(object sender, RoutedEventArgs e) { if (BusinessTitle.Text == "") { BusinessMessageBox.Show("비지니스명을 지어주세요", "정보 입력"); return; } else if (XmlBusinessManager.ExistBusiness(BusinessTitle.Text)) { BusinessMessageBox.Show("존재하는 비지니스입니다.", "정보 입력", Error: true); return; } b.BusinessTitle = BusinessTitle.Text.Trim(); b.Degdate = DateTime.Now.ToShortDateString(); b.Progress = 0; int bs = 0, ms = 0; if (int.TryParse(BusinessScale_Textbox.Text, out bs)) { b.BusinessScale = bs; } else { BusinessMessageBox.Show("숫자만 입력해주세요", "정보 입력", Error: true); return; } if (int.TryParse(MonthlySales_Textbox.Text, out ms)) { b.MonthlySales = ms; } else { BusinessMessageBox.Show("숫자만 입력해주세요", "정보 입력", Error: true); return; } XmlBusinessManager.CreateNewBusiness(b); this.Close(); }
//Open Task File private void FileListbox_MouseDoubleClick(object sender, MouseButtonEventArgs e) { string selectedTitle = FileListbox.SelectedItem as string; if (SelectedTask == null || selectedTitle == null) { return; } if (BusinessMessageBox.Show($"{selectedTitle}을(를) 여시겠습니까?", "열기", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { try { Process.Start($@"{AppDomain.CurrentDomain.BaseDirectory}/{BusinessName}/{SelectedTask.Title}/{selectedTitle}"); } catch (Win32Exception) { BusinessMessageBox.Show("열려고 시도했지만 연결된 프로그램이 없었습니다.", "열기 실패", Error: true); } } }
private void DeleteBusinessBtn_Click(object sender, RoutedEventArgs e) { if (BusinessTitle.Text == "") { BusinessMessageBox.Show("선택된 업무가 없습니다.", "업무 선택"); return; } string msg = $"정말로 {BusinessTitle.Text}/{BusinessProcessBar.Value}% 를 삭제하시겠습니까?"; if (BusinessMessageBox.Show(msg, "삭제", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { if (XmlBusinessManager.ExistBusiness(BusinessTitle.Text)) { XmlBusinessManager.DeleteBusiness(BusinessTitle.Text); BusinessTitle.Text = ""; RefreshBusinessList(); } } }
//Add Task File To taskDirectory ( csv, py any else) private void AddFileBtn_Click(object sender, RoutedEventArgs e) { if (SelectedTask == null) { return; } if (!Directory.Exists($"./{BusinessName}/{SelectedTask.Title}")) { IOBusiness.CreateTaskDirectory(BusinessName, SelectedTask.Title); } OpenFileDialog ofd = new OpenFileDialog(); if (ofd.ShowDialog() == true) { IOBusiness.AttachFileToTask(BusinessName, SelectedTask.Title, ofd.FileName); BusinessMessageBox.Show("파일 추가가 완료되었습니다.", "업무 파일"); RefreshTaskFiles(); } }
private void EditTaskBtn_Click(object sender, RoutedEventArgs e) { if (SelectedTask == null) { BusinessMessageBox.Show("선택된 업무가 없습니다.", "업무 선택"); return; } if (IsEditMode) //saving { EditTaskBtn.Content = "수정"; EditTaskBtn.Background = Brushes.Gray; if (SelectedTask.Title == TitleTextbox.Text && SelectedTask.Content == DescribeTextbox.Text && SelectedTask.Priority == TaskPriorityTextbox.Text && SelectedTask.Accomplished == AccomplishCheckBox.IsChecked) { BusinessMessageBox.Show("변경사항이 없습니다.", "정보 변경"); } else { if (SelectedTask.Title != TitleTextbox.Text) { var nowPath = AppDomain.CurrentDomain.BaseDirectory; if (Directory.Exists($@".\{BusinessName}\{SelectedTask.Title}")) { Directory.Move($@"{nowPath}{BusinessName}\{SelectedTask.Title}", $@"{nowPath}{BusinessName}\{TitleTextbox.Text}"); } XmlBusinessManager.SetTaskTitle(BusinessName, SelectedTask.Index, TitleTextbox.Text); } if (SelectedTask.Content != DescribeTextbox.Text) { XmlBusinessManager.SetTaskDescribeText(BusinessName, SelectedTask.Index, DescribeTextbox.Text); } if (SelectedTask.Priority != TaskPriorityTextbox.Text) { XmlBusinessManager.SetTaskPriority(BusinessName, SelectedTask.Index, TaskPriorityTextbox.Text); } if (SelectedTask.Accomplished != AccomplishCheckBox.IsChecked) { XmlBusinessManager.SetTaskAccomplished(BusinessName, SelectedTask.Index, bool.Parse(AccomplishCheckBox.IsChecked.ToString())); } BusinessMessageBox.Show("변경 완료되었습니다.", "정보 변경"); RefreshTaskListView(); } } else { EditTaskBtn.Background = Brushes.Green; EditTaskBtn.Content = "변경 확인"; } TitleTextbox.IsEnabled = !TitleTextbox.IsEnabled; DescribeTextbox.IsEnabled = !DescribeTextbox.IsEnabled; TaskPriorityTextbox.IsEnabled = !TaskPriorityTextbox.IsEnabled; AccomplishCheckBox.IsEnabled = !AccomplishCheckBox.IsEnabled; AddFileBtn.IsEnabled = !AddFileBtn.IsEnabled; IsEditMode = !IsEditMode; }