Skip to content
This repository has been archived by the owner on Apr 3, 2021. It is now read-only.

mrgaturus/trgui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

trgui: minimalist and independent gui crate

Inspired by IMGUIs, MLIB (AzPainter) and Love2D

diagram

What trgui has?

  • Generic Widget trait for easy integration with rendering contexts and point types
  • Containers for dispatch function calls to Widget trait objects.
  • Focus, Grab, Hover handling.
  • Layouts and Decorators for Containers.
  • RefProxy for share external data to widgets. (this is unsafe, You can use Rc<RefCell<T>> instead)
  • Groups for communication between widgets based on IDs.

Goals of trgui

  • Extremely flexible with other crates like path renderers, window managers, etc.
  • Very fast performance with very low memory and CPU usage.
  • Easy to understand and maintain
  • No dependencies

Limitations

  • You aren't able to remove or modify widgets directly from Containers after moving it. Its better create a SoA widget than a widget for each data.
  • Focus can't be modified by update and hover_out

What trgui doesn't have?

  • Renderer
  • Window Handling
  • Main Loop
  • Default Widgets

You need implement those by yourself or from other crates.

Examples

About

Minimalist GUI Crate ( Deprecated )

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages