ui/gtk/button.c

changeset 823
1e1df80772ed
parent 801
e096c441e874
child 838
934534c367a4
--- a/ui/gtk/button.c	Thu Oct 09 12:49:53 2025 +0200
+++ b/ui/gtk/button.c	Thu Oct 09 18:23:07 2025 +0200
@@ -60,6 +60,7 @@
         UiObject *obj,
         const char *label,
         const char *icon,
+        const char *tooltip,
         ui_callback onclick,
         void *userdata,
         int event_value,
@@ -67,6 +68,9 @@
 {
     GtkWidget *button = gtk_button_new_with_label(label);
     ui_button_set_icon_name(button, icon);
+    if(tooltip) {
+        gtk_widget_set_tooltip_text(button, tooltip);
+    }
     
     if(onclick) {
         UiEventData *event = malloc(sizeof(UiEventData));
@@ -100,7 +104,7 @@
 }
 
 UIWIDGET ui_button_create(UiObject *obj, UiButtonArgs *args) {
-    GtkWidget *button = ui_create_button(obj, args->label, args->icon, args->onclick, args->onclickdata, 0, FALSE);
+    GtkWidget *button = ui_create_button(obj, args->label, args->icon, NULL/*tooltip*/, args->onclick, args->onclickdata, 0, FALSE);
     ui_set_name_and_style(button, args->name, args->style_class);
     ui_set_widget_groups(obj->ctx, button, args->groups);
     UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end;
@@ -181,6 +185,7 @@
         GtkWidget *togglebutton,
         const char *label,
         const char *icon,
+        const char *tooltip,
         const char *varname,
         UiInteger *value,
         ui_callback onchange,
@@ -191,6 +196,9 @@
         gtk_button_set_label(GTK_BUTTON(togglebutton), label);
     }
     ui_button_set_icon_name(togglebutton, icon);
+    if(tooltip) {
+        gtk_widget_set_tooltip_text(togglebutton, tooltip);
+    }
     
     ui_bind_togglebutton(
             obj,
@@ -295,6 +303,7 @@
             widget,
             args->label,
             args->icon,
+            NULL, // tooltip
             args->varname,
             args->value,
             args->onchange,

mercurial