MAGE-UI Dev Log #2
Small progress update.
- You now can spawn multiple windows each with their own render thread.
- Each window is drawn via an
OnRender()
callback. You can also set up resources on init withOnRenderThreadStart()
. - Windows can be closed in any order.
- Transparency is supported via GLFW transparency window hint.
The source is now organized roughly into modules:
- Allocation/
- Core/
- Data_Structures/
- GFX/
- OS/
- MG_UI.h
- main.c
There’s always improvements to make but this feels a lot cleaner to me.
Next goals:
- Edit Text Field: double & triple click select, multi-line support, undo/redo, wrapping, and a few other necessities.
- Other widgets: Scroll view, scroll bar, drop down, checkbox, slider (same as scrollbar?), image, video.
- See about supporting more than ASCII text rendering, and consistent Unicode throughout.
- Better way to specify UI (layout spec file, or imgui style api).
- Varying text style within a text block.
- Resizeable panels.
- Draggable panels.
- New window from panel dragged out of window.
- Rounded corners on widgets.
- World-space UI.
- Audio support.
Anyway this is still just a project for learning and experimentation mostly.