diff --git a/SetupWizard/WizardWindow.cs b/SetupWizard/WizardWindow.cs index faf37da35..55990b4d7 100644 --- a/SetupWizard/WizardWindow.cs +++ b/SetupWizard/WizardWindow.cs @@ -80,21 +80,16 @@ namespace MatterHackers.MatterControl public static void Show(string uri, string title) where PanelType : WizardPage, new() { - WizardWindow existingWindow; + WizardWindow wizardWindow = GetWindow(uri); + wizardWindow.Title = title; + wizardWindow.ChangeToPage(); + } - if (allWindows.TryGetValue(uri, out existingWindow)) - { - existingWindow.BringToFront(); - } - else - { - existingWindow = new WizardWindow(); - existingWindow.Closed += (s, e) => allWindows.Remove(uri); - allWindows[uri] = existingWindow; - } - - existingWindow.Title = title; - existingWindow.ChangeToPage(); + public static void Show(string uri, string title, WizardPage wizardPage) + { + WizardWindow wizardWindow = GetWindow(uri); + wizardWindow.Title = title; + wizardWindow.ChangeToPage(wizardPage); } public static void Show(bool openToHome = false) @@ -110,6 +105,24 @@ namespace MatterHackers.MatterControl } } + private static WizardWindow GetWindow(string uri) + { + WizardWindow wizardWindow; + + if (allWindows.TryGetValue(uri, out wizardWindow)) + { + wizardWindow.BringToFront(); + } + else + { + wizardWindow = new WizardWindow(); + wizardWindow.Closed += (s, e) => allWindows.Remove(uri); + allWindows[uri] = wizardWindow; + } + + return wizardWindow; + } + public override void OnClosed(EventArgs e) { base.OnClosed(e);