Interface: TouchButtonProps
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:74
Component props for TouchButton.
Extends
ComponentProps
Extended by
Properties
children?
optional
children:DisplayChildren
[]
Defined in: src/sdk/components/FSComponent.ts:122
The children of the display component.
Inherited from
ComponentProps.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.
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.
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
.
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
.
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'
.
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
.
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
.
isVisible?
optional
isVisible:boolean
|Subscribable
<boolean
>
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:85
Whether the button is visible. Defaults to true
.
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.
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
onHoldEnded()?
optional
onHoldEnded: <B
>(button
,totalHoldDuration
,endReason
) =>void
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:137
A function which is called when the button exits the held state.
Type Parameters
Type Parameter | Default type |
---|---|
B extends TouchButton <TouchButtonProps > | TouchButton <TouchButtonProps > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that was held. |
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
) =>TouchButtonHoldAction
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:117
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 TouchButton <TouchButtonProps > | TouchButton <TouchButtonProps > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that is held. |
Returns
The action to take. Ignored if the value is equal to TouchButtonHoldAction.EndHold.
onHoldTick()?
optional
onHoldTick: <B
>(button
,dt
,totalTime
,timeSinceLastPress
) =>TouchButtonHoldAction
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:129
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 TouchButton <TouchButtonProps > | TouchButton <TouchButtonProps > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that is held. |
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
,isHeld
) =>void
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:109
A callback function which will be called every time the button is pressed.
Type Parameters
Type Parameter | Default type |
---|---|
B extends TouchButton <TouchButtonProps > | TouchButton <TouchButtonProps > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that was pressed. |
isHeld | boolean | Whether the button was held when it was pressed. |
Returns
void
onTouched()?
optional
onTouched: <B
>(button
) =>TouchButtonOnTouchedAction
Defined in: src/garminsdk/components/touchbutton/TouchButton.tsx:102
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 TouchButton <TouchButtonProps > | TouchButton <TouchButtonProps > |
Parameters
Parameter | Type | Description |
---|---|---|
button | B | The button that was touched. |
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
ComponentProps.ref