--- a/ui/motif/container.c Sat Apr 05 17:57:04 2025 +0200 +++ b/ui/motif/container.c Sun Jul 20 22:04:39 2025 +0200 @@ -43,7 +43,7 @@ /* ---------------------------- Box Container ---------------------------- */ -static UIWIDGET box_create(UiObject *obj, UiContainerArgs args, UiBoxOrientation orientation) { +static UIWIDGET box_create(UiObject *obj, UiContainerArgs *args, UiBoxOrientation orientation) { UiContainerPrivate *ctn = ui_obj_container(obj); UI_APPLY_LAYOUT(ctn->layout, args); @@ -51,13 +51,13 @@ int n = 0; if(orientation == UI_BOX_VERTICAL) { - //XtSetArg(xargs[n], gridRowSpacing, args.spacing); n++; + //XtSetArg(xargs[n], gridRowSpacing, args->spacing); n++; } else { - //XtSetArg(xargs[n], gridColumnSpacing, args.spacing); n++; + //XtSetArg(xargs[n], gridColumnSpacing, args->spacing); n++; } Widget parent = ctn->prepare(ctn, xargs, &n); - Widget grid = XtCreateManagedWidget(args.name ? args.name : "boxcontainer", gridClass, parent, xargs, n); + Widget grid = XtCreateManagedWidget(args->name ? args->name : "boxcontainer", gridClass, parent, xargs, n); ctn->add(ctn, grid); UiContainerX *container = ui_box_container(obj, grid, orientation); @@ -67,12 +67,12 @@ } // public -UIWIDGET ui_vbox_create(UiObject *obj, UiContainerArgs args) { +UIWIDGET ui_vbox_create(UiObject *obj, UiContainerArgs *args) { return box_create(obj, args, UI_BOX_VERTICAL); } // public -UIWIDGET ui_hbox_create(UiObject *obj, UiContainerArgs args) { +UIWIDGET ui_hbox_create(UiObject *obj, UiContainerArgs *args) { return box_create(obj, args, UI_BOX_HORIZONTAL); } @@ -129,7 +129,7 @@ /* ---------------------------- Grid Container ---------------------------- */ // public -UIWIDGET ui_grid_create(UiObject *obj, UiContainerArgs args) { +UIWIDGET ui_grid_create(UiObject *obj, UiContainerArgs *args) { Arg xargs[16]; int n = 0; @@ -137,13 +137,13 @@ UI_APPLY_LAYOUT(ctn->layout, args); Widget parent = ctn->prepare(ctn, xargs, &n); - XtSetArg(xargs[n], gridMargin, args.margin); n++; - XtSetArg(xargs[n], gridColumnSpacing, args.columnspacing); n++; - XtSetArg(xargs[n], gridRowSpacing, args.rowspacing); n++; - Widget grid = XtCreateManagedWidget(args.name ? args.name : "gridcontainer", gridClass, parent, xargs, n); + XtSetArg(xargs[n], gridMargin, args->margin); n++; + XtSetArg(xargs[n], gridColumnSpacing, args->columnspacing); n++; + XtSetArg(xargs[n], gridRowSpacing, args->rowspacing); n++; + Widget grid = XtCreateManagedWidget(args->name ? args->name : "gridcontainer", gridClass, parent, xargs, n); ctn->add(ctn, grid); - UiContainerX *container = ui_grid_container(obj, grid, args.def_hexpand, args.def_vexpand, args.def_hfill, args.def_vfill); + 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); return grid; @@ -308,7 +308,7 @@ } } -UIWIDGET ui_tabview_create(UiObject *obj, UiTabViewArgs args) { +UIWIDGET ui_tabview_create(UiObject *obj, UiTabViewArgs *args) { Arg xargs[16]; int n = 0; @@ -321,7 +321,7 @@ // - content (Frame) UiMotifTabView *tabview = malloc(sizeof(UiMotifTabView)); memset(tabview, 0, sizeof(UiMotifTabView)); - char *name = args.name ? (char*)args.name : "tabview"; + char *name = args->name ? (char*)args->name : "tabview"; XtSetArg(xargs[n], XmNuserData, tabview); n++; Widget parent = ctn->prepare(ctn, xargs, &n); Widget form = XmCreateForm(parent, name, xargs, n); @@ -354,8 +354,8 @@ tabview->form = form; tabview->tabbar = tabbar; tabview->content = content; - tabview->tabview = args.tabview; - tabview->subcontainer = args.subcontainer; + tabview->tabview = args->tabview; + tabview->subcontainer = args->subcontainer; tabview->select = ui_motif_tabview_select; tabview->add = ui_motif_tabview_add_tab; tabview->remove = ui_motif_tabview_remove; @@ -369,7 +369,7 @@ ct->container.add = ui_tabview_container_add; ct->tabview = tabview; - UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args.value, args.varname, UI_VAR_INTEGER); + UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); if(var) { UiInteger *i = var->value; i->obj = tabview; @@ -411,7 +411,7 @@ } - Widget child = ui_vbox_create(obj, (UiContainerArgs) { 0 }); + Widget child = ui_vbox_create(obj, &(UiContainerArgs) { 0 }); if(tabview->current) { XtUnmanageChild(child); } else { @@ -605,7 +605,7 @@ return (UiContainerX*)ctn; } -UIWIDGET ui_scrolledwindow_create(UiObject* obj, UiFrameArgs args) { +UIWIDGET ui_scrolledwindow_create(UiObject* obj, UiFrameArgs *args) { UiContainerPrivate *ctn = ui_obj_container(obj); UI_APPLY_LAYOUT(ctn->layout, args);