Namespace: | Sirenix.OdinInspector.Editor |
Assembly: | Sirenix.OdinInspector.Editor |
public sealed class InspectorProperty : IDisposable
public bool AnimateVisibility
public ImmutableList<Attribute> Attributes { get; }
public PropertyValueEntry BaseValueEntry { get; }
public PropertyChildren Children { get; }
public OdinPropertyResolver ChildResolver { get; }
public ImmutableList<PropertyComponent> Components { get; }
public PropertyContextContainer Context { get; }
public int DrawCount { get; }
public int DrawerChainIndex { get; }
public int Index { get; }
public InspectorPropertyInfo Info { get; }
public bool IsTreeRoot { get; }
public GUIContent Label { get; set; }
public Rect LastDrawnValueRect { get; }
public string Name { get; }
public string NiceName { get; }
public InspectorProperty Parent { get; }
public Type ParentType { get; }
public InspectorProperty ParentValueProperty { get; }
public ImmutableList ParentValues { get; }
public string Path { get; }
The full path of this property as used by prefab modifications and the deep reflection system, containing all the necessary information to find this property through reflection only.
public string PrefabModificationPath { get; }
The current recursive draw depth, incremented for each time that the property has caused itself to be drawn recursively.
Note that this is the current recursion level, not the total amount of recursions so far this frame.
public int RecursiveDrawDepth { get; }
public InspectorProperty SerializationRoot { get; }
public PropertyState State { get; }
public StateUpdater[] StateUpdaters { get; }
public bool SupportsPrefabModifications { get; }
public PropertyTree Tree { get; }
The full Unity property path of this property; note that this is merely a converted version of Path, and not necessarily a path to an actual Unity property.
In the case of Odin-serialized data, for example, no Unity properties will exist at this path.
public string UnityPropertyPath { get; }
public IPropertyValueEntry ValueEntry { get; }
public void CleanForCachedReuse()
public void Dispose()
public void Draw()
public void Draw(GUIContent defaultLabel)
UnityEngine.GUIContent | defaultLabel |
public InspectorProperty FindChild(Func<InspectorProperty, bool> predicate, bool includeSelf)
System.Func<InspectorProperty, System.Boolean> | predicate | |
System.Boolean | includeSelf |
InspectorProperty |
public InspectorProperty FindParent(Func<InspectorProperty, bool> predicate, bool includeSelf)
System.Func<InspectorProperty, System.Boolean> | predicate | |
System.Boolean | includeSelf |
InspectorProperty |
public BakedDrawerChain GetActiveDrawerChain()
BakedDrawerChain |
public T GetAttribute<T>()
where T : Attribute
T |
T |
public T GetAttribute<T>(HashSet<Attribute> exclude)
where T : Attribute
System.Collections.Generic.HashSet<System.Attribute> | exclude | The attributes to exclude. |
T |
T |
public IEnumerable<T> GetAttributes<T>()
where T : Attribute
System.Collections.Generic.IEnumerable<T> |
T |
public T GetComponent<T>()
where T : PropertyComponent
T |
T |
public void IncrementDrawerChainIndex()
public bool IsChildOf(InspectorProperty other)
InspectorProperty | other | The property to check whether this property is the child of. |
System.Boolean |
System.ArgumentNullException | other is null |
public bool IsParentOf(InspectorProperty other)
InspectorProperty | other | The property to check whether this property is the parent of. |
System.Boolean |
System.ArgumentNullException | other is null |
public bool IsReachableFromRoot()
System.Boolean |
public void MarkSerializationRootDirty()
public InspectorProperty NextProperty(bool includeChildren = true, bool visibleOnly = false)
System.Boolean | includeChildren | Whether to include children or not. |
System.Boolean | visibleOnly | Whether to only include visible properties. |
InspectorProperty |
public void PopDraw()
public void PopulateGenericMenu(GenericMenu genericMenu)
UnityEditor.GenericMenu | genericMenu |
public void PushDraw()
public void RecordForUndo(string message = null, bool forceCompleteObjectUndo = false)
System.String | message | |
System.Boolean | forceCompleteObjectUndo |
public void RefreshSetup()
public override string ToString()
System.String | A System.String that represents this instance. |
public IPropertyValueEntry<T> TryGetTypedValueEntry<T>()
Sirenix.OdinInspector.Editor.IPropertyValueEntry<T> |
T |
public bool Update(bool forceUpdate = false)
System.Boolean | forceUpdate | If true, the property will update regardless of whether it has already updated for the current UpdateID. |
System.Boolean |