From 02955ce70f7fa58da88dc8d66e07520afb94f642 Mon Sep 17 00:00:00 2001 From: Glynn Foster Date: Wed, 28 Apr 2004 12:06:02 +0000 Subject: Fix the list dialog not being able to handle --text to change the text. It 2004-04-29 Glynn Foster * src/main.c, src/tree.c: Fix the list dialog not being able to handle --text to change the text. It was also intentional but must have fallen through the gaps. * data/zenity.1: Update * help/C/zenity.xml: Update. --- ChangeLog | 8 ++++++++ data/zenity.1 | 3 +++ help/C/zenity.xml | 7 +++++++ src/main.c | 20 +++++++++++++++++++- src/tree.c | 6 ++++++ 5 files changed, 43 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index bb78e4c..6f87451 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-04-29 Glynn Foster + + * src/main.c, src/tree.c: Fix the list dialog not being + able to handle --text to change the text. It was also + intentional but must have fallen through the gaps. + * data/zenity.1: Update + * help/C/zenity.xml: Update. + 2004-04-27 Glynn Foster * src/zenity.glade: Untranslate 3 strings again. Thanks diff --git a/data/zenity.1 b/data/zenity.1 index 77942dd..d5518dd 100644 --- a/data/zenity.1 +++ b/data/zenity.1 @@ -130,6 +130,9 @@ Set the dialog text List options .TP +.B \-\-text=STRING +Set the dialog text +.TP .B \-\-column=STRING Set the column header .TP diff --git a/help/C/zenity.xml b/help/C/zenity.xml index 0c2b9af..a28b7c7 100644 --- a/help/C/zenity.xml +++ b/help/C/zenity.xml @@ -605,6 +605,13 @@ + --text=TEXT + + Specifies the text to appear in the List dialog. + + + + --column=COLUMN Specifies the column headers to appear in the List dialog. diff --git a/src/main.c b/src/main.c index 58fe37a..9b112c6 100644 --- a/src/main.c +++ b/src/main.c @@ -96,6 +96,7 @@ enum { OPTION_FILENAME, OPTION_MULTIFILE, OPTION_TEXTFILENAME, + OPTION_LISTTEXT, OPTION_COLUMN, OPTION_SEPERATOR, OPTION_LISTEDIT, @@ -462,6 +463,15 @@ struct poptOption list_options[] = { NULL }, { + "text", + '\0', + POPT_ARG_STRING, + NULL, + OPTION_LISTTEXT, + N_("Set the dialog text"), + NULL + }, + { "column", '\0', POPT_ARG_STRING, @@ -959,6 +969,7 @@ zenity_init_parsing_options (void) { results->progress_data->pulsate = FALSE; results->progress_data->autoclose = FALSE; results->entry_data->visible = TRUE; + results->tree_data->dialog_text = NULL; results->tree_data->checkbox = FALSE; results->tree_data->radiobox = FALSE; results->tree_data->editable = FALSE; @@ -1004,6 +1015,8 @@ zenity_free_parsing_options (void) { g_free (results->text_data->uri); break; case MODE_LIST: + if (results->tree_data->dialog_text) + g_free (results->tree_data->dialog_text); if (results->tree_data->columns) g_slist_foreach (results->tree_data->columns, (GFunc) g_free, NULL); if (results->tree_data->separator) @@ -1237,6 +1250,7 @@ zenity_parse_options_callback (poptContext ctx, case OPTION_ERRORTEXT: case OPTION_QUESTIONTEXT: case OPTION_PROGRESSTEXT: + case OPTION_LISTTEXT: case OPTION_WARNINGTEXT: /* FIXME: This is an ugly hack because of the way the poptOptions are @@ -1244,7 +1258,7 @@ zenity_parse_options_callback (poptContext ctx, * parse_options_callback gets called for each option. Suckage */ - if (parse_option_text > 6) + if (parse_option_text > 7) zenity_error ("--text", ERROR_DUPLICATE); switch (results->mode) { @@ -1267,6 +1281,10 @@ zenity_parse_options_callback (poptContext ctx, results->progress_data->dialog_text = g_locale_to_utf8 (g_strcompress (arg), -1, NULL, NULL, NULL); break; + case MODE_LIST: + results->tree_data->dialog_text = g_locale_to_utf8 (g_strcompress (arg), + -1, NULL, NULL, NULL); + break; default: zenity_error ("--text", ERROR_SUPPORT); } diff --git a/src/tree.c b/src/tree.c index a1c1bb9..bc1cc1c 100644 --- a/src/tree.c +++ b/src/tree.c @@ -269,6 +269,7 @@ zenity_tree (ZenityData *data, ZenityTreeData *tree_data) { GtkWidget *dialog; GtkWidget *tree_view; + GtkWidget *text; GtkTreeViewColumn *column; GtkListStore *model; GType *column_types; @@ -303,6 +304,11 @@ zenity_tree (ZenityData *data, ZenityTreeData *tree_data) if (data->dialog_title) gtk_window_set_title (GTK_WINDOW (dialog), data->dialog_title); + text = glade_xml_get_widget (glade_dialog, "zenity_tree_text"); + + if (tree_data->dialog_text) + gtk_label_set_text (GTK_LABEL (text), tree_data->dialog_text); + if (data->window_icon) zenity_util_set_window_icon (dialog, data->window_icon); else -- cgit v1.1-4-g5e80