Federico Mena Quintero d8fbc4fc0c Connect to the Cal's destroy signal. (cal_backend_remove_cal): Killed
2000-02-10  Federico Mena Quintero  <federico@helixcode.com>

	* cal-backend.c (cal_backend_add_cal): Connect to the Cal's
	destroy signal.
	(cal_backend_remove_cal): Killed function now that removal of Cal
	objects is done in their destroy callback.
	(cal_destroy_cb): New callback to remove a Cal from the backend's
	list of clients.  Also, the backend destroys itself when there are
	no more clients connected to it.
	(save): New placeholder function to save a backend.
	(destroy): New function to destroy a backend's data.
	(cal_backend_destroy): Save the calendar and destroy it.

	* cal.c (cal_destroy): Reset the priv->backend to NULL.

	* cal-factory.c (add_calendar_client): There is no need to call
	cal_backend_remove_cal(); we can now just destroy the Cal object.
	(create_fn): Make sure we always unref the URI.
	(load_fn): Move the URI unref to the end of the function for
	safety.

	* cal-factory.c (add_calendar_client): Unref the Cal only if
	notification of the listener was unsuccessful.  Otherwise, the
	calendar user agent (Listener side) keeps the reference.

	* tl-test.c (list_uids): Free the calobj.

	* cal-client.c (cal_loaded_cb): Use bonobo_object_unref() to get
	rid of the listener.
	(load_or_create): Likewise.
	(destroy_factory): New function to get rid of the factory.
	(destroy_listener): New function to get rid of the listener.
	(destroy_cal): New function to get rid of the calendar client
	interface object.
	(cal_client_destroy): Free all resources.
	(cal_client_get_object): CORBA_free() the calobj string.  Boy, I
	love memprof.

	* cal-listener.c (cal_listener_destroy): Reset the priv->cal to
	CORBA_OBJECT_NIL.

	* cal-backend.c (cal_backend_remove_cal): Do not unref the Cal,
	since the calendar user agent owns it.
	(cal_backend_add_cal): Do not ref the Cal, since the calendar user
	agent owns it.

	* cal-factory.c (add_calendar_client): Use bonobo_object_unref()
	to get rid of the calendar client interface object.

	* calobj.c (ical_object_create_from_vobject): Duplicate the
	default "PUBLIC" string.

2000-02-09  Federico Mena Quintero  <federico@helixcode.com>

	* cal-factory.c (cal_factory_load): Added documentation comment.
	(load_fn): Do not print a message if the backend could not be
	loaded due to a non-fatal error.
	(queue_load_create_job): Moved the stuff from cal_factory_load()
	to here.  Now this function serves to queue load or create
	requests.
	(cal_factory_load): Use queue_load_create_job().
	(cal_factory_create): Implemented; use queue_load_create_job().
	(create_fn): New job handler for creating new calendars.
	(create_backend): New function to create a new backend with a new
	calendar.
	(add_backend): New helper function to add backends to the
	factory's hash table.
	(load_backend): Use add_backend() instead of adding the backend by
	ourselves.

	* cal-client.c (load_or_create): Moved the functionality from
	cal_client_load_calendar() to here, and added an option to create
	a new calendar instead of loading an existing one.
	(cal_client_load_calendar): Use load_or_create().
	(cal_client_create_calendar): Implemented.

	* cal-backend.c (cal_backend_create): Implemented.

	* evolution-calendar.idl (LoadStatus): Added an IN_USE error for
	create requests.

	* cal-listener.h (CalListenerLoadStatus): Added CAL_LISTENER_LOAD_IN_USE.

	* cal-listener.c (Listener_cal_loaded): Convert the IN_USE error.

	* cal-client.h (CalClientLoadStatus): Added CAL_CLIENT_LOAD_IN_USE.

	* cal-client.c (cal_loaded_cb): Handle CAL_LISTENER_LOAD_IN_USE.

	* tl-test.c: New test program for the calendar client side; it
	also exercises the server side by sending commands to it.

	* Makefile.am: Added the tl-test program.

	* tlacuache.gnorba: Updated.

	* tlacuache.c (create_cal_factory): Use the right GOAD id.

	* cal-client.c (cal_client_construct): Use the right GOAD id.

svn path=/trunk/; revision=1732
2000-02-11 11:08:08 +00:00
2000-02-11 04:20:59 +00:00
2000-02-11 04:19:03 +00:00
2000-02-03 09:10:00 +00:00
2000-02-03 09:10:00 +00:00
2000-02-11 04:19:03 +00:00
2000-02-11 04:20:59 +00:00
2000-02-11 04:19:03 +00:00

Evolution is the integrated mail, calendar and address book
distributed suite from Helix Code, Inc.

http://www.helixcode.com for more information.

Description
No description provided
Readme 1.4 GiB
Languages
C 96.8%
JavaScript 1.4%
CMake 1.2%
Makefile 0.2%
Python 0.2%