aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/alarm-notify
Commit message (Collapse)AuthorAgeFilesLines
* Now the views monitor the client by themselves; it does not make sense toFederico Mena Quintero2000-08-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-08-29 Federico Mena Quintero <federico@helixcode.com> Now the views monitor the client by themselves; it does not make sense to proxy all notifications through the GnomeCal. The GnomeCal should just be a meta-widget that holds all the views. At some later point we'll want to decouple the views from the GnomeCal so that they can be embedded anywhere; they should emit signals to request appropriate actions from the toplevel GUI instead of calling the GnomeCal directly. * gui/e-day-view.c (e_day_view_set_cal_client): New function; now the day view monitors the client by itself. (cal_loaded_cb): New callback; moved over from e_day_view_update_all_events(). (obj_updated_cb): New callback; moved over from e_day_view_update_event(). (obj_removed_cb): New callback; moved over from e_day_view_remove_event(). (e_day_view_update_all_events): Removed function. (e_day_view_update_event): Removed function. (e_day_view_remove_event): Removed function. (*): Use the day_view->client directly instead of fetching it from the GnomeCal. (e_day_view_destroy): Unref the client. (e_day_view_reload_events): Check if the client is loaded. (e_day_view_key_press): Set the vtype of the new component. * gui/e-week-view.c (e_week_view_set_cal_client): New function. (cal_loaded_cb): New callback. (obj_updated_cb): New callback. (obj_removed_cb): New callback. (e_week_view_update_all_events): Removed function. (e_week_view_update_event): Removed function. (e_week_view_remove_event): Removed function. (*): Use the week_view->client directly. (e_week_view_destroy): Unref the client. (e_week_view_reload_events): Check if the client is loaded. * gui/gnome-cal.c (setup_widgets): Set the cal_client on all the views. (gnome_calendar_update_all): Do not update the views, since now they do it themselves. (gnome_calendar_object_updated_cb): Likewise. (gnome_calendar_object_removed_cb): Likewise. (setup_widgets): Remove all to-do list cruft. (gnome_calendar_colors_changed): Likewise. (gnome_calendar_todo_properties_changed): Likewise. * gui/calendar-commands.h (todo_style_changed): Removed variable. * gui/gncal-todo.c: Removed old clist cruft; just left in the temporary dialog box for now. svn path=/trunk/; revision=5105
* Oops, subtract the new alarm's trigger time from the current time.Federico Mena Quintero2000-08-101-1/+1
| | | | | | | | | 2000-08-09 Federico Mena Quintero <federico@helixcode.com> * gui/alarm.c (pop_alarm): Oops, subtract the new alarm's trigger time from the current time. svn path=/trunk/; revision=4674
* New function. (cal_component_get_icalcomponent): Ensure that the SEQUENCEFederico Mena Quintero2000-08-083-11/+17
| | | | | | | | | | | | | 2000-08-07 Federico Mena Quintero <federico@helixcode.com> * cal-util/cal-component.c (cal_component_clone): New function. (cal_component_get_icalcomponent): Ensure that the SEQUENCE property does not need incrementing. * gui/dialogs/alarm-notify-dialog.c (alarm_notify_dialog): Use CalComponent. Deal with an empty summary property. svn path=/trunk/; revision=4589
* Alarm stuff I had not cvs added, sigh - FedericoFederico Mena Quintero2000-05-163-0/+492
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-05-14 Federico Mena Quintero <federico@helixcode.com> * gui/gnome-cal.c (display_notification): Use the alarm notification dialog. (display_notification_cb): New callback for the result of the alarm notification dialog. * gui/dialogs/alarm-notify.glade: New file with the alarm notification dialog. * gui/dialogs/alarm-notify-dialog.[ch]: New file. * gui/dialogs/Makefile.am: New file. * gui/Makefile.am (SUBDIRS): Added the dialogs directory. 2000-05-13 Federico Mena Quintero <federico@helixcode.com> * gui/gnome-cal.c (trigger_alarm_cb): Better error checking, and plug leaks of str_ico and ico. * gui/evolution-calendar-control.c (main): Initialize libglade. svn path=/trunk/; revision=3072
* Removed unused arguments. Load the initial alarms here. (load_alarms): NewFederico Mena Quintero2000-05-122-177/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-05-11 Federico Mena Quintero <federico@helixcode.com> * gui/gnome-cal.c (gnome_calendar_update_all): Removed unused arguments. Load the initial alarms here. (load_alarms): New function to load a day's worth of alarms. (gnome_calendar_class_init): Eeeek! This was taking in an incorrect argument type. (gnome_calendar_init): Now the calendar keeps a hash table of UIDs->queued alarms. Create the hash table here. (gnome_calendar_destroy): Destroy the alarms hash table. (gnome_calendar_object_updated_cb): Remove the alarms for the object and regenerate them. (gnome_calendar_object_removed_cb): Remove the alarms for the object. * gui/alarm.c (alarm_add): Do not take in a CalendarAlarm, just the trigger time, the callback and the closure data. Return an opaque identifier for the alarm so that it can be removed by the client code if needed. Use the queue_alarm() helper function. (queue_alarm): Helper function to actually queue the alarm and set up the itimer. Deal with a nonzero return value from setitimer(). (alarm_remove): New function to remove an alarm based on its ID. (pop_alarm): New helper function; pops the first alarm of the queue and resets the timer as appropriate. (alarm_ready): Simplified a lot by using pop_alarm(). * idl/evolution-calendar.idl (Cal): Added get_alarms_in_range(). * pcs/cal.c (build_instance_seq): New function to build a CORBA sequence from the internal list of instances. (Cal_get_events_in_range): Use build_instance_seq(). (Cal_get_alarms_in_range): Implemented new method. * pcs/cal-backend.c (cal_backend_get_alarms_in_range): New function with the get_alarms_in_range() engine. * pcs/cal-backend-imc.c (cal_backend_imc_get_alarms_in_range): Implemented the get_alarms_in_range() method. * cal-client/cal-client.c (cal_client_get_alarms_in_range): New client-side function for getting the alarms. (build_instance_list): New helper function to build the CalObjInstance list from the CORBA sequence. (cal_client_get_events_in_range): Use build_instance_list(). * gui/calendar-commands.h: #include <cal-util/calobj.h>. #include "gnome-cal.h". * gui/e-week-view.c: #include "calendar-commands.h" instead of main.h; the latter is an obsolete file and will be killed. * gui/evolution-calendar-control.c (main): Call init_bonobo() before anything else. We need the GTK+ object system initialized. * gui/Makefile.am (evolution_calendar_SOURCES): Do not use main.h. * cal-util/cal-util.c (cal_alarm_instance_list_free): New function. svn path=/trunk/; revision=2987
* Renamed library from libcalutil to libcal-util, to be consistent withFederico Mena Quintero2000-04-172-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-04-16 Federico Mena Quintero <federico@helixcode.com> * cal-util/Makefile.am: Renamed library from libcalutil to libcal-util, to be consistent with libcal-client. Install header files in $(includedir)/evolution/cal-util. (INCLUDES): Add "cal-util" log domain for glib. (libcal_clientincludedir): The header files are now installed in $(includedir)/evolution/cal-client. * cal-util/cal-util.h: Fix includes. * cal-client/client-test.c: Fix includes. * pcs/Makefile.am: Create libpcs.a, not a shared library, because it is for internal use by Wombat only. The header files should not be installed, either. Removed all the old Tlacuache stuff. * gui/Makefile.am (EXTRA_DIST): We no longer distribute gncal.desktop. (evolution_calendar_INCLUDES): Add "calendar-gui" for the glib log domain. * gui/*.[ch]: Fix cal-util and cal-client includes. * pcs/Makefile.am (INCLUDES): Added "pcs" log domain for glib. * pcs/*.[ch]: Fix cal-util includes. svn path=/trunk/; revision=2461
* track movement of calobj.[ch]Seth Alves2000-03-082-2/+2
| | | | svn path=/trunk/; revision=2086
* back out recent commit, and remove calendar.[ch] from Makefile.amSeth Alves2000-03-082-26/+14
| | | | svn path=/trunk/; revision=2083
* stubs for client side access to alarm structures. this will probablySeth Alves2000-03-062-14/+26
| | | | | | | | | | | | | | | | | * cal-client/cal-client-alarm.c: stubs for client side access to alarm structures. this will probably change, since i don't know what i'm doing. * cal-util/alarm-enums.h: enums for alarms needed by both the client and the server * remaining source files in calendar/... have been moved to calendar/gui. * gui/alarm.c: start to decouple the view from the model in the alarm editing code svn path=/trunk/; revision=2062
* this is not right, but it gets this closer to building.Seth Alves2000-03-041-1/+1
| | | | svn path=/trunk/; revision=2035
* new file -- things shared between the client and server go in thisSeth Alves2000-03-041-1/+1
| | | | | | | | | | | | * cal-util/Makefile.am: new file -- things shared between the client and server go in this directory * calobj.c calobj.h icalendar.c icalendar.h timeutil.c timeutil.h cal-util.c cal-util.h where moved backend stuff went into pcs. shared stuff went into cal-util. svn path=/trunk/; revision=2032
* Added get_uids() method to get a list of UIDs based on object types.Federico Mena Quintero2000-02-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Debugging enhancements: report alarms not added (because they have alreadyRussell Steinthal1999-12-031-10/+42
| | | | | | passed), allow toggling of debugging output using SIGUSR1 svn path=/trunk/; revision=1453
* Style fix.Russell Steinthal1999-10-221-1/+2
| | | | svn path=/trunk/; revision=1341
* Commit debugging support to HEAD as well; there's no good reason to have ↵Russell Steinthal1999-10-221-1/+37
| | | | | | debugging in the stable but not devel version, is there? svn path=/trunk/; revision=1340
* Release points here.Miguel de Icaza1999-08-061-1/+1
| | | | | | | | 1999-07-30 Miguel de Icaza <miguel@gnu.org> * month-view.c (month_view_init): Release points here. svn path=/trunk/; revision=1085
* Schedule an alarm for midnight to change theMiguel de Icaza1999-01-292-5/+15
| | | | | | | | | | | | 1999-01-28 Miguel de Icaza <miguel@nuclecu.unam.mx> * calendar.c (calendar_init_alarms): Schedule an alarm for midnight to change the calendar_day_begin/calendar_day_end. * alarm.c (alarm_ready): If we reschedule, there is no need to activate any pending alarms. svn path=/trunk/; revision=634
* Rewrote the old and broken alarm system. It never actually workedMiguel de Icaza1998-12-172-9/+35
| | | | | | | | | | | | | | | | | 1998-12-16 Miguel de Icaza <miguel@nuclecu.unam.mx> Rewrote the old and broken alarm system. It never actually worked properly. Now it works properly, and I figured a nice way to get the Audio alarm do something nicer (it is now like an alarm clock :-). * gnome-cal.c (calendar_notify): Now we take a CalendarAlarm to actually distinguish which alarm was triggered. * alarm.c (alarm_ready): The code was only activating the first alarm. Reschedule the timer upon delivery of an alarm. svn path=/trunk/; revision=535
* Use an array of const strings to keep gcc happy.Federico Mena Quintero1998-08-041-3/+3
| | | | | | | | | | | | | 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx> * main.c (about_calendar_cmd): Use an array of const strings to keep gcc happy. * alarm.c (alarm_compare_by_time): Use gconstpointer to keep gcc happy. * calendar.c (calendar_object_compare_by_start): Likewise. * gncal-full-day.c (child_compare_by_start): Likewise. svn path=/trunk/; revision=296
* Lots of fixes:Arturo Espinosa1998-04-292-3/+4
| | | | | | | | | | | | | Lots of fixes: 1. Alarms are rescheduled when an event has been changed. 2. Avoid emitting spurious event changes. 3. Applied black magic to get the mail-notification working. Miguel. svn path=/trunk/; revision=199
* Fix compiler warnings - FedericoArturo Espinosa1998-04-211-0/+2
| | | | svn path=/trunk/; revision=170
* More touches -migArturo Espinosa1998-04-191-1/+0
| | | | svn path=/trunk/; revision=161
* Yes.Arturo Espinosa1998-04-182-0/+155
Yes. It works. It loads, it saves, it does all that stuff. It works, even if federico complains that we did not test close. Repetition, alarms, all that stuff you all guys love. It it is there. We did minimal testing, but we know you will happilly commit a fix if you find a problem, right? Ok, we are off to a party now. Miguel svn path=/trunk/; revision=155