/// <summary> /// Az adapter elindult /// </summary> private void AdapterService_Started(object sender, EventArgs e) { #if TRACE AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()" + " : " + sender.ToString()); #endif EventAggregator.Instance.Publish <PlayAppEvent>(new PlayAppEvent(_adapterService)); TimerService.Instance.Start(); }
/// <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> /// Itt dől el hogy induláskor mit lát a felszhnáló /// 1. Utolsó projectjét visszatölti /// 2. Argumentumban jött útvonal és ezt jeleníti meg /// 3. Új Project. /// </summary> /// <param name="args">A fájl - hoz tartozó argumentumok.</param> public void Start(string[] args) { #if DEBUG AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + ": " + string.Join("\r\n -", args)); #endif if (args.Count() > 1 && System.IO.File.Exists(args[1]) && !args[1].Contains("UnitTest.nunit")) { /*fájlra klikkelt ezt betölti és megjeleníti*/ try { _storage.Load(args[1]); ShowTraceInMainView(); } 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*/ } } else { if (Settings.Default.LoadProjectOnAppllicationStart) { try { if (System.IO.File.Exists(_workspaceService.LastOpenedProjectPath)) { /*Sikerült az utolsó projectet betölteni*/ _storage.Load(_workspaceService.LastOpenedProjectPath); ShowTraceInMainView(); } else { /*Nem volt elöző porject, új projectet töltünk be.*/ _storage.New(_adapterService.GetDefaultDeviceName, _adapterService.GetDefaultBaudrate); ShowTraceInMainView(); } } catch { /*Nem sikerült az utolsó projectet betölteni, ezért most egy Default project Indul*/ _storage.New(_adapterService.GetDefaultDeviceName, _adapterService.GetDefaultBaudrate); ShowTraceInMainView(); /*Tovább dobja a hibaüzenete*/ throw; } } else { _storage.New(_adapterService.GetDefaultDeviceName, _adapterService.GetDefaultBaudrate); ShowTraceInMainView(); } } _mainForm.Status = "Started"; }
/// <summary> /// MainFrom bezárult /// Itt ment mindent amit kell. /// </summary> void MainForm_FormClosed(object sender, FormClosedEventArgs e) { #if TRACE AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()"); #endif _workspaceService.Save(); _adapterService.Dispose(); _storage.Tools.Dispose(); _mainForm.LayoutSave(); Settings.Default.Save(); EventAggregator.Instance.Dispose(); TimerService.Instance.Dispose(); }
/// <summary> /// MainFrom megjelnt /// Innentől él s SyncContext! /// User felé a default állapot, ami nem kerül soha mentésre... /// Betölti a GUI paramtéereket. /// </summary> void MainForm_Shown(object sender, EventArgs e) { #if TRACE AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()"); #endif SyncContext = SynchronizationContext.Current; _mainForm.LayoutRestore(); /*Ötölti be a projectet*/ Start(Environment.GetCommandLineArgs()); /*Kezdő Node Legyen az Adapter node*/ EventAggregator.Instance.Publish <TreeViewSelectionChangedAppEvent>(new TreeViewSelectionChangedAppEvent(_startTreeNode)); }
/// <summary> /// Az alkalmazás fokuszában lenyomtak egy billentyüt. /// </summary> void MainForm_KeyUp(object sender, KeyEventArgs e) { #if TRACE if (Settings.Default.KeyTracingEnable) { AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + ": " + e.Modifiers.ToString() + " " + e.KeyCode.ToString()); } #endif /* * TODO: Ezt meg csinálni * foreach (ToolStripMenuItem cmd in _traceSenderMainToolbarCommands) * if (cmd.ShortcutKeys == e.KeyData) * cmd.PerformClick(); * _messageSender.KeyPressed(e.KeyCode.ToString()); */ }
/// <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; } } }
/// <summary> /// Erőrorrások felszabadítása az alakalmazás bezárása után /// </summary> void MainForm_Disposed(object sender, EventArgs e) { #if TRACE AppDiagService.WriteLine(this.GetType().Namespace + "." + this.GetType().Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()"); #endif }