diff options
author | Arx Cruz <arxcruz@gnome.org> | 2013-03-05 16:56:24 -0300 |
---|---|---|
committer | Arx Cruz <arxcruz@gnome.org> | 2013-03-05 16:56:24 -0300 |
commit | 1ac1da63f8de626ce10d350be7b29744a743ec95 (patch) | |
tree | 1cefe39f0cd305c6f30807fcf8e87022ff249f48 /src/entry.c | |
parent | 3af1e444e63449b97167e428ef99b9b8c7c130dd (diff) | |
download | zenity-1ac1da63f8de626ce10d350be7b29744a743ec95.tar.gz |
But #674881 - Timeout option overriding normal exit code
Diffstat (limited to 'src/entry.c')
-rw-r--r-- | src/entry.c | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/src/entry.c b/src/entry.c index 72f73b5..da708e2 100644 --- a/src/entry.c +++ b/src/entry.c @@ -154,30 +154,39 @@ zenity_entry (ZenityData *data, ZenityEntryData *entry_data) } static void +zenity_entry_dialog_output (void) +{ + const gchar *text; + if (n_entries > 1) + text = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT (entry)); + else + text = gtk_entry_get_text (GTK_ENTRY (entry)); + + if (text != NULL) + g_print ("%s\n", text); + +} + +static void zenity_entry_dialog_response (GtkWidget *widget, int response, gpointer data) { ZenityData *zen_data = data; - const gchar *text; switch (response) { case GTK_RESPONSE_OK: + zenity_entry_dialog_output (); zenity_util_exit_code_with_data(ZENITY_OK, zen_data); - if (n_entries > 1) { - text = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT (entry)); - } - else { - text = gtk_entry_get_text (GTK_ENTRY (entry)); - } - - if (text != NULL) - g_print ("%s\n", text); - break; case GTK_RESPONSE_CANCEL: zen_data->exit_code = zenity_util_return_exit_code (ZENITY_CANCEL); break; + case ZENITY_TIMEOUT: + zenity_entry_dialog_output (); + zen_data->exit_code = zenity_util_return_exit_code (ZENITY_TIMEOUT); + break; + default: /* Esc dialog */ zen_data->exit_code = zenity_util_return_exit_code (ZENITY_ESC); |