Fri, 13 Jun 2025 21:37:00 +0200
add wrapper for sidebar and splitpane args
| ui/common/args.c | file | annotate | diff | comparison | revisions | |
| ui/common/args.h | file | annotate | diff | comparison | revisions |
--- a/ui/common/args.c Thu Jun 12 20:55:41 2025 +0200 +++ b/ui/common/args.c Fri Jun 13 21:37:00 2025 +0200 @@ -344,6 +344,148 @@ } +/* ---------------------------- 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); +} + + /* ---------------------------- UiButtonArgs -------------------------------*/ UiButtonArgs* ui_button_args_new(void) {
--- a/ui/common/args.h Thu Jun 12 20:55:41 2025 +0200 +++ b/ui/common/args.h Fri Jun 13 21:37:00 2025 +0200 @@ -104,6 +104,33 @@ UIEXPORT void ui_frame_args_set_label(UiFrameArgs *args, const char *label); UIEXPORT void ui_frame_args_free(UiFrameArgs *args); +UIEXPORT UiSidebarArgs* ui_sidebar_args_new(void); +UIEXPORT void ui_sidebar_args_set_name(UiSidebarArgs *args, const char *name); +UIEXPORT void ui_sidebar_args_set_style_class(UiSidebarArgs *args, const char *classname); +UIEXPORT void ui_sidebar_args_set_margin(UiSidebarArgs *args, int value); +UIEXPORT void ui_sidebar_args_set_spacing(UiSidebarArgs *args, int value); +UIEXPORT void ui_sidebar_args_free(UiSidebarArgs *args); + +UIEXPORT UiSplitPaneArgs* ui_splitpane_args_new(void); +UIEXPORT void ui_splitpane_args_set_fill(UiSplitPaneArgs *args, UiBool fill); +UIEXPORT void ui_splitpane_args_set_hexpand(UiSplitPaneArgs *args, UiBool value); +UIEXPORT void ui_splitpane_args_set_vexpand(UiSplitPaneArgs *args, UiBool value); +UIEXPORT void ui_splitpane_args_set_hfill(UiSplitPaneArgs *args, UiBool value); +UIEXPORT void ui_splitpane_args_set_vfill(UiSplitPaneArgs *args, UiBool value); +UIEXPORT void ui_splitpane_args_set_override_defaults(UiSplitPaneArgs *args, UiBool value); +UIEXPORT void ui_splitpane_args_set_colspan(UiSplitPaneArgs *args, int colspan); +UIEXPORT void ui_splitpane_args_set_rowspan(UiSplitPaneArgs *args, int rowspan); +UIEXPORT void ui_splitpane_args_set_name(UiSplitPaneArgs *args, const char *name); +UIEXPORT void ui_splitpane_args_set_style_class(UiSplitPaneArgs *args, const char *classname); +UIEXPORT void ui_splitpane_args_set_margin(UiSplitPaneArgs *args, int value); +UIEXPORT void ui_splitpane_args_set_spacing(UiSplitPaneArgs *args, int value); +UIEXPORT void ui_splitpane_args_set_columnspacing(UiSplitPaneArgs *args, int value); +UIEXPORT void ui_splitpane_args_set_rowspacing(UiSplitPaneArgs *args, int value); +UIEXPORT void ui_splitpane_args_set_initial_position(UiSplitPaneArgs *args, int pos); +UIEXPORT void ui_splitpane_args_set_varname(UiSplitPaneArgs *args, const char *varname); +UIEXPORT void ui_splitpane_args_set_value(UiSplitPaneArgs *args, UiInteger *value); +UIEXPORT void ui_splitpane_args_set_max_panes(UiSplitPaneArgs *args, int max); +UIEXPORT void ui_splitpane_args_free(UiSplitPaneArgs *args); UIEXPORT UiButtonArgs* ui_button_args_new(void); UIEXPORT void ui_button_args_set_fill(UiButtonArgs *args, UiBool fill);