protected override IEnumerable <IFinderResult> GetObjectResults(IFinderContext context) { return(Object.FindObjectsOfType <Transform>() .Where(t => context.GetIsMatchForTerm(t.name)) .OrderBy(t => t.GetSiblingIndex()) .Select <Transform, IFinderResult>(t => new HierarchyResult(t.gameObject))); }
protected override IEnumerable <IFinderResult> GetObjectResults(IFinderContext context) { return(Object.FindObjectsOfType <Component>() .Where(c => !ignoredTypes.Contains(c.GetType()) && context.GetIsMatchForTerm(ObjectNames.GetInspectorTitle(c))) .Select <Component, IFinderResult>(c => new ComponentResult(c))); }
public override void Execute(IFinderContext context) { if (ModifierAlt) { gameObject.SetActive(!gameObject.activeSelf); } else { SelectUnityObject(ModifierShift); } }
public override void Draw(IFinderContext context, IFinderResult result) { result.To <ComponentResult>(componentResult => { Editor.CreateCachedEditor(componentResult.component, null, ref editor); using (new GUILayout.VerticalScope()) { editor.OnInspectorGUI(); } }); }
public override void Execute(IFinderContext context) { if (ModifierOpen) { var path = AssetDatabase.GetAssetPath(component); InternalEditorUtility.OpenFileAtLineExternal(path, 0); } else { SelectUnityObject(ModifierShift); } }
/// <summary> /// Generates results for the plugin. /// Called internally by UFind; you should never need to call this yourself. /// </summary> public void GenerateResults(IFinderContext context) { results.Clear(); if (context.Query.Value.Length > 0) { var generatedResults = context.IsSlashCommand ? GetCommandResults(context) : GetObjectResults(context); if (generatedResults != null) { results.AddRange(generatedResults); } } results = results.OrderByDescending(r => r.Score).ToList(); }
public override void Execute(IFinderContext context) { if (ModifierOpen) { if (UnityObject is MonoScript) { InternalEditorUtility.OpenFileAtLineExternal(path, 0); } if (UnityObject is SceneAsset) { EditorSceneManager.OpenScene(path, ModifierShift ? OpenSceneMode.Additive : OpenSceneMode.Single); } } else { SelectUnityObject(ModifierShift); } }
/// <summary> /// Executes this result. /// </summary> public abstract void Execute(IFinderContext context);
/// <summary> /// Used to generate a list of command results (actions). /// </summary> protected virtual IEnumerable <IFinderResult> GetCommandResults(IFinderContext context) { return(null); }
public abstract void Draw(IFinderContext context, IFinderResult result);
protected override IEnumerable <IFinderResult> GetObjectResults(IFinderContext context) { return(AssetDatabase.FindAssets(context.Query.Value) .Select <string, IFinderResult>(g => new AssetDatabaseResult(g))); }