docs.unity3d.com
    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)
    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023