/// <summary> /// Конструктор копирования /// </summary> /// <param name="grubSettings"></param> public GrubSettings(GrubSettings grubSettings) { Default = grubSettings.Default; SaveDefault = grubSettings.SaveDefault; Background = grubSettings.Background; Theme = grubSettings.Theme; Timeout = grubSettings.Timeout; GfxMode = grubSettings.GfxMode; OthersSettings = grubSettings.OthersSettings; TimeoutStyle = grubSettings.TimeoutStyle; BootMenuEntries = grubSettings.BootMenuEntries; }
static void Main(string[] args) { // Создаём объекты настроек и читаем данные с файлов _grubSettings = new GrubSettings(); _backupGrubSettings = new GrubSettings(_grubSettings); while (true) { // Вывод главного меню PrintMainMenu(); // Считываем пункт меню var menuEntry = Console.ReadLine(); Console.Clear(); switch (menuEntry) { case "1": // Открытие меню настроек графики GraphicsMenuEntry(); break; case "2": // Открытие меню настроек загрузки LoadMenuEntry(); break; case "3": // Отмена изменений, берем бэкап _grubSettings = new GrubSettings(_backupGrubSettings); Console.WriteLine("Текущие настройки сброшены"); Console.ReadKey(); break; case "4": // Сбрасываем настройки до стандартных _grubSettings = new GrubSettings(true); _backupGrubSettings = new GrubSettings(_grubSettings); Console.WriteLine("Настройки сброшены к стандартным"); Console.ReadKey(); break; case "5": // Сохраняем изменения _grubSettings.Save(); _isChanged = false; break; case "6": // Сохраняем изменения и выходим _grubSettings.Save(); return; case "7": // Просто выходим return; default: // Если ввели что-то кривое Console.WriteLine("Неверный ввод"); Console.ReadKey(); break; } Console.Clear(); } }