Skip to content

editorGlobalsUserInputHint

Class: UserInputHint

Hint that shows an editable text describing something (a length, an angle) to the user.

Hierarchy

UserInputHint

Index

Constructors

Properties

Methods

Object literals

Constructors

constructor

+ new UserInputHint(assembly: Assembly, userInputHandler?: IUserInputHandler): UserInputHint

Overrides FilterableHint.constructor

Defined in src/renderContext/hints/UserInputHint.ts:66

Parameters:

Name Type
assembly Assembly
userInputHandler? IUserInputHandler

Returns: UserInputHint

Properties

Private _hasFullFocus

_hasFullFocus: boolean = false

Defined in src/renderContext/hints/UserInputHint.ts:62


Private alignHorizontal

alignHorizontal: HorizontalAlignment = HorizontalAlignment.LEFT

Defined in src/renderContext/hints/UserInputHint.ts:65


Private alignVertical

alignVertical: VerticalAlignment = VerticalAlignment.CENTER

Defined in src/renderContext/hints/UserInputHint.ts:66


Protected assembly

assembly: Assembly | null

Inherited from FilterableHint.assembly

Defined in src/renderContext/hints/Hint.ts:38


Protected children

children: Hint[] = []

Inherited from FilterableHint.children

Defined in src/renderContext/hints/Hint.ts:37


Protected destroyed

destroyed: boolean = false

Inherited from FilterableHint.destroyed

Defined in src/renderContext/hints/Hint.ts:36


Protected domNode

domNode: HTMLElement | null = null

Inherited from FilterableHint.domNode

Defined in src/renderContext/hints/Hint.ts:33


Protected Readonly externalChangeEventEmitter

externalChangeEventEmitter: EventEmitter‹number | any[] | [number, number, EdgeHint‹›] | [number, Hint‹›] | [number, number, RoundEdgeHint‹›]› = new EventEmitter< [number, number, EdgeHint] | [number, Hint] | number | [number, number, RoundEdgeRadiusHint] | any[]

()

Inherited from FilterableHint.externalChangeEventEmitter

Defined in src/renderContext/hints/Hint.ts:43


Protected fullFocusChangeEventEmitter

fullFocusChangeEventEmitter: EventEmitter‹boolean› = new EventEmitter()

Defined in src/renderContext/hints/UserInputHint.ts:55


Protected input

input: HTMLInputElement | null = null

Defined in src/renderContext/hints/UserInputHint.ts:53


Protected manager

manager: any = null

Inherited from FilterableHint.manager

Defined in src/renderContext/hints/Hint.ts:34


Private position

position: Vector3 = new Vector3()

Defined in src/renderContext/hints/UserInputHint.ts:64


Protected scale

scale: number = 1

Inherited from FilterableHint.scale

Defined in src/renderContext/hints/Hint.ts:47


Protected text

text: string | null = null

Defined in src/renderContext/hints/UserInputHint.ts:52


Protected threeMaterial

threeMaterial: Material | null = null

Inherited from FilterableHint.threeMaterial

Defined in src/renderContext/hints/Hint.ts:48


Protected threeNode

threeNode: Object3D | null = null

Inherited from FilterableHint.threeNode

Defined in src/renderContext/hints/Hint.ts:39


Protected Readonly unitConversionErrorEventEmitter

unitConversionErrorEventEmitter: EventEmitter‹void› = new EventEmitter()

Inherited from FilterableHint.unitConversionErrorEventEmitter

Defined in src/renderContext/hints/Hint.ts:46


Protected userInputHandler

userInputHandler: IUserInputHandler

Defined in src/renderContext/hints/UserInputHint.ts:56


Protected visible

visible: boolean = true

Inherited from FilterableHint.visible

Defined in src/renderContext/hints/Hint.ts:35

Methods

Protected _applyDOMScale

_applyDOMScale(): void

Inherited from FilterableHint._applyDOMScale

Defined in src/renderContext/hints/Hint.ts:406

Returns: void


Protected _applyVisibility

_applyVisibility(): void

Inherited from FilterableHint._applyVisibility

Defined in src/renderContext/hints/Hint.ts:391

Returns: void


Protected _getHasFullFocus

_getHasFullFocus(): boolean

Defined in src/renderContext/hints/UserInputHint.ts:284

Returns: boolean


Private _getText

_getText(): string

Defined in src/renderContext/hints/UserInputHint.ts:294

Returns: string


Protected _isValidFirstInput

_isValidFirstInput(keyDownEvent: KeyboardEvent): boolean

Defined in src/renderContext/hints/UserInputHint.ts:268

Called when the input is semi-focussed and a keydown event happens. Should return true if the event indicates that the user really wanted to write something into the hint, false otherwise.

Parameters:

Name Type Description
keyDownEvent KeyboardEvent The keyboard event to judge

