コード例 #1
0
ファイル: addritem.c プロジェクト: moreorless/claws-mail
/**
 * Print address group item for debug.
 * \param group  Group to print.
 * \param stream Output stream.
 */
void addritem_print_item_group( ItemGroup *group, FILE *stream ) {
	GList *node;
	ItemPerson *person;
	ItemEMail *item;
	g_return_if_fail( group != NULL );
	fprintf( stream, "Group:\n" );
	fprintf( stream, "\tt/u: %d : '%s'\n", ADDRITEM_TYPE(group), ADDRITEM_ID(group) );
	fprintf( stream, "\tsub: %d\n", ADDRITEM_SUBTYPE(group) );
	fprintf( stream, "\tgrp: '%s'\n", ADDRITEM_NAME(group) );
	fprintf( stream, "\trem: '%s'\n", group->remarks );
	fprintf( stream, "\t---\n" );
	node = group->listEMail;
	while( node ) {
		item = node->data;
		person = ( ItemPerson * ) ADDRITEM_PARENT(item);
		if( person ) {
			fprintf( stream, "\t\tpid : '%s'\n", ADDRITEM_ID(person) );
			fprintf( stream, "\t\tcomn: '%s'\n", ADDRITEM_NAME(person) );
		}
		else {
			fprintf( stream, "\t\tpid : ???\n" );
			fprintf( stream, "\t\tcomn: ???\n" );
		}
		addritem_print_item_email( item, stream );
		node = g_list_next( node );
	}
	fprintf( stream, "\t***\n" );
}
コード例 #2
0
ファイル: addritem.c プロジェクト: moreorless/claws-mail
/**
 * Print person item for debug.
 * \param person Person to print.
 * \param stream Output stream.
 */
void addritem_print_item_person( ItemPerson *person, FILE *stream ) {
	GList *node;
	g_return_if_fail( person != NULL );
	fprintf( stream, "Person:\n" );
	fprintf( stream, "\tt/uid: %d : '%s'\n", ADDRITEM_TYPE(person), ADDRITEM_ID(person) );
	fprintf( stream, "\tsubty: %d\n", ADDRITEM_SUBTYPE(person) );
	fprintf( stream, "\tcommn: '%s'\n", ADDRITEM_NAME(person) );
	fprintf( stream, "\tfirst: '%s'\n", person->firstName );
	fprintf( stream, "\tlast : '%s'\n", person->lastName );
	fprintf( stream, "\tnick : '%s'\n", person->nickName );
	fprintf( stream, "\textID: '%s'\n", person->externalID );
	fprintf( stream, "\teMail:\n" );
	fprintf( stream, "\t---\n" );
	node = person->listEMail;
	while( node ) {
		addritem_print_item_email( node->data, stream );
		node = g_list_next( node );
	}
	fprintf( stream, "\tuAttr:\n" );
	fprintf( stream, "\t---\n" );
	node = person->listAttrib;
	while( node ) {
		addritem_print_attribute( node->data, stream );
		node = g_list_next( node );
	}
	fprintf( stream, "\t===\n" );
}
コード例 #3
0
ファイル: addritem.c プロジェクト: moreorless/claws-mail
/**
 * Print address item for debug.
 * \param aio    Address item to format.
 * \param stream Output stream.
 */
void addritem_print_item( AddrItemObject *aio, FILE *stream ) {
	g_return_if_fail( aio != NULL );

	if( aio->type == ITEMTYPE_PERSON ) {
		ItemPerson *item = ( ItemPerson * ) aio;
		addritem_print_item_person( item, stream );
	}
	else if( aio->type == ITEMTYPE_EMAIL ) {
		ItemEMail *item = ( ItemEMail * ) aio;
		addritem_print_item_email( item, stream );
	}
	else if( aio->type == ITEMTYPE_GROUP ) {
		ItemGroup *item = ( ItemGroup * ) aio;
		addritem_print_item_group( item, stream );
	}
	else if( aio->type == ITEMTYPE_FOLDER ) {
		ItemFolder *item = ( ItemFolder * ) aio;
		addritem_print_item_folder( item, stream );
	}
}
コード例 #4
0
ファイル: addritem.c プロジェクト: Mortal/claws
/**
 * Print person item for debug.
 * \param person Person to print.
 * \param stream Output stream.
 */
void addritem_print_item_person( ItemPerson *person, FILE *stream ) {
	GList *node;
	cm_return_if_fail( person != NULL );
	fprintf( stream, "Person:\n" );
	fprintf( stream, "\tt/uid: %d : '%s'\n", ADDRITEM_TYPE(person), ADDRITEM_ID(person) );
	fprintf( stream, "\tsubty: %d\n", ADDRITEM_SUBTYPE(person) );
	fprintf( stream, "\tcommn: '%s'\n", ADDRITEM_NAME(person) );
	fprintf( stream, "\tphoto: '%s'\n", person->picture );
	fprintf( stream, "\tfirst: '%s'\n", person->firstName );
	fprintf( stream, "\tlast : '%s'\n", person->lastName );
	fprintf( stream, "\tnick : '%s'\n", person->nickName );
	fprintf( stream, "\textID: '%s'\n", person->externalID );
	fprintf( stream, "\teMail:\n" );
	fprintf( stream, "\t---\n" );
	node = person->listEMail;
	while( node ) {
		addritem_print_item_email( node->data, stream );
		node = g_list_next( node );
	}
	fprintf( stream, "\tuAttr:\n" );
	fprintf( stream, "\t---\n" );
	node = person->listAttrib;
	while( node ) {
		addritem_print_attribute( node->data, stream );
		node = g_list_next( node );
	}
	gchar *current_status;
	switch (person->status) {
		case NONE: current_status = g_strdup("Unchanged"); break;
		case ADD_ENTRY: current_status = g_strdup("New"); break;
		case UPDATE_ENTRY: current_status = g_strdup("Updated"); break;
		case DELETE_ENTRY: current_status = g_strdup("Deleted"); break;
		default: current_status = g_strdup("Unknown");
	}
	fprintf( stream, "\t\tStatus: %s\n", current_status );
	if ( current_status )
		g_free(current_status);
	fprintf( stream, "\t===\n" );
}