ui/common/args.c

changeset 117
b174e721663e
parent 115
e57ca2747782
--- a/ui/common/args.c	Wed Dec 17 22:36:41 2025 +0100
+++ b/ui/common/args.c	Sat Dec 27 22:47:56 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) {

mercurial