Describes the scrolling logic between the content and the container

Constructors

Properties

_contentLength: number = 0
_enableScrollInertia: boolean
_scrollLimit: number
cancelSet: CancelSet = ...
contentOrigin: vec2 = ...
contentScrollLimit: BufferedBoundariesProvider
decelerateMinSpeed: number = DECELERATE_MIN_SPEED
decelerateTime: number = DECELERATE_TIME
dragVelocity: vec2 = ...
dragVelocityFilter: MovingAverageFilter<vec2> = ...
elasticMinDistance: number = ELASTIC_MIN_DISTANCE
elasticTime: number = ELASTIC_TIME
enableScrollLimit: boolean
inertiaVelocity: vec2 = ...
isGrabbed: boolean = false
isXOverflow: boolean = false
isYOverflow: boolean = false
onReady: PublicApi<void> = ...
onReadyEvent: default<void> = ...
onScrollUpdate: PublicApi<ScrollViewEventArgs> = ...
onScrollUpdateEvent: default<ScrollViewEventArgs> = ...
onSnapUpdate: PublicApi<ScrollViewEventArgs> = ...
onSnapUpdateEvent: default<ScrollViewEventArgs> = ...
scrollView: ScrollView = ...

Accessors

  • get contentLength(): number

    Returns number

    the content length along the Y-axis

  • set contentLength(length: number): void

    Sets the true length of the content in the case of pooling / other non-default use cases

    Parameters

    • length: number

    Returns void

  • get contentPosition(): vec3

    Returns vec3

    the content position in local space

  • set contentPosition(position: vec3): void

    Sets the position of the content in local space

    Parameters

    Returns void

  • get enableScrollInertia(): boolean

    Returns boolean

    if the ScrollView will continue scrolling on release

  • set enableScrollInertia(enableScrollInertia: boolean): void

    Toggles if the ScrollView should continue scrolling on release

    Parameters

    • enableScrollInertia: boolean

    Returns void

  • get isReady(): boolean

    Returns boolean

    if this class is ready to be used, which means that content is set

  • get overflow(): number

    Returns number

  • get scrollLimit(): number

    Returns number

    what amount of the scroll area should always be occupied

  • set scrollLimit(limit: number): void

    Sets the amount of the scroll area should always be occupied

    Parameters

    • limit: number

    Returns void

  • get scrollLimitOffset(): Rect

    Returns Rect

  • get scrollPercentage(): number

    Returns number

Methods

  • Parameters

    • position: vec3
    • velocity: vec2
    • elasticTime: number
    • deltaTime: number

    Returns [vec3, vec2]

  • Parameters

    • position: vec3
    • velocity: vec2
    • decelerateTime: number
    • deltaTime: number

    Returns [vec3, vec2]

  • Checks if both inputted content edges are fully visible in the ScrollArea.

    Parameters

    • xEdge: -1 | 0 | 1

      0 if not checking any x-axis edge, 1 for right edge, -1 for left edge.

    • yEdge: -1 | 0 | 1

      0 if not checking any y-axis edge, 1 for top edge, -1 for bottom edge.

    Returns boolean

  • Converts the offset (normalized -1 to 1) to local units relative to the ScrollView canvas.

    Parameters

    Returns Rect

  • Converts local units (-1 to 1) to parent units relative to the ScrollView canvas.

    Parameters

    Returns vec2

  • Converts local units (normalized -1 to 1) to world units relative to the ScrollView canvas.

    Parameters

    Returns vec2

  • Returns true if any edge of the given type is inside the scroll region, as long as the content is large enough in that dimension to be scrollable.

    Parameters

    • edgeType: "Content" | "ScrollLimit"

      the type of edge to check for

    Returns boolean

  • If there is a edge of the given type inside the scroll area, instantly snap to the edge.

    Parameters

    • edgeType: "Content" | "ScrollLimit"

      The type of edge to snap to.

    Returns void

  • Recomputes content and scroll area boundaries

    Returns void

  • Resets the content origin for the purpose of calculating scrollPercentage. Assumes that the ScrollView is currently at the top of content in the pooling use case.

    Returns void

  • Resets the inertia velocity in the case that the developer wants to stop physics upon certain events.

    Returns void

  • Scrolls content according to a drag vector, along the enabled axis

    Parameters

    • dragVector: vec2

      2D vector to move the content

    Returns void

  • Parameters

    • edgeType: "Content" | "ScrollLimit"

    Returns EdgeSelector

  • Snaps content to the selected edges

    Parameters

    Returns void

  • Returns void

  • Returns void

MMNEPVFCICPMFPCPTTAAATR