//Добавить объект private void Add() { string[] addMenu = { "Добавить монархию", "Добавить королевство", "Добавить республику", "Назад" }; while (true) { var sw = LiveMenu.Menu("Выберите действие:", addMenu); StateInterface state; switch (sw) { case 0: Console.WriteLine("Введите монархию для добавления: "); state = new Monarchy(); state.Input(); _states.Add(state.Return_Name() + " " + state.Return_GDP(), state); Console.WriteLine("Объект успешно добавлен.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); break; case 1: Console.WriteLine("Введите королевство для добавления:"); state = new Kingdom(); state.Input(); _states.Add(state.Return_Name() + " " + state.Return_GDP(), state); Console.WriteLine("Объект успешно добавлен.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); break; case 2: Console.WriteLine("Введите республику для добавления:"); state = new Republic(); state.Input(); _states.Add(state.Return_Name() + " " + state.Return_GDP(), state); Console.WriteLine("Объект успешно добавлен.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); break; case 3: return; } } }
//Удалить объект private void Delete(out int k) { string[] addMenu = { "Удалить монархию", "Удалить королевство", "Удалить республику", "Назад" }; k = 0; while (true) { var sw = LiveMenu.Menu("Выберите действие:", addMenu); StateInterface state; switch (sw) { case 0: Console.WriteLine("Введите монархию для удаления:"); state = new Monarchy(); state.Input(); if (!_states.ContainsKey(state.Return_Name() + " " + state.Return_GDP())) { Console. WriteLine("Объект для удаления отсутсвует в словаре.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); } else { _states.Remove(state.Return_Name() + " " + state.Return_GDP()); Console. WriteLine("Объект успешно удален.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); } if (_states.Count == 0) { k = 6; return; } break; case 1: Console.WriteLine("Введите королевство для удаления:"); state = new Kingdom(); state.Input(); if (!_states.ContainsKey(state.Return_Name() + " " + state.Return_GDP())) { Console. WriteLine("Объект для удаления отсутсвует в словаре.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); } else { _states.Remove(state.Return_Name() + " " + state.Return_GDP()); Console. WriteLine("Объект успешно удален.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); } if (_states.Count == 0) { k = 6; return; } break; case 2: Console.WriteLine("Введите республику для удаления:"); state = new Republic(); state.Input(); if (!_states.ContainsKey(state.Return_Name() + " " + state.Return_GDP())) { Console. WriteLine("Объект для удаления отсутсвует в словаре.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); } else { _states.Remove(state.Return_Name() + " " + state.Return_GDP()); Console. WriteLine("Объект успешно удален.\n\n\nДля продолженния нажать на любую клавишу..."); Console.ReadKey(true); } if (_states.Count == 0) { k = 6; return; } break; case 3: return; } } }
//Тип поиска private void TypeFind() { string[] queriesMenu = { "Поиск элемента типа Monarchy", "Поиск элемента типа Kingdom", "Поиск элемента типа Republic", "Назад" }; while (true) { var sw = LiveMenu.Menu("Выберите нужную опцию:", queriesMenu); switch (sw) { case 0: StateInterface state = new Monarchy(); state.Input(); if (_states.ContainsKey(state.Return_Name() + " " + state.Return_GDP())) { Console.WriteLine("\nОбъект найден: "); Console.WriteLine("\n{0}.\n\n\nДля продолженния нажать на любую клавишу...", _states[state.Return_Name() + " " + state.Return_GDP()]); } else { Console.WriteLine("Заданный объект не был найден в стэке.\n\n\nДля продолженния нажать на любую клавишу..."); } Console.ReadKey(true); break; case 1: state = new Kingdom(); state.Input(); if (_states.ContainsKey(state.Return_Name() + " " + state.Return_GDP())) { Console.WriteLine("\nОбъект найден: "); Console.WriteLine("\n{0}.\n\n\nДля продолженния нажать на любую клавишу...", _states[state.Return_Name() + " " + state.Return_GDP()]); } else { Console.WriteLine("Заданный объект не был найден в стэке.\n\n\nДля продолженния нажать на любую клавишу..."); } Console.ReadKey(true); break; case 2: state = new Republic(); state.Input(); if (_states.ContainsKey(state.Return_Name() + " " + state.Return_GDP())) { Console.WriteLine("\nОбъект найден: "); Console.WriteLine("\n{0}.\n\n\nДля продолженния нажать на любую клавишу...", _states[state.Return_Name() + " " + state.Return_GDP()]); } else { Console.WriteLine("Заданный объект не был найден в стэке.\n\n\nДля продолженния нажать на любую клавишу..."); } Console.ReadKey(true); break; case 3: return; } } }