Thu, 29 Jan 2026 19:01:52 +0100
add visibility_states arg to labels, buttons, text widgets (Motif)
| ui/motif/button.c | file | annotate | diff | comparison | revisions | |
| ui/motif/container.c | file | annotate | diff | comparison | revisions | |
| ui/motif/label.c | file | annotate | diff | comparison | revisions | |
| ui/motif/text.c | file | annotate | diff | comparison | revisions |
--- a/ui/motif/button.c Thu Jan 29 18:56:36 2026 +0100 +++ b/ui/motif/button.c Thu Jan 29 19:01:52 2026 +0100 @@ -60,6 +60,7 @@ Widget button = XmCreatePushButton(parent, name, xargs, n); XtManageChild(button); ui_container_add(ctn, button); + uic_widget_set_visibility_states(obj->ctx, button, args->visibility_states); ui_set_widget_groups(obj->ctx, button, args->states); @@ -117,6 +118,7 @@ Widget button = XmCreateToggleButton(parent, name, xargs, n); XtManageChild(button); ui_container_add(ctn, button); + uic_widget_set_visibility_states(obj->ctx, button, args->visibility_states); ui_set_widget_groups(obj->ctx, button, args->states); @@ -145,6 +147,7 @@ Widget button = XmCreateToggleButton(parent, name, xargs, n); XtManageChild(button); ui_container_add(ctn, button); + uic_widget_set_visibility_states(obj->ctx, button, args->visibility_states); ui_set_widget_groups(obj->ctx, button, args->states); @@ -364,6 +367,7 @@ Widget button = XmCreateToggleButton(parent, name, xargs, n); XtManageChild(button); ui_container_add(ctn, button); + uic_widget_set_visibility_states(obj->ctx, button, args->visibility_states); ui_set_widget_groups(obj->ctx, button, args->states);
--- a/ui/motif/container.c Thu Jan 29 18:56:36 2026 +0100 +++ b/ui/motif/container.c Thu Jan 29 19:01:52 2026 +0100 @@ -90,10 +90,7 @@ UiContainerX *container = ui_box_container(obj, grid, orientation); uic_object_push_container(obj, container); - if(args->visibility_states) { - size_t nstates = uic_state_array_size(args->visibility_states); - ui_widget_set_visibility_states(obj->ctx, grid, args->visibility_states, (int)nstates); - } + uic_widget_set_visibility_states(obj->ctx, grid, args->visibility_states); return grid; } @@ -176,10 +173,7 @@ UiContainerX *container = ui_grid_container(obj, grid, args->def_hexpand, args->def_vexpand, args->def_hfill, args->def_vfill); uic_object_push_container(obj, container); - if(args->visibility_states) { - size_t nstates = uic_state_array_size(args->visibility_states); - ui_widget_set_visibility_states(obj->ctx, grid, args->visibility_states, (int)nstates); - } + uic_widget_set_visibility_states(obj->ctx, grid, args->visibility_states); return grid; } @@ -309,10 +303,7 @@ } } - if(args->visibility_states) { - size_t nstates = uic_state_array_size(args->visibility_states); - ui_widget_set_visibility_states(obj->ctx, frame, args->visibility_states, (int)nstates); - } + uic_widget_set_visibility_states(obj->ctx, frame, args->visibility_states); return frame; } @@ -483,10 +474,7 @@ uic_object_push_container(obj, (UiContainerX*)ct); - if(args->visibility_states) { - size_t nstates = uic_state_array_size(args->visibility_states); - ui_widget_set_visibility_states(obj->ctx, form, args->visibility_states, (int)nstates); - } + uic_widget_set_visibility_states(obj->ctx, form, args->visibility_states); return form; }
--- a/ui/motif/label.c Thu Jan 29 18:56:36 2026 +0100 +++ b/ui/motif/label.c Thu Jan 29 19:01:52 2026 +0100 @@ -65,6 +65,7 @@ Widget w = XmCreateLabel(parent, name, xargs, n); XtManageChild(w); ui_container_add(ctn, w); + uic_widget_set_visibility_states(obj->ctx, w, args->visibility_states); XmStringFree(label); @@ -162,6 +163,7 @@ char *name = args->name ? (char*)args->name : "progressbar"; Widget frame = XmCreateFrame(parent, name, xargs, n); ui_container_add(ctn, frame); + uic_widget_set_visibility_states(obj->ctx, frame, args->visibility_states); // create a button and get some informations about the height, shadow, highlight, .... // we want the frame to have the same dimensions as a normal button @@ -252,6 +254,7 @@ Widget w = XmCreateLabel(parent, name, xargs, n); XtManageChild(w); ui_container_add(ctn, w); + uic_widget_set_visibility_states(obj->ctx, w, args->visibility_states); UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); if(var) {
--- a/ui/motif/text.c Thu Jan 29 18:56:36 2026 +0100 +++ b/ui/motif/text.c Thu Jan 29 19:01:52 2026 +0100 @@ -56,6 +56,7 @@ Widget widget = XmCreateScrolledText(parent, name, xargs, n); XtManageChild(widget); ui_container_add(ctn, widget); + uic_widget_set_visibility_states(obj->ctx, widget, args->visibility_states); UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_TEXT); @@ -408,6 +409,7 @@ XtManageChild(textfield); ui_container_add(ctn, textfield); + uic_widget_set_visibility_states(obj->ctx, textfield, args->visibility_states); ui_set_widget_groups(obj->ctx, textfield, args->states); UiEventDataExt *eventdata = malloc(sizeof(UiEventDataExt)); @@ -587,6 +589,7 @@ XtManageChild(pathbar->widget); ui_container_add(ctn, pathbar->widget); + uic_widget_set_visibility_states(obj->ctx, pathbar->widget, args->visibility_states); UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_STRING); if (var) {