public static void SearchForFileInAllScenes(Object asset, bool clearPreviousResults = false) { var window = OpenWindow(); window.context = asset; if (clearPreviousResults) { window.results.Clear(); } List <Object> sceneObjects = new List <Object>(); ReferenceSearchUtility.FindAssetReferencesInBuildScenes(asset, sceneObjects); //Result should be a list of GameObjects //Sort them by scene sceneObjects.Sort((a, b) => { var gameObjectA = a is Component ? (( Component )a).gameObject : ( GameObject )a; var gameObjectB = b is Component ? (( Component )b).gameObject : ( GameObject )b; var sceneA = gameObjectA.scene; var sceneB = gameObjectB.scene; return(string.Compare(sceneA.name, sceneB.name, System.StringComparison.CurrentCulture)); }); window.results.AddRange(sceneObjects); }
private void Search(Func <FileInfo, bool> searchAction) { var foundFiles = new List <string>(); ReferenceSearchUtility.ExecuteAssetSearchAtPath(settings.path, ".asset", (file) => { if (searchAction(file)) { foundFiles.Add(GetProjectRelativePath(file.FullName)); } }); //Get Assets for found files var assets = new List <UnityEngine.Object>(); for (int i = 0; i < foundFiles.Count; i++) { var path = foundFiles[i]; EditorUtility.DisplayProgressBar("Fetching Asset References", path, i / (float)foundFiles.Count); assets.Add(AssetDatabase.LoadAssetAtPath <UnityEngine.Object>(path)); } EditorUtility.ClearProgressBar(); SearchResultWindow.SetFiles(assets, assetFile); }
public static void SearchForFile() { var window = OpenWindow(); window.context = Selection.activeObject; window.results.Clear(); ReferenceSearchUtility.FindAssetReferenceInOpenScenes(Selection.activeObject, window.results); }
public static void Find(Object asset) { var window = OpenWindow(); window.context = asset; window.results.Clear(); ReferenceSearchUtility.FindAssetReferenceInOpenScenes(asset, window.results); }
public static void MonobehaviourSearchForReferencesInOpenScenes(MenuCommand command) { var window = OpenWindow(); //Result should be a list of components referencing the given object window.context = command.context; window.results.Clear(); ReferenceSearchUtility.FindMonoBehaviourReferencesInScene(command.context as MonoBehaviour, window.results); }
public static void SearchForGameObject() { var window = OpenWindow(); //Result should be a list of components referencing the given object window.context = Selection.activeObject; window.results.Clear(); ReferenceSearchUtility.FindGameObjectReferencesInOpenScene(Selection.activeObject as GameObject, window.results); }
private void OpenInPreviewSceneAndSearch(object prefab) { var path = AssetDatabase.GetAssetPath((Object)prefab); PrefabUtility.LoadPrefabContents(path); ReferenceSearchUtility.FindAssetReferenceInOpenScenes(context, results); scrollPosition = new Vector2(0, float.MaxValue); Repaint(); }