/// <summary> /// Добавить элемент проекта в панель. /// </summary> /// <param name="parent"></param> private void CreateAndAddProjectItem(Control parent, bool askNeme = true) { ProjectItem proj = new ProjectItem("___"); bool approveName = false; while (!approveName) { //Запрашиваем имя проекта. var result = HelperDialog.ShowInputBox("Введите название нового проекта?"); if (result.Status != DialogResult.OK || string.IsNullOrWhiteSpace(result?.Value)) { return; } if (proj.SetName(result.Value) == false) { HelperDialog.ShowWarningDialog("Попробуйте ввести название снова!", "Имя проекта содержит недопустимые символы!"); continue; } approveName = true; } //Добавим проект в панель AddProjectItemToParentPanel(parent, proj); }
/// <summary> /// Сохраняем записи дневника /// </summary> void SaveDiaryData() { string fileName; //Если есть файл с текущей датой if (HasFileForCurrentDate(out fileName)) { //удалим файл с текущей датой. File.Delete(fileName); } var fileTitle = this.StoryTextContainer.Title; fileName = GetFileNameForSaving(fileTitle); //Проверим, если директория не существует HelperFileName.ParsePath(fileName, out var dir, out var _, out var __); if (Directory.Exists(dir) == false) { HelperDialog.ShowWarningDialog("Укажите в настройках путь к папке записей", "Не найдена папка для записей!"); return; } this.Diary.Open(fileName); FillTextFields(); if (this.Diary.SaveInfo()) { this.Diary.IsSaved = true; } }
public static void ShowTomato(string goalString) { if (TomatoBox.ActiveBox != null) { HelperDialog.ShowWarningDialog($"Уже активна другая задача [{TomatoBox.ActiveBox?.Pomodoro?.Goal}]", "Запущена другая задача!"); return; } TomatoBox box = new TomatoBox(goalString); //Button acceptBtn = new Button(); //acceptBtn.Click += delegate(object sender, EventArgs args) //{ // box.CloseForm(); //}; //Button declineBtn = new Button(); //declineBtn.Click += delegate(object sender, EventArgs args) { box.CloseForm(); }; //box.AcceptButton = acceptBtn; //box.CancelButton = declineBtn; box.ShowInTaskbar = false; TomatoBox.ActiveBox = box; box.ShowDialog(); //box.Show(); }
private void btnChangePassword_Click(object sender, EventArgs e) { var res = HelperDialog.ShowYesNoDialog("Вы действительно хотите поменять пароль?"); if (res == DialogResult.Yes) { this.SendData(Constants.MESSAGE_CHANGE_PASSWORD, PerformOptions.SyncProcess); } }
/// <summary> /// Спросить о сохранении записи /// </summary> private void AskSaveDiary() { if (this.Diary.IsSaved == false) { var result = HelperDialog.ShowYesNoDialog("Сохранить запись дневника?", "Запись дневника изменена"); if (result.Equals(DialogResult.Yes)) { SaveDiaryData(); } } }
/// <summary> /// Сохранить проект /// </summary> public void SaveProjetData(bool showDialog = true) { ProjectDoc doc = new ProjectDoc(this.Project.ProjectFilePath); doc.SaveProject(this.Project); if (showDialog) { HelperDialog.ShowWarningDialog($"Проект [{this.Project.Name}] сохранен!", "Сохранено"); } }
/// <summary> /// Edit task Name (Goal Name) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void EditButton_Click(object sender, EventArgs e) { var res = HelperDialog.ShowInputBox("Введите название задачи!", this.GoalLabel.Text); if (res.Status != DialogResult.OK || string.IsNullOrWhiteSpace(res.Value)) { return; } this.GoalLabel.Text = res.Value; }
/// <summary> /// Команда Контекстного меню (удалить) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ctxtDelete_Click(object sender, EventArgs e) { var res = HelperDialog.ShowYesNoDialog($"Вы действительно хотите удалить проект ({this.Project.Name})?", "Удаление проекта."); if (res != DialogResult.Yes) { return; } this.Delete(); }
/// <summary> /// Редактировать элемент задачи (Поменять название задачи) /// </summary> public void EditTaskItemData() { //Вызываем окошко для редактирования названия задачи var res = HelperDialog.ShowInputBox($"Изменить задачу: ({this.TaskName})", this.TaskName); if (res.Status != DialogResult.OK || string.IsNullOrEmpty(res.Value)) { return; } this.TaskName = res.Value; }
/// <summary> /// Редактировать данные проекта /// </summary> public void EditProjectData() { var res = HelperDialog.ShowInputBox($"Изменить имя проекта ({this.Project.Name})", this.Project.Name); if (res.Status != DialogResult.OK || string.IsNullOrWhiteSpace(res.Value)) { return; } if (SetName(res.Value) == false) { HelperDialog.ShowWarningDialog($"Невозможно переименовать файл проекта. Введенное имя содержит недопустимые символы.", "Введенное имя проекта содержит недопустимые символы!"); return; } }
/// <summary> /// Создаем и добавляем подзадачу /// </summary> public void CreateAndAddSubTask() { var result = HelperDialog.ShowInputBox("Введите название задачи?"); if (result.Status != DialogResult.OK || string.IsNullOrWhiteSpace(result.Value)) { return; } var subTask = new TaskItem(this.ProjectItem, this, level: this.Task.Level + 1) { TaskName = result.Value, }; this.AddSubTaskItem(subTask); }
/// <summary> /// Сохраняем изменения в данных идеи /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnChangeIdeaData_Click(object sender, EventArgs e) { if (SelectedListItem == null) { HelperDialog.ShowWarningDialog("Выберете элемент из списка", ""); return; } Idea idea = SelectedListItem?.Idea; //Изменяем поля объекта idea в соответствии с данными текстовых полей SetIdeaDataFromTextFields(ref idea); //Изменяем визуальный элемент в списке идей SetIdeaItemListTextFields(SelectedListItem, idea); //Изменяем данные в документе this.Document.ChangeIdea(idea); }
public void DeleteTaskItem() { //Если у задачи есть подзадачи, то спросить у пользователя, удалять подзадачи. if (this.SubTaskItems != null && this.SubTaskItems.Count > 0) { var answer = HelperDialog.ShowYesNoDialog("Удалить подзадачи?", "Подзадачи будут удалены!"); if (answer == DialogResult.No) { return; } } this.OnDeleteTaskItem?.Invoke(this); //Удалить элемент задачи из панели задач DeleteCurrentTaskFromPanel(); //затем удалить задачу из элемента проекта //Освободить память об этом объекте DeleteCurrentTaskFromProject(); }
/// <summary> /// Архивировать проект /// </summary> private void Archive() { var res = HelperDialog.ShowYesNoDialog($"Вы действительно хотите архивировать проект [{this.Project.Name}]?", "Архивировать проект?"); if (res != DialogResult.Yes) { return; } string archivePath = Settings.GetSetting(Settings.ProjectsDirectory) + "\\ARCHIVE"; if (Directory.Exists(archivePath) == false) { Directory.CreateDirectory(archivePath); } if (File.Exists(this.Project.ProjectFilePath) == false) { HelperDialog.ShowWarningDialog("Не найден файл проекта при архивировании. Сохраните проект.", "Ошибка архивирования!"); return; } try { File.Move(this.Project.ProjectFilePath, archivePath + "\\" + this.Project.Name + ".xml"); } catch { HelperDialog.ShowWarningDialog("Сначала сохраните проект", "Ошибка архивирования!"); return; } //Архивацию сделали. Теперь нужно удалить проект из основных проектов this.Delete(); HelperDialog.ShowWarningDialog($"Проект [{this.Project.Name}] архивирован!", "Проект архивирован."); }