Commit Graph

437 Commits

Author SHA1 Message Date
055e3b0fa9 Added inline documentation comment - Federico
svn path=/trunk/; revision=1703
2000-02-09 09:11:21 +00:00
ca082de77a Added get_uids() method to get a list of UIDs based on object types.
2000-02-08  Federico Mena Quintero  <federico@helixcode.com>

	* evolution-calendar.idl (Cal): Added get_uids() method to get a
	list of UIDs based on object types.

	* cal-backend.c (cal_backend_get_uids): Implemented get_uids() in
	the backend.

	* cal.c (Cal_get_uids): Implemented get_uids() method.

	* cal-client.c (cal_client_get_uids): Implemented client-side
	function.

	* cal-util.c (cal_obj_instance_list_free): Doh.  Free the list,
	not the last link.
	(cal_obj_uid_list_free): New function to free a list of UIDs.

	* GnomeCal.idl (Repository): Removed unused method
	get_object_by_id_list().  This is just for cleanup purposes and to
	remind me exactly of what needs to be moved over to
	evolution-calendar.idl.
	(Repository): Removed unused get_objects() method.

	* corba-cal.c (init_calendar_repo_class): Removed the unused
	get_objects method.

	* calobj.h (CalObjFindStatus): New status value enumeration for
	the find function.

	* calobj.c (ical_object_find_in_string): New function to parse a
	complete calendar and find a calendar object in it.  This should
	be used instead ical_object_new_from_string() in the future.

	* evolution-calendar.idl (CalObjInstance): Added an uid field.
	Now the idea is that whenever calendar object strings are passed
	around, their UIDs are passed along with them so that the actual
	object can be pulled from the whole VCAL object using its UID to
	identify it.

	* cal-util.h (CalObjInstance): Added uid field.

	* cal-util.c (cal_obj_instance_list_free): Free the UIDs.

	* cal-backend.c (build_event_list): Store the object's UID in the
	instance structure.

	* cal.c (Cal_get_events_in_range): Copy the UID field to the CORBA
	structure.

	* cal-client.c (cal_client_get_events_in_range): Copy the UID
	field from the CORBA structure.

	* main.c (gnome_cal_file_menu): Removed unfinished html-month stuff.

	* Makefile.am (gnomecal_SOURCES): Removed html-month.c.

	* gnome-cal.c: #include "alarm.h"
	(mail_notify): Made static.

	* alarm.h: #include "calobj.h"

	* corba-cal-factory.h (init_corba_server): Fixed prototype.

	* quick-view.c (create_items_for_event): Made static.

	* gncal-todo.c (column_resized): Made static.

	* layout.c (find_index): Made static.

