protected override async Task <bool> PrepareClosingAsync() { foreach (var project in _projectManager.Projects.OfType <Project>()) { if (!await _saveProjectChangesService.EnsureChangesSavedAsync(project, SaveChangesReason.Closing)) { return(false); } } return(await base.PrepareClosingAsync()); }
protected override async Task OnClosingAsync(ProjectCancelEventArgs e) { if (e.Cancel) { return; } if (!await _saveProjectChangesService.EnsureChangesSavedAsync((Project)e.Project, SaveChangesReason.Closing)) { e.Cancel = true; } }