From 653cfffc0e00dfb59b36813c1b45c53d3f773c65 Mon Sep 17 00:00:00 2001 From: Ettore Perazzoli Date: Tue, 21 Oct 2003 18:49:34 +0000 Subject: Merge new-ui-branch to the trunk. svn path=/trunk/; revision=22965 --- addressbook/backend/ebook/e-book.h | 212 ++++++++++++++++++------------------- 1 file changed, 104 insertions(+), 108 deletions(-) (limited to 'addressbook/backend/ebook/e-book.h') diff --git a/addressbook/backend/ebook/e-book.h b/addressbook/backend/ebook/e-book.h index d2c5a7bce4..1d2a4dc2d4 100644 --- a/addressbook/backend/ebook/e-book.h +++ b/addressbook/backend/ebook/e-book.h @@ -3,9 +3,9 @@ * The Evolution addressbook client object. * * Author: - * Nat Friedman (nat@ximian.com) + * Chris Toshok (toshok@ximian.com) * - * Copyright 1999, 2000, Ximian, Inc. + * Copyright (C) 1999-2003, Ximian, Inc. */ #ifndef __E_BOOK_H__ @@ -14,10 +14,13 @@ #include #include -#include -#include +#include +#include #include #include +#if notyet +#include +#endif #define E_TYPE_BOOK (e_book_get_type ()) #define E_BOOK(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), E_TYPE_BOOK, EBook)) @@ -43,127 +46,120 @@ struct _EBookClass { /* * Signals. */ - void (* open_progress) (EBook *book, const char *msg, short percent); - void (* link_status) (EBook *book, gboolean connected); void (* writable_status) (EBook *book, gboolean writable); void (* backend_died) (EBook *book); -}; -/* Callbacks for asynchronous functions. */ -typedef void (*EBookCallback) (EBook *book, EBookStatus status, gpointer closure); -typedef void (*EBookOpenProgressCallback) (EBook *book, - const char *status_message, - short percent, - gpointer closure); -typedef void (*EBookIdCallback) (EBook *book, EBookStatus status, const char *id, gpointer closure); -typedef void (*EBookCardCallback) (EBook *book, EBookStatus status, ECard *card, gpointer closure); -typedef void (*EBookCursorCallback) (EBook *book, EBookStatus status, ECardCursor *cursor, gpointer closure); -typedef void (*EBookBookViewCallback) (EBook *book, EBookStatus status, EBookView *book_view, gpointer closure); -typedef void (*EBookFieldsCallback) (EBook *book, EBookStatus status, EList *fields, gpointer closure); -typedef void (*EBookAuthMethodsCallback) (EBook *book, EBookStatus status, EList *auth_methods, gpointer closure); + /* Padding for future expansion */ + void (*_ebook_reserved0) (void); + void (*_ebook_reserved1) (void); + void (*_ebook_reserved2) (void); + void (*_ebook_reserved3) (void); + void (*_ebook_reserved4) (void); +}; /* Creating a new addressbook. */ -EBook *e_book_new (void); +EBook *e_book_new (void); + +/* loading arbitrary addressbooks */ +gboolean e_book_load_uri (EBook *book, + const char *uri, + gboolean only_if_exists, + GError **error); -void e_book_load_uri (EBook *book, - const char *uri, - EBookCallback open_response, - gpointer closure); -void e_book_unload_uri (EBook *book); +gboolean e_book_unload_uri (EBook *book, + GError **error); -const char *e_book_get_uri (EBook *book); +gboolean e_book_remove (EBook *book, + GError **error); -char *e_book_get_static_capabilities (EBook *book); -gboolean e_book_check_static_capability (EBook *book, const char *cap); +/* convenience function for loading the "local" contact folder */ +gboolean e_book_load_local_addressbook (EBook *book, + GError **error); -guint e_book_get_supported_fields (EBook *book, - EBookFieldsCallback cb, - gpointer closure); +gboolean e_book_get_supported_fields (EBook *book, + GList **fields, + GError **error); -guint e_book_get_supported_auth_methods (EBook *book, - EBookAuthMethodsCallback cb, - gpointer closure); +gboolean e_book_get_supported_auth_methods (EBook *book, + GList **auth_methods, + GError **error); /* User authentication. */ -void e_book_authenticate_user (EBook *book, - const char *user, - const char *passwd, - const char *auth_method, - EBookCallback cb, - gpointer closure); - -/* Fetching cards. */ -guint e_book_get_card (EBook *book, - const char *id, - EBookCardCallback cb, - gpointer closure); - -/* Deleting cards. */ -gboolean e_book_remove_card (EBook *book, - ECard *card, - EBookCallback cb, - gpointer closure); -gboolean e_book_remove_card_by_id (EBook *book, - const char *id, - EBookCallback cb, - gpointer closure); - -gboolean e_book_remove_cards (EBook *book, - GList *id_list, - EBookCallback cb, - gpointer closure); - -/* Adding cards. */ -gboolean e_book_add_card (EBook *book, - ECard *card, - EBookIdCallback cb, - gpointer closure); -gboolean e_book_add_vcard (EBook *book, - const char *vcard, - EBookIdCallback cb, - gpointer closure); - -/* Modifying cards. */ -gboolean e_book_commit_card (EBook *book, - ECard *card, - EBookCallback cb, - gpointer closure); -gboolean e_book_commit_vcard (EBook *book, - const char *vcard, - EBookCallback cb, - gpointer closure); - -/* Checking to see if we're connected to the card repository. */ -gboolean e_book_check_connection (EBook *book); -guint e_book_get_cursor (EBook *book, - char *query, - EBookCursorCallback cb, - gpointer closure); - -guint e_book_get_book_view (EBook *book, - const gchar *query, - EBookBookViewCallback cb, - gpointer closure); - -guint e_book_get_completion_view (EBook *book, - const gchar *query, - EBookBookViewCallback cb, - gpointer closure); - -guint e_book_get_changes (EBook *book, - char *changeid, - EBookBookViewCallback cb, - gpointer closure); +gboolean e_book_authenticate_user (EBook *book, + const char *user, + const char *passwd, + const char *auth_method, + GError **error); + +/* Fetching contacts. */ +gboolean e_book_get_contact (EBook *book, + const char *id, + EContact **contact, + GError **error); + +/* Deleting contacts. */ +gboolean e_book_remove_contact (EBook *book, + const char *id, + GError **error); + +gboolean e_book_remove_contacts (EBook *book, + GList *id_list, + GError **error); + +/* Adding contacts. */ +gboolean e_book_add_contact (EBook *book, + EContact *contact, + GError **error); + +/* Modifying contacts. */ +gboolean e_book_commit_contact (EBook *book, + EContact *contact, + GError **error); + +/* Returns a live view of a query. */ +gboolean e_book_get_book_view (EBook *book, + EBookQuery *query, + GList *requested_fields, + int max_results, + EBookView **book_view, + GError **error); + +/* Returns a static snapshot of a query. */ +gboolean e_book_get_contacts (EBook *book, + EBookQuery *query, + GList **contacts, + GError **error); + +gboolean e_book_get_changes (EBook *book, + char *changeid, + GList **changes, + GError **error); + +void e_book_free_change_list (GList *change_list); + +const char *e_book_get_uri (EBook *book); + +const char *e_book_get_static_capabilities (EBook *book, + GError **error); +gboolean e_book_check_static_capability (EBook *book, + const char *cap); +gboolean e_book_is_writable (EBook *book); /* Cancel a pending operation. */ -void e_book_cancel (EBook *book, - guint tag); +gboolean e_book_cancel (EBook *book, + GError **error); +/* Identity */ +gboolean e_book_get_self (EContact **contact, EBook **book, GError **error); +gboolean e_book_set_self (EBook *book, const char *id, GError **error); -/* Getting the name of the repository. */ -char *e_book_get_name (EBook *book); +/* Addressbook Discovery */ +gboolean e_book_get_default_addressbook (EBook **book, GError **error); +#if notyet +gboolean e_book_get_addressbooks (ESourceList** addressbook_sources, GError **error); +#endif -GType e_book_get_type (void); +GType e_book_get_type (void); G_END_DECLS -- cgit