parin.ui

The ui module functions as a immediate mode UI library.

Types 3

enumUiDragLimit : ubyte

A type representing the constraints on drag movement.

noneNo limits.
viewportLimited to the viewport.
viewportAndXLimited to the viewport and on the X-axis.
viewportAndYLimited to the viewport and on the Y-axis.
customLimited to custom limits.
customAndXLimited to custom limits and on the X-axis.
customAndYLimited to custom limits and on the Y-axis.
structUiOptions
Fields
FontId font
Rgba fontColor
ubyte fontScale
ubyte fontAlphaOffset
Rgba disabledColor
Rgba idleColor
Rgba hotColor
Rgba activeColor
Alignment alignment
short alignmentOffset
UiDragLimit dragLimit
Vec2 dragLimitX
Vec2 dragLimitY
bool isDisabled
Constructors
this(ubyte fontScale)
this(Alignment alignment, short alignmentOffset = 0)
this(UiDragLimit dragLimit)
structUiState
Fields
Mouse mouseClickAction
Keyboard keyboardClickAction
Gamepad gamepadClickAction
bool isActOnPress
Vec2 viewportPosition
Vec2 viewportSize
Vec2 viewportScale
Vec2 mouseBuffer
Vec2 mousePressedPosition
Vec2 itemDragOffset
short itemId
short hotItemId
short activeItemId
short clickedItemId
short draggedItemId
short focusedItemId
short previousMaxHotItemId
short previousMaxHotItemIdBuffer

Functions 39

fnvoid prepareUi() @trusted
fnbool isSpaceInTextField(char c)
fnvoid setUiClickAction(Mouse value)
fnvoid setIsUiActOnPress(bool value)
fnvoid setUiViewportState(Vec2 position, Vec2 size, Vec2 scale)
fnshort uiItemId()
fnbool isUiItemHot()
fnbool isUiHot()
fnbool isUiActive()
fnbool isUiClicked()
fnbool isUiDragged()
fnbool isUiFocused()
fnshort uiFocus()
fnvoid setUiFocus(short id)
fnvoid clampUiFocus(short step, Sz length)
fnvoid wrapUiFocus(short step, Sz length)
fnvoid updateUiState(Rect area, bool isHot, bool isActive, bool isClicked)
fnvoid updateUiText(Rect area, IStr text, UiOptions options = UiOptions())
fnvoid drawUiText(Rect area, IStr text, UiOptions options = UiOptions())
fnvoid uiText(Rect area, IStr text, UiOptions options = UiOptions())
fnbool updateUiButton(Rect area, IStr text, UiOptions options = UiOptions())
fnvoid drawUiButton(Rect area, IStr text, bool isHot, bool isActive, UiOptions options = UiOptions())
fnbool uiButton(Rect area, IStr text, UiOptions options = UiOptions())
fnbool updateUiDragHandle(ref Rect area, UiOptions options = UiOptions())
fnvoid drawUiDragHandle(Rect area, bool isHot, bool isActive, UiOptions options = UiOptions())
fnbool uiDragHandle(ref Rect area, UiOptions options = UiOptions())
fnbool updateUiTextField(Rect area, ref Str text, Str textBuffer, UiOptions options = UiOptions()) @trusted
fnvoid drawUiTextField(Rect area, Str text, UiOptions options = UiOptions())
fnbool uiTextField(Rect area, ref Str text, Str textBuffer, UiOptions options = UiOptions())

Variables 9

varUiState * _uiState
varUiState * _uiPreviousState
enumvardefaultUiDisabledColor = 0x202020.toRgb()
enumvardefaultUiIdleColor = 0x414141.toRgb()
enumvardefaultUiHotColor = 0x818181.toRgb()
enumvardefaultUiActiveColor = 0xBABABA.toRgb()
enumvardefaultUiFontAlphaOffset = 50
enumvardefaultUiTextFieldCursorDisabledAlpha = 175
enumvardefaultUiTextFieldCursorOffset = 2