public void FindDependencies() { CleanDependencies(); if (!asset) { return; } var references = AssetReferenceFinder.FindReferences(new SearchData() { assets = new[] { asset }, regExFilters = regexFilters, fileTypes = fileTypes, foldersFilter = foldersFilter, }); foreach (var reference in references.referenceMap) { var assetItem = reference.Key; var referencesData = reference.Value.Select(x => x.asset).ToList(); var referenceData = new ReferencesInfoData() { source = assetItem.ToEditorResource(), references = referencesData }; dependencies.Add(referenceData); } }
private void UpdateSearchResults() { ClearResults(); _filterTypes.Clear(); var assetType = objectTypeFilter is MonoScript scriptObject? scriptObject.GetClass() : objectTypeFilter?.GetType(); assetType?.AddToCollection(_filterTypes); var assets = AssetEditorTools.GetAssets <Object>(filter, folderFilter.ToArray()); if (singleTarget) { assets.Add(singleTarget); } //remove all filtered assets.RemoveAll(x => FilterAsset(x) == false); var searchData = new SearchData() { assets = assets.ToArray(), regExFilters = ignoreFilter. Concat(ignoreFolders). Select(EditorFileUtils.FixUnityPath). ToArray(), fileTypes = typeFilter.ToArray(), }; var result = AssetReferenceFinder.FindReferences(searchData); foreach (var reference in result.referenceMap) { var assetItem = reference.Key; var referencesData = reference.Value. Select(x => x.asset). ToList(); var referenceData = new ReferencesInfoData() { source = assetItem.ToEditorResource(), references = referencesData }; _referencesData.Add(referenceData); } FilterReferences(); }