public static bool ShowDialog(string title, string msg) { var infoDlgVM = new InfoDialogViewModel(title, msg); var infoDlg = new InfoDialogView(infoDlgVM); return(infoDlg.ShowDialog() == true); }
private void CheckForMissingWorkloads(string platform, string requiredWorkloads) { var vsShell = GenContext.ToolBox.Shell as VsGenShell; if (vsShell != null) { var workloadsToCheck = requiredWorkloads.Split('|'); var missingWorkloads = new List <string>(); foreach (var workload in workloadsToCheck) { if (!vsShell.GetInstalledPackageIds().Contains(workload)) { missingWorkloads.Add(workload.GetRequiredWorkloadDisplayName()); } } if (missingWorkloads.Count > 0) { var title = UIStringRes.InfoDialogMissingWorkloadTitle; var message = string.Format(UIStringRes.InfoDialogRequiredWorkloadNotFoundMessage, platform.GetPlatformDisplayName(), missingWorkloads.Aggregate((i, j) => $"{i}, {j}")); var link = "https://docs.microsoft.com/en-us/visualstudio/install/install-visual-studio"; var vm = new InfoDialogViewModel(title, message, link, _styleProvider); var info = new Views.Common.InfoDialog(vm); GenContext.ToolBox.Shell.ShowModal(info); CancelWizard(); } } }
private void CheckForInvalidProjectName() { var validationService = new ProjectNameService(GenContext.ToolBox.Repo.ProjectNameValidationConfig, () => new List <string>()); var projectName = GenContext.Current.ProjectName; var projectNameValidation = validationService.Validate(projectName); if (!projectNameValidation.IsValid) { var message = string.Empty; switch (projectNameValidation.Errors.FirstOrDefault()?.ErrorType) { case ValidationErrorType.ReservedName: message = string.Format(CoreStringRes.ErrorProjectReservedName, projectName); break; case ValidationErrorType.Regex: message = string.Format(CoreStringRes.ErrorProjectStartsWith, projectName, projectName[0]); break; } var title = CoreStringRes.ErrorTitleInvalidProjectName; var link = "https://github.com/microsoft/WindowsTemplateStudio/blob/release/docs/WTSNaming.md"; var vm = new InfoDialogViewModel(title, message, link, _styleProvider); var info = new Views.Common.InfoDialog(vm); GenContext.ToolBox.Shell.ShowModal(info); CancelWizard(); } }
public InfoDialog(InfoDialogViewModel vm) { DataContext = vm; vm.CloseAction = () => Close(); InitializeComponent(); }
public void LicenseInformationIsCorrectlyLoaded() { // Arrange Act var vm = new InfoDialogViewModel(); // Assert Assert.IsTrue(vm.Licenses.Any()); }
public void ChangelogIsCorrectlyLoaded() { // Arrange Act var vm = new InfoDialogViewModel(); // Assert Assert.IsTrue(vm.Changelogs.Any()); }
public void ShowInfo(string info) { ShowChildWindowMessage message = _messenger.CreateMessage <ShowChildWindowMessage>(); InfoDialogViewModel viewModel = (InfoDialogViewModel)_viewModelFactory.GetChild <InfoDialogViewModel>(info); message.Content = viewModel; message.IsDialog = false; _messenger.Send(message); }
public void ShowInfo(string info) { DispatcherHelper.CheckBeginInvokeOnUI(() => { ShowChildWindowMessage message = _messenger.CreateMessage <ShowChildWindowMessage>(); InfoDialogViewModel viewModel = (InfoDialogViewModel)_viewModelFactory.GetChild <InfoDialogViewModel>(info); message.Content = viewModel; message.IsDialog = false; _messenger.Send(message); }); }
public void ShowDialog(InfoDialogViewModel vm) { _infoDialog = new InfoDialog() { Owner = Application.Current.MainWindow, DataContext = vm }; Messenger.Default.Register <NotificationMessage>(this, message => { if (message.Notification == "CloseInfoDialog") { CloseInfoDialog(); } }); _infoDialog.ShowDialog(); }
private void CheckForMissingWorkloads(string platform, string requiredWorkload) { var vsShell = GenContext.ToolBox.Shell as VsGenShell; if (vsShell != null) { if (!vsShell.GetInstalledPackageIds().Contains(requiredWorkload)) { var title = UIStringRes.InfoDialogMissingWorkloadTitle; var message = string.Format(UIStringRes.InfoDialogRequiredWorkloadNotFoundMessage, requiredWorkload.GetRequiredWorkloadDisplayName(), platform.GetPlatformDisplayName()); var link = "https://docs.microsoft.com/en-us/visualstudio/install/install-visual-studio"; var vm = new InfoDialogViewModel(title, message, link, _styleProvider); var info = new Views.Common.InfoDialog(vm); GenContext.ToolBox.Shell.ShowModal(info); CancelWizard(); } } }
private void CheckVSVersion(string platform) { var vsInfo = GenContext.ToolBox.Shell.GetVSTelemetryInfo(); if (!string.IsNullOrEmpty(vsInfo.VisualStudioExeVersion)) { // VisualStudioExeVersion is Empty on UI Test or VSEmulator execution var version = Version.Parse(vsInfo.VisualStudioExeVersion); if (platform == Platforms.Wpf && (version.Major < 16 || (version.Major == 16 && version.Minor < 3))) { var title = UIStringRes.InfoDialogInvalidVersionTitle; var message = UIStringRes.InfoDialogInvalidVSVersionForWPF; var link = "https://docs.microsoft.com/en-us/visualstudio/install/install-visual-studio"; var vm = new InfoDialogViewModel(title, message, link, _styleProvider); var info = new Views.Common.InfoDialog(vm); GenContext.ToolBox.Shell.ShowModal(info); CancelWizard(); } } }
private void CheckVSVersion(string platform, string requiredVersion) { var vsInfo = GenContext.ToolBox.Shell.GetVSTelemetryInfo(); if (!string.IsNullOrEmpty(requiredVersion) && !string.IsNullOrEmpty(vsInfo.VisualStudioExeVersion)) { // VisualStudioExeVersion is Empty on UI Test or VSEmulator execution var actualVSVersion = Version.Parse(vsInfo.VisualStudioExeVersion); var requiredVSVersion = Version.Parse(requiredVersion); if (actualVSVersion.CompareTo(requiredVSVersion) < 0) { var title = UIStringRes.InfoDialogInvalidVersionTitle; var message = string.Format(UIStringRes.InfoDialogInvalidVSVersion, platform, requiredVersion); var link = "https://docs.microsoft.com/en-us/visualstudio/install/install-visual-studio"; var vm = new InfoDialogViewModel(title, message, link, _styleProvider); var info = new Views.Common.InfoDialog(vm); GenContext.ToolBox.Shell.ShowModal(info); CancelWizard(); } } }