Table of Contents

Class PropertyReadonly<T>

Namespace
KSP.Api.CoreTypes
Assembly
Assembly-CSharp.dll
public class PropertyReadonly<T> : IProperty<T>, IProperty, IPropertyEnumValues

Type Parameters

T
Inheritance
PropertyReadonly<T>
Implements
Derived
Inherited Members
Extension Methods

Constructors

PropertyReadonly(T)

public PropertyReadonly(T initialValue)

Parameters

initialValue T

PropertyReadonly(T, Func<T, T>)

public PropertyReadonly(T initialValue, Func<T, T> validator)

Parameters

initialValue T
validator Func<T, T>

Fields

onChangedProxy

protected EventHandlerProxy<T> onChangedProxy

Field Value

EventHandlerProxy<T>

storedValue

protected T storedValue

Field Value

T

valueValidator

protected readonly Func<T, T> valueValidator

Field Value

Func<T, T>

Properties

EnumIndices

public int[] EnumIndices { get; }

Property Value

int[]

EnumNames

public string[] EnumNames { get; }

Property Value

string[]

StoredType

public Type StoredType { get; }

Property Value

Type

Methods

GetObject()

public object GetObject()

Returns

object

GetValue()

public T GetValue()

Returns

T

InvokeValueChanged(T)

public virtual void InvokeValueChanged(T newValue)

Parameters

newValue T

SetEnumValues(string[], int[])

public void SetEnumValues(string[] newEnumNames, int[] newEnumIndices = null)

Parameters

newEnumNames string[]
newEnumIndices int[]

SetObject(object)

public void SetObject(object value)

Parameters

value object

SetValue(IProperty<T>)

public void SetValue(IProperty<T> prop)

Parameters

prop IProperty<T>

SetValue(T)

public void SetValue(T value)

Parameters

value T

SetValueInternal(T, bool)

public virtual void SetValueInternal(T value, bool skipEvent = false)

Parameters

value T
skipEvent bool

Events

OnChanged

public event Action OnChanged

Event Type

Action

OnChangedObject

public event Action<object> OnChangedObject

Event Type

Action<object>

OnChangedValue

public event Action<T> OnChangedValue

Event Type

Action<T>