Returns: boolean


Protected _onExternalChange

_onExternalChange(args: any[]): any[]

Inherited from FilterableHint._onExternalChange

Defined in src/renderContext/hints/Hint.ts:380

propagate event fired by child

Parameters:

Name Type
args any[]

Returns: any[]


Protected _onUnitConversionError

_onUnitConversionError(): any[]

Inherited from FilterableHint._onUnitConversionError

Defined in src/renderContext/hints/Hint.ts:387

propagate event fired by child

Returns: any[]


Protected _projectAssemblyToCanvas

_projectAssemblyToCanvas(point: Vector3): Vector3

Inherited from FilterableHint._projectAssemblyToCanvas

Defined in src/renderContext/hints/Hint.ts:373

Parameters:

Name Type
point Vector3

Returns: Vector3


Protected _setHasFullFocus

_setHasFullFocus(value: boolean): void

Defined in src/renderContext/hints/UserInputHint.ts:287

Parameters:

Name Type
value boolean

Returns: void


Private _updatePosition

_updatePosition(): void

Defined in src/renderContext/hints/UserInputHint.ts:305

Returns: void


Private _updateText

_updateText(): void

Defined in src/renderContext/hints/UserInputHint.ts:298

Returns: void


Private _updateTextOffset

_updateTextOffset(): void

Defined in src/renderContext/hints/UserInputHint.ts:310

Returns: void


Protected _userInputFinished

_userInputFinished(keyDownEvent: KeyboardEvent): void

Defined in src/renderContext/hints/UserInputHint.ts:278

Called when the user enters a text and confirms that with 'Enter'.

Parameters:

Name Type Description
keyDownEvent KeyboardEvent The keyboard event that triggered this function call.

Returns: void


add

add(child: Hint): void

Inherited from FilterableHint.add

Defined in src/renderContext/hints/Hint.ts:182

This adds a child hint to this hint. Using this method takes care of calling all required setters on the child hint.

Parameters:

Name Type
child Hint

Returns: void


cancelFade

cancelFade(): void

Inherited from FilterableHint.cancelFade

Defined in src/renderContext/hints/Hint.ts:348

Returns: void


destroy

destroy(): void

Overrides FilterableHint.destroy

Defined in src/renderContext/hints/UserInputHint.ts:97

Returns: void


fadeOut

fadeOut(duration: number, delay: number): KyubAnimation‹any›

Inherited from FilterableHint.fadeOut

Defined in src/renderContext/hints/Hint.ts:317

Start a fade animation. If one is already ongoing, that animation is canceled before starting the new animation.

Parameters:

Name Type Default Description
duration number - in ms
delay number 0 in ms

Returns: KyubAnimation‹any›

the animation that is used to fade the THREE.js part of this hint. This animation still needs to be started (by passing it to the RenderContext).


focus

focus(): void

Overrides FilterableHint.focus

Defined in src/renderContext/hints/UserInputHint.ts:177

Set focus to this hint. We want to only go into a semi-focussed state on this, full focus will be granted when a user input happens that indicates that the user really wanted this.

Returns: void


getAssembly

getAssembly(): Assembly | null

Inherited from FilterableHint.getAssembly

Defined in src/renderContext/hints/Hint.ts:224

Returns: Assembly | null


getChildren

getChildren(): Hint[]

Inherited from FilterableHint.getChildren

Defined in src/renderContext/hints/Hint.ts:257

Returns: Hint[]


getDOMNode

getDOMNode(): HTMLElement | null

Inherited from FilterableHint.getDOMNode

Defined in src/renderContext/hints/Hint.ts:286

Returns: HTMLElement | null


getDimensions

getDimensions(): IDimensions2

Defined in src/renderContext/hints/UserInputHint.ts:242

Returns a fast estimation of the width and height, used for filtering hints.

Returns: IDimensions2


getExternalChangeEventEmitter

getExternalChangeEventEmitter(): IPublicEventEmitterInterface‹number | any[] | [number, number, EdgeHint‹›] | [number, Hint‹›] | [number, number, RoundEdgeHint‹›]›

Inherited from FilterableHint.getExternalChangeEventEmitter

Defined in src/renderContext/hints/Hint.ts:64

Returns: IPublicEventEmitterInterface‹number | any[] | [number, number, EdgeHint‹›] | [number, Hint‹›] | [number, number, RoundEdgeHint‹›]›


getFullFocusChangeEventEmitter

getFullFocusChangeEventEmitter(): IPublicEventEmitterInterface‹boolean›

Defined in src/renderContext/hints/UserInputHint.ts:259

Returns: IPublicEventEmitterInterface‹boolean›


getScale

getScale(): number

Inherited from FilterableHint.getScale

Defined in src/renderContext/hints/Hint.ts:261

Returns: number


getThreeNode

getThreeNode(): Object3D

