-
-/*
- * ============================================================================
- * Paste address only.
- * ============================================================================
- */
-
-/*
- * Copy email addresses from specified list.
- * Enter: cache Address cache to paste into.
- * target Person to receive email addresses.
- * listEMail List of email addresses.
- * Return: Number of addresses added.
- */
-static gint addrclip_person_add_email(
- AddressCache *cache, ItemPerson *target, GList *listEMail )
-{
- gint cnt;
- GList *node;
-
- /* Copy email addresses */
- cnt = 0;
- node = listEMail;
- while( node ) {
- ItemEMail *email, *newEMail;
-
- email = node->data;
- newEMail = addritem_copy_item_email( email );
- addrcache_id_email( cache, newEMail );
- addrcache_person_add_email( cache, target, newEMail );
- node = g_list_next( node );
- cnt++;
- }
- return cnt;
-}
-
-/*
-* Paste (copy) E-Mail addresses from clipboard into specified person.
-* Enter: aio Address item to copy from.
-* cache Target address cache.
-* person Target person where data is pasted.
-* Return: Number of EMail records added.
-*/
-static gint addrclip_copy_email_to_person(
- AddrItemObject *aio, AddressCache *cache, ItemPerson *person )
-{
- gint cnt;
- GList *listEMail;
-
- cnt = 0;
-
- if( ADDRITEM_TYPE(aio) == ITEMTYPE_PERSON ) {
- ItemPerson *fromPerson;
-
- fromPerson = ( ItemPerson * ) aio;
- listEMail = fromPerson->listEMail;
- cnt += addrclip_person_add_email(
- cache, person, listEMail );
- }
- else if( ADDRITEM_TYPE(aio) == ITEMTYPE_EMAIL ) {
- ItemEMail *email, *newEMail;
-
- email = ( ItemEMail * ) aio;
- newEMail = addritem_copy_item_email( email );
- addrcache_id_email( cache, newEMail );
- addrcache_person_add_email( cache, person, newEMail );
- cnt++;
- }
- else if( ADDRITEM_TYPE(aio) == ITEMTYPE_GROUP ) {
- ItemGroup *group;
-
- group = ( ItemGroup * ) aio;
- listEMail = group->listEMail;
- cnt += addrclip_person_add_email(
- cache, person, listEMail );
- }
- else if( ADDRITEM_TYPE(aio) == ITEMTYPE_FOLDER ) {
- ItemFolder *folder;
- AddrItemObject *item;
- GList *node;
-
- folder = ( ItemFolder * ) aio;
- node = folder->listPerson;
- while( node ) {
- item = node->data;
- node = g_list_next( node );
- cnt += addrclip_copy_email_to_person( item, cache, person );
- }
-
- node = folder->listGroup;
- while( node ) {
- item = node->data;
- node = g_list_next( node );
- cnt += addrclip_copy_email_to_person( item, cache, person );
- }
-
- node = folder->listFolder;
- while( node ) {
- item = node->data;
- node = g_list_next( node );
- cnt += addrclip_copy_email_to_person( item, cache, person );
- }
- }
- return cnt;
-}
-