--- a/ui/common/args.c Wed May 20 20:00:35 2026 +0200 +++ b/ui/common/args.c Sat May 23 21:38:30 2026 +0200 @@ -1887,6 +1887,10 @@ args->onactivatedata = userdata; } +void ui_list_args_set_onactivate_action(UiListArgs *args, const char *action) { + args->onactivate_action = strdup(action); +} + void ui_list_args_set_onselection(UiListArgs *args, ui_callback callback) { args->onselection = callback; } @@ -1895,6 +1899,10 @@ args->onselectiondata = userdata; } +void ui_list_args_set_onselection_action(UiListArgs *args, const char *action) { + args->onselection_action = strdup(action); +} + void ui_list_args_set_ondragstart(UiListArgs *args, ui_callback callback) { args->ondragstart = callback; } @@ -1903,6 +1911,10 @@ args->ondragstartdata = userdata; } +void ui_list_args_set_ondragstart_action(UiListArgs *args, const char *action) { + args->ondragstart_action = strdup(action); +} + void ui_list_args_set_ondragcomplete(UiListArgs *args, ui_callback callback) { args->ondragcomplete = callback; } @@ -1911,6 +1923,10 @@ args->ondragcompletedata = userdata; } +void ui_list_args_set_ondragcomplete_action(UiListArgs *args, const char *action) { + args->ondragcomplete_action = strdup(action); +} + void ui_list_args_set_ondrop(UiListArgs *args, ui_callback callback) { args->ondrop = callback; } @@ -1919,6 +1935,10 @@ args->ondropdata = userdata; } +void ui_list_args_set_ondrop_action(UiListArgs *args, const char *action) { + args->ondrop_action = strdup(action); +} + void ui_list_args_set_onsave(UiListArgs *args, ui_list_savefunc onsave) { args->onsave = onsave; } @@ -1951,6 +1971,11 @@ free((void*)args->name); free((void*)args->style_class); free((void*)args->varname); + free((void*)args->onactivate_action); + free((void*)args->onselection_action); + free((void*)args->ondragstart_action); + free((void*)args->ondragcomplete_action); + free((void*)args->ondrop_action); if(args->static_elements) { for(int i=0;i<args->static_nelm;i++) { free(args->static_elements[i]);