/// <summary> /// Workspacről fájl töltt be, ez ugyan az mint az OpenFileDialog-al nyitotta volna meg. /// Itt csak be kell tölteni a fájlt és megjeleníteni a TraceView-t /// </summary> private void WorkspaceService_OpenProjectChanged(object sender, EventArgs e) { #if TRACE AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()" + " : " + sender.ToString()); #endif if (_storage.IsChanged) { /*Betöltött project változott*/ var user = new AppModules.Main.View.SaveMessageBox().Show(_storage.FileName + AppConstants.FileExtension); if (user == UserAction.Yes) { /*Régi project változott => mensd és mutasd a felületet és tölsd be az újat*/ new AppModules.Main.Commands.SaveCommand(_storage).PerformClick(); ShowTraceInMainView(); var workspaceItems = sender as AppModules.Workspace.Model.IWorkspaceCollection; if (workspaceItems != null) { _storage.Load(workspaceItems.OpenedItem.ItemFilePath); } } if (user == UserAction.No) { /*Régi project változott => NE mensd és mutasd a felületet és tölsd be az újat*/ _storage.DropChanged(); ShowTraceInMainView(); var workspaceItems = sender as AppModules.Workspace.Model.IWorkspaceCollection; if (workspaceItems != null) { _storage.Load(workspaceItems.OpenedItem.ItemFilePath); } } else if (user == UserAction.Cancel) { /*Ne csinálj semmit*/ } } else { try { /*A régi projectben nincs változás betölhető az új project*/ ShowTraceInMainView(); var workspaceItems = sender as AppModules.Workspace.Model.IWorkspaceCollection; if (workspaceItems != null) { _storage.Load(workspaceItems.OpenedItem.ItemFilePath); } /*Sikerült betölteni*/ } catch { /*Nem sikerült az utolsó projectet betölteni, ezért most egy Untitled project Indul*/ _storage.New(_adapterService.GetDefaultDeviceName, _adapterService.GetDefaultBaudrate); ShowTraceInMainView(); /*Tovább dobja a hibaüzenete*/ throw; } } }
/// <summary> /// Az alaklamzás bezárását kérte a felhasználó, ez még megszakítható /// </summary> void MainForm_FormClosing(object sender, FormClosingEventArgs e) { #if TRACE AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()"); #endif if (_storage.IsChanged) { var user = new AppModules.Main.View.SaveMessageBox().Show(_storage.FileName + AppConstants.FileExtension); if (user == UserAction.Yes) { e.Cancel = true; new AppModules.Main.Commands.SaveCommand(_storage).PerformClick(); _mainForm.Close(); } else if (user == UserAction.Cancel) { e.Cancel = true; } } }