--- a/ui/cocoa/list.m Wed Dec 17 22:36:41 2025 +0100 +++ b/ui/cocoa/list.m Sat Dec 27 22:47:56 2025 +0100 @@ -87,6 +87,8 @@ add_listdelegate(obj, tableview, args); + char **static_elements = args->static_elements; + size_t static_nelm = args->static_nelm; UiVar *var = uic_widget_var(obj->ctx, obj->ctx, args->list, args->varname, UI_VAR_LIST); if(var) { UiList *list = var->value; @@ -112,6 +114,15 @@ [tableview reloadData]; objc_setAssociatedObject(tableview, "ui_datasource", dataSource, OBJC_ASSOCIATION_RETAIN); + } else if(static_elements && static_nelm) { + NSTableColumn *column = [[NSTableColumn alloc] initWithIdentifier:@"column"]; + [tableview addTableColumn:column]; + + ArrayDataSource *dataSource = [[ArrayDataSource alloc]init:static_elements size:static_nelm]; + tableview.dataSource = dataSource; + [tableview reloadData]; + + objc_setAssociatedObject(tableview, "ui_datasource", dataSource, OBJC_ASSOCIATION_RETAIN); } return (__bridge void*)scrollview; @@ -397,7 +408,7 @@ max = INT_MAX; } - CxList *sublists = cxArrayListCreate(a, NULL, sizeof(UiSubList), args->numsublists); + CxList *sublists = cxArrayListCreate(a, sizeof(UiSubList), args->numsublists); sublists->collection.advanced_destructor = (cx_destructor_func2)sublist_free; for(int i=0;i<max;i++) {