--- a/ui/common/context.c Mon Sep 22 22:25:14 2025 +0200 +++ b/ui/common/context.c Tue Sep 23 17:40:40 2025 +0200 @@ -557,6 +557,19 @@ cxListFree(groups); } +void ui_widget_set_groups2(UiContext *ctx, UIWIDGET widget, ui_enablefunc enable, int *groups, int ngroups) { + CxList *ls = cxArrayListCreate(cxDefaultAllocator, NULL, sizeof(int), ngroups); + for(int i=0;i<ngroups;i++) { + cxListAdd(ls, groups+i); + } + uic_add_group_widget(ctx, widget, enable, ls); + cxListFree(ls); +} + +void ui_widget_set_visibility_states(UiContext *ctx, UIWIDGET widget, int *states, int nstates) { + ui_widget_set_groups2(ctx, widget, (ui_enablefunc)ui_set_visible, states, nstates); +} + size_t uic_group_array_size(const int *groups) { int i; for(i=0;groups[i] >= 0;i++) { }