Namespace: | Sirenix.OdinInspector.Editor |
Assembly: | Sirenix.OdinInspector.Editor |
public sealed class PropertyValueCollectionAlias<TActualValue, TValue> : PropertyValueCollection, IPropertyValueCollection<TValue>, IPropertyValueCollection, IList, ICollection, IList<TValue>, ICollection<TValue>, IEnumerable<TValue>, IEnumerable
Represents an alias for a strongly typed collection of values for a PropertyValueEntry<TValue> - one value per selected inspector target.
This class ensures that polymorphism works in the inspector, and can be strongly typed in applicable cases.
The type of the aliased collection.
The polymorphic type of this collection, which is assignable to
public PropertyValueCollectionAlias(InspectorProperty property, IPropertyValueCollection<TActualValue> aliasedCollection, TValue[] atomArray, TValue[] originalAtomArray)
InspectorProperty | property | The property. |
Sirenix.OdinInspector.Editor.IPropertyValueCollection<TActualValue> | aliasedCollection | The aliased collection. |
TValue[] | atomArray | Not yet documented. |
TValue[] | originalAtomArray | Not yet documented. |
System.ArgumentException | aliasedCollection |
public override bool AreDirty { get; }
public override int Count { get; }
protected override bool IsSynchronized { get; }
public TValue this[int index] { get; set; }
System.Int32 | index | The index. |
public IImmutableList<TValue> Original { get; }
protected override object SyncRoot { get; }
protected override IImmutableList WeakOriginal { get; }
protected override bool Contains(object value)
System.Object | value | The value. |
System.Boolean |
|
protected override void CopyTo(Array array, int index)
System.Array | array | The array to copy to. |
System.Int32 | index | The index to copy from. |
public override void ForceMarkDirty()
Force sets the value, ignoring whether it is editable or not.
Note that this will fail on list element value entries where Sirenix.OdinInspector.Editor.IPropertyValueEntry.ListIsReadOnly is true on the parent value entry.
public void ForceSetValue(int index, TValue value)
System.Int32 | index | The selection index of the value. |
TValue | value | The value to be set. |
Force sets the value, ignoring whether it is editable or not.
Note that this will fail on list element value entries where
public override void ForceSetValue(int index, object value)
System.Int32 | index | The selection index of the value. |
System.Object | value | The value to be set. |
public override IEnumerator GetEnumerator()
System.Collections.IEnumerator |
protected override object GetWeakValue(int index)
System.Int32 | index | The index of the value to get. |
System.Object | The weakly typed value at the given index |
protected override int IndexOf(object value)
System.Object | value | The value to get the index of. |
System.Int32 | The index of the given value, or -1 if the value was not found. |
public override void MarkClean()
public override void RevertUnappliedValues()
protected override void SetWeakValue(int index, object value)
System.Int32 | index | The index to set the value of. |
System.Object | value | The value to set. |