Inherited from FilterableHint.getThreeNode

Defined in src/renderContext/hints/Hint.ts:290

Returns: Object3D


getUnitConversionErrorEventEmitter

getUnitConversionErrorEventEmitter(): IPublicEventEmitterInterface‹void›

Inherited from FilterableHint.getUnitConversionErrorEventEmitter

Defined in src/renderContext/hints/Hint.ts:68

Returns: IPublicEventEmitterInterface‹void›


hasMaterial

hasMaterial(): boolean

Inherited from FilterableHint.hasMaterial

Defined in src/renderContext/hints/Hint.ts:162

Returns: boolean


hide

hide(): void

Inherited from FilterableHint.hide

Defined in src/renderContext/hints/Hint.ts:269

Returns: void


initDOMNode

initDOMNode(): void

Overrides FilterableHint.initDOMNode

Defined in src/renderContext/hints/UserInputHint.ts:78

Returns: void


initThreeNode

initThreeNode(): void

Inherited from FilterableHint.initThreeNode

Defined in src/renderContext/hints/Hint.ts:80

This method is called, before the Hint is rendered. Note: It may be called multiple times on the same Hint instance.

Returns: void


isToolHint

isToolHint(): boolean

Inherited from FilterableHint.isToolHint

Defined in src/renderContext/hints/Hint.ts:174

Returns: boolean


isValid

isValid(): boolean

Inherited from FilterableHint.isValid

Defined in src/renderContext/hints/Hint.ts:232

The hint may use this to indicate that the object it annotates no longer exists.

Returns: boolean

Whether or not the hint is (still) valid.


isVisible

isVisible(): boolean

Inherited from FilterableHint.isVisible

Defined in src/renderContext/hints/Hint.ts:282

Returns: boolean


makeInteractable

makeInteractable(): void

Inherited from FilterableHint.makeInteractable

Defined in src/renderContext/hints/Hint.ts:133

Makes this hint interactable. That means that tools that can work with hints will be provided with this instance if the user interacts with it.

Returns: void


onInputBlur

onInputBlur(): void

Defined in src/renderContext/hints/UserInputHint.ts:196

Returns: void


onInputClick

onInputClick(): void

Defined in src/renderContext/hints/UserInputHint.ts:235

Click on the input element happened.

Returns: void


onInputKeyDown

onInputKeyDown(event: KeyboardEvent): void

Defined in src/renderContext/hints/UserInputHint.ts:200

Parameters:

Name Type
event KeyboardEvent

Returns: void


remove

remove(child: Hint): void

Inherited from FilterableHint.remove

Defined in src/renderContext/hints/Hint.ts:204

This removes a child hint from this hint.

Parameters:

Name Type
child Hint

Returns: void


removeAllListeners

removeAllListeners(): void

Inherited from FilterableHint.removeAllListeners

Defined in src/renderContext/hints/Hint.ts:72

Returns: void


setAlignHorizontal

setAlignHorizontal(align: HorizontalAlignment): this

Defined in src/renderContext/hints/UserInputHint.ts:158

Sets the horizontal alignment (chainable). Call to update() required.

Parameters:

Name Type Description
align HorizontalAlignment Must be 'left', 'right' or 'center'

Returns: this

this for chaining


setAlignVertical

setAlignVertical(align: VerticalAlignment): this

Defined in src/renderContext/hints/UserInputHint.ts:148

Sets the vertical alignment (chainable). Call to update() required.

Parameters:

Name Type Description
align VerticalAlignment Must be 'top', 'bottom' or 'center'

Returns: this

this for chaining


setAssembly

setAssembly(assembly: Assembly): void

Inherited from FilterableHint.setAssembly

Defined in src/renderContext/hints/Hint.ts:220

Set the assembly this hint belongs to

Parameters:

Name Type Description
assembly Assembly assembly

Returns: void


setCanvasSizeGetter

setCanvasSizeGetter(getCanvasSize: function): void

Inherited from FilterableHint.setCanvasSizeGetter

Defined in src/renderContext/hints/Hint.ts:298

Parameters:

getCanvasSize: function

▸ (): IDimensions2

Returns: void


setConversionMethod

setConversionMethod(worldToCanvas: function): void

Inherited from FilterableHint.setConversionMethod

Defined in src/renderContext/hints/Hint.ts:294

Parameters:

worldToCanvas: function

▸ (worldPosition: Vector3): Vector3

Parameters:

Name Type
worldPosition Vector3

Returns: void


setFontSize

setFontSize(fontSize: number): void

Inherited from FilterableHint.setFontSize

Defined in src/renderContext/hints/Hint.ts:248

Set the font size in px.

Parameters:

Name Type Default Description
fontSize number Config.get("hints.fontSize") -

Returns: void


setManager

setManager(manager: HintManager): void

Inherited from FilterableHint.setManager

