X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fwidgets%2Fmodest-header-view-render.c;h=78cd1fc04b31bd0cd7fe2cff0a94cde700207067;hp=c0177da9fcf289bfe3574bac12af4d06d15d946f;hb=fecb964ed9e028e9f1c169b6904ad2064ea59304;hpb=36b0a7ea93d6a5b73c8f873a1ec9c11088115c7b diff --git a/src/widgets/modest-header-view-render.c b/src/widgets/modest-header-view-render.c index c0177da..78cd1fc 100644 --- a/src/widgets/modest-header-view-render.c +++ b/src/widgets/modest-header-view-render.c @@ -35,74 +35,6 @@ #include #include - -static gchar * -_pango_replace_string (const gchar *string, - const gchar *in, - const gchar *out) -{ - gchar **tmp = NULL; - gchar *new_string = NULL; - gchar *tmp_string = NULL; - guint i = 0; - - /* Split data */ - if (string == NULL) return g_strdup(""); - tmp = g_strsplit(string, in, 0); - if (tmp[0] == NULL) return g_strdup(string); - - /* Replace and concat data*/ - new_string = g_strdup(tmp[0]); - for (i = 1; tmp[i] != NULL; i++) { - tmp_string = g_strconcat (new_string, out, tmp[i], NULL); - g_free(new_string); - new_string = g_strdup(tmp_string); - g_free(tmp_string); - } - - /* Free */ - g_strfreev(tmp); - - return new_string; -} - -static gchar * -_pango_parse_string (const gchar *string) -{ - gchar *parsed_string = NULL; - gchar *tmp = NULL; - - if (string == NULL) return g_strdup(""); - parsed_string = g_strdup(string); - - /* Check for '&' special character */ - tmp = g_strdup(parsed_string); - g_free(parsed_string); - parsed_string = _pango_replace_string (tmp, "&", "&"); - g_free(tmp); - - /* Check for '<' special character */ - tmp = g_strdup(parsed_string); - g_free(parsed_string); - parsed_string = _pango_replace_string (tmp, "<", "<"); - g_free(tmp); - - /* Check for '>' special character */ - tmp = g_strdup(parsed_string); - g_free(parsed_string); - parsed_string = _pango_replace_string (tmp, ">", ">"); - g_free(tmp); - - /* Check for ''' special character */ - tmp = g_strdup(parsed_string); - g_free(parsed_string); - parsed_string = _pango_replace_string (tmp, "'", "'"); - g_free(tmp); - - return parsed_string; -} - - static GdkPixbuf* get_pixbuf_for_flag (TnyHeaderFlags flag) { @@ -141,9 +73,9 @@ get_pixbuf_for_compact_flag (TnyHeaderFlags flags) static GdkPixbuf *low_attachments_pixbuf = NULL; static GdkPixbuf *high_pixbuf = NULL; static GdkPixbuf *low_pixbuf = NULL; - TnyHeaderFlags prior; + TnyHeaderPriorityFlags prior; - prior = flags & TNY_HEADER_FLAG_HIGH_PRIORITY; + prior = flags & TNY_HEADER_FLAG_PRIORITY; switch (prior) { case TNY_HEADER_FLAG_HIGH_PRIORITY: if (flags & TNY_HEADER_FLAG_ATTACHMENTS) { @@ -174,7 +106,7 @@ get_pixbuf_for_compact_flag (TnyHeaderFlags flags) return normal_attachments_pixbuf; } } - + return NULL; } @@ -234,9 +166,7 @@ _modest_header_view_compact_flag_cell_data (GtkTreeViewColumn *column, GtkCellRe &flags, -1); pixbuf = get_pixbuf_for_compact_flag (flags); - if (pixbuf != NULL) - g_object_set (G_OBJECT (renderer), "pixbuf", pixbuf, NULL); - + g_object_set (G_OBJECT (renderer), "pixbuf", pixbuf, NULL); } void @@ -300,7 +230,9 @@ _modest_header_view_compact_date_cell_data (GtkTreeViewColumn *column, GtkCell tmp_date = modest_text_utils_get_display_date (date); display_date = g_strdup_printf ("\n%s", tmp_date); - g_object_set (G_OBJECT(renderer), "markup", display_date, NULL); + g_object_set (G_OBJECT(renderer), + "markup", display_date, + NULL); set_common_flags (renderer, flags); g_free (tmp_date); @@ -343,8 +275,7 @@ _modest_header_view_compact_header_cell_data (GtkTreeViewColumn *column, GtkCe { GObject *rendobj; TnyHeaderFlags flags; - gchar *address, *subject, *header, *display_address; - gchar *parsed_address, *parsed_subject; + gchar *address, *subject, *header; time_t date; gboolean is_incoming; @@ -365,25 +296,13 @@ _modest_header_view_compact_header_cell_data (GtkTreeViewColumn *column, GtkCe TNY_GTK_HEADER_LIST_MODEL_SUBJECT_COLUMN, &subject, TNY_GTK_HEADER_LIST_MODEL_DATE_SENT_TIME_T_COLUMN, &date, -1); - - rendobj = G_OBJECT(renderer); - /* deal with empty subjects */ - if (!subject) - subject = g_strdup (_("mail_va_no_subject")); - - /* Escape special characteres to allow pango makup`*/ - display_address = modest_text_utils_get_display_address (address); - parsed_address = _pango_parse_string (display_address); - parsed_subject = _pango_parse_string (subject); - - header = g_strdup_printf ("%s\n%s", - parsed_subject, - parsed_address); + rendobj = G_OBJECT(renderer); + header = g_markup_printf_escaped ("%s\n%s", + subject ? subject : _("mail_va_no_subject"), + address); g_free (address); g_free (subject); - g_free(parsed_subject); - g_free(parsed_address); g_object_set (rendobj, "markup", header, NULL); set_common_flags (renderer, flags); @@ -420,15 +339,14 @@ _modest_header_view_status_cell_data (GtkTreeViewColumn *column, GtkCellRender gpointer user_data) { TnyHeaderFlags flags; - guint status; + //guint status; gchar *status_str; gtk_tree_model_get (tree_model, iter, - TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN, &flags, - TNY_GTK_HEADER_LIST_MODEL_MESSAGE_SIZE_COLUMN, &status, + TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN, &flags, + // TNY_GTK_HEADER_LIST_MODEL_MESSAGE_SIZE_COLUMN, &status, -1); -/* size_str = modest_text_utils_get_display_size (size); */ status_str = g_strdup(_("mcen_li_outbox_waiting")); g_object_set (G_OBJECT(renderer), "text", status_str, NULL);