From d2fe58c56857e9e4b2e37f87174da6956b0d985c Mon Sep 17 00:00:00 2001 From: Federico Mena Quintero Date: Sat, 12 Feb 2000 02:03:58 +0000 Subject: Implemented. 2000-02-11 Federico Mena Quintero * cal-client.c (cal_client_update_object): Implemented. * cal.c (cal_notify_update): New function to notify the listener about an updated object. (Cal_update_object): Implemented. (Cal_get_uids): set_release() the sequence to TRUE. (Cal_get_events_in_range): Likewise. * cal-backend.c (remove_object): New function to remove objects from a calendar backend. (cal_backend_update_object): New public function to update an object and notify clients about it. * evolution-calendar.idl (Cal): Added update_object() and delete_object() methods. (Listener): Removed the obj_changed method and renamed obj_added to obj_updated. We now only have updated and removed notifiers. * cal-listener.[ch]: Removed the "changed" notification code. Changed the "added" notification code to the "updated" notification. * cal-client.c: Likewise. * tlacuache.c (create_cal_factory): Connect to "destroy" on the factory and exit the main loop when the factory is destroyed. * cal-factory.c (backend_destroy_cb): New callback used when a backend is destroyed. Removes the backend from the factory's hash table and unrefs the factory if all backends go away. (add_calendar_client): Free the environment. * cal.c (cal_new): Use bonobo_object_unref() if we fail to initialize. * cal-listener.c (cal_listener_new): Likewise. * layout.c (layout_events): Plug li.partition memory leak. svn path=/trunk/; revision=1742 --- calendar/cal-client/cal-client.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'calendar/cal-client/cal-client.h') diff --git a/calendar/cal-client/cal-client.h b/calendar/cal-client/cal-client.h index 0c4c3e4406..7baad2c733 100644 --- a/calendar/cal-client/cal-client.h +++ b/calendar/cal-client/cal-client.h @@ -60,9 +60,8 @@ struct _CalClientClass { void (* cal_loaded) (CalClient *client, CalClientLoadStatus status); - void (* obj_added) (CalClient *client, const char *uid); + void (* obj_updated) (CalClient *client, const char *uid); void (* obj_removed) (CalClient *client, const char *uid); - void (* obj_changed) (CalClient *client, const char *uid); }; GtkType cal_client_get_type (void); @@ -80,6 +79,8 @@ GList *cal_client_get_uids (CalClient *client, CalObjType type); GList *cal_client_get_events_in_range (CalClient *client, time_t start, time_t end); +gboolean cal_client_update_object (CalClient *client, const char *uid, const char *calobj); + END_GNOME_DECLS -- cgit v1.2.3