X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/61682944f5d1fb2911de971b76a99cd57ec3c50a..f44417cf9d3d5ddea2f0dfb2e238a2826eb6691d:/disobedience/misc.c diff --git a/disobedience/misc.c b/disobedience/misc.c index cc23814..7a6ba71 100644 --- a/disobedience/misc.c +++ b/disobedience/misc.c @@ -162,24 +162,24 @@ GtkWidget *iconbutton(const char *path, const char *tip) { } /** @brief Create buttons and pack them into a box, which is returned */ -GtkWidget *create_buttons_box(const struct button *buttons, +GtkWidget *create_buttons_box(struct button *buttons, size_t nbuttons, GtkWidget *box) { size_t n; for(n = 0; n < nbuttons; ++n) { - GtkWidget *const button = gtk_button_new_from_stock(buttons[n].stock); - gtk_widget_set_style(button, tool_style); - g_signal_connect(G_OBJECT(button), "clicked", + buttons[n].widget = gtk_button_new_from_stock(buttons[n].stock); + gtk_widget_set_style(buttons[n].widget, tool_style); + g_signal_connect(G_OBJECT(buttons[n].widget), "clicked", G_CALLBACK(buttons[n].clicked), 0); - gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 1); - gtk_tooltips_set_tip(tips, button, buttons[n].tip, ""); + gtk_box_pack_start(GTK_BOX(box), buttons[n].widget, FALSE, FALSE, 1); + gtk_tooltips_set_tip(tips, buttons[n].widget, buttons[n].tip, ""); } return box; } /** @brief Create buttons and pack them into an hbox */ -GtkWidget *create_buttons(const struct button *buttons, +GtkWidget *create_buttons(struct button *buttons, size_t nbuttons) { return create_buttons_box(buttons, nbuttons, gtk_hbox_new(FALSE, 1));