--- a/ui/cocoa/widget.m Mon Aug 25 17:52:06 2025 +0200 +++ b/ui/cocoa/widget.m Mon Aug 25 17:55:41 2025 +0200 @@ -28,6 +28,8 @@ #import "widget.h" +/* genereal widget functions */ + void ui_set_enabled(UIWIDGET widget, int enabled) { NSControl *control = (__bridge NSControl*)widget; control.enabled = enabled; @@ -41,3 +43,17 @@ NSView *view = (__bridge NSView*)widget; view.hidden = !visible; } + + + +/* custom widget */ + +UIWIDGET ui_customwidget_create(UiObject *obj, ui_createwidget_func create_widget, void *userdata, UiWidgetArgs *args) { + UIWIDGET widget = create_widget(obj, args, userdata); + + NSView *view = (__bridge NSView*)widget; + UiLayout layout = UI_INIT_LAYOUT(args); + ui_container_add(obj, view, &layout); + + return widget; +}