docs.unity.cn

Visual Scripting 1.9.0

    Show / Hide Table of Contents

    Delegate ReorderableListControl.ItemDrawer<T>

    Invoked to draw list item.

    Namespace: Unity.VisualScripting.ReorderableList
    Syntax
    public delegate T ItemDrawer<T>(Rect position, T item);
    Parameters
    Type Name Description
    Rect position

    Position of list item.

    T item

    The list item.

    Returns
    Type Description
    T

    The modified value.

    Type Parameters
    Name Description
    T

    Type of item list.

    Remarks

    GUI controls must be positioned absolutely within the given rectangle since list items must be sized consistently.

    Examples

    The following listing presents a text field for each list item:

    using Unity.VisualScripting.Dependencies.ReorderableList;
    using System.Collections.Generic;
    using UnityEditor;
    using UnityEngine;
    
    public class ExampleWindow : EditorWindow {
    public List<string> wishlist = new List<string>();
    
    private void OnGUI() {
        ReorderableListGUI.ListField(wishlist, DrawListItem);
    }
    
    private string DrawListItem(Rect position, string value) {
        // Text fields do not like `null` values!
        if (value == null)
            value = "";
        return EditorGUI.TextField(position, value);
    }
    }
    import Rotorz.ReorderableList;
    import System.Collections.Generic;
    
    class ExampleWindow extends EditorWindow {
    var wishlist:List.<String>;
    
    function OnGUI() {
        ReorderableListGUI.ListField(wishlist, DrawListItem);
    }
    
    function DrawListItem(position:Rect, value:String):String {
        // Text fields do not like `null` values!
        if (value == null)
            value = '';
        return EditorGUI.TextField(position, value);
    }
    }

    Extension Methods

    XAnalyserProvider.Analyser(Object, IGraphContext)
    XAnalyserProvider.Analyser<TAnalyser>(Object, IGraphContext)
    XAnalyserProvider.Analysis(Object, IGraphContext)
    XAnalyserProvider.Analysis<TAnalysis>(Object, IGraphContext)
    XAnalyserProvider.Analyser(Object, GraphReference)
    XAnalyserProvider.Analyser<TAnalyser>(Object, GraphReference)
    XAnalyserProvider.Analysis(Object, GraphReference)
    XAnalyserProvider.Analysis<TAnalysis>(Object, GraphReference)
    XDescriptorProvider.Describe(Object)
    XDescriptorProvider.HasDescriptor(Object)
    XDescriptorProvider.Descriptor(Object)
    XDescriptorProvider.Descriptor<TDescriptor>(Object)
    XDescriptorProvider.Description(Object)
    XDescriptorProvider.Description<TDescription>(Object)
    Cloning.Clone(Object, ICloner, Boolean)
    Cloning.Clone<T>(T, ICloner, Boolean)
    Cloning.CloneViaFakeSerialization(Object)
    Cloning.CloneViaFakeSerialization<T>(T)
    ConversionUtility.IsConvertibleTo(Object, Type, Boolean)
    ConversionUtility.IsConvertibleTo<T>(Object, Boolean)
    ConversionUtility.ConvertTo(Object, Type)
    ConversionUtility.ConvertTo<T>(Object)
    TypeUtility.ToShortString(Object, Int32)
    Serialization.CloneViaSerialization<T>(T, Boolean)
    Serialization.CloneViaSerializationInto<TSource, TDestination>(TSource, ref TDestination, Boolean)
    Serialization.Serialize(Object, Boolean)
    LinqUtility.Yield<T>(T)
    UnityObjectUtility.IsUnityNull(Object)
    UnityObjectUtility.ToSafeString(Object)
    In This Article
    • Extension Methods
    Back to top Copyright © 2023 Unity Technologies — Terms of use
    Generated by DocFX
    on Friday, August 4, 2023