From: simon Date: Sat, 29 May 2010 15:43:40 +0000 (+0000) Subject: Patch from Mark Wooding to use GTK stock items for standard 'OK', X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/commitdiff_plain/289380667e482bc68669dbbaf75f38f36a183d92 Patch from Mark Wooding to use GTK stock items for standard 'OK', 'Yes' and 'No' buttons, which means they get the standard icons that go on those button types. Also reorders yes/no boxes so that they're the GNOME standard way round. git-svn-id: svn://svn.tartarus.org/sgt/puzzles@8959 cda61777-01e9-0310-a592-d414129be87e --- diff --git a/gtk.c b/gtk.c index bfc06d7..694a41a 100644 --- a/gtk.c +++ b/gtk.c @@ -826,18 +826,18 @@ int message_box(GtkWidget *parent, char *title, char *msg, int centre, gtk_label_set_line_wrap(GTK_LABEL(text), TRUE); if (type == MB_OK) { - titles = "OK\0"; + titles = GTK_STOCK_OK "\0"; def = cancel = 0; } else { assert(type == MB_YESNO); - titles = "Yes\0No\0"; - def = 0; - cancel = 1; + titles = GTK_STOCK_NO "\0" GTK_STOCK_YES "\0"; + def = 1; + cancel = 0; } i = 0; while (*titles) { - button = gtk_button_new_with_label(titles); + button = gtk_button_new_from_stock(titles); gtk_box_pack_end(GTK_BOX(GTK_DIALOG(window)->action_area), button, FALSE, FALSE, 0); gtk_widget_show(button); @@ -866,7 +866,7 @@ int message_box(GtkWidget *parent, char *title, char *msg, int centre, gtk_widget_show(window); i = -1; gtk_main(); - return (type == MB_YESNO ? i == 0 : TRUE); + return (type == MB_YESNO ? i == 1 : TRUE); } void error_box(GtkWidget *parent, char *msg) @@ -956,22 +956,22 @@ static int get_config(frontend *fe, int which) gtk_window_set_title(GTK_WINDOW(fe->cfgbox), title); sfree(title); - w = gtk_button_new_with_label("OK"); + w = gtk_button_new_from_stock(GTK_STOCK_CANCEL); gtk_box_pack_end(GTK_BOX(GTK_DIALOG(fe->cfgbox)->action_area), w, FALSE, FALSE, 0); gtk_widget_show(w); - GTK_WIDGET_SET_FLAGS(w, GTK_CAN_DEFAULT); - gtk_window_set_default(GTK_WINDOW(fe->cfgbox), w); gtk_signal_connect(GTK_OBJECT(w), "clicked", - GTK_SIGNAL_FUNC(config_ok_button_clicked), fe); + GTK_SIGNAL_FUNC(config_cancel_button_clicked), fe); + cancel = w; - w = gtk_button_new_with_label("Cancel"); + w = gtk_button_new_from_stock(GTK_STOCK_OK); gtk_box_pack_end(GTK_BOX(GTK_DIALOG(fe->cfgbox)->action_area), w, FALSE, FALSE, 0); gtk_widget_show(w); + GTK_WIDGET_SET_FLAGS(w, GTK_CAN_DEFAULT); + gtk_window_set_default(GTK_WINDOW(fe->cfgbox), w); gtk_signal_connect(GTK_OBJECT(w), "clicked", - GTK_SIGNAL_FUNC(config_cancel_button_clicked), fe); - cancel = w; + GTK_SIGNAL_FUNC(config_ok_button_clicked), fe); table = gtk_table_new(1, 2, FALSE); y = 0;