Defined in src/renderContext/hints/Hint.ts:140

Parameters:

Name Type
manager HintManager

Returns: void


setMaterial

setMaterial(material: MeshBasicMaterial): void

Overrides FilterableHint.setMaterial

Defined in src/renderContext/hints/UserInputHint.ts:166

This overrides the method to adjust the text appearance to the material that is applied to the threeNode.

Parameters:

Name Type
material MeshBasicMaterial

Returns: void


setOpacity

setOpacity(opacity: number): void

Inherited from FilterableHint.setOpacity

Defined in src/renderContext/hints/Hint.ts:363

Parameters:

Name Type
opacity number

Returns: void


setPosition

setPosition(position: Vector3, canvasSpace: true): this

Defined in src/renderContext/hints/UserInputHint.ts:134

Sets the position in assembly or canvas space (chainable). Call to update() required.

Parameters:

Name Type Description
position Vector3 The position where the text should be aligned at
canvasSpace true Whether position should be interpreted as canvas space (true) or assembly space (false)

Returns: this

this for chaining


setScale

setScale(scale: number): void

Inherited from FilterableHint.setScale

Defined in src/renderContext/hints/Hint.ts:236

Parameters:

Name Type
scale number

Returns: void


setText

setText(text: string): this

Defined in src/renderContext/hints/UserInputHint.ts:113

Sets the text (chainable). Call to update() required.

Parameters:

Name Type Description
text string The text to display

Returns: this

this for chaining


setToolHint

setToolHint(isToolHint: boolean): void

Inherited from FilterableHint.setToolHint

Defined in src/renderContext/hints/Hint.ts:170

Sets whether this hint is a tool hint. Tool hints will be cleared when another tool is selected

Parameters:

Name Type Description
isToolHint boolean Whether this hint belongs to a tool

Returns: void


setValue

setValue(value: string | number): this

Defined in src/renderContext/hints/UserInputHint.ts:122

changes the value that gets displayed

Parameters:

Name Type Description
value string | number the new value in the same unit as the current one.

Returns: this


setVisible

setVisible(visible: boolean): void

Inherited from FilterableHint.setVisible

Defined in src/renderContext/hints/Hint.ts:277

Parameters:

Name Type
visible boolean

Returns: void


show

show(): void

Inherited from FilterableHint.show

Defined in src/renderContext/hints/Hint.ts:265

Returns: void


update

update(): void

Overrides FilterableHint.update

Defined in src/renderContext/hints/UserInputHint.ts:190

Apply changes to text, position and text position to the rendered instance.

Returns: void

Object literals

Static Readonly angleInputHandler

angleInputHandler: object

Defined in src/renderContext/hints/UserInputHint.ts:43

getEndOfSelection

getEndOfSelection(text: string): number

Defined in src/renderContext/hints/UserInputHint.ts:44

Parameters:

Name Type
text string

Returns: number

getValuesToEmitOnExternalChange

getValuesToEmitOnExternalChange(currentText: string, newText: string): number[]

Defined in src/renderContext/hints/UserInputHint.ts:45

Parameters:

Name Type
currentText string
newText string

Returns: number[]


Static Readonly dummyInputHandler

dummyInputHandler: object

Defined in src/renderContext/hints/UserInputHint.ts:29

getEndOfSelection

getEndOfSelection(text: string): number

Defined in src/renderContext/hints/UserInputHint.ts:30

Parameters:

Name Type
text string

Returns: number

getValuesToEmitOnExternalChange

getValuesToEmitOnExternalChange(currentText: string, newText: string): string[]

Defined in src/renderContext/hints/UserInputHint.ts:31

Parameters:

Name Type
currentText string
newText string

Returns: string[]


Static Readonly lengthInputHandler

lengthInputHandler: object

Defined in src/renderContext/hints/UserInputHint.ts:33

getEndOfSelection

getEndOfSelection(text: string): number

Defined in src/renderContext/hints/UserInputHint.ts:34

Parameters:

Name Type
text string

Returns: number

getValuesToEmitOnExternalChange

getValuesToEmitOnExternalChange(currentText: string, newText: string): number[]

Defined in src/renderContext/hints/UserInputHint.ts:35

Parameters:

Name Type
currentText string
newText string

Returns: number[]


Static Readonly scaleInputHandler

scaleInputHandler: object

Defined in src/renderContext/hints/UserInputHint.ts:47

getEndOfSelection

getEndOfSelection(text: string): number

Defined in src/renderContext/hints/UserInputHint.ts:48

Parameters:

Name Type
text string

Returns: number

getValuesToEmitOnExternalChange

getValuesToEmitOnExternalChange(currentText: string, newText: string): number[]

Defined in src/renderContext/hints/UserInputHint.ts:49

Parameters:

Name Type
currentText string
newText string

Returns: number[]