1
0
forked from me/IronOS
Files
IronOS/source/Core/Threads/GUIRendering.md
2023-10-24 08:27:04 +11:00

30 lines
782 B
Markdown

# GUI Rendering
The GUI aims to be somewhat similar to immediate mode rendering, where the screen is re-rendered each sweep.
This is due to a few aims:
1. Functions should try and contain their state to the context struct (helps keep state usage flatter)
2. Allows external events to change the state
3. Means state can be read/write over BLE or other external control interfaces
## Transitions
When changing the view to a new view it can be preferable to transition using an animation.
The tooling provides for left, right and down animations at this point.
The use of these gives a notion of "direction" when navigating the menu.
```
<TODO>
```
## TODO notes
On settings menu exit:
```
OLED::useSecondaryFramebuffer(true);
showExitMenuTransition = true;
```