diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-07-29 10:56:41 +0300 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-07-29 10:56:41 +0300 |
| commit | d62b12aab4f521ff287da135b6e66e92629a50dd (patch) | |
| tree | 8b4a357bf92d62e1a4dd2e292801ecd41e4239af /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs | |
| parent | 1e3777f0813b2ac26ae0b52e89c171955a949563 (diff) | |
| download | Tango-d62b12aab4f521ff287da135b6e66e92629a50dd.tar.gz Tango-d62b12aab4f521ff287da135b6e66e92629a50dd.zip | |
Added data source in about dialog in machine studio.
Added last monitor in machine studio settings.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs | 114 |
1 files changed, 65 insertions, 49 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs index d6a832c8a..c7ac60ace 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/StudioApplication/DefaultStudioApplicationManager.cs @@ -148,76 +148,92 @@ namespace Tango.MachineStudio.UI.StudioApplication IsShuttingDown = true; - await Task.Factory.StartNew(async () => + try { + Rect r = new Rect( + MainWindow.Instance.Left, + MainWindow.Instance.Top, + MainWindow.Instance.Width, + MainWindow.Instance.Height); + + await Task.Factory.StartNew(async () => + { //Do Shutdown Procedures... foreach (var vm in TangoIOC.Default.GetAllInstancesByBase<IStudioViewModel>()) - { - try { - var result = await vm.OnShutdownRequest(); - if (!result) + try + { + var result = await vm.OnShutdownRequest(); + if (!result) + { + IsShuttingDown = false; + return; + } + } + catch (Exception ex) { - IsShuttingDown = false; - return; + LogManager.Log(ex, "Error on shutdown request with " + vm.GetType().Name); } } - catch (Exception ex) + + foreach (var vm in TangoIOC.Default.GetAllInstancesByBase<IStudioViewModel>()) { - LogManager.Log(ex, "Error on shutdown request with " + vm.GetType().Name); + vm.OnShuttingDown(); } - } - foreach (var vm in TangoIOC.Default.GetAllInstancesByBase<IStudioViewModel>()) - { - vm.OnShuttingDown(); - } + SettingsManager.Default.GetOrCreate<MachineStudioSettings>().LastBounds = r; - try - { - SettingsManager.Default.Save(); - } - catch (Exception ex) - { - LogManager.Log(ex, "Error saving settings."); - } + try + { + SettingsManager.Default.Save(); + } + catch (Exception ex) + { + LogManager.Log(ex, "Error saving settings."); + } - _navigationManager.NavigateTo(NavigationView.ShutdownView); + _navigationManager.NavigateTo(NavigationView.ShutdownView); - Thread.Sleep(1500); + Thread.Sleep(1500); - foreach (var window in _openedWindows) - { - ThreadsHelper.InvokeUI(() => + foreach (var window in _openedWindows) { - window.Close(); - }); - } + ThreadsHelper.InvokeUI(() => + { + window.Close(); + }); + } - try - { - if (ConnectedMachine != null) + try { - ConnectedMachine.Disconnect().Wait(); + if (ConnectedMachine != null) + { + ConnectedMachine.Disconnect().Wait(); + } + } + catch (Exception ex) + { + LogManager.Log(ex, "Error disconnecting from machine."); } - } - catch (Exception ex) - { - LogManager.Log(ex, "Error disconnecting from machine."); - } - var eventLogger = TangoIOC.Default.GetInstance<IEventLogger>(); - if (eventLogger != null) - { - eventLogger.Log(EventTypes.ApplicationTerminated, "Application Terminated!"); - eventLogger.FlushAll(); - } + var eventLogger = TangoIOC.Default.GetInstance<IEventLogger>(); + if (eventLogger != null) + { + eventLogger.Log(EventTypes.ApplicationTerminated, "Application Terminated!"); + eventLogger.FlushAll(); + } - Thread.Sleep(1500); + Thread.Sleep(1500); - Environment.Exit(0); + Environment.Exit(0); - }); + }); + } + catch (Exception ex) + { + IsShuttingDown = false; + LogManager.Log(ex,"An error occurred while shutting down machine studio."); + } } /// <summary> @@ -264,7 +280,7 @@ namespace Tango.MachineStudio.UI.StudioApplication { get { - return typeof(ExtendedObject).Assembly.GetName().Version.ToString(3); + return typeof(ExtendedObject).Assembly.GetName().Version.ToString(3); } } |
