Struct ScrollContainer

A helper node for displaying scrollable elements such as lists.

struct ScrollContainer ;

A ScrollContainer node meant to contain a Control child. ScrollContainers will automatically create a scrollbar child (HScrollBar, VScrollBar, or both) when needed and will only draw the Control within the ScrollContainer area. Scrollbars will automatically be drawn at the right (for vertical) or bottom (for horizontal) and will enable dragging to move the viewable Control (and its children) within the ScrollContainer. Scrollbars will also automatically resize the grabber based on the Control.rectMinSize of the Control relative to the ScrollContainer. Works great with a Panel control. You can set EXPAND on the children's size flags, so they will upscale to the ScrollContainer's size if it's larger (scroll is invisible for the chosen dimension).

Properties

NameTypeDescription
followFocus[get, set] boolIf true, the ScrollContainer will automatically scroll to focused children (including indirect children) to make sure they are fully visible.
scrollDeadzone[get, set] long
scrollHorizontal[get, set] longThe current horizontal scroll value.
scrollHorizontalEnabled[get, set] boolIf true, enables horizontal scrolling.
scrollVertical[get, set] longThe current vertical scroll value.
scrollVerticalEnabled[get, set] boolIf true, enables vertical scrolling.

Methods

NameDescription
_ensureFocusedVisible
_guiInput
_scrollMoved
_updateScrollbarPosition
getDeadzone
getHScroll
getHScrollbar Returns the horizontal scrollbar HScrollBar of this ScrollContainer.
getVScroll
getVScrollbar Returns the vertical scrollbar VScrollBar of this ScrollContainer.
isFollowingFocus
isHScrollEnabled
isVScrollEnabled
setDeadzone
setEnableHScroll
setEnableVScroll
setFollowFocus
setHScroll
setVScroll