private static List <CodeDocument> GetProjectItemFiles(IEnumerable items) { var files = new List <CodeDocument>(); foreach (ProjectItem item in items) { if (item.SubProject != null) { files = files.Union(GetProjectItemFiles(item.ProjectItems)).ToList(); } else if (item.ProjectItems != null && item.ProjectItems.Count > 0) { files = files.Union(GetProjectItemFiles(item.ProjectItems)).ToList(); } else { var fileName = item.Name; var extension = Path.GetExtension(fileName); if (!AllowedExtensions.Contains(extension)) { continue; } //AC Note: This will not save an unopened file. Is this desired behavior? if (item.Document != null) { files.Add(DocumentFactory.FromDteDocument(item.Document)); } } } return(files); }
public async override void DocumentSaved(Document document) { base.DocumentSaved(document); var save = new SaveEvent { SolutionName = Dte.Solution.FullName, Document = DocumentFactory.FromDteDocument(document) }; //let others know that we have a new event NotifyEventCreated(this, new EventCreatedArgs(save)); CheckInterventionStatus(); }