コード例 #1
0
ファイル: MainViewModel.cs プロジェクト: rus1st/LusikaCreator
 private async void ExitApp()
 {
     if (await DialogsHelper.ShowRequest("Выйти из программы?"))
     {
         Application.Current.Shutdown();
     }
 }
コード例 #2
0
        private async void RemoveElement(object selected)
        {
            if (selected == null)
            {
                return;
            }
            if (selected is DirectoryItem)
            {
                var path      = ((DirectoryItem)selected).Path;
                var groupName = Path.GetFileName(path);

                if (!await DialogsHelper.ShowRequest(
                        $"Удалить группу \"{groupName}\" и все связанные с ней файлы?",
                        WindowType.TreeMenu))
                {
                    return;
                }

                var itemsCount = _itemProvider.GetItems(path).Count(t => t is FileItem);
                if (itemsCount > 0)
                {
                    if (!await DialogsHelper.ShowRequest(
                            $"Группа \"{groupName}\" содержит проекты ({itemsCount}).{Environment.NewLine}" +
                            "Удалить их без возможности восстановления?", WindowType.TreeMenu))
                    {
                        return;
                    }
                }

                if (!RemoveGroup(path))
                {
                    await DialogsHelper.ShowMessage("Ошибка удаления группы", WindowType.TreeMenu);

                    return;
                }
                FillItems();
            }
            else if (selected is FileItem)
            {
                var fileName = ((FileItem)selected).Path;
                var name     = Path.GetFileNameWithoutExtension(fileName);
                if (!await DialogsHelper.ShowRequest(
                        $"Удалить проект \"{name}\" без возможности восстановления?", WindowType.TreeMenu))
                {
                    return;
                }

                if (!RemoveFile(fileName))
                {
                    await DialogsHelper.ShowMessage("Ошибка удаления файла проекта", WindowType.TreeMenu);

                    return;
                }
                FillItems();
            }
        }