UI_Lib  a1366e08a59cc549a65fa26081e6409aa12f26d5
This is a user interface library for graphical LCDs. It offers many different controls and indicators that can be nested depending on the element types.
Loading...
Searching...
No Matches
4 - Available Containers

This section lists all available containers. Base classes are not listed here.

ContainerList

The ContainerList can be used to show one children at a time. The user can scroll though all items one by one. A scroll bar is indicating the position of the currently shown item in the list of items.

  • Supports children: Yes (adding with ContainerList::AddItem function)
  • Supported key inputs:
  • Supported touch inputs:
  • Dynamic memory allocation (sum of the following sizes):
    • maxNumItems * sizeof(UIElement) (_items)
ContainerList

ContainerPage

The ContainerPage can be used to show all children at the same time. This can be used to draw e.g. multiple controls and indicators on the same page.

  • Supports children: Yes (adding with ContainerPage::AddItem function)
  • Supported key inputs:
    • KEYUP and KEYDOWN to select the next/previous control in the list of items. Indicators are ignored (not selected).
  • Supported touch inputs:
    • TOUCH_NORMAL or TOUCH_LONG: Tunnel touch to all child elements one after another. Break if one child element has handled the touch.
  • Dynamic memory allocation (sum of the following sizes):
    • maxNumItems * sizeof(UIElement) (_items)
    • maxNumItems * sizeof(PageItemConfig) (_itemConfiguration)
ContainerPage

ContainerGrid

The ContainerGrid can be used to show all children at the same time in a grid layout.

  • Supports children: Yes (adding with ContainerGrid::AddItem function)
  • Supported key inputs:
    • KEYUP and KEYDOWN to select the next/previous control in the list of items. Indicators are ignored (not selected).
  • Supported touch inputs:
    • TOUCH_NORMAL or TOUCH_LONG: Tunnel touch to all child elements one after another. Break if one child element has handled the touch.
  • Dynamic memory allocation (sum of the following sizes):
    • maxNumItems * sizeof(UIElement) (_items)
    • maxGridRows * sizeof(uint16_t) (_initialRowHeights)
    • maxGridColumns * sizeof(uint16_t) (_initialColumnWidths)
    • maxGridRows * sizeof(uint16_t) (_rowHeights)
    • maxGridColumns * sizeof(uint16_t) (_columnWidths)
    • maxNumItems * sizeof(GridItemConfig) (_itemConfiguration)
ContainerGrid

ContainerStack

The ContainerStack can be used to show all children at the same time stacked horizontal or vertical.

  • Supports children: Yes (adding with ContainerStack::AddItem function)
  • Supported key inputs:
    • KEYUP and KEYDOWN to select the next/previous control in the list of items. Indicators are ignored (not selected).
  • Supported touch inputs:
    • TOUCH_NORMAL or TOUCH_LONG: Tunnel touch to all child elements one after another. Break if one child element has handled the touch.
  • Dynamic memory allocation (sum of the following sizes):
    • maxNumItems * sizeof(UIElement) (_items)
ContainerStack

ContainerTabs

The ContainerTabs can be used to show a tab control with each tab page holding one UI element. Each tab header is also holding one UI element.

  • Supports children: Yes (adding with ContainerTabs::AddItem function)
  • Supported key inputs:
  • Supported touch inputs:
  • Dynamic memory allocation (sum of the following sizes):
    • maxNumItems * sizeof(UIElement) (_items)
    • maxNumItems * sizeof(UIElement) (_headers)
ContainerTabs