diff options
author | Guy Harris <guy@alum.mit.edu> | 2012-06-17 22:32:03 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2012-06-17 22:32:03 +0000 |
commit | 29e4e2418499fafb5d5a931ad0b06152699f584f (patch) | |
tree | f490b9b8070ccb44932555d63d532e882a50edda /ui/alert_box.c | |
parent | d9d97cb7ce5284aad682218f70e6054cabdcdd68 (diff) |
Add "simple dialog" routines to pop up modal message boxes. Use them in
file.c and routines called from it; non-modal dialogs end up, in some
cases, either hidden, devoid of the input focus and not dismissable, or
both.
svn path=/trunk/; revision=43321
Diffstat (limited to 'ui/alert_box.c')
-rw-r--r-- | ui/alert_box.c | 41 |
1 files changed, 27 insertions, 14 deletions
diff --git a/ui/alert_box.c b/ui/alert_box.c index eacddef189..8fa5b1c9ac 100644 --- a/ui/alert_box.c +++ b/ui/alert_box.c @@ -44,7 +44,7 @@ void failure_alert_box(const char *msg_format, va_list ap) { - vsimple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, msg_format, ap); + vsimple_error_message_box(msg_format, ap); } /* @@ -62,8 +62,13 @@ failure_alert_box(const char *msg_format, va_list ap) void open_failure_alert_box(const char *filename, int err, gboolean for_writing) { - simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, - file_open_error_message(err, for_writing), filename); + gchar *display_basename; + + display_basename = g_filename_display_basename(filename); + simple_message_box(ESD_TYPE_ERROR, NULL, NULL, + file_open_error_message(err, for_writing), + display_basename); + g_free(display_basename); } /* @@ -73,9 +78,13 @@ open_failure_alert_box(const char *filename, int err, gboolean for_writing) void read_failure_alert_box(const char *filename, int err) { - simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, - "An error occurred while reading from the file \"%s\": %s.", - filename, g_strerror(err)); + gchar *display_basename; + + display_basename = g_filename_display_basename(filename); + simple_message_box(ESD_TYPE_ERROR, NULL, NULL, + "An error occurred while reading from the file \"%s\": %s.", + display_basename, g_strerror(err)); + g_free(display_basename); } /* @@ -92,23 +101,27 @@ read_failure_alert_box(const char *filename, int err) void write_failure_alert_box(const char *filename, int err) { + gchar *display_basename; + + display_basename = g_filename_display_basename(filename); if (err < 0) { switch (err) { case WTAP_ERR_SHORT_WRITE: - simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, - "A full write couldn't be done to the file \"%s\".", - filename); + simple_message_box(ESD_TYPE_ERROR, NULL, NULL, + "A full write couldn't be done to the file \"%s\".", + display_basename); break; default: - simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, - "An error occurred while writing to the file \"%s\": %s.", - filename, wtap_strerror(err)); + simple_message_box(ESD_TYPE_ERROR, NULL, NULL, + "An error occurred while writing to the file \"%s\": %s.", + display_basename, wtap_strerror(err)); break; } } else { - simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, - file_write_error_message(err), filename); + simple_message_box(ESD_TYPE_ERROR, NULL, NULL, + file_write_error_message(err), display_basename); } + g_free(display_basename); } |