예제 #1
0
        static void Main(string[] args)
        {
            Console.CursorVisible = false;

            var manager = new FileTree();

            ShowList(manager.Items, manager.Selected);



            while (true)
            {
                var inputKey = Console.ReadKey(false);
                switch (inputKey.Key)
                {
                case ConsoleKey.UpArrow:
                    manager.Previous();
                    break;

                case ConsoleKey.DownArrow:
                    manager.Next();
                    break;

                case ConsoleKey.Enter:
                    manager.SelectOpen();
                    break;

                case ConsoleKey.F2:
                    if (DeleteRequest(manager.Selected))
                    {
                        manager.Delete();
                    }
                    break;

                case ConsoleKey.F3:
                    manager.StartProcess();
                    break;

                case ConsoleKey.F1:
                    manager.Copy();
                    break;
                }
                ShowList(manager.Items, manager.Selected);
            }
        }
예제 #2
0
        public void Manager(string Path, int padgeNumber)
        {
            string jsonPath = JsonSerializer.Serialize(Path);

            File.WriteAllText("Path.json", jsonPath);
            Console.Clear();
            Console.CursorVisible = false;

            Lines Line = new Lines();           //Отрисовываем рамку

            Line.drawLines();

            FileTree Tree = new FileTree();     //Формируем дерево директорий и объектов

            Tree.Tree(Path, padgeNumber);

            Info WriteInfo = new Info();        //Формируем информацию о текущем диске

            WriteInfo.writeInfo(Path);

            Commands drawCommand = new Commands();  //Отображаем список доступных команд

            drawCommand.drawCommands();

            Copy copy = new Copy();

            Create newDir = new Create();

            Delete del = new Delete();

            Console.SetCursorPosition(1, 27);
            string newPath;

            string input = Console.ReadLine();      //Запрос на ввод команды

            switch (input)
            {
            case "1":                                                           //Переход в директорию
                Console.Write("|Введите адрес директории:");
                newPath = Console.ReadLine();
                Manager(newPath, padgeNumber);
                break;

            case "2":                                                           //Копирование директории
                copy.CopyDir();
                Manager(Path, padgeNumber);
                break;

            case "3":                                                           //Копирование файла
                copy.CopyFile();
                Manager(Path, padgeNumber);
                break;

            case "4":                                                           //Создание новой директории
                Console.Write("|Введите название директории:");
                newPath = Console.ReadLine();
                newDir.NewDir(newPath);
                Manager(newPath, padgeNumber);
                break;

            case "5":                                                           //Удаление директории
                del.deleteDir();
                Manager(Path, padgeNumber);
                break;

            case "6":                                                           //Удаление файла
                del.deleteFile();
                Manager(Path, padgeNumber);
                break;

            case "n":                                                           //Следущая станица списка
                padgeNumber++;
                Manager(Path, padgeNumber);
                break;

            case "p":                                                           //Предыдущая станица списка
                padgeNumber--;
                Manager(Path, padgeNumber);
                break;

            case "0":                                                           //Выход
                Environment.Exit(0);
                break;
            }
        }