#sdl2 #opengl #ui #gui #pushrod


Pushrod Rendering Library

10 releases

0.1.9 Oct 28, 2019
0.1.8 Oct 27, 2019
0.1.0 Sep 30, 2019

#16 in #sdl2

47 downloads per month


714 lines


Pushrod Rendering Engine

docs.rs for rust-pushrod-render


This is the rendering system that is used by the Pushrod library. This library is intended to be used with the rust-pushrod library, which contains the Widget library and so much more.


  • Create Widget Skeleton library
    • Create BaseWidget that draws a border with a color and fills the background
    • Create WidgetConfig that stores Widget configuration data
    • Create CallbackRegistry to store Widget callback actions on Events
    • Modify widget macro to return CallbackRegistry automatically
  • Create Widget Cache
    • Add draw function to handle drawing of widgets in the cache
    • Implement ability to hide/show widgets
    • Implement ability to enable/disable widgets
    • When Widget is hidden, do not process events for that Widget.
    • When Widget is disabled, do not process mouse events for that Widget, but allow drawing.
    • Modify draw so that it walks the Widget tree
    • Add ability to look up widgets by ID and name
  • Add sample widgets to demo
    • Demo should use BaseWidget with mouse over, exit, move, and click
  • Documentation

Prerequisites for pushrod-render

Library Version
SDL2 0.32


~61K SLoC