From 1c8ead7fa931806f3b17208afd191df27f08ffa9 Mon Sep 17 00:00:00 2001 From: hiro Date: Thu, 13 Sep 2007 08:15:30 +0000 Subject: summaryview.c: compare using simpilfied To strings. git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1898 ee746299-78ed-0310-b773-934348b2243d --- ChangeLog | 5 +++++ ChangeLog.ja | 5 +++++ src/summaryview.c | 29 ++++++++++++++++++++++++++++- 3 files changed, 38 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 2d38fc0c..473e436d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-09-13 + + * src/summaryview.c: summary_cmp_by_to(): compare using simpilfied + To strings. + 2007-09-13 * libsylph/procheader.[ch]: procheader_get_toname(): added. diff --git a/ChangeLog.ja b/ChangeLog.ja index f8c4e7e0..56481b03 100644 --- a/ChangeLog.ja +++ b/ChangeLog.ja @@ -1,3 +1,8 @@ +2007-09-13 + + * src/summaryview.c: summary_cmp_by_to(): 簡略化した To ヘッダを + 使用して比較。 + 2007-09-13 * libsylph/procheader.[ch]: procheader_get_toname(): 追加。 diff --git a/src/summaryview.c b/src/summaryview.c index 6799dec4..32b464c7 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -6252,10 +6252,37 @@ static gint func_name(GtkTreeModel *model, \ } CMP_FUNC_DEF(summary_cmp_by_from, fromname) -CMP_FUNC_DEF(summary_cmp_by_to, to); #undef CMP_FUNC_DEF +static gint summary_cmp_by_to(GtkTreeModel *model, + GtkTreeIter *a, GtkTreeIter *b, + gpointer data) +{ + MsgInfo *msginfo_a = NULL, *msginfo_b = NULL; + gchar *to_a = NULL, *to_b = NULL; + gint ret; + + gtk_tree_model_get(model, a, S_COL_MSG_INFO, &msginfo_a, + S_COL_TO, &to_a, -1); + gtk_tree_model_get(model, b, S_COL_MSG_INFO, &msginfo_b, + S_COL_TO, &to_b, -1); + + if (!msginfo_a || !msginfo_b) { + g_free(to_b); + g_free(to_a); + return 0; + } + + ret = g_ascii_strcasecmp(to_a ? to_a : "", to_b ? to_b : ""); + + g_free(to_b); + g_free(to_a); + + return (ret != 0) ? ret : + (msginfo_a->date_t - msginfo_b->date_t); +} + static gint summary_cmp_by_subject(GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer data) -- cgit v1.2.3