Options
All
  • Public
  • Public/Protected
  • All
Menu

Class UIElementRow<BackgroundClass>

UI Layout for positioning UIElements in a row.

Index

Properties

Readonly scale

scale : ScaleXY

Positioning scale

Readonly theme

theme : Theme

Methods

addElement

  • addElement(builder: UIElementBuilder<UiElementType>, index: number): UiElementType
  • Add any UiElement using a builder

    Type parameters

    Parameters

    • builder: UIElementBuilder<UiElementType>

      Builder for any UiElement

    • index: number

      Index position or < 0 to push

    Returns UiElementType

    Created UiElement

addGap

  • Add gap to Row. Gap can have fixed width and it also has custom logic which makes it occupy any extra space caused by setting the minimum size for Line.

    Parameters

    • fixedSize: pixel

      Optional fixed size to set gap

    • index: number

    Returns UILayoutGap

    Object itself

dispose

  • dispose(): this
  • Disposes objects inside the element. UiElement will still be usable, but will not update itself nor render. Disposed elements can be restored using 'restore()' Implementations should use setEnabled on any other elements/Shapes they contain!

    Returns this

    Object itself for fluent interface

getAutoDispose

getBackground

  • getBackground(): BackgroundClass
  • Get Background of object.

    Type of Background is generic, see UIBackground for minimum interface.

    Returns BackgroundClass

    Background object

getDraggingMode

getHighlighted

  • getHighlighted(): boolean
  • Returns boolean

    True for highlighted state of object and false for basic

getIsUnderMouse

  • getIsUnderMouse(): boolean
  • Get boolean flag for whether object is currently under mouse or not

    Returns boolean

    Boolean for is object under mouse currently

getMargin

getMemberCount

  • getMemberCount(): number
  • Get amount of members in group.

    Returns number

    Number

getMembers

  • Returns list of UiElements inside Line

    Returns Array<UIPart>

getMinimumSize

  • getMinimumSize(): pixel | undefined
  • Get minimum size Layout should occupy (in direction of layout). If set, Layout will distribute any extra space to UiLayoutGaps among its members.

    Returns pixel | undefined

    Min size Layout should occupy (in direction of layout) or undefined to disable feature

getMouseInteractions

  • getMouseInteractions(): boolean
  • Get mouse interactions enabled.

    Returns boolean

    True if any member of Layout has mouse interactions enabled.

getMouseStyle

getOrigin

  • Get the position origin of this UiElement. Affects how the "position" of UIElement is interpreted.

    Returns Point

    Vec2 with each plane in range [-1, 1], where 0 is middle

getPadding

  • Get padding around object in pixels. Padding is empty space between the UiElements content and Background

    Returns Margin

    Margin datastructure

getPosition

  • Returns the position of this UiElement at given location relative to elements size.

    Parameters

    • relativePosition: Point

      Relative position vector (-1 to 1 which specifies position of origin, 0 is center of the object)

    • spaceOfInterest: UISpace

      Parameter to disregard parts of object when calculating the asked position.

    Returns Point

    Object itself for fluent itself

getSize

  • Returns the size of the UiElements in pixels including any Margins or Paddings

    Parameters

    • spaceOfInterest: UISpace

      Parameter to disregard parts of object when calculating the position. Defaults to Margin, which includes everything. Should only ever be necessary for sub-classes

    Returns Point

    Object size in pixels

isDisposed

  • isDisposed(): boolean
  • Returns boolean

    True if all sub-elements have been disposed, false if not.

offHighlight

  • offHighlight(token: Token): boolean
  • Unsubscribe from Highlight object event. This is called whenever an object is highlighted

    Parameters

    • token: Token

      Token that was received when subscribing to the event.

    Returns boolean

    True if the unsubscription was successful.

offMouseClick

  • offMouseClick(token: Token): boolean
  • Remove event listener from Mouse Click Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseDoubleClick

  • offMouseDoubleClick(token: Token): boolean
  • Remove event listener from Mouse Double Click Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseDown

  • offMouseDown(token: Token): boolean
  • Remove event listener from Mouse Down Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseDrag

  • offMouseDrag(token: Token): boolean
  • Remove event listener from Mouse Drag Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseDragStart

  • offMouseDragStart(token: Token): boolean
  • Remove event listener from Mouse Drag Start Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseDragStop

  • offMouseDragStop(token: Token): boolean
  • Remove event listener from Mouse Drag Stop Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseEnter

  • offMouseEnter(token: Token): boolean
  • Remove event listener from Mouse Enter Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseLeave

  • offMouseLeave(token: Token): boolean
  • Remove event listener from Mouse Leave Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseMove

  • offMouseMove(token: Token): boolean
  • Remove event listener from Mouse Move Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseUp

  • offMouseUp(token: Token): boolean
  • Remove event listener from Mouse Up Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offMouseWheel

  • offMouseWheel(token: Token): boolean
  • Remove event listener from Mouse Wheel Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offTouchEnd

  • offTouchEnd(token: Token): boolean
  • Remove event listener from Touch End Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offTouchMove

  • offTouchMove(token: Token): boolean
  • Remove event listener from Touch Move Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

