diff options
author | JP Rosevear <jpr@helixcode.com> | 2000-11-01 03:20:31 +0800 |
---|---|---|
committer | JP Rosevear <jpr@src.gnome.org> | 2000-11-01 03:20:31 +0800 |
commit | b3a536d46bfc6f4ed4524ec6252abfcea2f97423 (patch) | |
tree | f327398c9f76da31d1248890f5781af95aa34fef /addressbook/backend/ebook | |
parent | ae91213c361f16e5f132024dce23718f035a8c27 (diff) | |
download | gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.tar gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.tar.gz gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.tar.bz2 gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.tar.lz gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.tar.xz gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.tar.zst gsoc2013-evolution-b3a536d46bfc6f4ed4524ec6252abfcea2f97423.zip |
Let the warning make sense (compute_pid): remove
2000-10-31 JP Rosevear <jpr@helixcode.com>
* conduit/address-conduit.c (cursor_cb): Let the warning make sense
(compute_pid): remove
(local_record_from_ecard): Create local record from ecard - not finished
(local_record_from_uid): Obtain local_record from uid with the proper
e-book way
(set_status_cleared): Add empty callback
(add_archive_record): kill
(delete_archive_record): kill
(archive_record): Add empty callback
(conduit_get_gpilot_conduit): Update signal connects
* backend/pas/pas-backend-file.c (vcard_change_type): Function to determine
the type of change - not finished
(pas_backend_file_search_changes): Create a view and callback based on
how the cards have changed
(pas_backend_file_process_get_changes): Implement the get changes operation
for files
(pas_backend_file_process_client_requests): Add GetChanges method for
processing
* backend/pas/pas-book.c (pas_book_queue_get_changes): Add changes to
the list
(impl_Evolution_Book_get_changes): implement object method
(pas_book_get_epv): Add get changes to epv
(pas_book_respond_get_changes): Respond to the get changes operation
* backend/pas/pas-book.h: Add GetChanges PASOperation
* backend/idl/addressbook.idl: add get_changes and respond_get_changes
methods
* backend/ebook/e-book.c (e_book_get_changes): Client function
to a view of the changed objects
* backend/ebook/e-book.h: New prototype
2000-10-31 JP Rosevear <jpr@helixcode.com>
* conduits/todo/todo-conduit.h: Remove add/del/mod hashes and
add changed_hash.
* conduits/calendar/calendar-conduit.h: ditto
* conduits/todo/todo-conduit.c (next_changed_item): Utility function
to get the next "really" changed item (changed status can be cleared now)
(compute_status): Compute status based on changed_hash
(pre_sync): Fill changed_hash and counts adds/mods/dels
(set_status_cleared): New callback handler - avoid double syncing
(for_each_modified): Use next_changed_item to iterate
(add_archive_record): kill
(delete_archive_record): kill
(archive_record): New callback handler - mark/unmark archive status
(conduit_get_gpilot_conduit): Adjust signal connects
* conduits/calendar/calendar-conduit.c: ditto
svn path=/trunk/; revision=6297
Diffstat (limited to 'addressbook/backend/ebook')
-rw-r--r-- | addressbook/backend/ebook/e-book.c | 36 | ||||
-rw-r--r-- | addressbook/backend/ebook/e-book.h | 5 |
2 files changed, 41 insertions, 0 deletions
diff --git a/addressbook/backend/ebook/e-book.c b/addressbook/backend/ebook/e-book.c index bb0226eb5a..32103fc9df 100644 --- a/addressbook/backend/ebook/e-book.c +++ b/addressbook/backend/ebook/e-book.c @@ -909,6 +909,42 @@ gboolean e_book_get_book_view (EBook *book, return TRUE; } +gboolean e_book_get_changes (EBook *book, + gchar *changeid, + EBookBookViewCallback cb, + gpointer closure) +{ + CORBA_Environment ev; + EBookViewListener *listener; + + g_return_val_if_fail (book != NULL, FALSE); + g_return_val_if_fail (E_IS_BOOK (book), FALSE); + + if (book->priv->load_state != URILoaded) { + g_warning ("e_book_get_changes: No URI loaded!\n"); + return FALSE; + } + + listener = e_book_view_listener_new(); + + CORBA_exception_init (&ev); + + Evolution_Book_get_changes (book->priv->corba_book, bonobo_object_corba_objref(BONOBO_OBJECT(listener)), changeid, &ev); + + if (ev._major != CORBA_NO_EXCEPTION) { + g_warning ("e_book_changes: Exception " + "getting changes!\n"); + CORBA_exception_free (&ev); + return FALSE; + } + + CORBA_exception_free (&ev); + + e_book_queue_op (book, cb, closure, listener); + + return TRUE; +} + /** * e_book_get_name: */ diff --git a/addressbook/backend/ebook/e-book.h b/addressbook/backend/ebook/e-book.h index 29f3787f66..3c3f2bc65b 100644 --- a/addressbook/backend/ebook/e-book.h +++ b/addressbook/backend/ebook/e-book.h @@ -107,6 +107,11 @@ gboolean e_book_get_book_view (EBook *book, EBookBookViewCallback cb, gpointer closure); +gboolean e_book_get_changes (EBook *book, + char *changeid, + EBookBookViewCallback cb, + gpointer closure); + /* Getting the name of the repository. */ char *e_book_get_name (EBook *book); |