--- a/ui/gtk/display.c Sat Apr 05 17:57:04 2025 +0200 +++ b/ui/gtk/display.c Sun Jul 20 22:04:39 2025 +0200 @@ -46,19 +46,19 @@ #endif } -UIWIDGET ui_label_create(UiObject *obj, UiLabelArgs args) { +UIWIDGET ui_label_create(UiObject *obj, UiLabelArgs *args) { UiObject* current = uic_current_obj(obj); const char *css_class = NULL; char *markup = NULL; - if(args.label) { + if(args->label) { #if GTK_MAJOR_VERSION < 3 - switch(args.style) { + switch(args->style) { case UI_LABEL_STYLE_DEFAULT: break; case UI_LABEL_STYLE_TITLE: { - cxmutstr m = cx_asprintf("<b>%s</b>", args.label); + cxmutstr m = cx_asprintf("<b>%s</b>", args->label); markup = m.ptr; - args.label = NULL; + args->label = NULL; } case UI_LABEL_STYLE_SUBTITLE: { break; @@ -68,7 +68,7 @@ } } # else - switch(args.style) { + switch(args->style) { case UI_LABEL_STYLE_DEFAULT: break; case UI_LABEL_STYLE_TITLE: { css_class = "ui_label_title"; @@ -87,7 +87,7 @@ } - GtkWidget *widget = gtk_label_new(args.label); + GtkWidget *widget = gtk_label_new(args->label); if(markup) { gtk_label_set_markup(GTK_LABEL(widget), markup); free(markup); @@ -97,7 +97,7 @@ WIDGET_ADD_CSS_CLASS(widget, css_class); } - switch(args.align) { + switch(args->align) { case UI_ALIGN_DEFAULT: break; case UI_ALIGN_LEFT: set_alignment(widget, 0, .5); break; case UI_ALIGN_RIGHT: set_alignment(widget, 1, .5); break; @@ -105,7 +105,7 @@ } - UiVar* var = uic_widget_var(obj->ctx, current->ctx, args.value, args.varname, UI_VAR_STRING); + UiVar* var = uic_widget_var(obj->ctx, current->ctx, args->value, args->varname, UI_VAR_STRING); if(var) { UiString* value = (UiString*)var->value; value->obj = widget; @@ -113,19 +113,19 @@ value->set = ui_label_set; } - UI_APPLY_LAYOUT1(current, args); - current->container->add(current->container, widget, FALSE); + UI_APPLY_LAYOUT2(current, args); + current->container->add(current->container, widget); return widget; } -UIWIDGET ui_llabel_create(UiObject* obj, UiLabelArgs args) { - args.align = UI_ALIGN_LEFT; +UIWIDGET ui_llabel_create(UiObject* obj, UiLabelArgs *args) { + args->align = UI_ALIGN_LEFT; return ui_label_create(obj, args); } -UIWIDGET ui_rlabel_create(UiObject* obj, UiLabelArgs args) { - args.align = UI_ALIGN_RIGHT; +UIWIDGET ui_rlabel_create(UiObject* obj, UiLabelArgs *args) { + args->align = UI_ALIGN_RIGHT; return ui_label_create(obj, args); } @@ -150,7 +150,7 @@ UIWIDGET ui_space_deprecated(UiObject *obj) { GtkWidget *widget = gtk_label_new(""); UiContainer *ct = uic_get_current_container(obj); - ct->add(ct, widget, TRUE); + ct->add(ct, widget); return widget; } @@ -162,7 +162,7 @@ GtkWidget *widget = gtk_hseparator_new(); #endif UiContainer *ct = uic_get_current_container(obj); - ct->add(ct, widget, FALSE); + ct->add(ct, widget); return widget; } @@ -174,14 +174,14 @@ double max; } UiProgressBarRange; -UIWIDGET ui_progressbar_create(UiObject *obj, UiProgressbarArgs args) { +UIWIDGET ui_progressbar_create(UiObject *obj, UiProgressbarArgs *args) { UiObject* current = uic_current_obj(obj); GtkWidget *progressbar = gtk_progress_bar_new(); - if(args.max > args.min) { + if(args->max > args->min) { UiProgressBarRange *range = malloc(sizeof(UiProgressBarRange)); - range->min = args.min; - range->max = args.max; + range->min = args->min; + range->max = args->max; g_signal_connect( progressbar, "destroy", @@ -191,7 +191,7 @@ } - UiVar* var = uic_widget_var(obj->ctx, current->ctx, args.value, args.varname, UI_VAR_DOUBLE); + UiVar* var = uic_widget_var(obj->ctx, current->ctx, args->value, args->varname, UI_VAR_DOUBLE); if(var && var->value) { UiDouble *value = var->value; value->get = ui_progressbar_get; @@ -200,8 +200,8 @@ ui_progressbar_set(value, value->value); } - UI_APPLY_LAYOUT1(current, args); - current->container->add(current->container, progressbar, FALSE); + UI_APPLY_LAYOUT2(current, args); + current->container->add(current->container, progressbar); return progressbar; } @@ -228,12 +228,12 @@ /* ------------------------- progress spinner ------------------------- */ -UIWIDGET ui_progressspinner_create(UiObject* obj, UiProgressbarSpinnerArgs args) { +UIWIDGET ui_progressspinner_create(UiObject* obj, UiProgressbarSpinnerArgs *args) { UiObject* current = uic_current_obj(obj); GtkWidget *spinner = gtk_spinner_new(); - UiVar* var = uic_widget_var(obj->ctx, current->ctx, args.value, args.varname, UI_VAR_INTEGER); + UiVar* var = uic_widget_var(obj->ctx, current->ctx, args->value, args->varname, UI_VAR_INTEGER); if(var && var->value) { UiInteger *value = var->value; value->get = ui_spinner_get; @@ -242,8 +242,8 @@ ui_spinner_set(value, value->value); } - UI_APPLY_LAYOUT1(current, args); - current->container->add(current->container, spinner, FALSE); + UI_APPLY_LAYOUT2(current, args); + current->container->add(current->container, spinner); return spinner; }