ui/common/args.c

changeset 1073
18c476d8b24f
parent 1006
ee62f3829271
--- a/ui/common/args.c	Thu Feb 12 15:54:48 2026 +0100
+++ b/ui/common/args.c	Sat Feb 21 20:02:31 2026 +0100
@@ -519,10 +519,17 @@
     args->rowspacing = value;
 }
 
+void ui_container_args_set_visibility_states(UiContainerArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 
 void ui_container_args_free(UiContainerArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -637,10 +644,17 @@
     args->label = strdup(label);
 }
 
+void ui_frame_args_set_visibility_states(UiFrameArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_frame_args_free(UiFrameArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->label);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -797,11 +811,18 @@
     args->max_panes = max;
 }
 
+void ui_splitpane_args_set_visibility_states(UiSplitPaneArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_splitpane_args_free(UiSplitPaneArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
     free((void*)args->position_property);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -915,10 +936,17 @@
     args->subcontainer = subcontainer;
 }
 
+void ui_tabview_args_set_visibility_states(UiTabViewArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_tabview_args_free(UiTabViewArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1097,11 +1125,18 @@
     args->value = value;
 }
 
+void ui_label_args_set_visibility_states(UiLabelArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_label_args_free(UiLabelArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->label);
     free((void*)args->varname);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1200,10 +1235,17 @@
     args->value = value;
 }
 
+void ui_progressbar_args_set_visibility_states(UiProgressbarArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_progressbar_args_free(UiProgressbarArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1284,10 +1326,17 @@
     args->value = value;
 }
 
+void ui_progress_spinner_args_set_visibility_states(UiProgressbarSpinnerArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_progress_spinner_args_free(UiProgressbarSpinnerArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1397,6 +1446,12 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_button_args_set_visibility_states(UiButtonArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_button_args_free(UiButtonArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
@@ -1404,6 +1459,7 @@
     free((void*)args->icon);
     free((void*)args->tooltip);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1520,6 +1576,12 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_toggle_args_set_visibility_states(UiToggleArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_toggle_args_free(UiToggleArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
@@ -1528,6 +1590,7 @@
     free((void*)args->tooltip);
     free((void*)args->varname);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1647,6 +1710,12 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_linkbutton_args_set_visibility_states(UiLinkButtonArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_linkbutton_args_free(UiLinkButtonArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
@@ -1829,6 +1898,12 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_list_args_set_visibility_states(UiListArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_list_args_free(UiListArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
@@ -1840,6 +1915,7 @@
         free(args->static_elements);
     }
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -1961,7 +2037,6 @@
     
 }
 
-
 void ui_sourcelist_args_set_onbuttonclickdata(UiSourceListArgs *args, void *userdata) {
     args->onbuttonclickdata = userdata;
 }
@@ -1974,12 +2049,19 @@
     args->header_is_item = value;
 }
 
+void ui_sourcelist_args_set_visibility_states(UiSourceListArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_sourcelist_args_free(UiSourceListArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
     free((void*)args->sublists);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -2085,11 +2167,18 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_textarea_args_set_visibility_states(UiTextAreaArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_textarea_args_free(UiTextAreaArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -2205,11 +2294,18 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_textfield_args_set_visibility_states(UiTextFieldArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_textfield_args_free(UiTextFieldArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -2328,11 +2424,18 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_spinbox_args_set_visibility_states(UiSpinBoxArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_spinbox_args_free(UiSpinBoxArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 
@@ -2428,11 +2531,18 @@
     ((int*)args->states)[numstates] = -1;
 }
 
+void ui_webview_args_set_visibility_states(UiWebviewArgs *args, int *states, int numstates) {
+    args->visibility_states = calloc(numstates+1, sizeof(int));
+    memcpy((void*)args->visibility_states, states, numstates * sizeof(int));
+    ((int*)args->visibility_states)[numstates] = -1;
+}
+
 void ui_webview_args_free(UiWebviewArgs *args) {
     free((void*)args->name);
     free((void*)args->style_class);
     free((void*)args->varname);
     free((void*)args->states);
+    free((void*)args->visibility_states);
     free(args);
 }
 

mercurial