| 104 } |
104 } |
| 105 |
105 |
| 106 UIWIDGET ui_button_create(UiObject *obj, UiButtonArgs *args) { |
106 UIWIDGET ui_button_create(UiObject *obj, UiButtonArgs *args) { |
| 107 GtkWidget *button = ui_create_button(obj, args->label, args->icon, args->tooltip, args->onclick, args->onclickdata, 0, FALSE); |
107 GtkWidget *button = ui_create_button(obj, args->label, args->icon, args->tooltip, args->onclick, args->onclickdata, 0, FALSE); |
| 108 ui_set_name_and_style(button, args->name, args->style_class); |
108 ui_set_name_and_style(button, args->name, args->style_class); |
| 109 ui_set_widget_groups(obj->ctx, button, args->states); |
109 ui_set_widget_states(obj->ctx, button, args->states); |
| 110 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
110 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
| 111 UiLayout layout = UI_ARGS2LAYOUT(args); |
111 UiLayout layout = UI_ARGS2LAYOUT(args); |
| 112 ct->add(ct, button, &layout); |
112 ct->add(ct, button, &layout); |
| 113 return button; |
113 return button; |
| 114 } |
114 } |
| 308 args->value, |
308 args->value, |
| 309 args->onchange, |
309 args->onchange, |
| 310 args->onchangedata, |
310 args->onchangedata, |
| 311 args->enable_state); |
311 args->enable_state); |
| 312 ui_set_name_and_style(widget, args->name, args->style_class); |
312 ui_set_name_and_style(widget, args->name, args->style_class); |
| 313 ui_set_widget_groups(obj->ctx, widget, args->states); |
313 ui_set_widget_states(obj->ctx, widget, args->states); |
| 314 |
314 |
| 315 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
315 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
| 316 UiLayout layout = UI_ARGS2LAYOUT(args); |
316 UiLayout layout = UI_ARGS2LAYOUT(args); |
| 317 ct->add(ct, widget, &layout); |
317 ct->add(ct, widget, &layout); |
| 318 |
318 |
| 371 args->onchangedata, |
371 args->onchangedata, |
| 372 (ui_toggled_func)ui_checkbox_enable_state, |
372 (ui_toggled_func)ui_checkbox_enable_state, |
| 373 args->enable_state); |
373 args->enable_state); |
| 374 |
374 |
| 375 ui_set_name_and_style(widget, args->name, args->style_class); |
375 ui_set_name_and_style(widget, args->name, args->style_class); |
| 376 ui_set_widget_groups(obj->ctx, widget, args->states); |
376 ui_set_widget_states(obj->ctx, widget, args->states); |
| 377 |
377 |
| 378 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
378 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
| 379 UiLayout layout = UI_ARGS2LAYOUT(args); |
379 UiLayout layout = UI_ARGS2LAYOUT(args); |
| 380 ct->add(ct, widget, &layout); |
380 ct->add(ct, widget, &layout); |
| 381 |
381 |
| 417 } |
417 } |
| 418 |
418 |
| 419 UIWIDGET ui_switch_create(UiObject* obj, UiToggleArgs *args) { |
419 UIWIDGET ui_switch_create(UiObject* obj, UiToggleArgs *args) { |
| 420 GtkWidget *widget = gtk_switch_new(); |
420 GtkWidget *widget = gtk_switch_new(); |
| 421 ui_set_name_and_style(widget, args->name, args->style_class); |
421 ui_set_name_and_style(widget, args->name, args->style_class); |
| 422 ui_set_widget_groups(obj->ctx, widget, args->states); |
422 ui_set_widget_states(obj->ctx, widget, args->states); |
| 423 |
423 |
| 424 UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); |
424 UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); |
| 425 if(var) { |
425 if(var) { |
| 426 UiInteger *value = var->value; |
426 UiInteger *value = var->value; |
| 427 value->obj = widget; |
427 value->obj = widget; |
| 539 } |
539 } |
| 540 } |
540 } |
| 541 |
541 |
| 542 GtkWidget *rbutton = RADIOBUTTON_NEW(rg, args->label); |
542 GtkWidget *rbutton = RADIOBUTTON_NEW(rg, args->label); |
| 543 ui_set_name_and_style(rbutton, args->name, args->style_class); |
543 ui_set_name_and_style(rbutton, args->name, args->style_class); |
| 544 ui_set_widget_groups(obj->ctx, rbutton, args->states); |
544 ui_set_widget_states(obj->ctx, rbutton, args->states); |
| 545 if(rgroup) { |
545 if(rgroup) { |
| 546 #if GTK_MAJOR_VERSION >= 4 |
546 #if GTK_MAJOR_VERSION >= 4 |
| 547 if(rg) { |
547 if(rg) { |
| 548 gtk_check_button_set_group(GTK_CHECK_BUTTON(rbutton), rg->data); |
548 gtk_check_button_set_group(GTK_CHECK_BUTTON(rbutton), rg->data); |
| 549 } |
549 } |
| 893 str->get = ui_linkbutton_get; |
893 str->get = ui_linkbutton_get; |
| 894 str->set = ui_linkbutton_set; |
894 str->set = ui_linkbutton_set; |
| 895 } |
895 } |
| 896 |
896 |
| 897 ui_set_name_and_style(button, args->name, args->style_class); |
897 ui_set_name_and_style(button, args->name, args->style_class); |
| 898 ui_set_widget_groups(obj->ctx, button, args->states); |
898 ui_set_widget_states(obj->ctx, button, args->states); |
| 899 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
899 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end; |
| 900 UiLayout layout = UI_ARGS2LAYOUT(args); |
900 UiLayout layout = UI_ARGS2LAYOUT(args); |
| 901 ct->add(ct, button, &layout); |
901 ct->add(ct, button, &layout); |
| 902 |
902 |
| 903 return button; |
903 return button; |