RSX Code Reference
    Preparing search index...

    Class InspectorField<T, V>Abstract Public Self

    The InspectorField class implements a simplified InspectorFieldBase that provides convenient APIs to quickly create a new field inspector based on an underlying UIElementBase control instance.

    Type Parameters

    • T extends UIElementBase

      The inspector control type (UIElement that will control the property)

    • V

      The inspector field value type

    Hierarchy (View Summary)

    Index
    _active: boolean
    _depth: number
    _disabled: boolean
    _formLayoutSection: InspectorFormLayoutSection
    _isFocused: boolean
    _isReadOnly: boolean
    _name: string
    _path: string
    _title: string
    _type: ClassOf<V>
    control: T

    The control to be displayed for the field. Can be any UIElement, but a UIControl is preferred.

    customElements: {
        attribute: CustomInspectorElementAttribute;
        element: UIElementBase;
    }[]

    All custom elements added through CustomInspectorElementAttribute on the field.

    endUndo: () => void

    Finishes recording an undo command started via startUndoForPath. If any changes are detected on the field an undo command is recorded onto the undo-redo stack, otherwise nothing is done.

    onFieldChanged: (newValue: ValueTypeOf<V>) => void

    Triggered when the user inputs a new value.

    Type Declaration

    onFieldChangedImmediate: (newValue: ValueTypeOf<V>) => void

    Triggered when the user inputs a new value. Sets the property as immediately changed.

    Type Declaration

    onFieldEditBegan: () => void

    Triggered when the user confirms input in the field.

    onFieldEditEnded: () => void

    Triggered when the user confirms input in the field.

    onFieldInteractionEnded: () => void

    Triggered when the user has finished interacting with the field but has not confirmed the change yet.

    onResetValue: () => void

    Resets the field to it's default value.

    startUndo: () => void

    Zero parameter wrapper for startUndoForPath

    startUndoForPath: (subPath?: string) => void

    Notifies the system to start recording a new undo command. Any changes to the field after this is called will be recorded in the command. User must call endUndo after field is done being changed.

    Type Declaration

      • (subPath?: string): void
      • Parameters

        • OptionalsubPath: string

          Optional path to append to the end of the current field path.

        Returns void

    The inspectable field modification state.

    • get depth(): number

      Gets the depth of the field.

      Returns number

    • get isActive(): boolean

      Activates or deactivates the underlying UI elements.

      Returns boolean

    • set isActive(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get isDisabled(): boolean

      Disables or enables the underlying UI elements. Disabled elements cannot be interacted with and have a faded out appearance.

      Returns boolean

    • set isDisabled(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get isFocused(): boolean

      Determines if the field is currently focused.

      Returns boolean

    • get isReadOnly(): boolean

      Disables or enables the underlying UI elements. Disabled elements cannot be interacted with and have a faded out appearance.

      Returns boolean

    • set isReadOnly(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get name(): string

      Name portion of the field path.

      Returns string

    • get path(): string

      Returns the path to the field.

      Returns string

    • Commits the newValue to the inspectable property.

      Parameters

      Returns void

    • Virtual

      Destroys all UI elements in the inspectable field.

      Returns void

    • Searches for a child field with the specified path. The path must start with the field that this method is invoked on.

      Parameters

      • path: string

        Path relative to the current field. Path entries are field names separated with /. Fields within categories are placed within a special category group, surrounded by []. Examples: - myField - myObject/myField - myObject/[myCategory]/myField

      Returns InspectorFieldBase

      Matching field if one is found, null otherwise.

    • Virtual

      Searches for a child field with the specified path. The path must start with the field that this method is invoked on.

      Parameters

      • path: string[]

        Path relative to the current field. This should be an array of path elements. Fields within categories are placed within a special category group, surrounded by []. Examples: - ["myField"] - ["myObject", "myField"] - ["myObject", "[myCategory]", "myField"]

      • Optionalchildren: InspectorFieldBase[]

        The children of this field.

      Returns InspectorFieldBase

      Matching field if one is found, null otherwise.

    • Virtual

      Searches and focuses a child field with the specified path. The path must start with the field that this method is invoked on.

      Parameters

      • path: string[]

        Path relative to the current field. This should be an array of path elements. Fields within categories are placed within a special category group, surrounded by []. Examples: - ["myField"] - ["myObject", "myField"] - ["myObject", "[myCategory]", "myField"]

      Returns boolean

      True if a field was focused, false otherwise.

    • Virtual

      Checks if two values of the inspected field are equal. By default, this method uses isEqual to check for equality - if implemented. Complex fields can override this method and offer an alternative comparison method.

      Parameters

      Returns boolean

      True if the two values are equivalent.

    • Checks if the field is set to the default value.

      Parameters

      Returns boolean

      True if the field is set to the default value.

    • Virtual

      Checks whether the field can focus the given sub field.

      Parameters

      • subFieldName: string

        The name of the sub field to focus. This is a path containing the field name and sub field name.

      Returns boolean

      True, if focusing is possible.

    • Virtual

      Notifies the owning inspector that it needs to be refreshed on the next update loop.

      Returns void

    • Called when this field or a child of this field is focused. Use this to e.g. expand a field foldout to make the child visible.

      Returns void

    • Resets the field to it's default value.

      Returns void

      This method is called when the user clicks the reset button.

    • Searches the inspector field hierarchy for fields that are an instance of at least one of the provided types.

      Parameters

      • typeOrTypes: Type | Type[]

        The types to search for.

      • OptionalisRecursive: boolean

        Whether to recusrively search the child fields as well.

      Returns InspectorFieldBase[]

      A list of all fields that match one of the types.

      Fields that are not instantiated yet will not be found. (e.g. Children of an ObjectInspectorField where the foldout hasn't been unfolded yet)

    • Virtual

      Activates or deactivates the underlying UI elements.

      Parameters

      • active: boolean

      Returns void

    • Virtual

      Disables or enables the underlying UI elements. Disabled elements cannot be interacted with and have a faded out appearance.

      Parameters

      • disabled: boolean

      Returns void

    • Virtual

      Moves keyboard focus to this field.

      Parameters

      • OptionalsubFieldName: string

        Name of the sub-field to focus on. Only relevant if the inspectable field represents multiple UI input elements.

      Returns void

    • Virtual

      Set the element read only.

      Parameters

      • readOnly: boolean

        The new read only value

      Returns void

    • Updates all accessory elements of this field.

      Returns void

    • Updates all accessory elements of this field for the currentValue.

      Parameters

      Returns void

    • Creates a new inspectable field, automatically detecting the most appropriate implementation for the type contained in the provided serializable property. This may be one of the built-in inspectable field implemetations (like ones for primitives like int or bool), or a user defined implementation defined with a CustomInspectorAttribute attribute.

      Parameters

      • context: InspectorContext

        Context shared by all inspectable fields created by the same parent.

      • title: string

        Name of the property, or some other value to set as the title.

      • path: string

        Full path to this property (includes name of this property and all parent properties).

      • layoutIndex: number

        Index into the parent layout at which to insert the UI elements for the field .

      • depth: number

        Determines how deep within the inspector nesting hierarchy is this field. Some fields may contain other fields, in which case you should increase this value by one.

      • layout: InspectorFormLayoutSection

        Parent layout that all the field elements will be added to.

      • property: InspectableProperty

        Serializable property referencing the array whose contents to display.

      • Optionalparent: InspectorFieldContainer
      • OptionalfnGetParentFieldConditionals: () => InspectorFieldConditionalInfo[]

      Returns InspectorFieldBase

      Inspectable field that can be used for displaying the UI for an InspectableProperty of the provided type.

    • Returns the top-most part of the provided field path. See findPath2 for more information about paths.

      Parameters

      • path: string

        Path to return the sub-path of.

      • count: number

        Number of path elements to retrieve.

      Returns string

      First count elements of the path.