--- a/ui/common/args.c Fri Apr 17 13:21:11 2026 +0200 +++ b/ui/common/args.c Fri Apr 17 14:50:31 2026 +0200 @@ -215,9 +215,14 @@ args->onclickdata = onclickdata; } +void ui_menuitem_args_set_action(UiMenuItemArgs *args, const char *action) { + args->action = strdup(action); +} + void ui_menuitem_args_free(UiMenuItemArgs *args) { free((void*)args->label); free((void*)args->icon); + free((void*)args->action); free(args); } @@ -250,10 +255,15 @@ args->onchangedata = onclickdata; } +void ui_menutoggleitem_args_set_action(UiMenuToggleItemArgs *args, const char *action) { + args->action = strdup(action); +} + void ui_menutoggleitem_args_free(UiMenuToggleItemArgs *args) { free((void*)args->label); free((void*)args->icon); free((void*)args->varname); + free((void*)args->action); free(args); } @@ -1440,6 +1450,10 @@ args->onclickdata = onclickdata; } +void ui_button_args_set_action(UiButtonArgs *args, const char *action) { + args->action = strdup(action); +} + void ui_button_args_set_states(UiButtonArgs *args, int *states, int numstates) { args->states = calloc(numstates+1, sizeof(int)); memcpy((void*)args->states, states, numstates * sizeof(int)); @@ -1458,6 +1472,7 @@ free((void*)args->label); free((void*)args->icon); free((void*)args->tooltip); + free((void*)args->action); free((void*)args->states); free((void*)args->visibility_states); free(args); @@ -1558,6 +1573,10 @@ args->onchangedata = onchangedata; } +void ui_toggle_args_set_action(UiToggleArgs *args, const char *action) { + args->action = strdup(action); +} + void ui_toggle_args_set_varname(UiToggleArgs *args, const char *varname) { args->varname = strdup(varname); } @@ -1589,6 +1608,7 @@ free((void*)args->icon); free((void*)args->tooltip); free((void*)args->varname); + free((void*)args->action); free((void*)args->states); free((void*)args->visibility_states); free(args); @@ -1688,6 +1708,10 @@ args->onclickdata = userdata; } +void ui_linkbutton_args_set_action(UiLinkButtonArgs *args, const char *action) { + args->action = strdup(action); +} + void ui_linkbutton_args_set_nofollow(UiLinkButtonArgs *args, UiBool value) { args->nofollow = value; } @@ -1721,6 +1745,7 @@ free((void*)args->style_class); free((void*)args->label); free((void*)args->uri); + free((void*)args->action); free((void*)args->varname); free((void*)args->states); free(args); @@ -2286,6 +2311,14 @@ args->onactivatedata = onactivatedata; } +void ui_textfield_args_set_onactivate_action(UiTextFieldArgs *args, const char *action) { + args->onactivate_action = strdup(action); +} + +void ui_textfield_args_set_onchange_action(UiTextFieldArgs *args, const char *action) { + args->onchange_action = action; +} + void ui_textfield_args_set_varname(UiTextFieldArgs *args, const char *varname) { args->varname = strdup(varname); } @@ -2310,6 +2343,8 @@ free((void*)args->name); free((void*)args->style_class); free((void*)args->varname); + free((void*)args->onactivate_action); + free((void*)args->onchange_action); free((void*)args->states); free((void*)args->visibility_states); free(args);