Interface: ValueTouchButtonProps<S>
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:8
Component props for ValueTouchButton.
Extends
Omit
<TouchButtonProps
,"onTouched"
|"onPressed"
|"onHoldStarted"
|"onHoldTick"
|"onHoldEnded"
>
Type Parameters
Type Parameter |
---|
S extends Subscribable <any > |
Properties
children?
optional
children:DisplayChildren
[]
Defined in: src/sdk/components/FSComponent.ts:122
The children of the display component.
Inherited from
Omit.children
class?
optional
class:string
|SubscribableSet
<string
>
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:168
CSS class(es) to apply to the button's root element.
Inherited from
Omit.class
dragThresholdPx?
optional
dragThresholdPx:number
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:156
The distance, in pixels, the mouse can click and drag before the pad begins to ignore mouse events. Ignored if
inhibitOnDrag
is false
. Defaults to 40 pixels.
Inherited from
Omit.dragThresholdPx
focusOnDrag?
optional
focusOnDrag:boolean
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:143
Whether the button should focus all mouse events when dragging and the button is primed or held, preventing the
events from bubbling up to any ancestors in the DOM tree. Defaults to false
.
Inherited from
Omit.focusOnDrag
inhibitOnDrag?
optional
inhibitOnDrag:boolean
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:150
Whether the button should stop responding to mouse events and instead forward them to its parent after clicking
and dragging for a certain distance defined by dragThresholdPx
along the axis defined by inhibitOnDragAxis
.
When mouse events are inhibited, the button cannot be primed or held. Defaults to false
.
Inherited from
Omit.inhibitOnDrag
inhibitOnDragAxis?
optional
inhibitOnDragAxis:"both"
|"x"
|"y"
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:162
The axis along which dragging will trigger the inhibit function. Ignored if inhibitOnDrag
is false
.
Defaults to 'both'
.
Inherited from
Omit.inhibitOnDragAxis
isEnabled?
optional
isEnabled:boolean
|Subscribable
<boolean
>
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:79
Whether the button is enabled, or a subscribable which provides it. Disabled buttons cannot be touched, primed,
pressed, or held. Defaults to true
.
Inherited from
Omit.isEnabled
isHighlighted?
optional
isHighlighted:boolean
|Subscribable
<boolean
>
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:82
Whether the button is highlighted, or a subscribable which provides it. Defaults to false
.
Inherited from
Omit.isHighlighted
isVisible?
optional
isVisible:boolean
|Subscribable
<boolean
>
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:85
Whether the button is visible. Defaults to true
.
Inherited from
Omit.isVisible
label?
optional
label:string
|VNode
|Subscribable
<string
>
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:94
The label for the button. Can be defined as either a static string
, a subscribable which provides the label
string
, or a VNode. If not defined, the button will not have a label.
If the label is defined as a VNode, all first-level DisplayComponents in the VNode tree will be destroyed when the button is destroyed.
Inherited from
Omit.label
onDestroy()?
optional
onDestroy: () =>void
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:165
A callback function which will be called when the button is destroyed.
Returns
void
Inherited from
Omit.onDestroy
onHoldEnded()?
optional
onHoldEnded: <B
>(button
,state
,totalHoldDuration
,endReason
) =>void
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:75
A function which is called when the button exits the held state.
Type Parameters
Type Parameter | Default type |
---|---|
B extends ValueTouchButton <S > | ValueTouchButton <S > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that was held. |
state | S | The state that is bound to the button. |
totalHoldDuration | number | The total amount of time, in milliseconds, that the button was held. |
endReason | TouchButtonHoldEndReason | The reason that the button exited the held state. |
Returns
void
onHoldStarted()?
optional
onHoldStarted: <B
>(button
,state
) =>TouchButtonHoldAction
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:47
A function which is called when the button enters the held state. If not defined, then the button will default to taking no specific action when it enters the held state.
Type Parameters
Type Parameter | Default type |
---|---|
B extends ValueTouchButton <S > | ValueTouchButton <S > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that is held. |
state | S | The state that is bound to the button. |
Returns
The action to take. Ignored if the value is equal to TouchButtonHoldAction.EndHold.
onHoldTick()?
optional
onHoldTick: <B
>(button
,state
,dt
,totalTime
,timeSinceLastPress
) =>TouchButtonHoldAction
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:60
A function which is called every frame when the button is held. If not defined, then the button will default to taking no specific action with each frame tick.
Type Parameters
Type Parameter | Default type |
---|---|
B extends ValueTouchButton <S > | ValueTouchButton <S > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that is held. |
state | S | The state that is bound to the button. |
dt | number | The elapsed time, in milliseconds, since the previous frame. |
totalTime | number | The total amount of time, in milliseconds, that the button has been held. |
timeSinceLastPress | number | The amount of time, in milliseconds, that the button has been held since the last time the button was pressed as a tick action. |
Returns
The action to take.
onPressed()?
optional
onPressed: <B
>(button
,state
,isHeld
) =>void
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:38
A callback function which will be called every time the button is pressed.
Type Parameters
Type Parameter | Default type |
---|---|
B extends ValueTouchButton <S > | ValueTouchButton <S > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that was pressed. |
state | S | The state that is bound to the button. |
isHeld | boolean | Whether the button was held when it was pressed. |
Returns
void
onTouched()?
optional
onTouched: <B
>(button
,state
) =>TouchButtonOnTouchedAction
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:30
A callback function which will be called every time the button is touched (i.e. a mouse down event on the button is detected). If not defined, then the button will default to entering the primed state when touched.
Type Parameters
Type Parameter | Default type |
---|---|
B extends ValueTouchButton <S > | ValueTouchButton <S > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that was touched. |
state | S | The state that is bound to the button. |
Returns
The action to take as a result of the button being touched.
ref?
optional
ref:NodeReference
<any
>
Defined in: src/sdk/components/FSComponent.ts:125
A reference to the display component.
Inherited from
Omit.ref
renderValue?
optional
renderValue:VNode
| (stateValue
) =>string
|VNode
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:21
A function which renders the value of the button's bound state, or a VNode which renders the value. If not
defined, values are rendered into strings via default toString()
behavior.
If the rendered value is a VNode, all first-level DisplayComponents in the VNode tree will be destroyed when a new value is rendered or when the button is destroyed.
state
state:
S
Defined in: src/garminsdk/components/touchbutton/ValueTouchButton.tsx:12
A subscribable whose state will be bound to the button.