svn path=/trunk/; revision=1699
2000-02-09 08:04:33 +00:00
6cb60b68f1 Add the files, stupid me - Federico
svn path=/trunk/; revision=1694
2000-02-08 08:22:05 +00:00
cc670cb2ca New struct to wrap instances of calendar objects for recurrencies and
2000-02-08  Federico Mena Quintero  <federico@helixcode.com>

	* evolution-calendar.idl (CalObjInstance): New struct to wrap
	instances of calendar objects for recurrencies and alarms.
	(Cal::get_events_in_range): New method to get ocurring and
	recurring events by time range.

	* cal-backend.c (cal_backend_get_events_in_range): New function to
	get a list of event instances in a time range.
	(string_from_ical_object): New internal function.
	(cal_backend_get_object): Use string_from_ical_object() instead of
	doing everything ourselves.
	(cal_backend_get_events_in_range): New function to get a list of
	the events that occur or recur in a specified time range.

	* cal-client.c (cal_client_get_events_in_range): Implemented
	client-side function.

	* cal-util.h:
	* cal-util.c: New files with utilities and types common to the
	client and server parts.
	(CalObjInstance): New structure to hold an instance of an actual
	occurrence, recurrence, or alarm trigger of a calendar object.
	(cal_obj_instance_list_free): New function to free a list of
	calendar object instances.

	* cal.c (Cal_get_events_in_range): Implemented new method.

	* corba-cal.c (cal_repo_get_updated_objects): Free `str' with
	free(), not g_free(), since calendar_get_as_vcal_string() uses
	writeMemVObject(), which uses realloc().  Fixed in gnome-pim as
	well.

svn path=/trunk/; revision=1693
2000-02-08 07:08:29 +00:00
5d56cdb0b3 New function to create the base VObject for a calendar.
2000-02-04  Federico Mena Quintero  <federico@helixcode.com>

	* cal-backend.c (get_calendar_base_vobject): New function to
	create the base VObject for a calendar.
	(cal_backend_get_object): Create the base calendar and add the
	sought object to it, then stringify it.

	* evolution-calendar.idl (Listener::obj_added
	Listener::obj_changed): Now these pass in just the UIDs, not the
	complete objects.

	* cal-listener.c (Listener_obj_added): Changed to pass in the uid,
	not the object.
	(Listener_obj_changed): Likewise.

	* cal-client.h (CalClientClass): Made the obj_added and
	obj_changed signals take in the UIDs, not the full objects.

	* cal-client.c (obj_added_cb): Likewise.
	(obj_changed_cb): Likewise.

svn path=/trunk/; revision=1666
2000-02-04 04:42:34 +00:00
38ca3c828f Sync to laptop - Federico
svn path=/trunk/; revision=1664
2000-02-03 07:16:37 +00:00
9d6fc52249 Added the get_object() method.
2000-02-03  Federico Mena Quintero  <federico@helixcode.com>

	* evolution-calendar.idl (Cal): Added the get_object() method.

	* cal-client.c (cal_client_get_object): New function to get a
	calendar object by its UID.

	* cal.c (Cal_get_object): Implemented.

	* cal-backend.c (cal_backend_get_object): New unfinished backend
	function.  We need some reorganizing of how the calendar objects
	are stored.

svn path=/trunk/; revision=1663
2000-02-02 09:51:20 +00:00
1da8f9c265 Handle the cal_loaded signal from the listener. Store the calendar client
2000-02-01  Federico Mena Quintero  <federico@helixcode.com>

	* cal-client.c (cal_loaded): Handle the cal_loaded signal from the
	listener.  Store the calendar client interface object, and emit
	our own cal_loaded signal.
	(cal_client_load_calendar): Connect to the listener's signals.
	(cal_client_class_init): Added the "obj_added", "obj_removed",
	öbj_changed" signals.
	(obj_added_cb): Handle the signal from the listener.
	(obj_removed_cb): Likewise.
	(obj_changed_cb): Likewise.

svn path=/trunk/; revision=1658
2000-02-01 10:06:20 +00:00
a2d268b3d1 Sync to desktop - Federico
svn path=/trunk/; revision=1657
2000-01-30 23:47:42 +00:00
390f24328e Changed the namespace from GNOME::Calendar to Evolution::Calendar.
2000-01-30  Federico Mena Quintero  <federico@helixcode.com>

	* evolution-calendar.idl: Changed the namespace from
	GNOME::Calendar to Evolution::Calendar.
	(Listener::LoadStatus): Fixed SUCESSS -> SUCCESS typo.  And I
	never noticed it in the implementation.  Ain't M-/ grand?

	* Makefile.am: Changed ocurrences of gnome-calendar.idl to
	evolution-calendar.idl.

	* *.[ch]: Changed GNOME_Calendar_foo identifiers to
	Evolution_Calendar_foo.

svn path=/trunk/; revision=1652
2000-01-29 10:48:09 +00:00
9f31ce86ff Make Evolution compile with the latest Bonobo changes.
Make Evolution compile with the latest Bonobo changes.

Miguel.

svn path=/trunk/; revision=1636
2000-01-26 00:04:16 +00:00
22a335e614 Calendar client side work - Federico
svn path=/trunk/; revision=1629
2000-01-25 09:58:51 +00:00
ed7345eec7 Check that the listener is not nil and emit and exception if it is.
2000-01-25  Federico Mena Quintero  <federico@helixcode.com>

	* cal-factory.c (CalFactory_load): Check that the listener is not
	nil and emit and exception if it is.

	* gnome-calendar.idl (CalFactory::load CalFactory::create): Now
	these raise the NilListener exception.

	* tlacuache.c (calendar_notify): Error stub for alarms.
	(alarm_defaults): Stub array.
	(debug_alarms): Stub variable.
	(main): Initialize gnome-vfs.

svn path=/trunk/; revision=1627
2000-01-25 08:06:48 +00:00
a315f03213 When will I ever learn to add the files... - Federico
svn path=/trunk/; revision=1625
2000-01-25 04:41:58 +00:00
32ce476a23 Added the gnome-pilot and capplet checks; they will likely be reworked for
2000-01-24  Federico Mena Quintero  <federico@helixcode.com>

	* configure.in: Added the gnome-pilot and capplet checks; they
	will likely be reworked for the Evolution framework, but for now
	the calendar/ directory needs them.

	* configure.in: Added checks for gnome-vfs.
2000-01-24  Federico Mena Quintero  <federico@helixcode.com>

	* tlacuache.c: New main module for the Tlacuache personal calendar
	server.

	* tlacuache.gnorba: New gnorba file for Tlacuache, the GNOME
	personal calendar server.

	* Makefile.am: Added the stuff necessary to build Tlacuache.

	* cal.c (Cal_get_uri): Convert the URI to a string before
	returning it.

	* cal-factory.c (CalFactory_create): Doh, this function is void.

	* job.c (job_add): Use g_idle_add(), not gtk_idle_add().

svn path=/trunk/; revision=1623
2000-01-25 03:17:54 +00:00
13429d5ff1 New function to remove a calendar client interface object from a backend.
2000-01-24  Federico Mena Quintero  <federico@helixcode.com>

	* cal-backend.c (cal_backend_remove_cal): New function to remove a
	calendar client interface object from a backend.
	(cal_backend_load): Convert the URI to string and use
	Parse_MIME_FromFileName().  The conversion is not very smart,
	though.

	* cal-factory.c (load_backend): Moved most of the error handling
	upstream to load_fn().
	(load_fn): Handle failure in case the backend could not be loaded.
	(cal_factory_destroy): Free the backends and the backend hash
	table.
	(add_calendar_client): Implemented.  We create a Cal client
	interface object and attach it to the backend, and we notify the
	listener.

svn path=/trunk/; revision=1618
2000-01-24 08:40:57 +00:00
101996359f Take in a GnomeVFSURI, not a string.
2000-01-22  Federico Mena Quintero  <federico@helixcode.com>

	* cal-backend.c (cal_backend_load): Take in a GnomeVFSURI, not a
	string.

	* cal-listener.c (Listener_cal_loaded): Pass the load status to
	the signal.
	(cal_listener_destroy): Better error checking.
	(cal_listener_new): Better error checking.

	* cal-listener.h (CalListenerLoadStatus): New enum for the load
	status of a calendar.
	(CalListenerClass): Added the status argument to the cal_loaded
	signal.

	* gnome-calendar.idl (cal_loaded): Added a load status code.

	* cal-backend.h (CalBackendLoadStatus): Renamed from
	CalBackendLoadResult.

svn path=/trunk/; revision=1607
2000-01-22 07:09:39 +00:00
bd4e64bd78 Moved the calendar backend here. This is the actual calendar-handling
2000-01-18  Federico Mena Quintero  <federico@helixcode.com>

	* cal-backend.c cal-backend.h: Moved the calendar backend here.
	This is the actual calendar-handling object.
	(load_from_vobject): Moved over from calendar.c.  Modified to use
	a CalBackend instead of the old Calendar structure.
	(add_object): Likewise.

	* cal.c: Now the Cal object is just a calendar client interface
	object; we use it as a "viewport" onto a CalBackend.  This also
	lets us do correct resource management.

	* cal-common.h: New file with common forward declarations; we
	can't have circular dependencies between headers.

2000-01-18  Federico Mena Quintero  <federico@helixcode.com>

	* cal-factory.c (cal_factory_load): Queue a load job.
	(load_fn): Load job handler.  Lookup the calendar by URI, load it
	if it is not loaded, or just report it to the new listener if it is.

	* job.c job.h: New files with a simple job queue manager.

	* gnome-calendar.idl (Listener::cal_loaded): Do not return the
	whole calendar object string.  The client will be able to query
	the calendar for the events it needs.

	* cal-listener.c (Listener_cal_loaded): Ref the calendar GNOME
	object.  We unref it when the listener is destroyed.

2000-01-17  Federico Mena Quintero  <federico@helixcode.com>

	The files from the gncal directory of the gnome-pim module on CVS
	were moved here, to evolution/calendar, in preparation for the
	Evolution work.  The calendar is being split into a model/view
	architecture.  The model is a personal calendar server (PAS):  it
	provides storage, notification, and event generation; the
	views/controllers are the calendar user agents and things like
	Pilot synchronizers.

svn path=/trunk/; revision=1591
2000-01-19 03:32:45 +00:00
64046a6665 Sync, take two - Federico
svn path=/trunk/; revision=1588
2000-01-18 08:51:27 +00:00
28bb14ecfc Forgot these - Federico
svn path=/trunk/; revision=1586
2000-01-18 06:18:18 +00:00
c820a35c23 Sync - Federico
svn path=/trunk/; revision=1585
2000-01-18 06:17:26 +00:00
f3c94fc0f4 Removed the CORBA listener methods, adjusted for the new IDL.
2000-01-11  Federico Mena Quintero  <federico@helixcode.com>

	* cal.c: Removed the CORBA listener methods, adjusted for the new
	IDL.

	* cal-listener.c (cal_listener_init): Create the private
	structure.  In it we hold a reference to the calendar the listener
	is watching.
	(cal_listener_destroy): Destroy the private structure and unref
	the calendar.
	(Listener_cal_loaded): Stuff the calendar into our private data.
	(Listener_obj_added): Adjusted for new IDL.
	(Listener_obj_removed): Likewise.

svn path=/trunk/; revision=1560
2000-01-12 04:13:36 +00:00
edcdb20688 New IDL for the personal calendar server.
2000-01-11  Federico Mena Quintero  <federico@helixcode.com>

	* gnome-calendar.idl: New IDL for the personal calendar server.

	* cal.h cal.c: New files with the calendar object.

	* cal-listener.h cal-listener.c: New files with the calendar
	listener object.

	* cal-factory.h cal-factory.c: New files with the calendar factory
	object.

svn path=/trunk/; revision=1555
2000-01-12 01:36:56 +00:00
fb7cf01122 Removed todo capplet stuff.
svn path=/trunk/; revision=1548
2000-01-09 15:59:43 +00:00
25606cbf7d Update to use gpilotd_get_pilot_basedir and gnome_pilot_conduit_standard_abs_set_db_open_mode. Added pilotID argument to gpilotd_conduit_mgmt_new.
svn path=/trunk/; revision=1544
2000-01-08 04:44:57 +00:00
36e5e42d31 Added an argument to the corba get_number_of_objects, so you can decide
which status the objects you count should have, eg. any or modified
etc. Will add record type someday.

svn path=/trunk/; revision=1535
2000-01-05 12:12:44 +00:00
eb7c5ae3c5 Committed fixes for the end-on-day recurrence bug where the last
day was skipped.

Also fixed problem with multiple setitimer calls that where especially
pesky in the corba part, where corba calls would cause numerous alarm
dialogs when the events alarm went off.

svn path=/trunk/; revision=1525
1999-12-31 15:58:08 +00:00
0948bfda86 Added Galician translation
svn path=/trunk/; revision=1524
1999-12-31 12:59:27 +00:00
d0606659a4 Minor unmiportant changes, but my laptop is acting up, so I
need them somewhere safe, eg. cvs :)

svn path=/trunk/; revision=1522
1999-12-29 20:46:09 +00:00
5f0aabc212 Fix sensitivity bug when used to create default alarm box (widgets in that
1999-12-10  Russell Steinthal  <rms39@columbia.edu>

	* eventedit.c (ee_create_ae): Fix sensitivity bug when used to
	create default alarm box (widgets in that box should always be
	sensitive, even if the enabled checkbutton is not set)

svn path=/trunk/; revision=1479
1999-12-10 17:58:43 +00:00
98b072cced Capplets now sets first_sync on enable, this should make the conduit copy
* calendar-conduit-control-applet.c (setSettings): Capplets now
	sets first_sync on enable, this should make the conduit copy old
	entries from the pilot to gnomecal.

svn path=/trunk/; revision=1476
1999-12-08 00:45:53 +00:00
b279ef22cc Check if local store is empty. If, force slow sync.
* calendar-conduit.c (pre_sync): Check if local store is
	empty. If, force slow sync.

	* GnomeCal.idl (GNOME): Added get_number_of_objects.

	* corba-cal.c (cal_repo_get_number_of_objects): implemented the
 	get_number_of_objects.

	* calendar-conduit-control-applet.c (setStateCfg): Fixed bug that
	caused the capplet to always set the sync action to Disable upon start.

svn path=/trunk/; revision=1475
1999-12-07 03:43:51 +00:00
1a518e9dc4 Added a sub package to the .spec file, it now generates
gnome-pim-conduit-%ver.%arch.rpm, containing the Gnome Pilot conduits.

Modded makefile.am so the conduit capplets also appear on the main menu.

svn path=/trunk/; revision=1462
1999-12-05 19:31:55 +00:00
45c9092c61 Removed intl
* Makefile.am (SUBDIRS): Removed intl

	* configure.in: uses AM_GNOME_GETTEXT instead of AM_GNU_GETTEXT,
	version = 1.1.2.

        * gncal/Makefile.am & gnomecard/Makefile.am: added missing
        stuff to SOURCES and EXTRA_DIST.

svn path=/trunk/; revision=1461
1999-12-04 19:05:12 +00:00
ab627d51c2 Sigh. Get this one
svn path=/trunk/; revision=1460
1999-12-03 18:28:39 +00:00
2e132a09ab 1.1.0
svn path=/trunk/; revision=1457
1999-12-03 07:24:47 +00:00
afb4599180 The long-awaited and much-needed (IMNSHO) snooze button for gnomecal alarms.
Not strictly [vi]Calendar compliant, but much more intuitive.

svn path=/trunk/; revision=1456
1999-12-03 00:55:01 +00:00
aea33f51dd undef DEBUG_CALCONDUT, suppresses debug output.
* calendar-conduit.c: undef DEBUG_CALCONDUT, suppresses debug output.

svn path=/trunk/; revision=1455
1999-12-03 00:14:36 +00:00
6dde8f43e3 Debugging enhancements: report alarms not added (because they have already
passed), allow toggling of debugging output using SIGUSR1

svn path=/trunk/; revision=1453
1999-12-02 18:47:31 +00:00
6e69c39698 Fixed compare bug. Also neated up some of the if's in set_status.
* calendar-conduit.c (compare): Fixed compare bug. Also neated up
	some of the if's in set_status.

svn path=/trunk/; revision=1444
1999-11-30 00:26:02 +00:00
d42f191dd5 <self_serving> Add myself to AUTHORS, about box </self_serving>
<self_serving>
Add myself to AUTHORS, about box
</self_serving>

svn path=/trunk/; revision=1430
1999-11-22 22:43:40 +00:00
c895e6eefa Merged Rusty's last todo list coloring patch from stable to HEAD.
svn path=/trunk/; revision=1429
1999-11-22 08:04:07 +00:00
c75604cac3 Writes some warning messages when pre_sync fails.
* calendar-conduit.c (pre_sync): Writes some warning
 	messages when pre_sync fails.

svn path=/trunk/; revision=1427
1999-11-22 01:20:45 +00:00
16de3313b7 added greek descriptions
svn path=/trunk/; revision=1393
1999-11-17 04:34:37 +00:00
7b1bd483b9 Stupid misplaced endif cause gncal to depend on an install gnome-pilot...
* Makefile.am: Stupid misplaced endif cause gncal to depend on an
	install gnome-pilot... fixed... sorry.

svn path=/trunk/; revision=1387
1999-11-13 22:00:39 +00:00
dded739f63 The long-awaited audio alarm timeout patch. Implements wishlist bug #3089.
Note: Per discussion on calendar-list, checks to see that timeout value is
reasonable, i.e. between 1 and MAX_AALARM_TIMEOUT (set to 3600 seconds).  Check
is enforced by GtkSpinButton in property box and the patch when loading from
disk.

svn path=/trunk/; revision=1384
1999-11-12 17:11:02 +00:00
0ebe0334b1 Schedule a new day_change_alarm in the day_change_alarm callback, so that the
process repeats the next day.

This fixes a bug by which alarms would mysteriously stop working after gnomecal was running for its second midnight.

svn path=/trunk/; revision=1380
1999-11-11 06:09:32 +00:00
eb3130b844 Forgot my changelog yesterday.
svn path=/trunk/; revision=1379
1999-11-10 12:59:32 +00:00
4e15d4092c Enabled debug output. Sets a g_log_domain, now version 0.8.5. Consistent
1999-11-09  Eskil Heyn Olsen  <deity@eskil.dk>

	* calendar-conduit.c: Enabled debug output. Sets a g_log_domain,
	now version 0.8.5. Consistent use of GSList/GList. Implemented
	compare, default uses one that compares the contents of a struct
	Appointment, but also has #ifdeffed code that does a field level
	comparison, not complete, but perhaps educational.

	* Makefile.am (#todo_conduit_control_applet_SOURCES): Fixed an
	unwanted conditional on libcalendar_conduit_la_LDFLAGS

svn path=/trunk/; revision=1376
1999-11-09 19:28:29 +00:00
0b246c95e9 Fixed an unwanted conditional on libcalendar_conduit_la_LDFLAGS
* Makefile.am (#todo_conduit_control_applet_SOURCES): Fixed an
	unwanted conditional on libcalendar_conduit_la_LDFLAGS

svn path=/trunk/; revision=1372
1999-11-09 01:42:29 +00:00