fix some common/args.c TODOs

Sun, 14 Dec 2025 20:22:41 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sun, 14 Dec 2025 20:22:41 +0100
changeset 1006
ee62f3829271
parent 1005
45ecbd284637
child 1007
a2070417b280

fix some common/args.c TODOs

ui/common/args.c file | annotate | diff | comparison | revisions
ui/common/args.h file | annotate | diff | comparison | revisions
--- 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) {
--- 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);

mercurial