Abstract Class: HardwareUiControlList<T, E, P>
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:48
A component that displays a collection of UiControls in a list format.
Extends
HardwareUiControl
<E
,P
>
Type Parameters
Type Parameter | Default type |
---|---|
T | - |
E extends Record <string , any > | Record <string , never > |
P extends HardwareControlListProps <T > | HardwareControlListProps <T > |
Constructors
Constructor
new HardwareUiControlList<
T
,E
,P
>(props
):HardwareUiControlList
<T
,E
,P
>
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:64
Creates an instance of a ControlList.
Parameters
Parameter | Type | Description |
---|---|---|
props | P | The props on the ControlList component. |
Returns
HardwareUiControlList
<T
, E
, P
>
Overrides
Properties
context?
optional
context: [] =undefined
Defined in: src/sdk/components/FSComponent.ts:64
The context on this component, if any.
Inherited from
contextType?
readonly
optional
contextType: readonly [] =undefined
Defined in: src/sdk/components/FSComponent.ts:67
The type of context for this component, if any.
Inherited from
focusedIndex
protected
focusedIndex:number
=-1
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:139
Inherited from
HardwareUiControl
.focusedIndex
props
props:
P
&ComponentProps
Defined in: src/sdk/components/FSComponent.ts:61
The properties of the component.
Inherited from
registeredControls
protected
registeredControls:undefined
|HardwareUiControl
<E
,HardwareUiControlProps
>[]
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:137
Inherited from
HardwareUiControl
.registeredControls
Accessors
isDisabled
Get Signature
get isDisabled():
boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:177
Gets whether or not the control is currently disabled.
Returns
boolean
True if disabled, false otherwise.
Inherited from
isFocused
Get Signature
get isFocused():
boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:185
Gets whether or not the control is currently focused.
Returns
boolean
True if disabled, false otherwise.
Inherited from
isIsolated
Get Signature
get isIsolated():
boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:193
Gets whether or not the control is currently in scroll isolation.
Returns
boolean
True if currently in scroll isolation, false otherwise.
Inherited from
length
Get Signature
get length():
number
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:165
Gets the current number of registered child controls.
Returns
number
The current number of registered child controls.
Inherited from
Methods
blur()
blur():
void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:593
Blurs, or removes focus, from the component.
Returns
void
Inherited from
clearRegistered()
clearRegistered():
void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:793
Clears the list of registered components.
Returns
void
Inherited from
HardwareUiControl
.clearRegistered
destroy()
destroy():
void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:923
Destroys this component.
Returns
void
Inherited from
ensureIndexInView()
ensureIndexInView(
index
,pinDirection
):void
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:385
Ensures an indexed list item is in view.
Parameters
Parameter | Type | Default value | Description |
---|---|---|---|
index | number | undefined | The index of the list item. |
pinDirection | "top" | "none" | "bottom" | 'none' | The end of the container which the element should be pinned to. |
Returns
void
focus()
focus(
focusPosition
):boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:410
Brings focus to the control. Focusing the control will also blur the currently focused control, if any.
Parameters
Parameter | Type | Description |
---|---|---|
focusPosition | FocusPosition | The focus position to activate for descendents of this control. |
Returns
boolean
Whether this control was successfully focused.
Inherited from
getChild()
getChild(
index
):undefined
|HardwareUiControl
<E
,HardwareUiControlProps
>
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:859
Gets a child control at the specified index.
Parameters
Parameter | Type | Description |
---|---|---|
index | number | The index of the child control to get. |
Returns
undefined
| HardwareUiControl
<E
, HardwareUiControlProps
>
The specified child control.
Inherited from
getChildInstance()
getChildInstance<
TControl
>(index
):null
|TControl
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:446
Gets the instance of the node at the specified index.
Type Parameters
Type Parameter |
---|
TControl extends HardwareUiControl <E , HardwareUiControlProps > |
Parameters
Parameter | Type | Description |
---|---|---|
index | number | The index to get the instance for. |
Returns
null
| TControl
The node instance of specified type.
getContext()
protected
getContext(context
):never
Defined in: src/sdk/components/FSComponent.ts:106
Gets a context data subscription from the context collection.
Parameters
Parameter | Type | Description |
---|---|---|
context | never | The context to get the subscription for. |
Returns
never
The requested context.
Throws
An error if no data for the specified context type could be found.
Inherited from
getData()
getData(
index
):null
|T
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:407
Gets the data object related to the selected DOM element.
Parameters
Parameter | Type | Description |
---|---|---|
index | number | The index of the data to get. |
Returns
null
| T
The selected item, if found.
getFocusedIndex()
getFocusedIndex():
number
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:824
Gets the current focused index in the registered controls collection.
Returns
number
The index of the focused control in the collection of registered controls.
Inherited from
HardwareUiControl
.getFocusedIndex
getFocusPositionOnScroll()
protected
getFocusPositionOnScroll(direction
):FocusPosition
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:250
Gets the focus position to apply when this control is focused from a scroll.
Parameters
Parameter | Type | Description |
---|---|---|
direction | ScrollDirection | The direction of the scroll. |
Returns
The focus position to apply when this control is focused from a scroll.
Inherited from
HardwareUiControl
.getFocusPositionOnScroll
getMostRecentFocusedIndex()
getMostRecentFocusedIndex():
number
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:833
Gets the most recent focused index (including the current focused index, if one exists) in the registered controls collection.
Returns
number
The index of the most recently focused control in the collection of registered controls.
Inherited from
HardwareUiControl
.getMostRecentFocusedIndex
getSelectedElement()
getSelectedElement():
null
|HTMLElement
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:425
Get the selected HTMLElement.
Returns
null
| HTMLElement
The selected element, if found.
getSelectedIndex()
getSelectedIndex():
number
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:433
Gets the index of the currently selected element.
Returns
number
Selected element index. Returns -1 if nothing found.
indexOf()
indexOf(
child
):number
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:873
Gets the index of a specified child control within the registered child controls collection.
Parameters
Parameter | Type | Description |
---|---|---|
child | HardwareUiControl <E > | The child to get the index of. |
Returns
number
The index of the child, or -1 if not found.
Inherited from
onAfterRender()
onAfterRender(
node
):void
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:76
A callback that is called after the component is rendered.
Parameters
Parameter | Type | Description |
---|---|---|
node | VNode | The component's VNode. |
Returns
void
Overrides
HardwareUiControl
.onAfterRender
onAfterScroll()
protected
onAfterScroll(control
,index
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:284
An event called when a scroll operation has completed.
Parameters
Parameter | Type | Description |
---|---|---|
control | HardwareUiControl <E > | The control that was scrolled to. |
index | number | The index of the control in the collection of registered controls. |
Returns
void
Inherited from
HardwareUiControl
.onAfterScroll
onBeforeRender()
onBeforeRender():
void
Defined in: src/sdk/components/FSComponent.ts:80
A callback that is called before the component is rendered.
Returns
void
Inherited from
HardwareUiControl
.onBeforeRender
onBlurred()
protected
onBlurred(source
):void
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:456
An event called when the control is blurred.
Parameters
Parameter | Type | Description |
---|---|---|
source | HardwareUiControl <E , P > | The control that emitted this event. |
Returns
void
Overrides
onDisabled()
protected
onDisabled(source
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:225
An event called when the control is disabled.
Parameters
Parameter | Type | Description |
---|---|---|
source | HardwareUiControl <E > | The control that emitted this event. |
Returns
void
Inherited from
onEnabled()
protected
onEnabled(source
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:217
An event called when the control is enabled.
Parameters
Parameter | Type | Description |
---|---|---|
source | HardwareUiControl <E > | The control that emitted this event. |
Returns
void
Inherited from
onFocused()
protected
onFocused(source
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:201
An event called when the control receives focus.
Parameters
Parameter | Type | Description |
---|---|---|
source | HardwareUiControl <E > | The control that emitted this event. |
Returns
void
Inherited from
onInteractionEvent()
abstract
onInteractionEvent(event
):boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:337
A method which is called when this control receives an interaction event.
Parameters
Parameter | Type | Description |
---|---|---|
event | keyof E | The event. |
Returns
boolean
True if the event was handled, false otherwise.
Inherited from
HardwareUiControl
.onInteractionEvent
onRegistered()
protected
onRegistered(source
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:233
An event called when a control is registered with this control.
Parameters
Parameter | Type | Description |
---|---|---|
source | HardwareUiControl <E > | The control that emitted this event. |
Returns
void
Inherited from
HardwareUiControl
.onRegistered
onScroll()
protected
onScroll(direction
):boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:263
An event called when the control is scrolled.
Parameters
Parameter | Type | Description |
---|---|---|
direction | ScrollDirection | The direction that is being requested to scroll. |
Returns
boolean
True if this control handled this event, false otherwise.
Inherited from
onUnregistered()
protected
onUnregistered(source
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:241
An event called when a control is unregistered from this control.
Parameters
Parameter | Type | Description |
---|---|---|
source | HardwareUiControl <E > | The control that emitted this event. |
Returns
void
Inherited from
HardwareUiControl
.onUnregistered
reconcileChildBlur()
protected
reconcileChildBlur(index
,child
):number
|BlurReconciliation
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:688
Reconciles the focus state of this control's children when this control is focused with no focused children after a child has been blurred.
Parameters
Parameter | Type | Description |
---|---|---|
index | number | The index of the child control that was blurred. If the child is no longer registered, then this is the index of the child prior to being unregistered. |
child | HardwareUiControl <E > | The child control that was blurred. |
Returns
number
| BlurReconciliation
The index of the child control to focus.
Inherited from
HardwareUiControl
.reconcileChildBlur
register()
register(
control
,index?
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:722
Registers a child control with this control.
Parameters
Parameter | Type | Description |
---|---|---|
control | HardwareUiControl <E > | The control to register. |
index? | number | The index at which to register the control. If none is provided, the control will be registered at the end of the collection of child controls. |
Returns
void
Inherited from
render()
render():
VNode
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:499
Renders the control.
Returns
The component VNode.
Overrides
renderScrollbar()
abstract
protected
renderScrollbar():VNode
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:496
Renders the control list scroll bar.
Returns
scroll()
scroll(
direction
):boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:293
Scrolls the currently focused control in the supplied direction.
Parameters
Parameter | Type | Description |
---|---|---|
direction | ScrollDirection | The direction that is being requested to scroll. |
Returns
boolean
True if propagation should be stopped, false otherwise.
Inherited from
scrollToIndex()
scrollToIndex(
index
,focusPosition
):void
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:373
Scrolls to an item.
Parameters
Parameter | Type | Default value | Description |
---|---|---|---|
index | number | undefined | is the index of the list item to scroll to. |
focusPosition | FocusPosition | FocusPosition.First | The focus position to apply to children of the item being scrolled to. |
Returns
void
setDisabled()
setDisabled(
isDisabled
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:705
Sets the component to be disabled, removing the ability for the component to scroll. Setting a component to disabled will also blur the component and its children, if necessary.
Parameters
Parameter | Type | Description |
---|---|---|
isDisabled | boolean | Whether or not the component is disabled. |
Returns
void
Inherited from
setFocusedIndex()
setFocusedIndex(
index
,focusPosition
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:843
Sets the current most recently focused child control index. If this control is focused and has children that have focus, this will also switch child focus to the new index.
Parameters
Parameter | Type | Default value | Description |
---|---|---|---|
index | number | undefined | The index of the child control to set most recent focus for. |
focusPosition | FocusPosition | FocusPosition.MostRecent | The focus position to focus the child for, if required. |
Returns
void
Inherited from
HardwareUiControl
.setFocusedIndex
setIsolated()
setIsolated(
isolated
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:895
Sets whether or not this control is in scroll isolation. While scroll isolation is enabled, scroll events will not propagate to the control's parent when the control has focus.
Parameters
Parameter | Type | Description |
---|---|---|
isolated | boolean | Whether or not the control is isolated. |
Returns
void
Inherited from
setParent()
setParent(
parent
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:885
Sets the parent of this control.
Parameters
Parameter | Type | Description |
---|---|---|
parent | HardwareUiControl <E > | The parent to set. |
Returns
void
Inherited from
triggerEvent()
triggerEvent(
event
,source
, ...args
):boolean
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:348
Triggers an event on this control. The event will first be routed to the deepest focused descendent of this control and will propagate up the control tree until it is handled or there are no more controls to which to propagate.
Parameters
Parameter | Type | Description |
---|---|---|
event | keyof E | The event to trigger. |
source | HardwareUiControl | The source of the event. Defaults to this if not supplied. |
...args | any [] | Additional arguments to pass to the event handler. |
Returns
boolean
True if the event was handled, false otherwise.
Inherited from
HardwareUiControl
.triggerEvent
unregister()
unregister(
item
):void
Defined in: src/sdk/components/controls/HardwareUiControl.tsx:748
Unregisters a child control with this control.
Parameters
Parameter | Type | Description |
---|---|---|
item | number | HardwareUiControl <E , HardwareUiControlProps > | The child control or index of a child control to unregister. If a child control is provided, it will attempt to be located in the control's child registry and then removed. If an index is provided, the child control at that registered index will be removed. |
Returns
void
Inherited from
updateOrder()
updateOrder():
void
Defined in: src/sdk/components/controls/HardwareUiControlList.tsx:276
Updates the order of data items in the list by the props supplied comparison function, if one exists.
Returns
void