From 10387f75191a34848c5b4657aa1ba0efdc167ce3 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 11 May 2001 20:28:27 +0000 Subject: If the name is set and the full_name or file_as haven't been yet, set 2001-05-11 Christopher James Lahey * backend/ebook/e-card.c (e_card_set_arg): If the name is set and the full_name or file_as haven't been yet, set them. svn path=/trunk/; revision=9770 --- addressbook/ChangeLog | 5 +++++ addressbook/backend/ebook/e-card.c | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index 8959f321cd..09103948ad 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,3 +1,8 @@ +2001-05-11 Christopher James Lahey + + * backend/ebook/e-card.c (e_card_set_arg): If the name is set and + the full_name or file_as haven't been yet, set them. + 2001-05-11 Christopher James Lahey * backend/pas/pas-backend-file.c: Reordered the includes here. diff --git a/addressbook/backend/ebook/e-card.c b/addressbook/backend/ebook/e-card.c index eb239ccd76..3845ac8227 100644 --- a/addressbook/backend/ebook/e-card.c +++ b/addressbook/backend/ebook/e-card.c @@ -1653,6 +1653,24 @@ e_card_set_arg (GtkObject *object, GtkArg *arg, guint arg_id) if ( card->name ) e_card_name_free(card->name); card->name = e_card_name_copy(GTK_VALUE_POINTER(*arg)); + if (card->name == NULL) + card->name = e_card_name_new(); + if (card->fname == NULL) { + card->fname = e_card_name_to_string(card->name); + } + if (card->file_as == NULL) { + ECardName *name = card->name; + char *strings[3], **stringptr; + char *string; + stringptr = strings; + if (name->family && *name->family) + *(stringptr++) = name->family; + if (name->given && *name->given) + *(stringptr++) = name->given; + *stringptr = NULL; + string = g_strjoinv(", ", strings); + card->file_as = string; + } break; case ARG_CATEGORIES: if (card->categories) -- cgit v1.2.3