Files
Basalt2/docs/references/elements/Scrollbar.md
2025-02-18 18:14:43 +00:00

2.2 KiB

Scrollbar : VisualElement

A scrollbar element that can be attached to other elements to control their scroll properties

Properties

Property Type Default Description
value number 0 Current scroll value
min number 0 Minimum scroll value
max number 100 Maximum scroll value
step number 1 Step size for scroll operations
dragMultiplier number 1 How fast the scrollbar moves when dragging
symbol string " " Symbol used for the scrollbar handle
backgroundSymbol string "\127" Symbol used for the scrollbar background
symbolBackgroundColor color black Background color of the scrollbar handle
backgroundSymbol string "\127" Symbol used for the scrollbar background
attachedElement table? nil The element this scrollbar is attached to
attachedProperty string? nil The property being controlled
minValue number function 0
maxValue number function 100
orientation string vertical Orientation of the scrollbar ("vertical" or "horizontal")
handleSize number 2 Size of the scrollbar handle in characters

Functions

Method Returns Description
Scrollbar.new Scrollbar Creates a new Scrollbar instance
Scrollbar:attach Scrollbar
Scrollbar:init -
Scrollbar:mouse_click -
Scrollbar:mouse_drag -
Scrollbar:mouse_scroll -
Scrollbar:render -
Scrollbar:updateAttachedElement -

Scrollbar.new()

Creates a new Scrollbar instance

Returns

  • Scrollbar self The newly created Scrollbar instance

Usage

local scrollbar = Scrollbar.new()

Scrollbar:attach(element, config)

Attaches the scrollbar to an element's property

Parameters

  • element BaseElement The element to attach to
  • config table Configuration {property = "propertyName", min = number|function, max = number|function}

Returns

  • Scrollbar self The scrollbar instance

Scrollbar:init()

Scrollbar:mouse_click()

Scrollbar:mouse_drag()

Scrollbar:mouse_scroll()

Scrollbar:render()

Scrollbar:updateAttachedElement()