# HG changeset patch # User Olaf Wintermann # Date 1765740161 -3600 # Node ID ee62f38292719a03af09cfee89ea50bacc1858b6 # Parent 45ecbd284637c4c688b37a8325d23ebaa439eb09 fix some common/args.c TODOs diff -r 45ecbd284637 -r ee62f3829271 ui/common/args.c --- a/ui/common/args.c Sun Dec 14 18:55:39 2025 +0100 +++ b/ui/common/args.c Sun Dec 14 20:22:41 2025 +0100 @@ -133,20 +133,28 @@ args->rbutton4 = strdup(label); } -void ui_dialogwindow_args_set_lbutton1_states(UiDialogWindowArgs *args, const int *states) { - // TODO -} - -void ui_dialogwindow_args_set_lbutton2_states(UiDialogWindowArgs *args, const int *states) { - // TODO -} - -void ui_dialogwindow_args_set_rbutton3_states(UiDialogWindowArgs *args, const int *states) { - // TODO -} - -void ui_dialogwindow_args_set_rbutton4_states(UiDialogWindowArgs *args, const int *states) { - // TODO +void ui_dialogwindow_args_set_lbutton1_states(UiDialogWindowArgs *args, const int *states, int numstates) { + args->lbutton1_states = calloc(numstates+1, sizeof(int)); + memcpy((void*)args->lbutton1_states, states, numstates * sizeof(int)); + ((int*)args->lbutton1_states)[numstates] = -1; +} + +void ui_dialogwindow_args_set_lbutton2_states(UiDialogWindowArgs *args, const int *states, int numstates) { + args->lbutton2_states = calloc(numstates+1, sizeof(int)); + memcpy((void*)args->lbutton2_states, states, numstates * sizeof(int)); + ((int*)args->lbutton2_states)[numstates] = -1; +} + +void ui_dialogwindow_args_set_rbutton3_states(UiDialogWindowArgs *args, const int *states, int numstates) { + args->rbutton3_states = calloc(numstates+1, sizeof(int)); + memcpy((void*)args->rbutton3_states, states, numstates * sizeof(int)); + ((int*)args->rbutton3_states)[numstates] = -1; +} + +void ui_dialogwindow_args_set_rbutton4_states(UiDialogWindowArgs *args, const int *states, int numstates) { + args->rbutton4_states = calloc(numstates+1, sizeof(int)); + memcpy((void*)args->rbutton4_states, states, numstates * sizeof(int)); + ((int*)args->rbutton4_states)[numstates] = -1; } void ui_dialogwindow_args_set_default_button(UiDialogWindowArgs *args, int button) { diff -r 45ecbd284637 -r ee62f3829271 ui/common/args.h --- a/ui/common/args.h Sun Dec 14 18:55:39 2025 +0100 +++ b/ui/common/args.h Sun Dec 14 20:22:41 2025 +0100 @@ -67,10 +67,10 @@ UIEXPORT void ui_dialogwindow_args_set_lbutton2(UiDialogWindowArgs *args, const char *label); UIEXPORT void ui_dialogwindow_args_set_rbutton3(UiDialogWindowArgs *args, const char *label); UIEXPORT void ui_dialogwindow_args_set_rbutton4(UiDialogWindowArgs *args, const char *label); -UIEXPORT void ui_dialogwindow_args_set_lbutton1_states(UiDialogWindowArgs *args, const int *states); -UIEXPORT void ui_dialogwindow_args_set_lbutton2_states(UiDialogWindowArgs *args, const int *states); -UIEXPORT void ui_dialogwindow_args_set_rbutton3_states(UiDialogWindowArgs *args, const int *states); -UIEXPORT void ui_dialogwindow_args_set_rbutton4_states(UiDialogWindowArgs *args, const int *states); +UIEXPORT void ui_dialogwindow_args_set_lbutton1_states(UiDialogWindowArgs *args, const int *states, int numstates); +UIEXPORT void ui_dialogwindow_args_set_lbutton2_states(UiDialogWindowArgs *args, const int *states, int numstates); +UIEXPORT void ui_dialogwindow_args_set_rbutton3_states(UiDialogWindowArgs *args, const int *states, int numstates); +UIEXPORT void ui_dialogwindow_args_set_rbutton4_states(UiDialogWindowArgs *args, const int *states, int numstates); UIEXPORT void ui_dialogwindow_args_set_default_button(UiDialogWindowArgs *args, int button); UIEXPORT void ui_dialogwindow_args_set_width(UiDialogWindowArgs *args, int width); UIEXPORT void ui_dialogwindow_args_set_height(UiDialogWindowArgs *args, int height);