Esempio n. 1
0
        /// <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);
        }
Esempio n. 2
0
        /// <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;
            }
        }
Esempio n. 3
0
        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();
        }
Esempio n. 4
0
        private void btnChangePassword_Click(object sender, EventArgs e)
        {
            var res = HelperDialog.ShowYesNoDialog("Вы действительно хотите поменять пароль?");

            if (res == DialogResult.Yes)
            {
                this.SendData(Constants.MESSAGE_CHANGE_PASSWORD, PerformOptions.SyncProcess);
            }
        }
Esempio n. 5
0
 /// <summary>
 /// Спросить о сохранении записи
 /// </summary>
 private void AskSaveDiary()
 {
     if (this.Diary.IsSaved == false)
     {
         var result = HelperDialog.ShowYesNoDialog("Сохранить запись дневника?", "Запись дневника изменена");
         if (result.Equals(DialogResult.Yes))
         {
             SaveDiaryData();
         }
     }
 }
Esempio n. 6
0
        /// <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}] сохранен!", "Сохранено");
            }
        }
Esempio n. 7
0
        /// <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;
        }
Esempio n. 8
0
        /// <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();
        }
Esempio n. 9
0
        /// <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;
        }
Esempio n. 10
0
        /// <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;
            }
        }
Esempio n. 11
0
        /// <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);
        }
Esempio n. 12
0
        /// <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);
        }
Esempio n. 13
0
 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();
 }
Esempio n. 14
0
        /// <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}] архивирован!", "Проект архивирован.");
        }