void HandleFileLoadEnd(object sender , FSCruiser.Core.Workers.WorkerProgressChangedEventArgs e) { //var worker = sender as FSCruiser.Core.Workers.FileLoadWorker; //if (worker == null) { return; } ViewController.HideWait(); if (this._fileLoadWorker.IsDone) { var dataStore = _fileLoadWorker.DataStore; DataStore = dataStore; _fileLoadWorker.Dispose(); _fileLoadWorker = null; var filePath = dataStore.Path; var fileName = System.IO.Path.GetFileName(dataStore.Path); var appSettings = ApplicationSettings.Instance; appSettings.AddRecentProject(new RecentProject(fileName, filePath)); try { Settings.Save(); } catch { /* do nothing */ } //TODO Nbug } OnFileStateChanged(); }
public void OpenFile(string path) { if (this._fileLoadWorker != null) { _fileLoadWorker.Dispose(); } var worker = new FileLoadWorker(path, this); worker.ExceptionThrown += this.HandleFileLoadError; worker.Ended += this.HandleFileLoadEnd; worker.Starting += this.HandleFileLoadStart; worker.Start(); this._fileLoadWorker = worker; }
protected void Dispose(bool disposing) { if (disposing) { // free managed resources if (_fileLoadWorker != null) { _fileLoadWorker.Dispose(); _fileLoadWorker = null; } if (this.ViewController != null) { this.ViewController.Dispose(); this.ViewController = null; } } }