void FileRemoved(object sender, FileEventArgs eventArgs) { var files = eventArgs .Where(HasTaskRunner) .Select(fileEventInfo => fileEventInfo.FileName) .ToList(); if (!files.Any()) { return; } RemoveTaskRunners(files); }
void OnSystemFileDeleted(object sender, FileEventArgs args) { if (!args.Any(f => f.IsDirectory)) { return; } // When a folder is deleted, we need to remove all references in the tree, for all projects ITreeBuilder tb = Context.GetTreeBuilder(); var dirs = args.Where(d => d.IsDirectory).Select(d => d.FileName).ToArray(); foreach (var p in IdeApp.Workspace.GetAllProjects()) { foreach (var dir in dirs) { if (tb.MoveToObject(new ProjectFolder(dir, p)) && tb.MoveToParent()) { tb.UpdateAll(); } } } }
void OnSystemFileCreated(object sender, FileEventArgs args) { if (!args.Any(f => f.IsDirectory)) { return; } // When a folder is created, we need to refresh the parent if the folder was created externally. ITreeBuilder tb = Context.GetTreeBuilder(); var dirs = args.Where(d => d.IsDirectory).Select(d => d.FileName).ToArray(); foreach (var p in IdeApp.Workspace.GetAllProjects()) { foreach (var dir in dirs) { if (tb.MoveToObject(new ProjectFolder(dir, p))) { if (tb.MoveToParent()) { tb.UpdateAll(); } } else if (tb.MoveToObject(new ProjectFolder(dir.ParentDirectory, p))) { tb.UpdateAll(); } else if (dir.ParentDirectory == p.BaseDirectory) { if (tb.MoveToObject(p)) { tb.UpdateAll(); } } } } }
void OnSystemFileDeleted (object sender, FileEventArgs args) { if (!args.Any (f => f.IsDirectory)) return; // When a folder is deleted, we need to remove all references in the tree, for all projects ITreeBuilder tb = Context.GetTreeBuilder (); var dirs = args.Where (d => d.IsDirectory).Select (d => d.FileName).ToArray (); foreach (var p in IdeApp.Workspace.GetAllProjects ()) { foreach (var dir in dirs) { if (tb.MoveToObject (new ProjectFolder (dir, p)) && tb.MoveToParent ()) tb.UpdateAll (); } } }
IEnumerable <FilePath> GetPaketReferenceFilesChanged(FileEventArgs fileEventArgs) { return(fileEventArgs .Where(file => file.FileName.IsPaketReferencesFileName()) .Select(file => file.FileName)); }