--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ui/common/args.c Sun Jul 20 22:04:39 2025 +0200 @@ -0,0 +1,1736 @@ +/* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. + * + * Copyright 2025 Olaf Wintermann. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include "args.h" + +#include <string.h> +#include <stdlib.h> + +#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) { + UiMenuItemArgs *args = malloc(sizeof(UiMenuItemArgs)); + memset(args, 0, sizeof(UiMenuItemArgs)); + return args; +} + +void ui_menuitem_args_set_label(UiMenuItemArgs *args, const char *label) { + args->label = strdup(label); +} + +void ui_menuitem_args_set_stockid(UiMenuItemArgs *args, const char *stockid) { + args->stockid = strdup(stockid); +} + +void ui_menuitem_args_set_icon(UiMenuItemArgs *args, const char *icon) { + args->icon = strdup(icon); +} + +void ui_menuitem_args_set_onclick(UiMenuItemArgs *args, ui_callback callback) { + args->onclick = callback; +} + +void ui_menuitem_args_set_onclickdata(UiMenuItemArgs *args, void *onclickdata) { + args->onclickdata = onclickdata; +} + +void ui_menuitem_args_free(UiMenuItemArgs *args) { + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free(args); +} + + +/* ---------------------------- UiMenuToggleItemArgs ---------------------------- */ + +UiMenuToggleItemArgs* ui_menutoggleitem_args_new(void) { + UiMenuToggleItemArgs *args = malloc(sizeof(UiMenuToggleItemArgs)); + memset(args, 0, sizeof(UiMenuToggleItemArgs)); + return args; +} + +void ui_menutoggleitem_args_set_label(UiMenuToggleItemArgs *args, const char *label) { + args->label = strdup(label); +} + +void ui_menutoggleitem_args_set_stockid(UiMenuToggleItemArgs *args, const char *stockid) { + args->stockid = strdup(stockid); +} + +void ui_menutoggleitem_args_set_icon(UiMenuToggleItemArgs *args, const char *icon) { + args->icon = strdup(icon); +} + +void ui_menutoggleitem_args_set_varname(UiMenuToggleItemArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_menutoggleitem_args_set_onchange(UiMenuToggleItemArgs *args, ui_callback callback) { + args->onchange = callback; +} + +void ui_menutoggleitem_args_set_onchangedata(UiMenuToggleItemArgs *args, void *onclickdata) { + args->onchangedata = onclickdata; +} + +void ui_menutoggleitem_args_free(UiMenuToggleItemArgs *args) { + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free((void*)args->varname); + free(args); +} + +/* --------------------------- UiMenuItemListArgs --------------------------- */ + +UiMenuItemListArgs* ui_menuitemlist_args_new(void) { + UiMenuItemListArgs *args = malloc(sizeof(UiMenuItemListArgs)); + memset(args, 0, sizeof(UiMenuItemListArgs)); + return args; +} + +void ui_menuitemlist_args_set_varname(UiMenuItemListArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_menuitemlist_args_set_getvalue(UiMenuItemListArgs *args, ui_getvaluefunc func) { + args->getvalue = func; +} + +void ui_menuitemlist_args_set_onselect(UiMenuItemListArgs *args, ui_callback callback) { + args->onselect = callback; +} + +void ui_menuitemlist_args_set_onselectdata(UiMenuItemListArgs *args, void *data){ + args->onselectdata = data; +} + +void ui_menuitemlist_args_set_addseparator(UiMenuItemListArgs *args, UiBool value) { + args->addseparator = value; +} + +void ui_menuitemlist_args_free(UiMenuItemListArgs *args){ + free((void*)args->varname); + free(args); +} + +/* --------------------------- UiToolbarItemArgs --------------------------- */ + +UiToolbarItemArgs* ui_toolbar_item_args_new(void) { + UiToolbarItemArgs *args = malloc(sizeof(UiToolbarItemArgs)); + memset(args, 0, sizeof(UiToolbarItemArgs)); + return args; +} + +void ui_toolbar_item_args_set_label(UiToolbarItemArgs *args, const char *label) { + args->label = strdup(label); +} + +void ui_toolbar_item_args_set_stockid(UiToolbarItemArgs *args, const char *stockid) { + args->stockid = strdup(stockid); +} + +void ui_toolbar_item_args_set_icon(UiToolbarItemArgs *args, const char *icon) { + args->icon = strdup(icon); +} + +void ui_toolbar_item_args_set_onclick(UiToolbarItemArgs *args, ui_callback callback) { + args->onclick = callback; +} + +void ui_toolbar_item_args_set_onclickdata(UiToolbarItemArgs *args, void *onclickdata) { + args->onclickdata = onclickdata; +} + +void ui_toolbar_item_args_set_groups(UiToolbarItemArgs *args, int *groups) { + // TODO +} +void ui_toolbar_item_args_free(UiToolbarItemArgs *args) { + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free(args); +} + +/* ---------------------------- UiToolbarToggleItemArgs ---------------------------- */ + +UiToolbarToggleItemArgs* ui_toolbar_toggleitem_args_new(void) { + UiToolbarToggleItemArgs *args = malloc(sizeof(UiToolbarToggleItemArgs)); + memset(args, 0, sizeof(UiToolbarToggleItemArgs)); + return args; +} + + +void ui_toolbar_toggleitem_args_set_label(UiToolbarToggleItemArgs *args, const char *label) { + args->label = strdup(label); +} + + +void ui_toolbar_toggleitem_args_set_stockid(UiToolbarToggleItemArgs *args, const char *stockid) { + args->stockid = strdup(stockid); +} + + +void ui_toolbar_toggleitem_args_set_icon(UiToolbarToggleItemArgs *args, const char *icon) { + args->icon = strdup(icon); +} + + +void ui_toolbar_toggleitem_args_set_varname(UiToolbarToggleItemArgs *args, const char *varname) { + args->varname = strdup(varname); +} + + +void ui_toolbar_toggleitem_args_set_onchange(UiToolbarToggleItemArgs *args, ui_callback callback) { + args->onchange = callback; +} + + +void ui_toolbar_toggleitem_args_set_onchangedata(UiToolbarToggleItemArgs *args, void *onchangedata) { + args->onchangedata = onchangedata; +} + + +void ui_toolbar_toggleitem_args_set_groups(UiToolbarToggleItemArgs *args, int *groups) { + // TODO +} + + +void ui_toolbar_toggleitem_args_free(UiToolbarToggleItemArgs *args) { + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free((void*)args->varname); + free(args); +} + +/* ---------------------------- UiToolbarMenuArgs ---------------------------- */ + + +UiToolbarMenuArgs* ui_toolbar_menu_args_new(void) { + UiToolbarMenuArgs *args = malloc(sizeof(UiToolbarMenuArgs)); + memset(args, 0, sizeof(UiToolbarMenuArgs)); + return args; +} + + +void ui_toolbar_menu_args_set_label(UiToolbarMenuArgs *args, const char *label) { + args->label = strdup(label); +} + + +void ui_toolbar_menu_args_set_stockid(UiToolbarMenuArgs *args, const char *stockid) { + args->stockid = strdup(stockid); +} + + +void ui_toolbar_menu_args_set_icon(UiToolbarMenuArgs *args, const char *icon) { + args->icon = strdup(icon); +} + + +void ui_toolbar_menu_args_free(UiToolbarMenuArgs *args) { + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free(args); +} + + +/* ---------------------------- UiContainerArgs ---------------------------- */ + +UiContainerArgs* ui_container_args_new(void) { + UiContainerArgs *args = malloc(sizeof(UiContainerArgs)); + memset(args, 0, sizeof(UiContainerArgs)); + return args; +} + +void ui_container_args_set_fill(UiContainerArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + +void ui_container_args_set_hexpand(UiContainerArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_container_args_set_vexpand(UiContainerArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_container_args_set_hfill(UiContainerArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_container_args_set_vfill(UiContainerArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_container_args_set_override_defaults(UiContainerArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_container_args_set_colspan(UiContainerArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_container_args_set_rowspan(UiContainerArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_container_args_set_def_hexpand(UiContainerArgs *args, UiBool value) { + args->def_hexpand = value; +} + + +void ui_container_args_set_def_vexpand(UiContainerArgs *args, UiBool value) { + args->def_vexpand = value; +} + + +void ui_container_args_set_def_hfill(UiContainerArgs *args, UiBool value) { + args->def_hfill = value; +} + + +void ui_container_args_set_def_vfill(UiContainerArgs *args, UiBool value) { + args->def_vfill = value; +} + + +void ui_container_args_set_name(UiContainerArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_container_args_set_style_class(UiContainerArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + + +void ui_container_args_set_margin(UiContainerArgs *args, int value) { + args->margin = value; +} + + +void ui_container_args_set_spacing(UiContainerArgs *args, int value) { + args->spacing = value; +} + + +void ui_container_args_set_columnspacing(UiContainerArgs *args, int value) { + args->columnspacing = value; +} + + +void ui_container_args_set_rowspacing(UiContainerArgs *args, int value) { + args->rowspacing = value; +} + + +void ui_container_args_free(UiContainerArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free(args); +} + + +/* ------------------------------- UiFrameArgs ------------------------------*/ + +UiFrameArgs* ui_frame_args_new(void) { + UiFrameArgs *args = malloc(sizeof(UiFrameArgs)); + memset(args, 0, sizeof(UiContainerArgs)); + return args; +} + + +void ui_frame_args_set_fill(UiFrameArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_frame_args_set_hexpand(UiFrameArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_frame_args_set_vexpand(UiFrameArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_frame_args_set_hfill(UiFrameArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_frame_args_set_vfill(UiFrameArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_frame_args_set_override_defaults(UiFrameArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_frame_args_set_colspan(UiFrameArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_frame_args_set_rowspan(UiFrameArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_frame_args_set_name(UiFrameArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_frame_args_set_style_class(UiFrameArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + + +void ui_frame_args_set_margin(UiFrameArgs *args, int value) { + args->margin = value; +} + + +void ui_frame_args_set_spacing(UiFrameArgs *args, int value) { + args->spacing = value; +} + + +void ui_frame_args_set_columnspacing(UiFrameArgs *args, int value) { + args->columnspacing = value; +} + + +void ui_frame_args_set_rowspacing(UiFrameArgs *args, int value) { + args->rowspacing = value; +} + + +void ui_frame_args_set_expanded(UiFrameArgs *args, UiBool value) { + args->isexpanded = value; +} + + +void ui_frame_args_set_label(UiFrameArgs *args, const char *label) { + args->label = strdup(label); +} + + +void ui_frame_args_free(UiFrameArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->label); + free(args); +} + + +/* ---------------------------- UiSidebarArgs -------------------------------*/ + +UiSidebarArgs* ui_sidebar_args_new(void) { + UiSidebarArgs *args = malloc(sizeof(UiSidebarArgs)); + memset(args, 0, sizeof(UiSidebarArgs)); + return args; +} + + +void ui_sidebar_args_set_name(UiSidebarArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_sidebar_args_set_style_class(UiSidebarArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + + +void ui_sidebar_args_set_margin(UiSidebarArgs *args, int value) { + args->margin = value; +} + + +void ui_sidebar_args_set_spacing(UiSidebarArgs *args, int value) { + args->spacing = value; +} + + +void ui_sidebar_args_free(UiSidebarArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free(args); +} + + +/* --------------------------- UiSplitPaneArgs ------------------------------*/ + +UiSplitPaneArgs* ui_splitpane_args_new(void) { + UiSplitPaneArgs *args = malloc(sizeof(UiSplitPaneArgs)); + memset(args, 0, sizeof(UiSplitPaneArgs)); + return args; +} + + +void ui_splitpane_args_set_fill(UiSplitPaneArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_splitpane_args_set_hexpand(UiSplitPaneArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_splitpane_args_set_vexpand(UiSplitPaneArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_splitpane_args_set_hfill(UiSplitPaneArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_splitpane_args_set_vfill(UiSplitPaneArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_splitpane_args_set_override_defaults(UiSplitPaneArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_splitpane_args_set_colspan(UiSplitPaneArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_splitpane_args_set_rowspan(UiSplitPaneArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_splitpane_args_set_name(UiSplitPaneArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_splitpane_args_set_style_class(UiSplitPaneArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + + +void ui_splitpane_args_set_margin(UiSplitPaneArgs *args, int value) { + args->margin = value; +} + + +void ui_splitpane_args_set_spacing(UiSplitPaneArgs *args, int value) { + args->spacing = value; +} + + +void ui_splitpane_args_set_columnspacing(UiSplitPaneArgs *args, int value) { + args->columnspacing = value; +} + + +void ui_splitpane_args_set_rowspacing(UiSplitPaneArgs *args, int value) { + args->rowspacing = value; +} + + +void ui_splitpane_args_set_initial_position(UiSplitPaneArgs *args, int pos) { + args->initial_position = pos; +} + + +void ui_splitpane_args_set_varname(UiSplitPaneArgs *args, const char *varname) { + args->varname = strdup(varname); +} + + +void ui_splitpane_args_set_value(UiSplitPaneArgs *args, UiInteger *value) { + args->value = value; +} + +void ui_splitpane_args_set_max_panes(UiSplitPaneArgs *args, int max) { + args->max_panes = max; +} + + +void ui_splitpane_args_free(UiSplitPaneArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + free(args); +} + + +/* ------------------------- UiLabelArgs ----------------------------*/ + + +UiLabelArgs* ui_label_args_new(void) { + UiLabelArgs *args = malloc(sizeof(UiLabelArgs)); + memset(args, 0, sizeof(UiLabelArgs)); + return args; +} + + +void ui_label_args_set_fill(UiLabelArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_label_args_set_hexpand(UiLabelArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_label_args_set_vexpand(UiLabelArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_label_args_set_hfill(UiLabelArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_label_args_set_vfill(UiLabelArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_label_args_set_override_defaults(UiLabelArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_label_args_set_colspan(UiLabelArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_label_args_set_rowspan(UiLabelArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_label_args_set_name(UiLabelArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_label_args_set_style_class(UiLabelArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_label_args_set_label(UiLabelArgs *args, const char *label){ + args->label = strdup(label); +} + + +void ui_label_args_set_align(UiLabelArgs *args, UiAlignment align) { + args->align = align; +} + +void ui_label_args_set_style(UiLabelArgs *args, UiLabelStyle style) { + args->style = style; +} + +void ui_label_args_set_varname(UiLabelArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_label_args_set_value(UiLabelArgs *args, UiString *value) { + args->value = value; +} + +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(args); +} + + +/* ------------------------- UiProgressbarArgs ----------------------------*/ + + +UiProgressbarArgs* ui_progressbar_args_new(void) { + UiProgressbarArgs *args = malloc(sizeof(UiProgressbarArgs)); + memset(args, 0, sizeof(UiProgressbarArgs)); + return args; +} + + +void ui_progressbar_args_set_fill(UiProgressbarArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_progressbar_args_set_hexpand(UiProgressbarArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_progressbar_args_set_vexpand(UiProgressbarArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_progressbar_args_set_hfill(UiProgressbarArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_progressbar_args_set_vfill(UiProgressbarArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_progressbar_args_set_override_defaults(UiProgressbarArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_progressbar_args_set_colspan(UiProgressbarArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_progressbar_args_set_rowspan(UiProgressbarArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_progressbar_args_set_name(UiProgressbarArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_progressbar_args_set_style_class(UiProgressbarArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_progressbar_args_set_min(UiProgressbarArgs *args, double min) { + args->min = min; +} + +void ui_progressbar_args_set_max(UiProgressbarArgs *args, double max) { + args->max = max; +} + +void ui_progressbar_args_set_varname(UiProgressbarArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_progressbar_args_set_value(UiProgressbarArgs *args, UiDouble *value) { + args->value = value; +} + +void ui_progressbar_args_free(UiProgressbarArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + free(args); +} + + +/* ------------------------- UiProgressbarSpinnerArgs ----------------------------*/ + +UiProgressbarSpinnerArgs* ui_progress_spinner_args_new(void) { + UiProgressbarSpinnerArgs *args = malloc(sizeof(UiProgressbarSpinnerArgs)); + memset(args, 0, sizeof(UiProgressbarSpinnerArgs)); + return args; +} + +void ui_progress_spinner_args_set_fill(UiProgressbarSpinnerArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + +void ui_progress_spinner_args_set_hexpand(UiProgressbarSpinnerArgs *args, UiBool value) { + args->hexpand = value; +} + +void ui_progress_spinner_args_set_vexpand(UiProgressbarSpinnerArgs *args, UiBool value) { + args->vexpand = value; +} + +void ui_progress_spinner_args_set_hfill(UiProgressbarSpinnerArgs *args, UiBool value) { + args->hfill = value; +} + +void ui_progress_spinner_args_set_vfill(UiProgressbarSpinnerArgs *args, UiBool value) { + args->vfill = value; +} + +void ui_progress_spinner_args_set_override_defaults(UiProgressbarSpinnerArgs *args, UiBool value) { + args->override_defaults = value; +} + +void ui_progress_spinner_args_set_colspan(UiProgressbarSpinnerArgs *args, int colspan) { + args->colspan = colspan; +} + +void ui_progress_spinner_args_set_rowspan(UiProgressbarSpinnerArgs *args, int rowspan) { + args->rowspan = rowspan; +} + +void ui_progress_spinner_args_set_name(UiProgressbarSpinnerArgs *args, const char *name) { + args->name = strdup(name); +} + +void ui_progress_spinner_args_set_style_class(UiProgressbarSpinnerArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_progress_spinner_args_set_varname(UiProgressbarSpinnerArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_progress_spinner_args_set_value(UiProgressbarSpinnerArgs *args, UiInteger *value) { + args->value = value; +} + +void ui_progress_spinner_args_free(UiProgressbarSpinnerArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + free(args); +} + + +/* ---------------------------- UiButtonArgs -------------------------------*/ + +UiButtonArgs* ui_button_args_new(void) { + UiButtonArgs *args = malloc(sizeof(UiButtonArgs)); + memset(args, 0, sizeof(UiButtonArgs)); + return args; +} + + +void ui_button_args_set_fill(UiButtonArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_button_args_set_hexpand(UiButtonArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_button_args_set_vexpand(UiButtonArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_button_args_set_hfill(UiButtonArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_button_args_set_vfill(UiButtonArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_button_args_set_override_defaults(UiButtonArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_button_args_set_colspan(UiButtonArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_button_args_set_rowspan(UiButtonArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_button_args_set_name(UiButtonArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_button_args_set_style_class(UiButtonArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_button_args_set_label(UiButtonArgs *args, const char *label){ + args->label = strdup(label); +} + + +void ui_button_args_set_stockid(UiButtonArgs *args, const char *stockid){ + args->stockid = strdup(stockid); +} + + +void ui_button_args_set_icon(UiButtonArgs *args, const char *icon){ + args->icon = strdup(icon); +} + + +void ui_button_args_set_labeltype(UiButtonArgs *args, int labeltype){ + args->labeltype = labeltype; +} + +void ui_button_args_set_onclick(UiButtonArgs *args, ui_callback callback){ + args->onclick = callback; +} + + +void ui_button_args_set_onclickdata(UiButtonArgs *args, void *onclickdata){ + args->onclickdata = onclickdata; +} + +void ui_button_args_set_groups(UiButtonArgs *args, int *groups){ + // TODO +} + +void ui_button_args_free(UiButtonArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free((void*)args->groups); + free(args); +} + + +/* ------------------------- UiToggleArgs ----------------------------*/ + + +UiToggleArgs* ui_toggle_args_new(void) { + UiToggleArgs *args = malloc(sizeof(UiToggleArgs)); + memset(args, 0, sizeof(UiToggleArgs)); + return args; +} + + +void ui_toggle_args_set_fill(UiToggleArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_toggle_args_set_hexpand(UiToggleArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_toggle_args_set_vexpand(UiToggleArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_toggle_args_set_hfill(UiToggleArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_toggle_args_set_vfill(UiToggleArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_toggle_args_set_override_defaults(UiToggleArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_toggle_args_set_colspan(UiToggleArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_toggle_args_set_rowspan(UiToggleArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_toggle_args_set_name(UiToggleArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_toggle_args_set_style_class(UiToggleArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_toggle_args_set_label(UiToggleArgs *args, const char *label){ + args->label = strdup(label); +} + + +void ui_toggle_args_set_stockid(UiToggleArgs *args, const char *stockid){ + args->stockid = strdup(stockid); +} + + +void ui_toggle_args_set_icon(UiToggleArgs *args, const char *icon){ + args->icon = strdup(icon); +} + + +void ui_toggle_args_set_labeltype(UiToggleArgs *args, int labeltype){ + args->labeltype = labeltype; +} + +void ui_toggle_args_set_onchange(UiToggleArgs *args, ui_callback callback){ + args->onchange = callback; +} + + +void ui_toggle_args_set_onchangedata(UiToggleArgs *args, void *onchangedata){ + args->onchangedata = onchangedata; +} + +void ui_toggle_args_set_varname(UiToggleArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_toggle_args_set_value(UiToggleArgs *args, UiInteger *value) { + args->value = value; +} + +void ui_toggle_args_set_enablegroup(UiToggleArgs *args, int group) { + args->enable_group = group; +} + +void ui_toggle_args_set_groups(UiToggleArgs *args, int *groups){ + // TODO +} + +void ui_toggle_args_free(UiToggleArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->label); + free((void*)args->stockid); + free((void*)args->icon); + free((void*)args->varname); + free((void*)args->groups); + free(args); +} + + +/* ------------------------- UiListArgs ----------------------------*/ + +UiListArgs* ui_list_args_new(void) { + UiListArgs *args = malloc(sizeof(UiListArgs)); + memset(args, 0, sizeof(UiListArgs)); + return args; +} + +void ui_list_args_set_fill(UiListArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + +void ui_list_args_set_hexpand(UiListArgs *args, UiBool value) { + args->hexpand = value; +} + +void ui_list_args_set_vexpand(UiListArgs *args, UiBool value) { + args->vexpand = value; +} + +void ui_list_args_set_hfill(UiListArgs *args, UiBool value) { + args->hfill = value; +} + +void ui_list_args_set_vfill(UiListArgs *args, UiBool value) { + args->vfill = value; +} + +void ui_list_args_set_override_defaults(UiListArgs *args, UiBool value) { + args->override_defaults = value; +} + +void ui_list_args_set_colspan(UiListArgs *args, int colspan) { + args->colspan = colspan; +} + +void ui_list_args_set_rowspan(UiListArgs *args, int rowspan) { + args->rowspan = rowspan; +} + +void ui_list_args_set_name(UiListArgs *args, const char *name) { + args->name = strdup(name); +} + +void ui_list_args_set_style_class(UiListArgs *args, const char *classname) { + args->style_class = classname; +} + +void ui_list_args_set_varname(UiListArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_list_args_set_value(UiListArgs *args, UiList *value) { + args->list = value; +} + +void ui_list_args_set_model(UiListArgs *args, UiModel *model) { + args->model = model; +} + +void ui_list_args_set_static_elements(UiListArgs *args, char **strarray, size_t nelm) { + char **array = calloc(nelm, sizeof(char*)); + for(int i=0;i<nelm;i++) { + array[i] = strdup(strarray[i]); + } + args->static_elements = array; + args->static_nelm = nelm; +} + +void ui_list_args_set_getvalue_func(UiListArgs *args, ui_getvaluefunc getvalue) { + args->getvalue = getvalue; +} + +void ui_list_args_set_getvalue_func2(UiListArgs *args, ui_getvaluefunc2 getvalue) { + args->getvalue2 = getvalue; +} + +void ui_list_args_set_getvalue_data(UiListArgs *args, void *userdata) { + args->getvalue2data = userdata; +} + +void ui_list_args_set_onactivate(UiListArgs *args, ui_callback callback) { + args->onactivate = callback; +} + +void ui_list_args_set_onactivatedata(UiListArgs *args, void *userdata) { + args->onactivatedata = userdata; +} + +void ui_list_args_set_onselection(UiListArgs *args, ui_callback callback) { + args->onselection = callback; +} + +void ui_list_args_set_onselectiondata(UiListArgs *args, void *userdata) { + args->onselectiondata = userdata; +} + +void ui_list_args_set_ondragstart(UiListArgs *args, ui_callback callback) { + args->ondragstart = callback; +} + +void ui_list_args_set_ondragstartdata(UiListArgs *args, void *userdata) { + args->ondragstartdata = userdata; +} + +void ui_list_args_set_ondragcomplete(UiListArgs *args, ui_callback callback) { + args->ondragcomplete = callback; +} + +void ui_list_args_set_ondragcompletedata(UiListArgs *args, void *userdata) { + args->ondragcompletedata = userdata; +} + +void ui_list_args_set_ondrop(UiListArgs *args, ui_callback callback) { + args->ondrop = callback; +} + +void ui_list_args_set_ondropdata(UiListArgs *args, void *userdata) { + args->ondropdata = userdata; +} + +void ui_list_args_set_multiselection(UiListArgs *args, UiBool multiselection) { + args->multiselection = multiselection; +} + +void ui_list_args_set_contextmenu(UiListArgs *args, UiMenuBuilder *menubuilder) { + args->contextmenu = menubuilder; +} + +void ui_list_args_set_groups(UiListArgs *args, int *groups) { + // TODO +} + +void ui_list_args_free(UiListArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + if(args->static_elements) { + for(int i=0;i<args->static_nelm;i++) { + free(args->static_elements[i]); + } + free(args->static_elements); + } + free(args); +} + + + +/* ---------------------- SurceList ------------------------------------- */ + +UiSourceListArgs* ui_sourcelist_args_new(void) { + UiSourceListArgs *args = malloc(sizeof(UiSourceListArgs)); + memset(args, 0, sizeof(UiSourceListArgs)); + return args; +} + + +void ui_sourcelist_args_set_fill(UiSourceListArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_sourcelist_args_set_hexpand(UiSourceListArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_sourcelist_args_set_vexpand(UiSourceListArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_sourcelist_args_set_hfill(UiSourceListArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_sourcelist_args_set_vfill(UiSourceListArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_sourcelist_args_set_override_defaults(UiSourceListArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_sourcelist_args_set_colspan(UiSourceListArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_sourcelist_args_set_rowspan(UiSourceListArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_sourcelist_args_set_name(UiSourceListArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_sourcelist_args_set_style_class(UiSourceListArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +UIEXPORT void ui_sourcelist_args_set_static_sublists(UiSourceListArgs *args, UiSubList *sublists, size_t numsublists) { + args->sublists = calloc(numsublists, sizeof(UiSubList)); + memcpy(args->sublists, sublists, numsublists * sizeof(UiSubList)); + args->numsublists = numsublists; +} + +void ui_sourcelist_args_set_varname(UiSourceListArgs *args, const char *varname) { + args->varname = strdup(varname); +} + + +void ui_sourcelist_args_set_dynamic_sublists(UiSourceListArgs *args, UiList *value) { + args->dynamic_sublist = value; +} + + +void ui_sourcelist_args_set_getvalue_func(UiSourceListArgs *args, ui_sublist_getvalue_func getvalue) { + args->getvalue = getvalue; +} + +void ui_sourcelist_args_set_getvalue_userdata(UiSourceListArgs *args, void *userdata) { + args->getvaluedata = userdata; +} + +void ui_sourcelist_args_set_onactivate(UiSourceListArgs *args, ui_callback callback) { + args->onactivate = callback; +} + + +void ui_sourcelist_args_set_onactivatedata(UiSourceListArgs *args, void *userdata) { + args->onactivatedata = userdata; +} + + +void ui_sourcelist_args_set_onbuttonclick(UiSourceListArgs *args, ui_callback callback) { + args->onbuttonclick = callback; + +} + + +void ui_sourcelist_args_set_onbuttonclickdata(UiSourceListArgs *args, void *userdata) { + args->onbuttonclickdata = userdata; +} + + +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(args); +} + + +/* ------------------------- UiTextAreaArgs ----------------------------*/ + +UiTextAreaArgs* ui_textarea_args_new(void) { + UiTextAreaArgs *args = malloc(sizeof(UiTextAreaArgs)); + memset(args, 0, sizeof(UiTextAreaArgs)); + return args; +} + + +void ui_textarea_args_set_fill(UiTextAreaArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_textarea_args_set_hexpand(UiTextAreaArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_textarea_args_set_vexpand(UiTextAreaArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_textarea_args_set_hfill(UiTextAreaArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_textarea_args_set_vfill(UiTextAreaArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_textarea_args_set_override_defaults(UiTextAreaArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_textarea_args_set_colspan(UiTextAreaArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_textarea_args_set_rowspan(UiTextAreaArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_textarea_args_set_name(UiTextAreaArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_textarea_args_set_style_class(UiTextAreaArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_textarea_args_set_onchange(UiTextAreaArgs *args, ui_callback callback){ + args->onchange = callback; +} + + +void ui_textarea_args_set_onchangedata(UiTextAreaArgs *args, void *onchangedata){ + args->onchangedata = onchangedata; +} + +void ui_textarea_args_set_varname(UiTextAreaArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_textarea_args_set_value(UiTextAreaArgs *args, UiText *value) { + args->value = value; +} + +void ui_textarea_args_set_groups(UiTextAreaArgs *args, int *groups){ + // TODO +} + +void ui_textarea_args_free(UiTextAreaArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + free((void*)args->groups); + free(args); +} + + + +/* ------------------------- UiTextFieldArgs ----------------------------*/ + +UiTextFieldArgs* ui_textfield_args_new(void) { + UiTextFieldArgs *args = malloc(sizeof(UiTextFieldArgs)); + memset(args, 0, sizeof(UiTextFieldArgs)); + return args; +} + + +void ui_textfield_args_set_fill(UiTextFieldArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_textfield_args_set_hexpand(UiTextFieldArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_textfield_args_set_vexpand(UiTextFieldArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_textfield_args_set_hfill(UiTextFieldArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_textfield_args_set_vfill(UiTextFieldArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_textfield_args_set_override_defaults(UiTextFieldArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_textfield_args_set_colspan(UiTextFieldArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_textfield_args_set_rowspan(UiTextFieldArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_textfield_args_set_name(UiTextFieldArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_textfield_args_set_style_class(UiTextFieldArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_textfield_args_set_onchange(UiTextFieldArgs *args, ui_callback callback){ + args->onchange = callback; +} + + +void ui_textfield_args_set_onchangedata(UiTextFieldArgs *args, void *onchangedata){ + args->onchangedata = onchangedata; +} + +void ui_textfield_args_set_onactivate(UiTextFieldArgs *args, ui_callback callback){ + args->onactivate = callback; +} + + +void ui_textfield_args_set_onactivatedata(UiTextFieldArgs *args, void *onactivatedata){ + args->onactivatedata = onactivatedata; +} + +void ui_textfield_args_set_varname(UiTextFieldArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_textfield_args_set_value(UiTextFieldArgs *args, UiString *value) { + args->value = value; +} + +void ui_textfield_args_set_groups(UiTextFieldArgs *args, int *groups){ + // TODO +} + +void ui_textfield_args_free(UiTextFieldArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + free((void*)args->groups); + free(args); +} + + +/* ------------------------- UiWebviewArgs ----------------------------*/ + +UiWebviewArgs* ui_webview_args_new(void) { + UiWebviewArgs *args = malloc(sizeof(UiWebviewArgs)); + memset(args, 0, sizeof(UiWebviewArgs)); + return args; +} + + +void ui_webview_args_set_fill(UiWebviewArgs *args, UiBool fill) { + args->fill = fill ? UI_ON : UI_OFF; +} + + +void ui_webview_args_set_hexpand(UiWebviewArgs *args, UiBool value) { + args->hexpand = value; +} + + +void ui_webview_args_set_vexpand(UiWebviewArgs *args, UiBool value) { + args->vexpand = value; +} + + +void ui_webview_args_set_hfill(UiWebviewArgs *args, UiBool value) { + args->hfill = value; +} + + +void ui_webview_args_set_vfill(UiWebviewArgs *args, UiBool value) { + args->vfill = value; +} + + +void ui_webview_args_set_override_defaults(UiWebviewArgs *args, UiBool value) { + args->override_defaults = value; +} + + +void ui_webview_args_set_colspan(UiWebviewArgs *args, int colspan) { + args->colspan = colspan; +} + + +void ui_webview_args_set_rowspan(UiWebviewArgs *args, int rowspan) { + args->rowspan = rowspan; +} + + +void ui_webview_args_set_name(UiWebviewArgs *args, const char *name) { + args->name = strdup(name); +} + + +void ui_webview_args_set_style_class(UiWebviewArgs *args, const char *classname) { + args->style_class = strdup(classname); +} + +void ui_webview_args_set_varname(UiWebviewArgs *args, const char *varname) { + args->varname = strdup(varname); +} + +void ui_webview_args_set_value(UiWebviewArgs *args, UiGeneric *value) { + args->value = value; +} + +void ui_webview_args_set_groups(UiWebviewArgs *args, int *groups){ + // TODO +} + +void ui_webview_args_free(UiWebviewArgs *args) { + free((void*)args->name); + free((void*)args->style_class); + free((void*)args->varname); + free((void*)args->groups); + free(args); +} +