From 7296e1c66438454fa48b616605a6720e6ab05923 Mon Sep 17 00:00:00 2001 From: Gediminas Paulauskas Date: Wed, 4 Apr 2001 02:14:11 +0000 Subject: set content type to utf8. fix warning. just call on_link_clicked(). 2001-04-04 Gediminas Paulauskas * mail-config-druid.c (create_html): set content type to utf8. * mail-config.c (mail_config_check_service): fix warning. * mail-display.c (link_open_in_browser): just call on_link_clicked(). (link_menu): Open link works. (link_copy_location): claim selection. (on_selection_get): new function, selection handler. (mail_display_new): connect to selection_get. FIXME: does not work. 2001-04-04 Gediminas Paulauskas * importer/importer.c (create_html): copied newer and fixed function from mail/mail-config-druid.c. (html_new, put_html): removed. (show_import_wizard): use create_html instead of html_new/put_html pair. * importer/importer.glade: a try to set logo. removed source generation options. svn path=/trunk/; revision=9161 --- shell/importer/importer.c | 87 ++++++++++++++++++++++++----------------------- 1 file changed, 44 insertions(+), 43 deletions(-) (limited to 'shell/importer/importer.c') diff --git a/shell/importer/importer.c b/shell/importer/importer.c index 20e11524af..e7163cf329 100644 --- a/shell/importer/importer.c +++ b/shell/importer/importer.c @@ -44,6 +44,7 @@ #include #include #include +#include #include "importer.h" #include "GNOME_Evolution_Importer.h" @@ -77,7 +78,20 @@ typedef struct _ImportData { #define OUT #endif -/* Some HTML helper functions from mail/mail-config-gui.c */ +/* Some HTML helper functions copied from mail/mail-config-druid.c */ +static struct { + char *name; + char *text; +} info[] = { + { "file_html", + N_("Choose the file that you want to import into Evolution, " + "and select what type of file it is from the list.\n\n" + "You can select \"Automatic\" if you do not know, and " + "Evolution will attempt to work it out.") + } +}; +static int num_info = (sizeof (info) / sizeof (info[0])); + static void html_size_req (GtkWidget *widget, GtkRequisition *requisition) @@ -85,14 +99,14 @@ html_size_req (GtkWidget *widget, requisition->height = GTK_LAYOUT (widget)->height; } -/* Returns a GtkHTML which is already inside a GtkScrolledWindow. If - * @white is TRUE, the GtkScrolledWindow will be inside a GtkFrame. - */ static GtkWidget * -html_new (gboolean white) +create_html (const char *name) { - GtkWidget *html, *scrolled, *frame; + GtkWidget *scrolled, *html; + GtkHTMLStream *stream; GtkStyle *style; + char *utf8; + int i; html = gtk_html_new (); GTK_LAYOUT (html)->height = 0; @@ -100,43 +114,36 @@ html_new (gboolean white) GTK_SIGNAL_FUNC (html_size_req), NULL); gtk_html_set_editable (GTK_HTML (html), FALSE); style = gtk_rc_get_style (html); + if (!style) + style = gtk_widget_get_style (html); if (style) { gtk_html_set_default_background_color (GTK_HTML (html), - white ? &style->white: &style->bg[0]); } - gtk_widget_set_sensitive (html, FALSE); + gtk_widget_show (html); + scrolled = gtk_scrolled_window_new (NULL, NULL); + gtk_widget_show (scrolled); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_NEVER, GTK_POLICY_NEVER); gtk_container_add (GTK_CONTAINER (scrolled), html); - if (white) { - frame = gtk_frame_new (NULL); - gtk_frame_set_shadow_type (GTK_FRAME (frame), - GTK_SHADOW_ETCHED_IN); - gtk_container_add (GTK_CONTAINER (frame), scrolled); - gtk_widget_show_all (frame); - } else { - gtk_widget_show_all (scrolled); - } - return html; -} - -static void -put_html (GtkHTML *html, - const char *text) -{ - GtkHTMLStream *handle; - char *htmltext; - - htmltext = e_text_to_html (text, E_TEXT_TO_HTML_CONVERT_NL); - handle = gtk_html_begin (html); - gtk_html_write (html, handle, "", 12); - gtk_html_write (html, handle, text, strlen (text)); - gtk_html_write (html, handle, "", 14); - g_free (htmltext); - gtk_html_end (html, handle, GTK_HTML_STREAM_OK); + for (i = 0; i < num_info; i++) { + if (!strcmp (name, info[i].name)) + break; + } + g_return_val_if_fail (i != num_info, scrolled); + + stream = gtk_html_begin_content (GTK_HTML (html), + "text/html; charset=utf-8"); + gtk_html_write (GTK_HTML (html), stream, "

", 9); + utf8 = e_utf8_from_locale_string (_(info[i].text)); + gtk_html_write (GTK_HTML (html), stream, utf8, strlen (utf8)); + g_free (utf8); + gtk_html_write (GTK_HTML (html), stream, "

", 11); + gtk_html_end (GTK_HTML (html), stream, GTK_HTML_STREAM_OK); + + return scrolled; } /* Importing functions */ @@ -642,15 +649,9 @@ show_import_wizard (BonoboUIComponent *component, data->filepage = importer_file_page_new (data); data->vbox = data->filepage->vbox; - html = html_new (TRUE); - put_html (GTK_HTML (html), - _("Choose the file that you want to import into Evolution, " - "and select what type of file it is from the list.\n\n" - "You can select \"Automatic\" if you do not know, and " - "Evolution will attempt to work it out.")); - gtk_box_pack_start (GTK_BOX (data->vbox), html->parent->parent, - FALSE, TRUE, 0); - gtk_box_reorder_child (GTK_BOX (data->vbox), html->parent->parent, 0); + html = create_html ("file_html"); + gtk_box_pack_start (GTK_BOX (data->vbox), html, FALSE, TRUE, 0); + gtk_box_reorder_child (GTK_BOX (data->vbox), html, 0); gtk_box_pack_start (GTK_BOX (GNOME_DRUID_PAGE_STANDARD (data->filedialog)->vbox), data->vbox, TRUE, TRUE, 0); -- cgit v1.2.3