From b29fefa6ec993a4fc82d20e8f994a692fd882103 Mon Sep 17 00:00:00 2001 From: Patrick Wuttke Date: Thu, 19 Sep 2024 00:58:27 +0200 Subject: [PATCH] Began implementing some little widget tree system. --- private/sdl_gpu_test/6_ui/app.cpp | 11 ++ private/sdl_gpu_test/6_ui/app.hpp | 7 +- private/sdl_gpu_test/SModule | 4 +- private/sdl_gpu_test/application.cpp | 1 + private/sdl_gpu_test/application.hpp | 5 + private/sdl_gpu_test/gui/label.cpp | 75 +++++++++ private/sdl_gpu_test/gui/label.hpp | 58 +++++++ .../{6_ui/ui => gui}/ui_renderer.cpp | 157 ++++++++++++------ .../{6_ui/ui => gui}/ui_renderer.hpp | 41 +++-- private/sdl_gpu_test/gui/widget.cpp | 67 ++++++++ private/sdl_gpu_test/gui/widget.hpp | 76 +++++++++ 11 files changed, 437 insertions(+), 65 deletions(-) create mode 100644 private/sdl_gpu_test/gui/label.cpp create mode 100644 private/sdl_gpu_test/gui/label.hpp rename private/sdl_gpu_test/{6_ui/ui => gui}/ui_renderer.cpp (62%) rename private/sdl_gpu_test/{6_ui/ui => gui}/ui_renderer.hpp (54%) create mode 100644 private/sdl_gpu_test/gui/widget.cpp create mode 100644 private/sdl_gpu_test/gui/widget.hpp diff --git a/private/sdl_gpu_test/6_ui/app.cpp b/private/sdl_gpu_test/6_ui/app.cpp index 46d79d9..6958704 100644 --- a/private/sdl_gpu_test/6_ui/app.cpp +++ b/private/sdl_gpu_test/6_ui/app.cpp @@ -69,6 +69,15 @@ void UIApp::init(const AppInitArgs& args) { mGamepad.open(gamepads[0]); } + + // init the UI + mWidgetTree.init({.renderer = &mUIRenderer}); + mLabel = mWidgetTree.getRootWidget().emplaceChild