offTouchStart

  • offTouchStart(token: Token): boolean
  • Remove event listener from Touch Start Event

    Parameters

    • token: Token

      Token of event listener which has to be removed

    Returns boolean

    True if the listener is successfully removed and false if it is not found

onHighlight

  • onHighlight(handler: function): Token
  • Subscribe to highlight object event. This is called whenever an object is highlighted.

    Parameters

    • handler: function

      Function that is called when event is triggered.

        • Parameters

          • isHighlighted: boolean

          Returns void

    Returns Token

    Token that can be used to unsubscribe from the event.

onMouseClick

  • Subscribe to Mouse Click event

    Parameters

    • listener: MouseEventHandler<this>

      Function that will be called when mouse clicks the bounds of UiObject.

    Returns Token

    Token-object that is a reference ID to the listener created.

onMouseDoubleClick

onMouseDown

onMouseDrag

onMouseDragStart

onMouseDragStop

onMouseEnter

  • Subscribe to Mouse Enter event

    Parameters

    • listener: MouseEventHandler<this>

      Function that will be called when mouse enters the bounds of UiObject.

    Returns Token

    Token-object that is a reference ID to the listener created.

onMouseLeave

  • Subscribe to Mouse Leave event

    Parameters

    Returns Token

    Token-object that is a reference ID to the listener created.

onMouseMove

onMouseUp

onMouseWheel

onTouchEnd

onTouchMove

onTouchStart

restore

  • restore(): this
  • Restore whatever resources this object has from rendering engine. Implementations should use setEnabled on any other elements/Shapes they contain!

    Returns this

    Object itself itself for fluent interface

setAutoDispose

  • Set auto dispose behavior for this UI element.

    Can be used to set a condition, where the UI element is automatically disposed, removing it from view.

     // Example, remove UI element when it is larger than 20% of viewport.
     UIElement.setAutoDisposeMode({
         type: 'max-width',
         maxWidth: 0.20,
     })
    

    Parameters

    Returns this

    Object itself for fluent interface.

setBackground

  • setBackground(mutator: Mutator<BackgroundClass>): this
  • Method for mutating Background of object.

    Type of Background is generic, see UIBackground for minimum interface.

    Parameters

    • mutator: Mutator<BackgroundClass>

      Mutator function for Background

    Returns this

    Object itself for fluent interface

setDraggingMode

  • Set dragging mode of object. Defines how the object can be dragged by mouse.

    See UIDraggingModescollection for options.

    Parameters

    • draggingMode: UIDraggingModes

      DraggingMode or undefined to disable dragging

    Returns this

    Object itself

setHighlighted

  • setHighlighted(isHighlighted: boolean): this
  • Set highlighted state of the Lines Background and all of its members

    Parameters

    • isHighlighted: boolean

      Highlight state of the object

    Returns this

    Object itself for fluent interface

setMargin

  • setMargin(margin: Partial<MMargin> | number): this
  • Set margin around object in pixels.

    Parameters

    • margin: Partial<MMargin> | number

      Number with pixel margins for all sides or datastructure with individual pixel margins for each side. Any side can be omitted, only passed values will be overridden.

    Returns this

    Object itself

setMinimumSize

  • setMinimumSize(minSize: pixel | undefined): this
  • Set minimum size Layout should occupy (in direction of layout). If set, Layout will distribute any extra space to UiLayoutGaps among its members.

    Parameters

    • minSize: pixel | undefined

      Min size Layout should occupy (in direction of layout) or undefined to disable feature

    Returns this

    Object itself

setMouseInteractions

  • setMouseInteractions(state: boolean): this
  • Set mouse interactions enabled. This will set the states of all members inside the Layout, overriding any previous settings.

    Parameters

    • state: boolean

      Mouse interactions enabled

    Returns this

setMouseStyle

  • Set mouse style when hovering over UI object.

    Parameters

    • mouseStyle: UIMouseStyle

      Interface for defining how mouse should look when hovering over UI object

    Returns this

    Object itself

setOrigin

  • setOrigin(origin: Point): this
  • Sets the position origin of this UiElement. Affects how the "position" of UIElement is interpreted.

    See UIOrigins for a collection of common arguments in an easy-to-read format.

    Parameters

    Returns this

    Object itself

setPadding

  • setPadding(padding: Partial<Margin> | number): this
  • Set padding around object in pixels. Padding is empty space between the UiElements content and Background

    Parameters

    • padding: Partial<Margin> | number

      Number with pixel margins for all sides or datastructure with individual pixel paddings for each side. Any side can be omitted, only passed values will be overridden.

    Returns this

    Object itself

setPosition

  • setPosition(position: Point): this
  • Sets the position of this UiElement relative to its origin.

    NOTE: UIElements scale can't be changed apart from when it is created.

    Parameters

    • position: Point

      Location on the UIElements scale, where its origin should be positioned

    Returns this

    Object itself