ui/gtk/button.c

changeset 56
294d5515583a
parent 51
e324291ca9f8
child 58
0d25f15e2625
--- a/ui/gtk/button.c	Wed Oct 23 10:37:43 2024 +0200
+++ b/ui/gtk/button.c	Wed Oct 23 17:40:45 2024 +0200
@@ -59,7 +59,8 @@
         const char *label,
         const char *icon,
         ui_callback onclick,
-        void *userdata)
+        void *userdata,
+        int event_value)
 {
     GtkWidget *button = gtk_button_new_with_label(label);
     ui_button_set_icon_name(button, icon);
@@ -69,7 +70,7 @@
         event->obj = obj;
         event->userdata = userdata;
         event->callback = onclick;
-        event->value = 0;
+        event->value = event_value;
         event->customdata = NULL;
 
         g_signal_connect(
@@ -89,8 +90,9 @@
 
 UIWIDGET ui_button_create(UiObject *obj, UiButtonArgs args) {
     UiObject* current = uic_current_obj(obj);
-    GtkWidget *button = ui_create_button(obj, args.label, args.icon, args.onclick, args.onclickdata);
+    GtkWidget *button = ui_create_button(obj, args.label, args.icon, args.onclick, args.onclickdata, 0);
     ui_set_name_and_style(button, args.name, args.style_class);
+    ui_set_widget_groups(obj->ctx, button, args.groups);
     UI_APPLY_LAYOUT1(current, args);
     current->container->add(current->container, button, FALSE);
     return button;
@@ -232,6 +234,7 @@
     
     ui_setup_togglebutton(current, widget, args.label, args.icon, args.varname, args.value, args.onchange, args.onchangedata);
     ui_set_name_and_style(widget, args.name, args.style_class);
+    ui_set_widget_groups(obj->ctx, widget, args.groups);
     
     UI_APPLY_LAYOUT1(current, args);
     current->container->add(current->container, widget, FALSE);
@@ -282,6 +285,9 @@
             args.onchange,
             args.onchangedata);
     
+    ui_set_name_and_style(widget, args.name, args.style_class);
+    ui_set_widget_groups(obj->ctx, widget, args.groups);
+    
     UI_APPLY_LAYOUT1(current, args);
     current->container->add(current->container, widget, FALSE);
     
@@ -343,6 +349,7 @@
     
     GtkWidget *rbutton = RADIOBUTTON_NEW(rg, args.label); 
     ui_set_name_and_style(rbutton, args.name, args.style_class);
+    ui_set_widget_groups(obj->ctx, rbutton, args.groups);
     if(rgroup) {
 #if GTK_MAJOR_VERSION >= 4
         if(rg) {

mercurial