Skip to content

TUIKit - v0.2

Choose a tag to compare

@skhelladi skhelladi released this 06 Jul 10:19
· 13 commits to main since this release

✨ Implemented Components (Current State) in v0.2 (July 2025)

The following core components are implemented and functional:

  • TUIApp: The entry point for the application.
  • TUIWidget: Base class for all UI components.
  • TUILabel: Displays static text.
  • TUITextField: Editable single-line text input.
  • TUIButton: Interactive button with click events and icon support.
  • TUIMenu: Vertical list of selectable options.
  • TUICheckBox: Simple toggle checkbox.
  • TUIRadioBox: Group of exclusive radio buttons.
  • TUIComboBox: Dropdown list for selection.
  • TUISlider: Horizontal slider for continuous value selection.
  • TUIToolbar: A bar for action buttons.
  • TUIForm: Organizes input fields with labels.
  • TUIGroupBox: Groups related widgets with an optional title and border.
  • TUITabWidget: Organizes content into multiple tabs.
  • TUIStatusBar: Displays status messages at the bottom of the application.
  • TUITreeView: Displays hierarchical data in a tree structure.
  • TUIResizableSplit: Splitter for resizable panels (horizontal/vertical).
  • TUIScrollableContainer: Scrollable area for any widget (with scrollbar, keyboard and mouse support).

🆕 Embedding a .tuik UI file

TUIKit supports embedding JSON UI definitions (.tuik files) directly into your binary using CMake and xxd.
For each .tuik file listed in TUIKIT_UI, a header <name>_tuik.h is generated with a binary variable.

Full Changelog: https://github.com/skhelladi/TUIKit/commits/v0.2