diff --git a/VS/Script_Gui/Script_Gui_3/MainWindow.xaml b/VS/Script_Gui/Script_Gui_3/MainWindow.xaml index 036893c1..aeb1c38c 100644 --- a/VS/Script_Gui/Script_Gui_3/MainWindow.xaml +++ b/VS/Script_Gui/Script_Gui_3/MainWindow.xaml @@ -282,13 +282,33 @@ + + - + @@ -457,6 +477,21 @@ + + + + + + + + + + + + + + @@ -3891,7 +3926,7 @@ - + diff --git a/Win-10-Setup-Script-GUI-1811.ps1 b/Win-10-Setup-Script-GUI-1811.ps1 deleted file mode 100644 index 911b2d1d..00000000 --- a/Win-10-Setup-Script-GUI-1811.ps1 +++ /dev/null @@ -1,4571 +0,0 @@ -Add-Type -AssemblyName "PresentationCore", "PresentationFramework", "WindowsBase" - -#region Variable - -# If variable clickedToggle > 0 show "Save" and "Apply" button, else hide "Save" and "Apply" button -$clickedToggle = 0 - -# Variable RU defines UI language -if ($PSCulture -eq "ru-RU") -{ - New-Variable -Name "RU" -Value $true -ErrorAction SilentlyContinue -} - -else -{ - New-Variable -Name "RU" -Value $false -ErrorAction SilentlyContinue -} - -$gitHub = "https://github.com/farag2/Windows-10-Setup-Script" -$headerEng = "Context Menu", "Microsoft Defender", "Microsoft Edge", "Windows Game Recording and Broadcasting", "OneDrive", "Privacy & Telemetry", "Start Menu", "System", "Task Scheduler", "UI & Personalization", "UWP Apps" -$headerRu = "Контекстное меню", "Microsoft Defender", "Microsoft Edge", "Запись и трансляция игр Windows", "OneDrive", "Конфиденциальность и телеметрия", "Меню `"Пуск`"", "Система", "Планировщик заданий", "UI и персонализация", "UWP-приложения" - -#endregion Variable - -#region Text Eng -$TextEng = "Add ""Extract"" to MSI file type context menu", -"Add ""Run as different user"" from context menu for .exe file type", -"Add ""Install"" to CAB file type context menu", -"Remove ""Cast to Device"" from context menu", -"Remove ""Share"" from context menu", -"Remove ""Previous Versions"" from file context menu", -"Remove ""Edit with Paint 3D"" from context menu", -"Remove ""Include in Library"" from context menu", -"Remove ""Turn on BitLocker"" from context menu", -"Remove ""Edit with Photos"" from context menu", -"Remove ""Create a new video"" from context menu", -"Remove ""Edit"" from images context menu", -"Remove ""Print"" from batch and cmd files context menu", -"Remove ""Compressed (zipped) Folder"" from context menu", -"Remove ""Send to"" from folder context menu", -"Make the ""Open"", ""Print"", ""Edit"" context menu items available, when more than 15 selected", -"Turn off ""Look for an app in the Microsoft Store"" in ""Open with"" dialog", -"Turn off Windows Defender SmartScreen for Microsoft Edge", -"Do not allow Microsoft Edge to start and load the Start and New Tab page at Windows startup and each time Microsoft Edge is closed", -"Do not allow Microsoft Edge to pre-launch at Windows startup, when the system is idle, and each time Microsoft Edge is closed", -"Turn off creation of an Edge shortcut on the desktop for each user profile", -"Add exclusion folder from Windows Defender Antivirus scanning", -"Turn on Controlled folder access and add protected folders", -"Allow an app through Controlled folder access", -"Turn on Windows Defender Exploit Guard Network Protection", -"Turn on Windows Defender PUA Protection", -"Turn on Windows Defender Sandbox", -"Hide notification about sign in with Microsoft in the Windows Security", -"Hide notification about disabled SmartScreen for Microsoft Edge", -"Uninstall OneDrive", -"Turn off ""Connected User Experiences and Telemetry"" service", -"Turn off per-user services", -"Turn off the SQMLogger session at the next computer restart", -"Set the operating system diagnostic data level to ""Basic""", -"Turn off Windows Error Reporting", -"Change Windows Feedback frequency to ""Never""", -"Turn off diagnostics tracking scheduled tasks", -"Do not offer tailored experiences based on the diagnostic data setting", -"Do not let apps on other devices open and message apps on this device, and vice versa", -"Do not allow apps to use advertising ID", -"Do not use sign-in info to automatically finish setting up device after an update or restart", -"Do not let websites provide locally relevant content by accessing language list", -"Turn on tip, trick, and suggestions as you use Windows", -"Do not show app suggestions on Start menu", -"Do not show suggested content in the Settings", -"Turn off automatic installing suggested apps", -"Do not let track app launches to improve Start menu and search results", -"Create a task in the Task Scheduler to start Windows cleaning up", -"Create a task in the Task Scheduler to clear the %SystemRoot%\SoftwareDistribution\Download folder", -"Create a task in the Task Scheduler to clear the %SystemRoot%\Temp folder", -"Do not show recently added apps on Start menu", -"Open shortcut to the Command Prompt from Start menu as Administrator", -"Add old style shortcut for ""Devices and Printers"" to the Start menu", -"Import Start menu layout from pre-saved .reg file", -"Unpin all Start menu tiles", -"Turn on Storage Sense", -"Run Storage Sense every month", -"Delete temporary files that apps aren't using", -"Delete files in recycle bin if they have been there for over 30 days", -"Never delete files in ""Downloads"" folder", -"Let Windows try to fix apps so they're not blurry", -"Turn off hibernate", -"Turn off location for this device", -"Change environment variable for %TEMP% to %SystemDrive%\Temp", -"Turn on Win32 long paths", -"Group svchost.exe processes", -"Display the Stop error information on the BSoD", -"Do not preserve zone information", -"Turn off Admin Approval Mode for administrators", -"Turn on access to mapped drives from app running with elevated permissions with Admin Approval Mode enabled", -"Turn off Delivery Optimization", -"Always wait for the network at computer startup and logon", -"Do not let Windows manage default printer", -"Turn off Windows features", -"Remove Windows capabilities", -"Turn on updates for other Microsoft products", -"Remove Shadow copies (restoration points)", -"Turn off Windows Script Host", -"Turn off default background apps, except the followings...", -"Set power management scheme for !!!", -"Turn on latest installed .NET runtime for all apps", -"Do not allow the computer to turn off the Ethernet adapter to save power", -"Set the default input method to the English language", -"Turn on Windows Sandbox", -"Set location of the ""Desktop"", ""Documents"", ""Downloads"", ""Music"", ""Pictures"", and ""Videos""", -"Run troubleshooters automatically, then notify", -"Set ""High performance"" in graphics performance preference for apps", -"Launch folder in a separate process", -"Turn off and delete reserved storage after the next update installation", -"Turn on automatic backup the system registry to the %SystemRoot%\System32\config\RegBack folder", -"Turn off ""The Windows Filtering Platform has blocked a connection"" message in ""Windows Logs\Security""", -"Turn off SmartScreen for apps and files", -"Turn off F1 Help key", -"Turn on Num Lock at startup", -"Turn off sticky Shift key after pressing 5 times", -"Turn off AutoPlay for all media and devices", -"Turn off thumbnail cache removal", -"Turn on automatically save my restartable apps when sign out and restart them after sign in", -"Show ""This PC"" on Desktop", -"Set File Explorer to open to This PC by default", -"Show Hidden Files, Folders, and Drives", -"Turn off check boxes to select items", -"Show File Name Extensions", -"Show folder merge conflicts", -"Do not show all folders in the navigation pane", -"Do not show Cortana button on taskbar", -"Do not show Task View button on taskbar", -"Do not show People button on the taskbar", -"Show seconds on taskbar clock", -"Turn on acrylic taskbar transparency", -"Do not show when snapping a window, what can be attached next to it", -"Show more details in file transfer dialog", -"Turn on ribbon in File Explorer", -"Turn on recycle bin files delete confirmation", -"Remove 3D Objects folder in ""This PC"" and in the navigation pane", -"Do not show ""Frequent folders"" in Quick access", -"Do not show ""Recent files"" in Quick access", -"Remove the ""Previous Versions"" tab from properties context menu", -"Hide search box or search icon on taskbar", -"Do not show ""Windows Ink Workspace"" button in taskbar", -"Always show all icons in the notification area", -"Unpin Microsoft Edge and Microsoft Store from taskbar", -"Set the Control Panel view by large icons", -"Choose theme color for default Windows mode", -"Choose theme color for default app mode", -"Do not show ""New App Installed"" notification", -"Do not show user first sign-in animation", -"Turn off JPEG desktop wallpaper import quality reduction", -"Show Task Manager details", -"Show accent color on the title bars and window borders", -"Turn off automatically hiding scroll bars", -"Show more Windows Update restart notifications about restarting", -"Turn off the ""- Shortcut"" name extension for new shortcuts", -"Use the PrtScn button to open screen snipping", -"Automatically adjust active hours for me based on daily usage", -"Turn off Windows Game Recording and Broadcasting", -"Turn off Game Bar", -"Turn off Game Mode", -"Turn off Game Bar tips" -#endregion Text Eng - -#region Text Ru -$TextRu = "Добавить пункт ""Extract"" для MSI в контекстное меню", -"Добавить ""Запуск от имени другого пользователя"" в контекстное меню для .exe файлов", -"Добавить пункт ""Установить"" для CAB-файлов в контекстном меню", -"Удалить пункт ""Передать на устройство"" из контекстного меню", -"Удалить пункт ""Отправить"" (поделиться) из контекстного меню", -"Удалить пункт ""Восстановить прежнюю версию"" из контекстного меню", -"Удалить пункт ""Изменить с помощью Paint 3D"" из контекстного меню", -"Удалить пункт ""Добавить в библиотеку"" из контекстного меню", -"Удалить пункт ""Включить BitLocker"" из контекстного меню", -"Удалить пункт ""Изменить с помощью приложения ""Фотографии"""" из контекстного меню", -"Удалить пункт ""Создать новое видео"" из контекстного меню", -"Удалить пункт ""Изменить"" из контекстного меню изображений", -"Удалить пункт ""Печать"" из контекстного меню для bat- и cmd-файлов", -"Удалить пункт ""Сжатая ZIP-папка"" из контекстного меню", -"Удалить пункт ""Отправить"" из контекстного меню папки", -"Сделать доступными элементы контекстного меню ""Открыть"", ""Изменить"" и ""Печать"" при выделении более 15 элементов", -"Отключить поиск программ в Microsoft Store при открытии диалога ""Открыть с помощью""", -"Отключить Windows Defender SmartScreen в Microsoft Edge", -"Не разрешать Edge запускать и загружать страницу при загрузке Windows и каждый раз при закрытии Edge", -"Не разрешать предварительный запуск Edge при загрузке Windows, когда система простаивает, и каждый раз при закрытии Edge", -"Отключить создание ярлыка Edge на рабочем столе для каждого профиля пользователя пользователя", -"Добавить папку в список исключений сканирования Защитника Windows", -"Включить контролируемый доступ к папкам и добавить защищенные папки", -"Разрешить работу приложения через контролируемый доступ к папкам", -"Включить Защиту сети в Защитнике Windows", -"Включить блокировки потенциально нежелательных приложений", -"Запускать Защитник Windows в песочнице", -"Скрыть уведомление Защитника Windows об использовании аккаунта Microsoft", -"Скрыть уведомление Защитника Windows об отключенном фильтре SmartScreen для Microsoft Edge", -"Удалить OneDrive", -"Отключить службу ""Функциональные возможности для подключенных пользователей и телеметрия""", -"Отключить пользовательские службы", -"Отключить сборщик SQMLogger при следующем запуске ПК", -"Установить уровень отправляемых диагностических сведений на ""Базовый""", -"Отключить отчеты об ошибках Windows", -"Изменить частоту формирования отзывов на ""Никогда""", -"Отключить задачи диагностического отслеживания", -"Не предлагать персонализированныее возможности, основанные на выбранном параметре диагностических данных", -"Не разрешать приложениям на других устройствах запускать приложения и отправлять сообщения на этом устройстве и наоборот", -"Не разрешать приложениям использовать идентификатор рекламы", -"Не использовать данные для входа для автоматического завершения настройки устройства после перезапуска или обновления", -"Не позволять веб-сайтам предоставлять местную информацию за счет доступа к списку языков", -"Показывать советы, подсказки и рекомендации при использованию Windows", -"Не показывать рекомендации в меню ""Пуск""", -"Не показывать рекомендуемое содержание в ""Параметрах""", -"Отключить автоматическую установку рекомендованных приложений", -"Не разрешать Windows отслеживать запуски приложений для улучшения меню ""Пуск"" и результатов поиска", -"Создать задачу в Планировщике задач по очистке обновлений Windows", -"Создать задачу в Планировщике задач по очистке папки %SystemRoot%\SoftwareDistribution\Download", -"Создать задачу в Планировщике задач по очистке папки %TEMP%", -"Не показывать недавно добавленные приложения в меню ""Пуск""", -"Запускать ярлык к командной строке в меню ""Пуск"" от имени Администратора", -"Добавить ярлык старого формата для ""Устройства и принтеры"" в меню ""Пуск""", -"Импорт настроенного макета меню ""Пуск"" из предварительно сохраненного .reg-файла", -"Открепить все ярлыки от начального экрана", -"Включить Память устройства", -"Запускать контроль памяти каждый месяц", -"Удалять временные файлы, не используемые в приложениях", -"Удалять файлы, которые находятся в корзине более 30 дней", -"Никогда не удалять файлы из папки ""Загрузки""", -"Разрешить Windows исправлять размытость в приложениях", -"Отключить гибридный спящий режим", -"Отключить местоположение для этого устройства", -"Изменить путь переменной среды %TEMP% на %SystemDrive%\Temp", -"Включить длинные пути Win32", -"Группировать процессы svchost.exe", -"Отображать Stop-ошибку при появлении BSoD", -"Не хранить сведения о зоне происхождения вложенных файлов", -"Отключить использование режима одобрения администратором для встроенной учетной записи администратора", -"Включить доступ к сетевым дискам при включенном режиме одобрения администратором при доступе из программ, запущенных с повышенными правами", -"Отключить оптимизацию доставки", -"Всегда ждать сеть при запуске и входе в систему", -"Не разрешать Windows управлять принтером, используемым по умолчанию", -"Отключить компоненты", -"Удалить компоненты", -"Включить автоматическое обновление для других продуктов Microsoft", -"Удалить теневые копии (точки восстановения)", -"Отключить Windows Script Host", -"Запретить стандартным приложениям работать в фоновом режиме, кроме следующих...", -"Установить схему управления питания для !!!", -"Использовать последнюю установленную версию .NET для всех приложений", -"Запретить отключение Ethernet-адаптера для экономии энергии", -"Установить метод ввода по умолчанию на английский язык", -"Включить Windows Sandbox", -"Переопределить расположение папок ""Рабочий стол"", ""Документы"", ""Загрузки"", ""Музыка"", ""Изображения"", ""Видео""", -"Автоматически запускать средства устранения неполадок, а затем уведомлять", -"Установить параметры производительности графики для отдельных приложений на ""Высокая производительность""", -"Запускать окна с папками в отдельном процессе", -"Отключить и удалить зарезервированное хранилище после следующей установки обновлений", -"Включить автоматическое создание копии реестра в папку %SystemRoot%\System32\config\RegBack", -"Отключить в ""Журналах Windows\Безопасность"" сообщение ""Платформа фильтрации IP-пакетов Windows разрешила подключение""", -"Отключить SmartScreen для приложений и файлов", -"Отключить справку по нажатию F1", -"Включить Num Lock при загрузке", -"Отключить залипание клавиши Shift после 5 нажатий", -"Отключить автозапуск с внешних носителей", -"Отключить удаление кэша миниатюр", -"Автоматически сохранять мои перезапускаемые приложения при выходе из системы и перезапустить их после выхода", -"Отобразить ""Этот компьютер"" на рабочем столе", -"Открывать ""Этот компьютер"" в Проводнике", -"Показывать скрытые файлы, папки и диски", -"Отключить флажки для выбора элементов", -"Показывать расширения для зарегистрированных типов файлов", -"Не скрывать конфликт слияния папок", -"Не отображать все папки в области навигации", -"Не показывать кнопку Кортаны на панели задач", -"Не показывать кнопку Просмотра задач", -"Не показывать панель ""Люди"" на панели задач", -"Отображать секунды в системных часах на панели задач", -"Включить прозрачную панель задач", -"Не показывать при прикреплении окна, что можно прикрепить рядом с ним", -"Развернуть диалог переноса файлов", -"Включить отображение ленты проводника в развернутом виде", -"Запрашивать подтверждение на удалении файлов из корзины", -"Скрыть папку ""Объемные объекты"" из ""Этот компьютер"" и на панели быстрого доступа", -"Не показывать недавно используемые папки на панели быстрого доступа", -"Не показывать недавно использовавшиеся файлы на панели быстрого доступа", -"Отключить отображение вкладки ""Предыдущие версии"" в свойствах файлов и папок", -"Скрыть поле или значок поиска на панели задач", -"Не показывать кнопку Windows Ink Workspace на панели задач", -"Всегда отображать все значки в области уведомлений", -"Открепить Microsoft Edge и Microsoft Store от панели задач", -"Установить крупные значки в панели управления", -"Выбрать режим Windows по умолчанию", -"Выбрать режим приложения по умолчанию", -"Не показывать уведомление ""Установлено новое приложение""", -"Не показывать анимацию при первом входе в систему", -"Отключить снижение качества фона рабочего стола в формате JPEG", -"Раскрыть окно Диспетчера задач", -"Отображать цвет элементов в заголовках окон и границ окон", -"Отключить автоматическое скрытие полос прокрутки в Windows", -"Показывать уведомление, когда компьютеру требуется перезагрузка для завершения обновления", -"Нe дoбaвлять ""- яpлык"" для coздaвaeмыx яpлыкoв", -"Использовать кнопку PRINT SCREEN, чтобы запустить функцию создания фрагмента экрана", -"Автоматически изменять период активности для этого устройства на основе действий", -"Отключить Запись и трансляции игр Windows", -"Отключить игровую панель", -"Отключить игровой режим", -"Отключить подсказки игровой панели" -#endregion Text Ru - -#region Xaml Markup - -[xml]$xamlMarkup = @" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"@ - -#endregion Xaml Markup - -$xamlGui = [System.Windows.Markup.XamlReader]::Load((New-Object System.Xml.XmlNodeReader $xamlMarkup)) -$xamlMarkup.SelectNodes('//*[@Name]') | ForEach-Object { - New-Variable -Name $_.Name -Value $xamlGui.FindName($_.Name) -Force -} - -#region Script Functions -function Hide-Console { - <# - .SYNOPSIS - Hide Powershell console before show WPF GUI. - #> - - [CmdletBinding()] - param () - - Add-Type -Name Window -Namespace Console -MemberDefinition ' - [DllImport("Kernel32.dll")] - public static extern IntPtr GetConsoleWindow(); - - [DllImport("user32.dll")] - public static extern bool ShowWindow(IntPtr hWnd, Int32 nCmdShow); -' - [Console.Window]::ShowWindow([Console.Window]::GetConsoleWindow(), 0) -} - -function Use-HamburgerMenu { - <# - .SYNOPSIS - Show or hide hamburger menu. - #> - - [CmdletBinding()] - param () - - $minWidth = 50 - $maxWidth = 250 - $duration = New-Object System.Windows.Duration([timespan]::FromSeconds(1)) - $widthProperty = New-Object System.Windows.PropertyPath([System.Windows.Controls.Canvas]::WidthProperty) - - if ($HamburgerMenu.ActualWidth -eq $minWidth) { - $animation = New-Object System.Windows.Media.Animation.DoubleAnimation($minWidth, $maxWidth, $duration) - } - - else { - $animation = New-Object System.Windows.Media.Animation.DoubleAnimation($maxWidth, $minWidth, $duration) - } - - $animation.SpeedRatio ="3" - $storyboard = New-Object System.Windows.Media.Animation.Storyboard - [System.Windows.Media.Animation.Storyboard]::SetTargetProperty($animation, $widthProperty) - $storyboard.Children.Add($animation) - $storyboard.Begin($HamburgerMenu) -} - -function Set-HamburgerHover { - <# - .SYNOPSIS - Mouse hover effect for hamburger button. - #> - - [CmdletBinding()] - param - ( - [Parameter(Mandatory=$false)] - [switch]$Active - ) - - - if ($Active) - { - $ButtonHamburger.Background = "#2196F3" - } - - else - { - $ButtonHamburger.Background = "#3F51B5" - } -} - -function Click-HamburgerButton { - <# - .SYNOPSIS - Click event to Hamburger Category Button. - #> - - [CmdletBinding()] - param - ( - [Parameter(Mandatory=$true)] - $Panel, - - [Parameter(Mandatory=$true)] - $HeaderNumber - ) - - $PanelToggle_ContextMenu, $PanelToggle_Edge, $PanelToggle_Defender, $PanelToggle_OneDrive, - $PanelToggle_Privacy, $PanelToggle_Tasks, $PanelToggle_StartMenu, $PanelToggle_System, - $PanelToggle_Ui, $PanelToggle_Uwp, $PanelToggle_Game | ForEach-Object { - - if (($_.Name -eq $Panel.Name) -and ($_.Visibility -eq "Collapsed")) - { - $_.Visibility = "Visible" - } - - elseif (($_.Name -ne $Panel.Name) -and ($_.Visibility -eq "Visible")) - { - $_.Visibility = "Collapsed" - } - } - - if ($RU) - { - $TextBlock_Category.Text = $headerRu[$HeaderNumber] - } - - else - { - $TextBlock_Category.Text = $headerEng[$HeaderNumber] - } -} - -function Click-ToggleButton { - <# - .SYNOPSIS - Click event to Toggle Buttons. - #> - - [CmdletBinding()] - param - ( - [Parameter(Mandatory=$false)] - [switch]$IsChecked - ) - - if ($IsChecked) - { - $Global:clickedToggle++ - } - - elseif (!$IsChecked) - { - $Global:clickedToggle-- - } - - if ($clickedToggle -gt 0) - { - $ButtonApply.IsEnabled = $true - $ButtonSave.IsEnabled = $true - } - - else - { - $ButtonApply.IsEnabled = $false - $ButtonSave.IsEnabled = $false - } -} - -function Set-TogglesLanguage { - <# - .SYNOPSIS - Change Toggles Language by "Change Language" button clicked - #> - - [CmdletBinding()] - param - ( - [Parameter(Mandatory=$false)] - [switch]$Change - ) - - (Get-Variable -Name "Text_*").Name | ForEach-Object { - - $textToggle = $Window.FindName($_) - - if ($Change) - { - if ($RU) - { - $textToggle.Text = $TextEng[$textToggle.Uid] - } - - else - { - $textToggle.Text = $TextRu[$textToggle.Uid] - } - } - - else - { - if ($RU) - { - $textToggle.Text = $TextRu[$textToggle.Uid] - } - - else - { - $textToggle.Text = $TextEng[$textToggle.Uid] - } - } - } - - if ($Change) - { - $Global:RU = !$RU - } - - if ($RU) - { - $TextButtonApply.Text = "Применить" - $TextButtonSave.Text = "Сохранить" - $TextButtonLoad.Text = "Загрузить" - } - - else - { - $TextButtonApply.Text = "Apply" - $TextButtonSave.Text = "Save" - $TextButtonLoad.Text = "Load" - } -} - -function Set-HeaderLanguage { - <# - .SYNOPSIS - Change Headers Language by "Change Language" button clicked - #> - - [CmdletBinding()] - param() - - $panelNumber = $null - $PanelToggle_ContextMenu, $PanelToggle_Edge, $PanelToggle_Defender, $PanelToggle_OneDrive, - $PanelToggle_Privacy, $PanelToggle_Tasks, $PanelToggle_StartMenu, $PanelToggle_System, - $PanelToggle_Ui, $PanelToggle_Uwp, $PanelToggle_Game | ForEach-Object { - - if ($_.Visibility -eq "Visible") - { - switch ($_.Name) - { - "PanelToggle_ContextMenu" {$panelNumber = 0} - "PanelToggle_Defender" {$panelNumber = 1} - "PanelToggle_Edge" {$panelNumber = 2} - "PanelToggle_Game" {$panelNumber = 3} - "PanelToggle_OneDrive" {$panelNumber = 4} - "PanelToggle_Privacy" {$panelNumber = 5} - "PanelToggle_StartMenu" {$panelNumber = 6} - "PanelToggle_System" {$panelNumber = 7} - "PanelToggle_Tasks" {$panelNumber = 8} - "PanelToggle_Ui" {$panelNumber = 9} - "PanelToggle_Uwp" {$panelNumber = 10} - } - } - } - - if ($RU) - { - $TextBlock_Category.Text = $headerRu[$panelNumber] - } - - else - { - $TextBlock_Category.Text = $headerEng[$panelNumber] - } -} - -function Follow-OnGitHub { - <# - .SYNOPSIS - Open Farag2 GitHub in Default Browser - #> - - [CmdletBinding()] - param () - - Start-Process -FilePath $gitHub -} - -#endregion - -#region Controls Events - -$ButtonHamburger.Add_MouseLeftButtonDown({ - Use-HamburgerMenu -}) - -$ButtonHamburger.Add_MouseEnter({ - Set-HamburgerHover -Active -}) - -$ButtonHamburger.Add_MouseLeave({ - Set-HamburgerHover - -}) - -$ButtonChangeLanguage.Add_MouseLeftButtonDown({ - Set-TogglesLanguage -Change - Set-HeaderLanguage -}) - -$ButtonGitHub.Add_MouseLeftButtonDown({ - Follow-OnGitHub -}) - -$Button_ContextMenu.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_ContextMenu -HeaderNumber "0" - }) - -$Button_Defender.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Defender -HeaderNumber "1" - }) - -$Button_Edge.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Edge -HeaderNumber "2" - }) - -$Button_Game.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Game -HeaderNumber "3" - }) - -$Button_OneDrive.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_OneDrive -HeaderNumber "4" - }) - -$Button_Privacy.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Privacy -HeaderNumber "5" - }) - -$Button_StartMenu.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_StartMenu -HeaderNumber "6" - }) - -$Button_System.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_System -HeaderNumber "7" - }) - -$Button_Tasks.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Tasks -HeaderNumber "8" - }) - -$Button_Ui.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Ui -HeaderNumber "9" - }) - -$Button_Uwp.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Uwp -HeaderNumber "10" - }) -#endregion Controls Events - -#region Add Click Event to Toggle Buttons - -(Get-Variable -Name "Toggle_*").Name | ForEach-Object { - $currentToggle = $Window.FindName($_) - $currentToggle.Add_Checked({ - Click-ToggleButton -IsChecked - }) - - $currentToggle.Add_Unchecked({ - Click-ToggleButton - }) -} - -#endregion Add Click Event to Toggle Buttons - - -Set-TogglesLanguage -Set-HeaderLanguage -Hide-Console | Out-Null -$Window.ShowDialog() | Out-Null diff --git a/Win-10-Setup-Script-GUI-1911.ps1 b/Win-10-Setup-Script-GUI-2211.ps1 similarity index 97% rename from Win-10-Setup-Script-GUI-1911.ps1 rename to Win-10-Setup-Script-GUI-2211.ps1 index 4d85864b..c09bf5b4 100644 --- a/Win-10-Setup-Script-GUI-1911.ps1 +++ b/Win-10-Setup-Script-GUI-2211.ps1 @@ -17,8 +17,8 @@ else } $gitHub = "https://github.com/farag2/Windows-10-Setup-Script" -$headerEng = "Context Menu", "Microsoft Defender", "Microsoft Edge", "Windows Game Recording and Broadcasting", "OneDrive", "Privacy & Telemetry", "Start Menu", "System", "Task Scheduler", "UI & Personalization", "UWP Apps" -$headerRu = "Контекстное меню", "Microsoft Defender", "Microsoft Edge", "Запись и трансляция игр Windows", "OneDrive", "Конфиденциальность и телеметрия", "Меню `"Пуск`"", "Система", "Планировщик заданий", "UI и персонализация", "UWP-приложения" +$headerEng = "Context Menu", "Microsoft Defender", "Microsoft Edge", "Windows Game Recording and Broadcasting", "OneDrive", "Privacy & Telemetry", "Start Menu", "System", "Task Scheduler", "UI & Personalization","", "UWP Apps" +$headerRu = "Контекстное меню", "Microsoft Defender", "Microsoft Edge", "Запись и трансляция игр Windows", "OneDrive", "Конфиденциальность и телеметрия", "Меню `"Пуск`"", "Система", "Планировщик заданий", "UI и персонализация", "", "UWP-приложения" $hamburgerEng = "Change Language", "Context Menu", "Microsoft Defender", "Microsoft Edge", "Windows Game Recording and Broadcasting","Follow to GitHub", "OneDrive", "Privacy & Telemetry", "Start Menu", "System", "Task Scheduler", "UI & Personalization", "UWP Apps" $hamburgerRu = "Переключить язык", "Контекстное меню", "Microsoft Defender", "Microsoft Edge", "Запись и трансляция игр Windows", "Открыть GitHub", "OneDrive", "Конфиденциальность и телеметрия", "Меню `"Пуск`"", "Система", "Планировщик заданий", "UI и персонализация", "UWP-приложения" @@ -593,13 +593,33 @@ $TextRu = "Добавить пункт ""Extract"" для MSI в контекс + + - + @@ -768,6 +788,21 @@ $TextRu = "Добавить пункт ""Extract"" для MSI в контекс + + + + + + + + + + + + + + @@ -4202,7 +4237,7 @@ $TextRu = "Добавить пункт ""Extract"" для MSI в контекс - + @@ -4221,6 +4256,31 @@ $xamlMarkup.SelectNodes('//*[@Name]') | ForEach-Object { New-Variable -Name $_.Name -Value $xamlGui.FindName($_.Name) -Force } +#region Fill Gui Elements Arrays +$hamburgerText = New-Object System.Collections.ArrayList($null) +(Get-Variable -Name "Textblock_Hamburger_*").Name | ForEach-Object { + $ham = $Window.FindName($_) + [Void]$hamburgerText.Add($ham) +} + +$toggleText = New-Object System.Collections.ArrayList($null) +(Get-Variable -Name "Text_*").Name | ForEach-Object { + $toggle = $Window.FindName($_) + [Void]$toggleText.Add($toggle) +} + +$toggleSwitch = New-Object System.Collections.ArrayList($null) +(Get-Variable -Name "Toggle_*").Name | ForEach-Object { + $switch = $Window.FindName($_) + [Void]$toggleSwitch.Add($switch) +} + +$togglesPanels = $PanelToggle_ContextMenu, $PanelToggle_Defender, $PanelToggle_Edge, $PanelToggle_Game, + $PanelToggle_OneDrive, $PanelToggle_Privacy, $PanelToggle_StartMenu, $PanelToggle_System, + $PanelToggle_Tasks, $PanelToggle_Ui, $PanelToggle_UserInfo, $PanelToggle_Uwp + +#endregion Gui Elements Array Collections + #region Script Functions function Hide-Console { <# @@ -4241,7 +4301,7 @@ function Hide-Console { [Console.Window]::ShowWindow([Console.Window]::GetConsoleWindow(), 0) } -function Use-HamburgerMenu { +function Click-HamburgerMenu { <# .SYNOPSIS Show or hide hamburger menu. @@ -4249,21 +4309,38 @@ function Use-HamburgerMenu { [CmdletBinding()] param () - - $minWidth = 50 + + $minWidth = 50 $maxWidth = 250 $duration = New-Object System.Windows.Duration([timespan]::FromSeconds(1)) $widthProperty = New-Object System.Windows.PropertyPath([System.Windows.Controls.Canvas]::WidthProperty) - if ($HamburgerMenu.ActualWidth -eq $minWidth) { - $animation = New-Object System.Windows.Media.Animation.DoubleAnimation($minWidth, $maxWidth, $duration) + if ($HamburgerMenu.ActualWidth -eq $minWidth) + { + # Fix text (russian) freeze in minimize hamburger menu + + for ($i=0;$i -lt $hamburgerText.Count;$i++) + { + $hamburgerText[$i].TextWrapping = "Wrap" + + } + + $animation = New-Object System.Windows.Media.Animation.DoubleAnimation($minWidth, $maxWidth, $duration) } - else { - $animation = New-Object System.Windows.Media.Animation.DoubleAnimation($maxWidth, $minWidth, $duration) + else + { + # Fix text (russian) freeze in minimize hamburger menu + for ($i=0;$i -lt $hamburgerText.Count;$i++) + { + $hamburgerText[$i].TextWrapping = "NoWrap" + + } + + $animation = New-Object System.Windows.Media.Animation.DoubleAnimation($maxWidth, $minWidth, $duration) } - $animation.SpeedRatio ="3" + $animation.SpeedRatio ="2" $storyboard = New-Object System.Windows.Media.Animation.Storyboard [System.Windows.Media.Animation.Storyboard]::SetTargetProperty($animation, $widthProperty) $storyboard.Children.Add($animation) @@ -4295,46 +4372,63 @@ function Set-HamburgerHover { } } -function Click-HamburgerButton { +function Set-ActivePanel { <# .SYNOPSIS - Click event to Hamburger Category Button. + Set Active Panel by Name. #> - + [CmdletBinding()] param ( - [Parameter(Mandatory=$true)] - $Panel, - - [Parameter(Mandatory=$true)] - $HeaderNumber + [Parameter(Mandatory=$true, ValueFromPipeline=$true, HelpMessage="Name for select panel: ContextMenu, Defender, Edge, Game, OneDrive, Privacy, StartMenu, System, Tasks, Ui, UserInfo, Uwp")] + [ValidateSet("ContextMenu", "Defender", "Edge", "Game", "OneDrive", "Privacy", "StartMenu", "System", "Tasks", "Ui", "UserInfo", "Uwp")] + [ValidateNotNull()] + [string]$Name ) - - $PanelToggle_ContextMenu, $PanelToggle_Edge, $PanelToggle_Defender, $PanelToggle_OneDrive, - $PanelToggle_Privacy, $PanelToggle_Tasks, $PanelToggle_StartMenu, $PanelToggle_System, - $PanelToggle_Ui, $PanelToggle_Uwp, $PanelToggle_Game | ForEach-Object { - if (($_.Name -eq $Panel.Name) -and ($_.Visibility -eq "Collapsed")) + $panelName = "PanelToggle_{0}"-f $Name + for ($i=0;$i -lt $togglesPanels.Count;$i++) + { + if ($togglesPanels[$i].Name -eq $panelName) { - $_.Visibility = "Visible" + $togglesPanels[$i].Visibility = "Visible" + + if ($RU) + { + $TextBlock_Category.Text = $headerRu[$i] + } + + else + { + $TextBlock_Category.Text = $headerEng[$i] + } } - elseif (($_.Name -ne $Panel.Name) -and ($_.Visibility -eq "Visible")) + else { - $_.Visibility = "Collapsed" + $togglesPanels[$i].Visibility = "Collapsed" } } +} + +function Get-ActivePanel { + <# + .SYNOPSIS + Return Current Active Panel Name. + #> - if ($RU) + [CmdletBinding()] + param () + + for ($i=0;$i -lt $togglesPanels.Count;$i++) { - $TextBlock_Category.Text = $headerRu[$HeaderNumber] + if ($togglesPanels[$i].Visibility -eq "Visible") + { + $panelName = $togglesPanels[$i].Name -replace "PanelToggle_","" + return $panelName + } } - - else - { - $TextBlock_Category.Text = $headerEng[$HeaderNumber] - } } function Click-ToggleButton { @@ -4409,76 +4503,115 @@ function Set-GuiLanguage { #endregion Set Save Load Apply Buttons - #region Set Category Header + #region Set Hamburger Buttons - if ($TextBlock_Category.Text.Length -eq 0) # First Script Run + if ($RU) { - if ($RU) + for ($i=0;$i -lt $hamburgerText.Count;$i++) { - $TextBlock_Category.Text = $headerRu[5] + $hamburgerText[$i].Text = $hamburgerRu[$i] } - - else - { - $TextBlock_Category.Text = $headerEng[5] - } } else { - if ($headerRu.IndexOf($TextBlock_Category.Text) -eq "-1") + for ($i=0;$i -lt $hamburgerText.Count;$i++) { - $TextBlock_Category.Text = $headerRu[$headerEng.IndexOf($TextBlock_Category.Text)] + $hamburgerText[$i].Text = $hamburgerEng[$i] } + } + + #endregion Set Hamburger Buttons - else + #region Set Toggle Text Language + + if ($RU) + { + for ($i=0;$i -lt $toggleText.Count;$i++) { - $TextBlock_Category.Text = $headerEng[$headerRu.IndexOf($TextBlock_Category.Text)] + $toggleText[$i].Text = $TextRu[$toggleText[$i].Uid] } - } - #endregion Set Category Header - - #region Set Hamburger Buttons - - $hamText = (Get-Variable -Name "Textblock_Hamburger_*").Name - - for ($i=0;$i -lt $hamText.Count;$i++) + else { - $text = $Window.FindName($hamText[$i]) - - if ($RU) + for ($i=0;$i -lt $toggleText.Count;$i++) { - $text.Text = $hamburgerRu[$i] + $toggleText[$i].Text = $TextEng[$toggleText[$i].Uid] } - - else - { - $text.Text = $hamburgerEng[$i] - } - } + } - #endregion Set Hamburger Buttons + #endregion Set Toggle Text Language +} + +function Show-InfoPanel { + <# + .SYNOPSIS + Show Message for User + #> + + [CmdletBinding()] + param + ( + [Parameter(Mandatory=$false)] + [ValidateNotNull()] + [string]$TextRu, - #region Set Toggle Text Language + [Parameter(Mandatory=$false)] + [ValidateNotNull()] + [string]$TextEng, - (Get-Variable -Name "Text_*").Name | ForEach-Object { - - $toggleText = $Window.FindName($_) + [Parameter(Mandatory=$false)] + [switch]$ShowAnimation, - if ($RU) + [Parameter(Mandatory=$false)] + [switch]$Hide + ) + + $TextBlock_Category.Text = "" + $panelName = "PanelToggle_UserInfo" + + for ($i=0;$i -lt $togglesPanels.Count;$i++) + { + if ($togglesPanels[$i].Name -eq $panelName) { - $toggleText.Text = $TextRu[$toggleText.Uid] + if ($Hide) + { + $togglesPanels[$i].Visibility = "Collapsed" + $UserInfo_TextBlock.Text = "" + } + + else + { + $togglesPanels[$i].Visibility = "Visible" + } } else { - $toggleText.Text = $TextEng[$toggleText.Uid] - } + $togglesPanels[$i].Visibility = "Collapsed" + } + } + + if ($ShowAnimation) + { + $UserInfo_Viewbox.Visibility = "Visible" + } + + else + { + $UserInfo_Viewbox.Visibility = "Collapsed" + } + + if ($RU) + { + $UserInfo_TextBlock.Text = $TextRu + } + + else + { + $UserInfo_TextBlock.Text = $TextEng } - - #endregion Set Toggle Text Language } function Follow-OnGitHub { @@ -4498,7 +4631,7 @@ function Follow-OnGitHub { #region Controls Events $ButtonHamburger.Add_MouseLeftButtonDown({ - Use-HamburgerMenu + Click-HamburgerMenu }) $ButtonHamburger.Add_MouseEnter({ @@ -4507,77 +4640,80 @@ $ButtonHamburger.Add_MouseEnter({ $ButtonHamburger.Add_MouseLeave({ Set-HamburgerHover - }) $Button_Hamburger_ChangeLanguage.Add_MouseLeftButtonDown({ + $panelName = Get-ActivePanel Set-GuiLanguage -Switch + Set-ActivePanel -Name $panelName }) $Button_Hamburger_ContextMenu.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_ContextMenu -HeaderNumber "0" - }) + Set-ActivePanel -Name "ContextMenu" +}) $Button_Hamburger_Defender.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Defender -HeaderNumber "1" - }) + Set-ActivePanel -Name "Defender" +}) $Button_Hamburger_Edge.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Edge -HeaderNumber "2" - }) + Set-ActivePanel -Name "Edge" +}) $Button_Hamburger_Game.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Game -HeaderNumber "3" - }) + Set-ActivePanel -Name "Game" +}) $Button_Hamburger_GitHub.Add_MouseLeftButtonDown({ Follow-OnGitHub }) $Button_Hamburger_OneDrive.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_OneDrive -HeaderNumber "4" - }) + Set-ActivePanel -Name "OneDrive" +}) $Button_Hamburger_Privacy.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Privacy -HeaderNumber "5" - }) + Set-ActivePanel -Name "Privacy" +}) $Button_Hamburger_StartMenu.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_StartMenu -HeaderNumber "6" - }) + Set-ActivePanel -Name "StartMenu" +}) $Button_Hamburger_System.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_System -HeaderNumber "7" - }) + Set-ActivePanel -Name "System" +}) $Button_Hamburger_Tasks.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Tasks -HeaderNumber "8" - }) + Set-ActivePanel -Name "Tasks" +}) $Button_Hamburger_UI.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Ui -HeaderNumber "9" - }) + Set-ActivePanel -Name "Ui" +}) $Button_Hamburger_Uwp.Add_MouseLeftButtonDown({ - Click-HamburgerButton -Panel $PanelToggle_Uwp -HeaderNumber "10" - }) -#endregion Controls Events + Set-ActivePanel -Name "Uwp" +}) -#region Add Click Event to Toggle Buttons +#region Add Toggle Buttons Click Event -(Get-Variable -Name "Toggle_*").Name | ForEach-Object { - $currentToggle = $Window.FindName($_) - $currentToggle.Add_Checked({ +for ($i=0;$i -lt $toggleSwitch.Count;$i++) +{ + $toggleSwitch[$i].Add_Checked({ Click-ToggleButton -IsChecked - }) + }) - $currentToggle.Add_Unchecked({ + $toggleSwitch[$i].Add_Unchecked({ Click-ToggleButton }) } -#endregion Add Click Event to Toggle Buttons +#endregion Add Toggle Buttons Click Event + +#endregion Controls Events +Set-ActivePanel -Name "Privacy" Set-GuiLanguage Hide-Console | Out-Null $Window.ShowDialog() | Out-Null