aboutsummaryrefslogtreecommitdiff
path: root/gtk.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2010-05-29 15:43:40 +0000
committerSimon Tatham <anakin@pobox.com>2010-05-29 15:43:40 +0000
commitd040a921bab05691e4ce8908387a9d5ad2d421de (patch)
treec0ff2afe044fd338ef34e6a56f90f877aeea52da /gtk.c
parent0a4c832e9bf37ce3f153e40ea7892d436d4ea7ba (diff)
downloadpuzzles-d040a921bab05691e4ce8908387a9d5ad2d421de.zip
puzzles-d040a921bab05691e4ce8908387a9d5ad2d421de.tar.gz
puzzles-d040a921bab05691e4ce8908387a9d5ad2d421de.tar.bz2
puzzles-d040a921bab05691e4ce8908387a9d5ad2d421de.tar.xz
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. [originally from svn r8959]
Diffstat (limited to 'gtk.c')
-rw-r--r--gtk.c26
1 files changed, 13 insertions, 13 deletions
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;