diff -r fc854e0ab924 -r e62047c59658 ui/motif/text.c --- a/ui/motif/text.c Thu May 29 12:03:32 2025 +0200 +++ b/ui/motif/text.c Thu May 29 13:23:11 2025 +0200 @@ -38,7 +38,7 @@ /* ------------------------------ Text Area ------------------------------ */ -UIWIDGET ui_textarea_create(UiObject *obj, UiTextAreaArgs args) { +UIWIDGET ui_textarea_create(UiObject *obj, UiTextAreaArgs *args) { Arg xargs[16]; int n = 0; @@ -48,12 +48,12 @@ UI_APPLY_LAYOUT(ctn->layout, args); Widget parent = ctn->prepare(ctn, xargs, &n); - char *name = args.name ? (char*)args.name : "textarea"; + char *name = args->name ? (char*)args->name : "textarea"; XtSetArg(xargs[n], XmNwidth, 100); n++; Widget widget = XmCreateScrolledText(parent, name, xargs, n); XtManageChild(widget); - UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args.value, args.varname, UI_VAR_TEXT); + UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_TEXT); UiTextArea *textarea = malloc(sizeof(UiTextArea)); memset(textarea, 0, sizeof(UiTextArea)); @@ -383,7 +383,7 @@ /* ------------------------------ Text Field ------------------------------ */ -static UIWIDGET create_textfield(UiObject *obj, UiTextFieldArgs args, int frameless, int password) { +static UIWIDGET create_textfield(UiObject *obj, UiTextFieldArgs *args, int frameless, int password) { Arg xargs[16]; int n = 0; @@ -399,13 +399,13 @@ UI_APPLY_LAYOUT(ctn->layout, args); Widget parent = ctn->prepare(ctn, xargs, &n); - char *name = args.name ? (char*)args.name : "textfield"; + char *name = args->name ? (char*)args->name : "textfield"; Widget textfield = XmCreateTextField(parent, name, xargs, n); XtManageChild(textfield); - ui_set_widget_groups(obj->ctx, textfield, args.groups); + ui_set_widget_groups(obj->ctx, textfield, args->groups); - UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args.value, args.varname, UI_VAR_STRING); + UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_STRING); if(var) { UiString *value = (UiString*)var->value; value->obj = textfield; @@ -420,15 +420,15 @@ return textfield; } -UIWIDGET ui_textfield_create(UiObject *obj, UiTextFieldArgs args) { +UIWIDGET ui_textfield_create(UiObject *obj, UiTextFieldArgs *args) { return create_textfield(obj, args, FALSE, FALSE); } -UIWIDGET ui_frameless_textfield_create(UiObject* obj, UiTextFieldArgs args) { +UIWIDGET ui_frameless_textfield_create(UiObject* obj, UiTextFieldArgs *args) { return create_textfield(obj, args, TRUE, FALSE); } -UIWIDGET ui_passwordfield_create(UiObject* obj, UiTextFieldArgs args) { +UIWIDGET ui_passwordfield_create(UiObject* obj, UiTextFieldArgs *args) { return create_textfield(obj, args, FALSE, FALSE); } @@ -965,7 +965,7 @@ event->callback(&evt, event->userdata); } -UIWIDGET ui_path_textfield_create(UiObject* obj, UiPathTextFieldArgs args) { +UIWIDGET ui_path_textfield_create(UiObject* obj, UiPathTextFieldArgs *args) { Arg xargs[16]; int n = 0; @@ -977,18 +977,18 @@ PathBar *pathbar = CreatePathBar(parent, xargs, n); - if(!args.getpathelm) { + if(!args->getpathelm) { pathbar->getpathelm= default_pathelm_func; } else { - pathbar->getpathelm = args.getpathelm; - pathbar->getpathelmdata = args.getpathelmdata; + pathbar->getpathelm = args->getpathelm; + pathbar->getpathelmdata = args->getpathelmdata; } XtManageChild(pathbar->widget); ctn->add(ctn, pathbar->widget); - UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args.value, args.varname, UI_VAR_STRING); + UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_STRING); if (var) { UiString* value = (UiString*)var->value; value->obj = pathbar; @@ -1002,10 +1002,10 @@ } } - if(args.onactivate) { + if(args->onactivate) { UiEventData *eventdata = malloc(sizeof(UiEventData)); - eventdata->callback = args.onactivate; - eventdata->userdata = args.onactivatedata; + eventdata->callback = args->onactivate; + eventdata->userdata = args->onactivatedata; eventdata->obj = obj; eventdata->value = 0;