diff -r 5d71a36b833b -r ad5c74af14c4 ui/winui/toolkit.cpp --- a/ui/winui/toolkit.cpp Thu Oct 12 13:52:18 2023 +0200 +++ b/ui/winui/toolkit.cpp Thu Oct 12 14:09:04 2023 +0200 @@ -108,12 +108,21 @@ delete widget; } +extern "C" void destroy_ui_container_wrapper(void* ptr) { + UiContainer* ctn = (UiContainer*)ptr; + delete ctn; +} + void ui_context_add_window_destructor(UiContext* ctx, UiWindow* win) { - // TODO: + cxMempoolRegister(ctx->mp, win, destroy_ui_window_wrapper); } void ui_context_add_widget_destructor(UiContext* ctx, UiWidget* widget) { - // TODO: + cxMempoolRegister(ctx->mp, widget, destroy_ui_widget_wrapper); +} + +void ui_context_add_container_destructor(UiContext* ctx, UiContainer *container) { + cxMempoolRegister(ctx->mp, container, destroy_ui_container_wrapper); }