ui/common/args.c

changeset 675
b612026b060b
parent 668
e6a1bcfc0dd9
child 694
1493b6ca77e5
--- a/ui/common/args.c	Sun Jul 20 14:04:19 2025 +0200
+++ b/ui/common/args.c	Sun Jul 20 17:42:11 2025 +0200
@@ -33,6 +33,156 @@
 
 #include "../ui/container.h"
 
+
+/* ---------------------------- UiDialogArgs ---------------------------- */
+
+UiDialogArgs* ui_dialog_args_new(void) {
+    UiDialogArgs *args = malloc(sizeof(UiDialogArgs));
+    memset(args, 0, sizeof(UiDialogArgs));
+    return args;
+}
+
+void ui_dialog_args_set_title(UiDialogArgs *args, const char *title) {
+    args->title = strdup(title);
+}
+
+void ui_dialog_args_set_content(UiDialogArgs *args, const char *str) {
+    args->content = strdup(str);
+}
+
+void ui_dialog_args_set_button1_label(UiDialogArgs *args, const char *label) {
+    args->button1_label = strdup(label);
+}
+
+void ui_dialog_args_set_button2_label(UiDialogArgs *args, const char *label) {
+    args->button2_label = strdup(label);
+}
+
+void ui_dialog_args_set_closebutton_label(UiDialogArgs *args, const char *label) {
+    args->closebutton_label = strdup(label);
+}
+
+void ui_dialog_args_set_input_value(UiDialogArgs *args, const char *value) {
+    args->input_value = strdup(value);
+}
+
+void ui_dialog_args_set_input(UiDialogArgs *args, UiBool input) {
+    args->input = input;
+}
+
+void ui_dialog_args_set_password(UiDialogArgs *args, UiBool password) {
+    args->password = password;
+}
+
+void ui_dialog_args_set_result(UiDialogArgs *args, ui_callback cb) {
+    args->result = cb;
+}
+
+void ui_dialog_args_set_resultdata(UiDialogArgs *args, void *userdata) {
+    args->resultdata = userdata;
+}
+
+void ui_dialog_args_free(UiDialogArgs *args) {
+    free((void*)args->title);
+    free((void*)args->button1_label);
+    free((void*)args->button2_label);
+    free((void*)args->content);
+    free((void*)args->closebutton_label);
+    free((void*)args->input_value);
+    free(args);
+}
+
+
+/* -------------------------- UiDialogWindowArgs -------------------------- */
+
+UiDialogWindowArgs* ui_dialogwindow_args_new(void) {
+    UiDialogWindowArgs *args = malloc(sizeof(UiDialogWindowArgs));
+    memset(args, 0, sizeof(UiDialogWindowArgs));
+    return args;
+}
+
+void ui_dialogwindow_args_set_modal(UiDialogWindowArgs *args, UiTri value) {
+    args->modal = value;
+}
+
+void ui_dialogwindow_args_set_titlebar_buttons(UiDialogWindowArgs *args, UiTri value) {
+    args->titlebar_buttons = value;
+}
+
+void ui_dialogwindow_args_set_show_closebutton(UiDialogWindowArgs *args, UiTri value) {
+    args->show_closebutton = value;
+}
+
+void ui_dialogwindow_args_set_title(UiDialogWindowArgs *args, const char *title) {
+    args->title = strdup(title);
+}
+
+void ui_dialogwindow_args_set_lbutton1(UiDialogWindowArgs *args, const char *label) {
+    args->lbutton1 = strdup(label);
+}
+
+void ui_dialogwindow_args_set_lbutton2(UiDialogWindowArgs *args, const char *label) {
+    args->lbutton2 = strdup(label);
+}
+
+void ui_dialogwindow_args_set_rbutton3(UiDialogWindowArgs *args, const char *label) {
+    args->rbutton3 = strdup(label);
+}
+
+void ui_dialogwindow_args_set_rbutton4(UiDialogWindowArgs *args, const char *label) {
+    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_default_button(UiDialogWindowArgs *args, int button) {
+    args->default_button = button;
+}
+
+void ui_dialogwindow_args_set_width(UiDialogWindowArgs *args, int width) {
+    args->width = width;
+}
+
+void ui_dialogwindow_args_set_height(UiDialogWindowArgs *args, int height) {
+    args->height = height;
+}
+
+void ui_dialogwindow_args_set_onclick(UiDialogWindowArgs *args, ui_callback cb) {
+    args->onclick = cb;
+}
+
+void ui_dialogwindow_args_set_onclickdata(UiDialogWindowArgs *args, void *userdata) {
+    args->onclickdata = userdata;
+}
+
+void ui_dialogwindow_args_free(UiDialogWindowArgs *args) {
+    free((void*)args->title);
+    free((void*)args->lbutton1);
+    free((void*)args->lbutton2);
+    free((void*)args->rbutton3);
+    free((void*)args->rbutton4);
+    free((void*)args->lbutton1_groups);
+    free((void*)args->lbutton2_groups);
+    free((void*)args->rbutton3_groups);
+    free((void*)args->rbutton4_groups);
+    free(args);
+}
+
+
 /* ---------------------------- UiMenuItemArgs ---------------------------- */
 
 UiMenuItemArgs* ui_menuitem_args_new(void) {

mercurial