diff options
Diffstat (limited to 'calendar/ChangeLog')
-rw-r--r-- | calendar/ChangeLog | 18132 |
1 files changed, 0 insertions, 18132 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog deleted file mode 100644 index ec1887bd3b..0000000000 --- a/calendar/ChangeLog +++ /dev/null @@ -1,18132 +0,0 @@ -2002-10-29 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (backend_died_cb): cleaned up the status bar - messages for all widgets. - -2002-10-24 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (init): initialize new values - (clean_up): free new values - (find_my_address): if we have a delegator address, use it instead - (write_html): display delegator info to user - (show_current_event): if we have a calendar uri, use that and - describe the event differently - (show_current_todo): ditto - (show_current): search for delegator X properties - (e_itip_control_set_delegator_address): accessor - (e_itip_control_get_delegator_address): ditto - (e_itip_control_set_delegator_name): ditto - (e_itip_control_get_delegator_name): ditto - (e_itip_control_set_calendar_uri): ditto - (e_itip_control_get_calendar_uri): ditto - - * gui/e-itip-control.h: add protos - - * gui/itip-utils.c (comp_from): use the first attendee as the from - address for things other than request, cancel and add (use - organizer) and publish (use default address) - -2002-10-23 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #32613 - - * gui/component-factory.c (sc_user_create_new_item_cb): use the - default calendar/tasks folder to activate the component editor. - (get_data_uri): deal correctly with the URIs being used. - -2002-10-23 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (show_current): fix warning - -2002-10-22 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #32371 - - * pcs/query.c (start_cached_query_cb): CORBA_exception_init the - CORBA_Environment before using it. - -2002-10-22 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-factory.c (lookup_backend): use NULL for pointer instead of - FALSE. - -2002-10-22 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (get_address): use e_config_listener_* to get - values - (itip_addresses_get): ditto - (itip_addresses_get_default): ditto - - * gui/calendar-model.c (calendar_model_value_to_string): don't - send back a null string (affects if it is the group header) - (calendar_model_init): pre load config database info so we don't - do corba calls during draws - - Fixes #32276 - -2002-10-17 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_construct): fix c/p type - -2002-10-17 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/recurrence-page.c (fill_ending_date): if the value - is a datetime, convert it to a date - - * gui/itip-utils.c (comp_compliant): convert an UNTIL date value - to a datetime value - - * cal-util/cal-component.c (cal_component_has_simple_recurrence): - check to see if the component recurrences meet our definition of - "simple" - - * cal-util/cal-component.h: new proto - -2002-10-17 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/recurrence-page.c (fill_component): changed to have a - gboolean return type, which is what it's supposed to do. - (recurrence_page_fill_component): return the result from - fill_component. - - * gui/dialogs/comp-editor-page.h: fixed typo in function prototype. - -2002-10-11 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c - (gnome_calendar_on_date_navigator_selection_changed): try to - preserve the work week view setting if it makes sense - (set_view): don't update the info again based on our view change - call - - Fixes #16036 - -2002-10-08 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #11434 - - * gui/dialogs/comp-editor-page.[ch] - (comp_editor_page_display_validation_error): new function. - - * gui/dialogs/event-page.c (event_page_fill_component): - * gui/dialogs/recurrence-page.c (fill_component): - * gui/dialogs/task-details-page.c (task_details_page_fill_component): - * gui/dialogs/task-page.c (task_page_fill_component): added - checks for all date values, and return FALSE if we find - some invalid date/times. - - * gui/dialogs/comp-editor.c (save_comp): activate the page that - returns error in fill_component. - -2002-10-08 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/cal-prefs-dialog.c - (cal_prefs_dialog_create_time_edit): set the 24 hour format - initially - - Fixes #31812 - -2002-10-08 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view.c: remove pilot settings from contextual menu - - * gui/e-day-view.c: ditto - -2002-10-07 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #31774 - - * gui/dialogs/alarm-options.c (dalarm_widgets_to_alarm, - palarm_widgets_to_alarm): use correct pointer in loop. - -2002-10-07 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/cal-prefs-dialog.c (setup_changes): cast the correct - item - -2002-10-07 Rodrigo Moya <rodrigo@ximian.com> - - Fixes crash in #19159 - - * gui/alarm-notify/alarm-queue.c (lookup_queued_alarm): don't crash if - we don't find the queued alarm in the internal list. - (alarm_trigger_cb, create_snooze, display_notification, - audio_notification, procedure_notification, remove_queued_alarm): - check return value from lookup_queued_alarm. - -2002-10-04 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #15892 - - * idl/evolution-calendar.idl: added notifyErrorOccurred method to - the Listener interface, so that backends can notify clients of errors - that can't be reported otherwise. - - * pcs/cal.[ch] (cal_notify_error): new function. - - * pcs/cal-backend-file.c (save): made to save to temporary file and - then moved to the correct file, so that we don't lose any data if - there's a problem while saving. - (notify_error): new function for notifying error messages to clients. - - * cal-client/cal-listener.[ch]: added new callback function for getting - error messages from backends. - (impl_notifyErrorOccurred): new method implementation. - (cal_listener_class_init): initialize new epv member. - (cal_listener_init, cal_listener_destroy, cal_listener_construct, - cal_listener_new): initialize new function pointer. - - * cal-client/cal-client.[ch]: adapted to changes in CalListener class. - (cal_client_class_init): added "backend_error" signal to CalClient class. - (backend_error_cb): callback for "error_occurred" signal on the CalListener, - which just emits the "backend_error" signal of CalClient. - - * gui/gnome-cal.c (gnome_calendar_construct): connect to "backend_error" - signal on the CalClient's we create. - (backend_error_cb): display error message on error from backend. - - * gui/e-tasks.c: likewise. - -2002-10-02 Rodrigo Moya <rodrigo@ximian.com> - - * gui/alarm-notify/notify-main.c (alarm_notify_factory_fn): removed - unneeded g_assert which was preventing the alarm daemon to - start correctly in some cases. - -2002-10-02 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #30057 - - * cal-client/cal-client.c (cal_client_is_read_only): added check - of the status of the client before trying to make CORBA calls. - - * gui/calendar-commands.c (sensitize_calendar_commands, - sensitize_taskpad_commands): - * gui/tasks-control.c (sensitize_commands): - * gui/dialogs/event-editor.c (set_menu_sens): - * gui/dialogs/task-editor.c (set_menu_sens): - * gui/e-calendar-table.c (e_calendar_table_on_right_click): - * gui/e-day-view.c (e_day_view_on_event_right_click): - * gui/e-week-view.c (e_week_view_show_popup_menu): take into account - the read-onlyness of clients to disable/enable menu items. - -2002-10-01 Rodrigo Moya <rodrigo@ximian.com> - - * idl/evolution-calendar.idl: added isReadOnly method to Cal - interface. - - * pcs/cal.c (impl_Cal_is_read_only): new method implementation. - - * pcs/cal-backend.[ch]: added is_read_only method to CalBackend class. - (cal_backend_is_read_only): new function. - - * pcs/cal-backend-file.c (cal_backend_file_is_read_only): new method. - (cal_backend_file_class_init): set new signal's virtual method. - - * cal-client/cal-client.[ch] (cal_client_is_read_only): new function. - -2002-10-01 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #15710 - - * gui/dialogs/alarm-page.c (alarm_page_init): added a - X-EVOLUTION-NEEDS-DESCRIPTION property, so that we later set it - correctly if it hasn't been set in the meanwhile (editing options for - the alarm). - - * gui/dialogs/alarm-options.c (dalarm_widgets_to_alarm, - palarm_widgets_to_alarm): removed X-EVOLUTION-NEEDS-DESCRIPTION - property from alarms every time we set the description of the alarm. - -2002-10-01 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #30290 - - * importers/icalendar-importer.c (process_item_fn): return a status of - BUSY rather than NOT_READY, to avoid the display of the error message. - -2002-09-30 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c - (calconduit_load_configuration): load multi_day_split - (calconduit_save_configuration): save it - (calconduit_dupe_configuration): copy it - (e_cal_gui_new): create gui for it - (e_cal_gui_fill_widgets): fill gui with value - (e_cal_gui_fill_config): get value from gui and store in config - (e_calendar_context_destroy): destroy new_cfg and gui properly - (process_multi_day): skip item if its multi-day and we don't want - to split - (fill_widgets): fill local config widgets - (create_settings_window): create local config widgets - (save_settings): fill config from local widgets - - Fixes #23763 - -2002-09-30 Aaron Weber <aaron@ximian.com> - - * gui/e-itip-control.c (update_item): adjust string on line 1609 - and 1517. - - * gui/dialogs/alarm-options.glade: rephrase string on line 270 - -2002-09-27 Dan Winship <danw@ximian.com> - - * gui/calendar-commands.c (pixmaps): Remove "/Toolbar/New" and - "/Toolbar/NewTask" since they're not there any more. Kills some - bonobo-ui spewage. - -2002-09-26 Dan Winship <danw@ximian.com> - - Non-Connector part of #29334 (meeting created by a delegate in the - delegator's calendar should have the delegator as Organizer). - - * idl/evolution-calendar.idl: add Cal_getEmailAddress, to return - the email address associated with a backend (if any). - - * pcs/cal-backend.c (cal_backend_get_email_address): New. - - * pcs/cal-backend-file.c (cal_backend_file_get_email_address): - Return NULL (for now). - - * pcs/cal.c (impl_Cal_get_email_address): Implement this by - calling cal_backend_get_email_address and returning a NotFound - exception if it returns NULL. - - * cal-client/cal-client.c (cal_client_get_email_address): New. - (cal_client_init, cal_client_destroy, etc): initialize/free - email_address - - * gui/dialogs/event-editor.c (event_editor_construct): Split this - out of event_editor_init. Take and set a CalClient. - (event_editor_new): Take a CalClient. - - * gui/dialogs/task-editor.c (task_editor_construct, - task_editor_new): Likewise. - - * gui/dialogs/meeting-page.c (meeting_page_new, - meeting_page_construct): Take a CalClient and call - cal_client_get_email_address to find the default organizer - address. (Also fix a bug if the default account's name has - non-ASCII characters.) - - * gui/itip-utils.c (comp_from): New. When sending a REQUEST or - CANCEL, use the Organizer as the From address. - (itip_send_comp): Call comp_from and pass the result to - Composer_setHeaders. - - * gui/comp-editor-factory.c (edit_existing, edit_new): Pass the - CalClient to event_editor_new/task_editor_new - - * gui/e-calendar-table.c (open_task): Likewise. - - * gui/e-tasks.c (e_tasks_new_task): Likewise. - - * gui/gnome-cal.c (gnome_calendar_edit_object, - gnome_calendar_new_task): Likewise. - -2002-09-26 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (set_value_at): only change the attendee - value if it isn't empty - -2002-09-26 Rodrigo Moya <rodrigo@ximian.com> - - Should fix once for all #24210 - - * idl/evolution-calendar.idl: changed the notifyObjUpdated method - of the QueryListener interface accept a list of UIDs. - - * cal-client/query-listener.[ch] (impl_notifyObjUpdated): likewise for - the QueryListener class. - - * cal-client/cal-query.c (obj_updated_cb): changed to adapt the - multiple-id's received in the QueryListener class' signal to the - one-by-one update notification of the public CalQuery class, thus - keeping the changes needed for this minimal. - - * pcs/query.c (add_component, start_cached_query_cb): changed to - send sequences of UIDs. - -2002-09-25 Dan Winship <danw@ximian.com> - - * gui/component-factory.c (folder_types): Add "calendar/public" - and "tasks/public". - (type_is_calendar, type_is_tasks): New utility functions - (create_view, create_folder, remove_folder, xfer_folder, - sc_user_create_new_item_cb): Use type_is_calendar/type_is_tasks - - * importers/icalendar-importer.c (get_uri_from_folder_path): allow - importing into public calendar/task folders too. - - * gui/e-itip-control.c: Note that it's intentional that we use - "calendar" and "tasks" here instead of "calendar/*" and "tasks/*". - (31032) - -2002-09-25 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): if the item being sent is not - a meeting, send it as a mixed item with a description and the - calendar text in an attachment - - Fixes #30638 - -2002-09-25 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #27961 - - * pcs/cal-backend-file.c (cal_backend_file_update_object): set the - LAST-MODIFIED time of the components when we save them. - -2002-09-24 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-file.c (cal_backend_file_get_timezone_object, - cal_backend_file_get_timezone): return a builtin timezone if we - don't find the timezone in our component. - -2002-09-24 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (comp_from_remote_record): - make sure the start/end for no time palm events are DATE values, - tidy code slightly - - Fixes #21631 - -2002-09-24 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (process_multi_day): - convert to date values if the original start and end were both - dates - -2002-09-24 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-query.c (cal_query_destroy): unref the query - since now the query object on the server keeps a copy of it and - must know when the listener is no longer valid. - - * pcs/query.c (listener_died_cb): unref the QueryListener object. - (query_construct): create an EComponentListener for the non-cached - queries' listeners also. - -2002-09-23 JP Rosevear <jpr@ximian.com> - - * conduits/todo/Makefile.am: add libeutil to the link - - * conduits/calendar/Makefile.am: ditto - -2002-09-23 Dan Winship <danw@ximian.com> - - * pcs/cal.c (imple_Cal_update_objects, impl_Cal_remove_object): - fix non-ANSI switch statements. - - * gui/e-meeting-model.c (is_cell_editable, value_is_empty, - process_free_busy_comp): Likewise - - * gui/itip-utils.c (comp_compliant): Likewise. - -2002-09-23 Rodrigo Moya <rodrigo@ximian.com> - - * gui/main.c (launch_alarm_daemon): install an idle callback that will - start the alarm daemon. - (launch_alarm_daemon_cb): actually activate the alarm daemon here. - - * pcs/query.c (start_cached_query_cb): remove timeout function always - and re-add it if the query is in progress. - -2002-09-23 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c (start_cached_query_cb): move success notification code - to its own code block, since it was being run for parse errors also. - Also, remove all traces of the query from the cache if there is an - error. Also, use GINT_TO_POINTER instead of GPOINTER_TO_INT. - -2002-09-23 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #28310 - - * gui/alarm-notify/save.c (save_notification_time): only save the - new notification time if it is bigger than the already saved one. - This should avoid some reminders showing up twice. - -2002-09-20 JP Rosevear <jpr@ximian.com> - - * gui/comp-util.c (cal_comp_is_on_server): check to see if the - component is already on the server or not - - * gui/comp-util.h: change proto - - * gui/e-week-view.c (e_week_view_on_editing_stopped): only delete - the event if the summary is empty and the component is not already - on the server - - * gui/e-day-view.c (e_day_view_on_editing_stopped): same - - Fixes #14111 - -2002-09-20 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): set the - deleted attendees array to size 0 after we clean it up - - Fixes #30479 - -2002-09-20 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c (parse_sexp): remove the query from the cache if it - failed. - (start_cached_query_cb): notify of errors in the query. - -2002-09-19 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c: added a list of EComponentListener's to control the - lifetime of the listeners. - (query_init): initialize new member. - (query_destroy): free new member. - (start_cached_query_cb): create a EComponentListener for the new - listener being added. - -2002-09-19 Rodrigo Moya <rodrigo@ximian.com> - - More fixes for #24210 - - * pcs/query.c: added list of cached queries and changed the Query - class to work with several listeners, not only one. - (query_init): initialize new members. - (query_destroy): free new members. - (add_component, remove_component, parse_sexp, match_component, - process_components_cb): notify all listeners. - (notify_uid_cb, start_cached_query_cb): implemented integration of - cached queries. - (query_new): search the query in the cache before creating a new - one. And if we create a new one, store it in the cache. - -2002-09-19 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/recurrence-page.c (simple_recur_to_comp): bump the - month_num by 1 because it indexs at 0 - (recurrence_page_fill_widgets): lower the month_num by one as above - - Fixes #30381 - -2002-09-17 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #26362 - - * gui/e-itip-control.c (show current): add a default reminder if - default reminders are set in the configuration. - -2002-09-11 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_on_top_canvas_button_press): keep - the selection if we right click in it (but not on an appointment) - (e_day_view_on_main_canvas_button_press): ditto - - * gui/e-week-view.c (e_week_view_on_button_press): same - -2002-09-11 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view.c (e_week_view_new_appointment): create a new - appointment based on the selection - (e_week_view_on_button_press): use above - (e_week_view_on_new_appointment): ditto - (e_week_view_on_new_meeting): ditto - - Fixes #18162 - -2002-09-10 JP Rosevear <jpr@ximian.com> - - * gui/comp-editor-factory.c (get_default_event): duh, don't - blindly increment the hour without adjusting for the day - boundaries - - Fixes #29983 - -2002-09-10 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #24032 - - * gui/e-itip-control.c (init): don't get servers here, since we don't - know the type of the component(s) to be loaded. - (show_current): get servers here. - (destroy): only free stuff that needs to be freed. - -2002-09-09 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (client_cal_opened_cb): display status messages for - all operations we make, so that when using remote slow backends, so - that users have always indication of what's happening. - -2002-09-06 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_edit_object): kill warning - - * gui/e-week-view.h: new proto - - * gui/e-week-view.c (e_week_view_set_selected_time_range_visible): - select a range of time in the currently visible area, if out side - the visible area, select as much as possible - (e_week_view_on_text_item_event): call above - - * gui/e-week-view-event-item.c - (e_week_view_event_item_button_press): call above - - * gui/e-day-view.c - (e_day_view_set_selected_time_range_in_top_visible): select a - range of time in the currently visible area, if out side the - visible area, select as much as possible - (e_day_view_set_selected_time_range_visible): the same for the - main canvas - (e_day_view_on_long_event_button_press): call above - (e_day_view_on_event_button_press): ditto - -2002-09-05 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): don't try to send via the - server if we are publishing; don't bail out on a 0 length to list - if we are publishing - -2002-09-05 Anna Marie Dirks <anna@ximian.com> - - * gui/GNOME_Evolution_Calendar.oaf.in: Changed the description of - the calendar/tasks page of the settings dialog, to be hopefully - more descriptive and less awkwardly worded. - - -2002-09-05 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (e_day_view_on_drag_data_get): added support for - text/x-calendar targets, in which case a VCALENDAR component, with - full timezone information is returned. - -2002-09-04 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_destroy): don't listen to client - signals after we get destroyed - - Fixes #17036 - -2002-09-04 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/event-editor.c (event_editor_send_comp): bail out if - we couldn't send the cancel - - * gui/dialogs/task-editor.c (task_editor_send_comp): ditto - - * gui/dialogs/comp-editor.c (save_comp_with_send): indicate send - status - (real_send_comp): return success/fail, only resave the component a - if we successfully sent - (comp_editor_send_comp): return success/fail - - * gui/itip-utils.h: update proto - - * gui/itip-utils.c (itip_send_comp): return true if we sent the - message - -2002-09-04 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (comp_server_send): provide error message - param, give a dialog with the message if we get a busy result; - return TRUE if we succeed - (itip_send_comp): bail out if we had a problem sending via the - server - - * cal-client/cal-client.c (cal_client_send_object): pass back - error message if we get the busy exception in the new param - - * cal-client/cal-client.h: update proto - - * pcs/cal.c (impl_Cal_send_object): dump backend error message - into Busy exception - - * pcs/cal-backend.h: update proto - - * pcs/cal-backend.c (cal_backend_send_object): take/pass new error - message parameter - - * pcs/cal-backend-file.c (cal_backend_file_send_object): take new param - - * idl/evolution-calendar.idl: add errorMsg to Busy exception - -2002-09-04 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (create_object): Pass NULL as - @unpopulate_folder_context_menu_fn to - evolution_shell_component_new(). - -2002-09-03 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (comp_compliant): don't make the reply - component minimal - - Fixes #28956 - -2002-08-30 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): make the sure to list is 0 - length before sending via imip - - Fixes #29624 - -2002-08-30 Mike Kestner <mkestner@ximian.com> - - * gui/dialogs/event-page.c: - * gui/dialogs/task-page.c: use bonobo_object_release_unref to release - the remote SelectNames component, not CORBA_Object_release. - -2002-08-29 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_on_top_canvas_button_press): select - the top canvas if the user right-clicks on it - (e_day_view_on_main_canvas_button_press): select the row the user - is right-clicking on - (e_day_view_on_long_event_button_press): select the top canvas if - the user right-clicks on an event there - (e_day_view_on_event_button_press): select the relevant rows if - the user right-clicks on an event - (e_day_view_set_selected_time_range_in_top): select a number of - days in the top canvas - - * gui/e-week-view.c (e_week_view_on_button_press): select the day - the user is right-clicking on - (e_week_view_on_text_item_event): select the corresponding time - range when showing the contextual menu for an event - - * gui/e-week-view-event-item.c - (e_week_view_event_item_button_press): select the corresponding - time range when showing the contextual menu for an event - - Fixes #14660 - -2002-08-28 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c: - * gui/e-week-view.c: added missing header file. - -2002-08-28 Dan Winship <danw@ximian.com> - - * gui/GNOME_Evolution_Calendar.oaf.in: Add an - evolution:shell_component_launch_order and rename - evolution:shell_component_icon. - -2002-08-27 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-config.c: use EConfigListener instead of direct access - to the bonobo-conf database. - (calendar_config_init): create the EConfigListener here, and install - an atexit function to unref the config listener object. - (config_read, property_change_cb, calendar_config_write, - calendar_config_write_on_exit): removed unneeded functions. - (calendar_config_get_*, calendar_config_set_*): changed to make use of - EConfigListener directly. - - * gui/main.c (main): removed call to calendar_config_write_on_exit. - - * gui/dialogs/cal-prefs-dialog.c (update_config): removed call to - calendar_config_write. - -2002-08-26 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #12326 - - * gui/alarm-notify/config-data.c (ensure_inited): create a - EConfigListener for configuration access. - (do_cleanup): g_atexit installed function, to clean up configuration - database resources. - (config_data_get_timezone): retrieve the configuration for the - EConfigListener object. - (config_data_get_listener): new function. - - * gui/alarm-notify/save.c (get_config_db, discard_config_db): removed. - Use EConfigListener instead. - (save_notification_time, get_saved_notification_time, - save_calendars_to_load, get_calendars_to_load, save_blessed_program, - is_blessed_program): use EConfigListener. - - * gui/alarm-notify/notify-main.c (init_alarm_notify_service): removed. - (alarm_notify_factory_fn): create here the alarm_notify_service if it - hasn't been created yet. - (load_calendars): likewise. - (main): don't call init_alarm_notify_service. - -2002-08-22 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (process_section): if its a - non-participant, add it as a resource to match dialog label - (set_value_at): if the type is set to be a resource, switch the - role to non-participant by default - -2002-08-22 JP Rosevear <jpr@ximian.com> - - * gui/calendar-model.c (set_completed): if the value given is a - date, convert to a time in the current zone - -2002-08-20 JP Rosevear <jpr@ximian.com> - - * gui/tasks-control.c (tasks_control_activate): don't set the - tasks ui component until the container is set, remove unused - pixmaps - -2002-08-19 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (destroy): disconnect destroy signal - callbacks on tables - - Fixes #28231 - -2002-08-19 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (comp_toplevel_with_zones): clone the ical - component before adding it - - Fixes #29061 - -2002-08-19 JP Rosevear <jpr@ximian.com> - - * gui/comp-editor-factory.c (get_default_event): make sure to get - the date in the current zone, not at UTC - - Fixes #17692 - -2002-08-19 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (set_date_label): stop adding redundant - information for start/end/due/complete times - (write_html): convert newlines properly and escape characters for - summary, location, description; put text information on separate - line from bolded title to make it look nicer when there are line - breaks - - Fixes #26964 - -2002-08-16 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client.[ch]: added internal EComponentListener - object, to listen for the activated Cal. - (cal_client_class_init): added "backend_died" signal. - (cal_client_destroy): clean up component listener. - (backend_died_cb): new callback for getting signals from the - EComponentListener. - (cal_opened_cb): setup component listener. - - * cal-client/Makefile.am: added libetuil to needed LIBS. - - * gui/gnome-cal.c (backend_died_cb): new callback. - (gnome_calendar_construct): connect to "backend_died" signal - on all CalClient's we create. - -2002-08-14 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/cal-prefs-dialog.c (init_widgets): listen for the - time editors to change - (cal_prefs_dialog_start_of_day_changed): make sure the start is - never after the end - (cal_prefs_dialog_end_of_day_changed): make sure the end is never - after the start - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_set_working_hours): make sure to show a - minimum of 1 hour for work day - - * gui/e-day-view-main-item.c (e_day_view_main_item_draw): - calculate the work/not working color boxes to the nearest pixel, - rather the the nearest time division - - Fixes #10286, #26285 - -2002-08-13 Dan Winship <danw@ximian.com> - - * gui/e-itip-control.c: Remove a bunch of old #if 0 code. - (update_item): Set X-MICROSOFT-CDO-REPLYTIME here. - - * gui/itip-utils.c (comp_toplevel_with_zones): Don't set it here. - - * cal-util/cal-component.c (ensure_mandatory_properties): Use - icaltime_current_time_with_zone rather than rolling our own. - (cal_component_strip_errors): Remove unused variable. - -2002-08-13 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_open): set status message on - ECalendarTable when opening the tasks. - (client_cal_opened_cb): set ECalendarTable status message to NULL - when we open the tasks folder. Also, clear up calendar status message - in all cases, not only if the folder was opened successfully. - -2002-08-13 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_open): set status message to NULL - if there is an error opening the calendar. - (client_cal_opened_cb): set status message to NULL only when we have - successfully opened the main CalClient. - -2002-08-09 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.c (real_send_comp): set the editor to - changed so the item actually gets saved - -2002-08-08 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (users_has_attendee): check for an attendee in - the list - (comp_to_list): only add the user if they aren't on the list - (comp_server_send): don't remove the users, pass back the list - (itip_send_comp): send to server before doing comp_minimal - - * gui/dialogs/comp-editor.c (real_send_comp): edit and save the - updated comp - - * pcs/cal.c (impl_Cal_send_object): copy the correct item to pass - back - -2002-08-08 Dan Winship <danw@ximian.com> - - * pcs/query-backend.c (query_backend_new): Initialize - loaded_backends before using it. (Just kills off a harmless - g_warning.) - -2002-08-08 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #15710 - - * cal-util/cal-component.[ch] - (cal_component_alarm_get_icalcomponent): new function for getting - the icalcomponent from a CalComponentAlarm. - - * gui/comp-util.c (cal_comp_event_new_with_defaults): added - X-EVOLUTION-NEEDS-DESCRIPTION property to the default reminder - alarm, so that we can identify it when saving the component. - - * gui/dialogs/alarm-page.c (alarm_page_fill_component): if the - alarm has the X-EVOLUTION-NEEDS-DESCRIPTION property, set the - description to be the same as of the component. - -2002-08-07 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c (cal_backend_file_send_object): just - return the object untouched since we don't send anything - - * pcs/cal-backend.c (cal_backend_remove_object): call virtual method - - * pcs/cal-backend.h: add send result codes, new proto - - * pcs/cal.c (impl_Cal_send_object): implement sendObject corba call - (cal_class_init): add to epv - - * gui/itip-utils.c (comp_toplevel_with_zones): utility function to - create icalcomponent with necessary timezone info - (comp_has_attendee): see if attendee is in the attendee list - (comp_server_send): use above and remove attendees if the server - sends them - - * gui/e-itip-control.c (show_current_todo): remove unused var - - * idl/evolution-calendar.idl: add Busy exception and - - * cal-client/cal-client.c (cal_client_send_object): send object - via the server (if the server can) - - * cal-client/cal-client.h: add send results and new proto - -2002-08-05 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query-backend.[ch] (query_backend_get_object_component): new - function. - (query_backend_get_uids): new function. - (query_backend_new): create the static GHashTable if it hasn't been - created yet. - (query_backend_destroy): destroy the static GHashTable if empty. - (foreach_uid_cb): call object_updated_cb, which does everything. - - * pcs/query.c: make use of the new QueryBackend class. - (query_init): initialize new private structure member. - (query_destroy): clean up new member, without freeing it, since it is - managed internally in query-backend.c. - (query_construct): create a QueryBackend for the query. - -2002-08-04 Rodrigo Moya <rodrigo@ximian.com> - - Fixes the crash in #19159 - - * gui/alarm-notify/alarm-queue.c (create_snooze): check for NULL - pointers before using them. - -2002-08-02 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view.c (e_week_view_init): don't warn if we can't use - the small font, just set use_small_font to FALSE - -2002-08-02 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (adjust_item): new util function to add - information to an itip message that might not already be there for - display purposes (summary, location, etc) - (show_current_event): use above - (show_current_todo): ditto - -2002-08-02 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (init): initialize value to corba nil - -2002-08-01 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (create_object): Use - meeting-request-16.png instead of meeting-request.png. - - * gui/calendar-commands.c (pixmaps): Remove pixmaps in - /menu/File/New/NewFirstItem/. - -2002-08-01 JP Rosevear <jpr@ximian.com> - - * gui/calendar-model.c (is_overdue): use get_due_status - (get_color): ditto - (get_due_status): utility function to reduce replicated code, - handle the case where the due date is just a date - -2002-07-31 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query-backend.[ch]: new class for implementing a backend cache - for the calendar queries. - - * pcs/Makefile.am: added new files. - -2002-07-31 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (create_object): Change the order of the - user creatable items a bit so that "New Appointment" and "New - Meeting" are at the top when in a calendar folder. - -2002-07-31 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (add_creatable_item): New arg - @folder_type, pass it to - evolution_shell_component_add_user_creatable_item(). - (create_object): Set the right folder types for the various - user-creatable items. - -2002-07-31 JP Rosevear <jpr@ximian.com> - - * gui/e-tasks.c (e_tasks_destroy): we no longer need to manually - save the state - (e_tasks_open): we no longer need to manually load the state - (display_view_cb): attach the gal view to the table - - Fixes #27894 - -2002-07-29 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_find_work_week_start): make sure - that the work week view goes to the current work week if the day - selected is before the start of the work week - - Fixes #20317 - -2002-07-28 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/task-details-page.c: fixed mapping of popdown menu - to ICAL_STATUS_ values. - (task_details_page_fill_widgets): when we can't set the status, - default to ICAL_STATUS_NONE, which maps to 'Not started'. Fixed - use of 'percent' variable, which was being used after being freed. - (percent_complete_changed): default to ICAL_STATUS_NONE (Not Started). - - * gui/dialogs/task-details-page.glade: added 'Needs Action' to - popdown menu values. - -2002-07-26 Rodrigo Moya <rodrigo@ximian.com> - - * cal-util/cal-util.[ch] (cal_util_add_timezones_from_component): - new function for adding VTIMEZONE components to a VCALENDAR - component. - - * gui/e-calendar-table.c (copy_row_cb): added VTIMEZONE components - to resulting VCALENDAR top-level component. - - * gui/e-week-view.c (e_week_view_copy_clipboard): copy to the - clipboard a top-level VCALENDAR component, with all the needed - VTIMEZONE components. - (e_week_view_on_copy): likewise. - - * gui/e-day-view.c (e_day_view_copy_clipboard): likewise. - (e_day_view_on_copy): likewise. - -2002-07-26 JP Rosevear <jpr@ximian.com> - - * cal-client/cal-client.c (cal_client_construct): remove useless - debug statement - - Probably fixes #19333 - -2002-07-26 JP Rosevear <jpr@ximian.com> - - * gui/comp-editor-factory.c (impl_editExisting): focus the editor - if it does exist, create a new one if it doesn't (not vice-versa) - - Fixes #23468 - -2002-07-25 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_init): set large_font to NULL - (e_day_view_style_set): calculate large font, fall back to the - style->font if necessary - - Fixes #11773 - -2002-07-24 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (write_html): display the location in the - itip information - - Fixes #24690 - -2002-07-24 JP Rosevear <jpr@ximian.com> - - * gui/calendar-model.c (set_percent): set status to in progress if - the percent is between 0 and 100 - (set_status): if the value is set to in process, change the - percent to 50 - - Fixes #1590 - -2002-07-24 JP Rosevear <jpr@ximian.com> - - * cal-util/timeutil.c (time_day_of_year): add a day for the leap - year only if we are currently counting Feb., not if the month - passed in is Feb. Fixes #23446. - -2002-07-23 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_realize): use proper meeting icon - -2002-07-22 Dan Winship <danw@ximian.com> - - * pcs/Makefile.am: Split pcs-backend-file out of libpcs and build - it as a separate (noinst) library libpcsfile.a. This gets the db3 - dependencies out of libpcs, and people trying to create a calendar - backend shouldn't be calling functions from the existing backends - anyway so there's no reason to install them. - - * cal-util/timeutil.c: Replace a bunch of old gnomecal functions - with the functionally identical ones from Connector. - -2002-07-18 Rodrigo Moya <rodrigo@ximian.com> - - * importers/icalendar-importer.c (get_uri_from_folder_path): if - there's an exception, continue with the next item. - -2002-07-08 Peter Williams <peterw@ximian.com> - - * cal-util/Makefile.am: Install libcal-util-static.la - and fix the -all-static flag to make it install statically. - - * pcs/Makefile.am: Install libpcs.a and its headers. - - * pcs/cal-backend-util.h: Same sort of include namespacing fix, - but for pcs. - - * pcs/cal.h: - * pcs/query.h: - * pcs/cal-factory.h: - * pcs/cal-backend.h: - * pcs/cal-backend-file.h: Same. - -2002-07-17 <jpr@ximian.com> - - * gui/calendar-model.c (calendar_model_value_at): use util - function to see if the user is the organizer - - * gui/dialogs/cancel-comp.c (cancel_component_dialog): add - deleting proto to indicate whether cancelling or deleting is the - primary operation - - * gui/dialogs/cancel-comp.h: update proto - - * gui/dialogs/comp-editor.c (delete_cmd): offer to cancel - - * gui/dialogs/task-editor.c (cancel_task_cmd): call - cancel_component_dialog with new param - - * gui/dialogs/event-editor.c (cancel_meeting_cmd): ditto - - * gui/e-week-view.c (e_week_view_on_editing_stopped): only update - request if user is organizer - (e_week_view_show_popup_menu): disable the meeting and meeting - organizer mask if appropriate - (e_week_view_delete_event_internal): offer to cancel the meeting - (e_week_view_on_cut): ditto - (selection_received): send request if its a meeting - - * gui/e-day-view.h: add meeting icon/mask - - * gui/e-day-view.c (e_day_view_on_event_right_click): disable the - meeting and meeting organizer mask if appropriate - (e_day_view_delete_event_internal): offer to cancel meeting - (e_day_view_on_cut): ditto - (e_day_view_finish_long_event_resize): only update request if user - is organizer - (e_day_view_reshape_long_event): add meeting icon to count - (e_day_view_reshape_day_event): ditto - (e_day_view_on_top_canvas_drag_data_received): only update request - if user is organizer - (e_day_view_on_main_canvas_drag_data_received): ditto - (selection_received): offer to send meeting info - - * gui/e-day-view-main-item.c - (e_day_view_main_item_draw_day_event): draw meeting icon if - appropriate (using dummy icon atm) - -2002-07-14 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #8001 - - * importers/icalendar-importer.c (connect_to_shell): new function for - connecting the importers (both iCal and vCal) to the shell, needed for - some information retrieval about the folders we're importing to. - (ical_importer_new, vcal_importer_new): call connect_to_shell. - (importer_destroy_cb): unref the shell client object. - (get_uri_from_folder_path): retrieve the uri from the storage - registry. - (check_folder_type): removed. - - * importers/Makefile.am: included libeshell to LIBS. - -2002-07-12 Peter Williams <peterw@ximian.com> - - * pcs/cal.c: Sigh, fix for the wombat.idl -> Evolution-Wombat.idl - rename here too. At least grep indicates that's all that needs to - be fixed. - -2002-07-08 Peter Williams <peterw@ximian.com> - - * gui/Makefile.am (INCLUDES): Change the -I flags to get - it to play nicely with the new Ebook header paradigm. - - * gui/dialogs/Makefile.am: Same. - - * gui/e-meeting-model.c: More of the same. - - * gui/dialogs/e-delegate-dialog.c: - * gui/dialogs/e-meeting-model.c: - * gui/dialogs/comp-editor-util.c: Fix include lines to get - ebook headers. - - * pcs/Makefile.am: Same. - -2002-07-02 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #16034 - - * gui/e-day-view.c (e_day_view_reshape_long_event): - (e_day_view_reshape_day_event): - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - * gui/e-week-view.c (e_week_view_reshape_event_span): - * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): - Don't assume all categories have icons when allocating space for - the icons. - -2002-07-02 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (add_creatable_item): New arg @tooltip. - Pass it to evolution_shell_component_add_user_creatable_item(), - which now has a @tooltip arg. - (create_object): Added tooltips. - -2002-07-01 JP Rosevear <jpr@ximian.com> - - * gui/calendar-config.c (config_read): listen for timezone config - change - (property_change_cb): set the timezone if it changed elsewhere - - * gui/main.c (init_bonobo): call bonobo_activate because we make - bonobo related calls before the bonobo_main call - -2002-06-25 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #25410 - - * gui/alarm-notify.c (AlarmNotify_removeCalendar): do proper - cleanup on removal of clients. - (alarm_notify_add_calendar): ditto. - -2002-06-27 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (comp_compliant): plug leak and actually use - the minimal comp we create - -2002-06-25 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor-page.h: add back proto - - * gui/dialogs/comp-editor-page.c - (comp_editor_page_notify_needs_send): add page needs_send signal - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_on_invite_others_button_draw): check to - see if the button should be sensitive when drawing - (e_meeting_time_selector_construct): listen for the button draw - signal - - * cal-util/cal-component.c (cal_component_strip_errors): remove - X-LIC-ERROR x properties - - * cal-util/cal-component.h: new proto - - * gui/dialogs/meeting-page.c (change_clicked_cb): set needs_send - to true - (meeting_page_fill_widgets): set up gui based on if the user or - someone else is the organizer - (meeting_page_construct): read the addresses here for the combo - box - (get_widgets): explicitly set the value in list values - - * gui/dialogs/event-editor.c (set_menu_sens): base this on the - exist org and user org values of the comp editor - (event_editor_edit_comp): set up editable row restrictions on the - meeting model if the user is not an organizer, and don't set needs - send if we aren't the organizer initially - (model_row_changed_cb): set needs_send to true - (row_count_changed_cb): ditto - - * gui/dialogs/meeting-page.glade: update gui - - * gui/dialogs/comp-editor.c (save_comp_with_send): if the user is - not the organizer, REPLY rather than REQUEST - (comp_editor_set_existing_org): accessor - (comp_editor_get_existing_org): ditto - (comp_editor_set_user_org): ditto - (comp_editor_get_user_org): ditto - (real_edit_comp): determine if there is an existing organizer and - if the organizers is a user - (page_changed_cb): warn the user that changes may be discarded - (page_summary_changed_cb): ditto - (page_dates_changed_cb): ditto - - * gui/dialogs/comp-editor.h: new protos - - * gui/itip-utils.c (itip_organizer_is_user): determine if the - organizer of a component is a user - (itip_sentby_is_user): same for sentby field of organizer - (comp_sentby): use above routines instead - (comp_compliant): strip all X-LIC-ERROR fields generated by - libical - - * gui/e-meeting-model.c (is_cell_editable): if there is a list of - editable rows, allow only the status column of those rows to be - edited - (init): init edit_rows - (e_meeting_model_restricted_add): add an editable row to the model - (e_meeting_model_restricted_remove): remove an editable row - (e_meeting_model_restricted_clear): clear all editable rows - (e_meeting_model_etable_click_to_add): set the click to add arg on - all tables - (e_meeting_model_etable_from_model): track the tables - (table_destroy_list_cb): remove the table being destroyed from the - list - (table_destroy_state_cb): remove the table being destroyed from - the list - - * gui/e-meeting-model.h: new protos - - * gui/e-itip-control.c (update_attendee_status): kill warning - -2002-06-18 JP Rosevear <jpr@ximian.com> - - * zones.h: update for new zones - -2002-06-17 Rodrigo Moya <rodrigo@ximian.com> - - Fixes wombat crash (for JP and myself) - - * gui/gnome-cal.c (gnome_calendar_open): don't call add_alarms here, - since the client is not yet attached to the backend, and the alarm - daemon does unref the client before creating a new one. - (client_cal_opened_cb): call add_alarms here. - -2002-06-12 Rodrigo Moya <rodrigo@ximian.com> - - * gui/alarm-notify.c: added timeout_id to LoadedClient structure, to - keep track of the timeout function. - (retry_timeout_cb): don't use RetryData, but the LoadedClient. - (cal_opened_cb): ditto, and assigned lc->timeout_id to the return - value of g_timeout_add(). - (alarm_notify_add_calendar): destroy the timeout callback when - destroying the LoadedClient structure. - -2002-06-12 Jeffrey Stedfast <fejj@ximian.com> - - * pcs/cal-factory.c (open_fn): Free the uri_string once we're done - with it. - -2002-06-12 Kjartan Maraas <kmaraas@gnome.org> - - * gui/dialogs/cal-prefs-dialog.glade: Fix a typo. - -2002-06-10 Rodrigo Moya <rodrigo@ximian.com> - - * gui/alarm-notify/alarm-notify.c (alarm_notify_add_calendar): removed - already loaded client when asked to be opened again, and *really* - re-open it again. - -2002-06-04 Christopher James Lahey <clahey@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_setup_view_menus): - gal_view_menus_set_show_define_views (..., FALSE); - -2002-06-04 Christopher James Lahey <clahey@ximian.com> - - * gui/e-tasks.c (e_tasks_setup_view_menus), gui/gnome-cal.c - (gnome_calendar_setup_view_menus): Set the title of our - GalViewCollection. - -2002-06-03 Anna Marie Dirks <anna@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: In an attempt to clean up the - config dialog (and to reduce its overall girth), I have re-laid-out the - calendar preferences dialog. It now conforms to standard Evolution - spacing and padding guidelines, and exhibits proper alignment, etc. - -2002-06-03 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c: keep a reference to the Query object, to avoid - crashes when the queries are destroyed before finishing processing. - Fixes #25056. - -2002-05-26 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.h: update proto - - * gui/dialogs/comp-editor.c (comp_editor_get_comp): new function - to get base comp - - * gui/e-comp-editor-registry.c (e_comp_editor_registry_add): get - the base comp, not the current comp, don't unref it - (foreach_close_cb): block the signal, unblock it if the editor - could not be closed - (e_comp_editor_registry_close_all): fix preconditions - (editor_destroy_cb): get the base comp, not the current comp, - don't unref it - -2002-05-26 JP Rosevear <jpr@ximian.com> - - * gui/e-comp-editor-registry.c (e_comp_editor_registry_close_all): - if there are remaining items, return false - (foreach_close_cb): don't remove the item if it couldn't be closed - - * gui/e-comp-editor-registry.h: update proto - - * gui/component-factory.c (request_quit): return a boolean - indicating if everything was closed - - * gui/dialogs/comp-editor.h: update proto - - * gui/dialogs/comp-editor.c (comp_editor_close): return true if - the editor was closed, false otherwise - -2002-05-26 JP Rosevear <jpr@ximian.com> - - * gui/e-comp-editor-registry.[hc]: a registry of comp editors so - we can close them all centrally - - * gui/gnome-cal.c (gnome_calendar_init): there is no editor hash - now - (gnome_calendar_destroy): ditto - (gnome_calendar_edit_object): look for the event editor in the - registry, if it isn't there, create it and add it to the registry - - * gui/e-calendar-table.c (open_task): look for the task editor in - the registry, if it isn't there, create it and add it to the - registry - - * gui/component-factory.c (request_quit): close all open editors - (create_object): add a request_quit function to the shell - component - - * gui/comp-editor-factory.c (free_client): there is no - uid_comp_hash to free any more - (editor_destroy_cb): we get an OpenClient as callback data now, - reduce the editor count and destroy it if it is 0 - (edit_existing): don't create the Component, add the new editor to - the registry, increase the editor count - (edit_new): ditto - (open_client): set the editor count to 0 - (impl_editExisting): look in the registry for the editor - - * gui/Makefile.am: Build new sources - - * gui/main.c (main): create the registry - - * gui/dialogs/comp-editor.c (comp_editor_close): prompt to save - and then close dialog - - * gui/dialogs/comp-editor.h: new proto - - * gui/GNOME_Evolution_Calendar.oaf.in: remove dead summary stuff - -2002-05-24 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-file.c (save): check the value returned by - gnome_vfs_uri_to_string before using it. - (cal_backend_file_open): ditto. - -2002-05-20 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/event-editor.c (event_editor_init): Pass the - @component_pixmaps in so we give the new "Meeting" button an icon. - - * gui/dialogs/comp-editor.c (comp_editor_merge_ui): New arg - @component_pixmaps to pass in custom pixmaps. - -2002-05-20 Rodrigo Moya <rodrigo@ximian.com> - - * gui/alarm-notify/alarm-notify.c: - * gui/alarm-notify/notify-main.c: ported changes from evolution-1-0 - to make it work with reminders on remote backends. - - * pcs/cal-backend-file.c (cal_backend_file_open): check the string - returned by gnome_vfs_uri_to_string, which can be empty. If so, - return an error. - -2002-05-17 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_setup_view_menus): set the view - to the current view - -2002-05-16 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (client_cal_opened_cb): added support for - CAL_CLIENT_OPEN_PERMISSION_DENIED error code. - (permission_error): new function to display 'Permission Denied' - error message when opening the calendar. - - * gui/e-tasks.c: likewise. - - * idl/evolution-calendar.idl: added PERMISSION_DENIED to Listener's - OpenStatus enumeration. - - * cal-client/cal-client.c (cal_opened_cb): added code for retrieving - 'Permission Denied' errors, and convert it to CalClientOpenStatus - values. - - * pcs/cal-factory.c (open_backend): added code for informing of - 'Permission Denied' errors. - -2002-05-16 Rodrigo Moya <rodrigo@ximian.com> - - * idl/evolution-calendar.idl: added PermissionDenied exception and - make it be raised in open, updateObjects and removeObject. - - * pcs/cal-backend.h: added CAL_BACKEND_OPEN_PERMISSION_DENIED to - CalBackendOpenStatus enumeration, added CalBackendResult enumeration. - - * pcs/cal.c: - * pcs/cal-backend.c: - * pcs/cal-backend-file.c: adapted to changes in update_objects and - remove_object methods. - - * cal-client/cal-client.[ch]: added CalClientResult enumeration. - (cal_client_update_object, cal_client_update_objects, - cal_client_remove_object): changed to return a CalClientResult. - - * conduits/calendar/calendar-conduit.c: - * calendar/conduits/todo/todo-conduit.c: - * importers/icalendar-importer.c: - * gui/dialogs/comp-editor.c: - * gui/calendar-model.c: - * gui/e-calendar-table.c: - * gui/e-day-view.c: - * gui/e-itip-control.c: - * gui/e-week-view.c: - * gui/comp-util.c: - * gui/e-tasks.c: - * gui/tasks-migrate.c: adapted to changes in cal_client_update_object(s) - and cal_client_remove_object. - -2002-05-15 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (create_object): Pass NULL as - @request_quit_fn. - -2002-05-14 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/schedule-page.c (schedule_page_construct): set the - working hours for the meeting time selector - -2002-05-14 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.h: make the range datetime member a - struct not a pointer - - * cal-util/cal-component.c (cal_component_get_recurid): take a - pointer to a range - (cal_component_set_recurid): ditto - - * gui/itip-utils.c (comp_minimal): get/set the recurrence id - properly - -2002-05-09 Ettore Perazzoli <ettore@ximian.com> - - * gui/e-itip-control.c (get_servers): use - GNOME_Evolution_Storage__get_folderList instead of - GNOME_Evolution_Storage_getFolderList since I have now changed - that to be an attribute instead of a method. - -2002-05-07 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (start_calendar_server): start a server a - uri - (start_default_server): start a default server - (get_servers): get all clients for all folders of the given - type(s) - (find_server): locate a server for a particular uid - (init): get_servers, listen for object_requested signal - (destroy): destroy all clients - (write_html): put options is there own cell - (get_publish_options): place selector in if param is true - (get_request_options): ditto - (get_real_item): only try and look up the item if we know its in - the server - (show_current_event): find the server (if any) for the current - comp - (show_current_todo): ditto - (update_attendee_status): if there is no server for the comp, it - doesn't exist - (remove_item): ditto - (button_selected_cb): get a client for the selected folder - (object_requested_cb): draw the folder button in - - * gui/calendar-config.h: new protos - - * gui/calendar-config.c (calendar_config_default_tasks_folder): - get default tasks uri - (calendar_config_default_calendar_folder): get default calendar - uri - - * cal-client/cal-client.c (get_default_uri): use - cal_util_expand_uri - - * cal-util/cal-util.h: new proto - - * cal-util/cal-util.c (cal_util_expand_uri): tack on the file name - if its a file uri - -2002-05-03 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-tasks.c (e_tasks_delete_selected): - (e_tasks_complete_selected): show progress messages - on the status bar. - -2002-05-02 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c: #include <gtk/gtkmain.h> to avoid warnings. - -2002-05-02 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view.c (free_view_popup): only discard the popup if - we created one - -2002-05-02 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c: refactored a bit, to not do things in idle loops. - -2002-05-01 JP Rosevear <jpr@ximian.com> - - * gui/print.c (print_day_details): modify the start and end hours - to accomodate all the events in the day - - * gui/e-day-view.c (free_view_popup): only discard the popup if we - created one - -2002-04-30 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_construct): remove setup_widgets - from here - (gnome_calendar_init): move setup_widgets back here - -2002-04-26 Jeffrey Stedfast <fejj@ximian.com> - - * gui/Makefile.am: Don't link to libibex anymore!! - -2002-04-24 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_on_pilot_settings): launch pilot - settings capplet - - * gui/e-week-view.c (e_week_view_on_pilot_settings): ditto - -2002-04-24 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view.c (free_view_popup): free the view popup - (e_week_view_show_popup_menu): add the view popup to the - "main_item" menu and listen for destruction - - * gui/e-day-view.c (free_view_popup): as above - (e_day_view_on_event_right_click): as above - - * gui/e-week-view.h: add class member - - * gui/e-day-view.h: add a class member - - * gui/gnome-cal.h: new protos - - * gui/gnome-cal.c (set_view): set the instance view id properly - when switching views - (gnome_calendar_setup_view_popup): generate a view popup - (gnome_calendar_discard_view_popup): destroy a view popup - -2002-04-22 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal.c (impl_Cal_get_alarms_in_range): raise an exception if the - backend's method returns NULL, since we can't send a NULL pointer to - ORBit. - -2002-04-19 Anna Marie Dirks <anna@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: Collapsed notebook into two pages - and added accelerators for everything, as part of my config dialog - polishing project - -2002-04-18 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/recurrence-page.c (simple_recur_to_comp): properly - handle -ve recurrence values - (month_num_submenu_selection_done_cb): track the current date in - use - (make_recur_month_num_submenu): make a submenu of dates - (make_recur_month_num_menu): make the date/relation option menu - (month_num_menu_selection_done_cb): update the date properly and - keep both option menus consistent - (month_day_menu_selection_done_cb): keep both option menus - consistent - (make_monthly_special): listen for selection done signal - (make_recurrence_special): destroy old month_num_menu - (recurrence_page_fill_widgets): properly handle -ve recurrence - values - -2002-04-18 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_on_settings): show the settings - - * gui/e-week-view.c (e_week_view_on_settings): ditto - - * gui/calendar-commands.c (control_util_show_settings): show the - settings dialog - - * gui/calendar-commands.h: new proto - - * gui/control-factory.c (control_factory_new_control): set the - control as object data on the calendar - -2002-04-17 Christopher James Lahey <clahey@ximian.com> - - * gui/e-calendar-table.c, gui/e-day-view.c, gui/e-week-view.c, - gui/dialogs/meeting-page.c: Updated these to match the new - EPopupMenu. - -2002-04-05 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend.[ch] (cal_backend_get_query): new method. - - * pcs/cal-backend-file.c (cal_backend_file_get_query): new method. - - * pcs/cal.c (impl_Cal_get_query): call the CalBackend's implementation - instead of calling query_new directly. - - * pcs/query.[ch]: fixed headers. - -2002-04-10 Dan Winship <danw@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_open): Fix this: Rodrigo's patch - used one of the functions I just removed. :) - -2002-04-10 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_open): use the default uri for - tasks (as stored in the configuration) when the calendar URI is not - a local one (connector, etc). - -2002-04-10 Dan Winship <danw@ximian.com> - - * cal-client/cal-client.c (get_default_uri): Use new-and-improved - default folder URI config paths. - - * gui/calendar-config.c (calendar_config_{get,set}_default_uri, - calendar_config_{get,set}_default_tasks_uri): Remove these. The - shell owns this information now. (Weren't being used anyway.) - - * gui/component-factory.c (get_data_uri): Fix another place that - hardcoded tacking foo.ics on to the end of URLs. - -2002-04-08 Dan Winship <danw@ximian.com> - - * gui/component-factory.c (create_view): Add view_info arg. If the - view_info is non-empty and this is a calendar folder, set the - "view" property on the control's propertybag. - - * gui/control-factory.c (calendar_properties_init): Set up the - "view" property. - (get_prop, set_prop): handle the "view" property by - getting/setting the GnomeCalendar's view. Unfortunately, this - doesn't actually work. See #23208. - - * gui/calendar-commands.c (calendar_control_activate): Set the UI - component's container before calling - gnome_calendar_set_ui_component so that the search bar - initialization will work. - -2002-04-06 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-db.[hc]: Remove dead files. - -2002-04-06 JP Rosevear <jpr@ximian.com> - - * gui/GNOME_Evolution_Calendar.oaf.in: add config_item:type - -2002-04-01 Kjartan Maraas <kmaraas@gnome.org> - - * gui/e-itip-control.c: Fix a string. - -2002-04-01 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-db.c: simple fix for DB3 header inclusion in - Mac OS X, by Max Horn <max@quendi.de> - -2002-03-31 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (clean_up): free the my_address member - (find_my_address): fall back on a CN match if possible - (change_status): handle changing the status of a non-existent - address by adding a new attendee - (update_attendee_status): if the attendee response is not from a - user on the list of attendees, ask the user if they want to add - the attendee any how (as an optional participant) - (ok_clicked_cb): if we are suppose to rsvp and the status was ok, - but the attendee address is not known, find it - -2002-03-29 Ettore Perazzoli <ettore@ximian.com> - - * gui/GNOME_Evolution_Calendar.oaf.in: Set a priority for the - config item. Rename to "Calendar and Tasks". - -2002-03-29 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/Makefile.am: s/libversit.la/libversit.a/ - - * conduits/todo/Makefile.am: ditto - -2002-03-29 JP Rosevear <jpr@ximian.com> - - * gui/e-calendar-table.c: implement new pop up menu items for - "Save as", "Print", "Assign Task", "Forward as iCalendar" - - * gui/e-day-view.c: similarly, also "Publish Free/Busy - Information" and "New Meeting" and "New Task" - - * gui/e-week-view.c: ditto - - * gui/dialogs/task-editor.c (show_assignment): move the assignment - page stuff here - (task_editor_show_assignment): use it - (assign_task_cmd): ditto - - * gui/dialogs/task-editor.h: new proto - - * gui/dialogs/comp-editor.c (save_as_cmd): use new e-util file - selector function - - * meeting-mockup.glade: Remove old file - - * topic.dat - -2002-03-19 Dan Winship <danw@ximian.com> - - * cal-util/Makefile.am: s/libversit.la/libversit.a/ - - * cal-client/Makefile.am: Likewise - - * gui/Makefile.am: Likewise - -2002-03-18 Ettore Perazzoli <ettore@ximian.com> - - * gui/cal-search-bar.c: Removed `search_menu_items'. - (cal_search_bar_menu_activated): Removed. - (cal_search_bar_class_init): Don't install. - (cal_search_bar_construct): No menu items here. - -2002-03-15 Jeffrey Stedfast <fejj@ximian.com> - - * gui/e-day-view.c: Updated to use new EPopupMenu API. - - * gui/e-week-view.c: Updated to use new EPopupMenu API. - - * gui/e-calendar-table.c: Updated to use new EPopupMenu API. - -2002-03-15 Ettore Perazzoli <ettore@ximian.com> - - * gui/tasks-control.c (tasks_control_activate): Call - `e_tasks_set_ui_component()' here to give it the - BonoboUIComponent. - (tasks_control_deactivate): Likewise, call it here to unset the - BonoboUIComponent. - - * gui/e-tasks.c (e_tasks_set_ui_component): New. - - * gui/calendar-commands.c (calendar_control_activate): Call - gnome_calendar_set_ui_component() here. - (calendar_control_deactivate): ...And here, with a NULL - BonoboUIComponent. - - * gui/gnome-cal.c (gnome_calendar_set_ui_component): New. - -2002-03-15 JP Rosevear <jpr@ximian.com> - - * gui/main.c: use bonobo exception macros to tidy - - * gui/itip-control-factory.c: ditto - - * gui/gnome-cal.c: ditto - - * gui/comp-editor-factory.c: ditto - - * gui/calendar-commands.c: ditto - -2002-03-14 JP Rosevear <jpr@ximian.com> - - * idl/evolution-calendar.idl: add all day event editor mode - - * gui/component-factory.c: clean up exception handling - (sc_user_create_new_item_cb): support the all day event id - (create_object): add a user creatable all day appointment item - - * gui/comp-editor-factory.c (get_default_event): get a default - event either all day or starting at the top of the hour - (get_default_task): get a default task - (edit_new): support the all day event mode - - * gui/calendar-commands.c: remove unused functions/verbs - -2002-03-13 Ettore Perazzoli <ettore@ximian.com> - - * gui/GNOME_Evolution_Calendar.oaf.in: Add an - "evolution:config_item:icon_path" attribute so we get an icon for - the calendar preferences. - -2002-03-12 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: Add <visible>False</visible> - to cal-prefs-dialog so it doesn't get shown when we load the Glade - file with libglade. - - * gui/component-factory.c (owner_set_cb): Register the - ConfigControl factory. - - * gui/tasks-control.c: Removed verb "TaskSettings". - (tasks_control_settings_cmd): Removed. - - * gui/calendar-commands.c: Removed verb "CalendarSettings". - (settings_cmd): Removed. - - * gui/dialogs/cal-prefs-dialog.c: Renamed `CalPrefsDialogPrivate' - to `DialogData'. Replace `dialog' member with a `page' member. - Remove `toplevel_notebook' member. - (init_widgets): Renamed from `cal_prefs_dialog_init_widgets'. - Just get a DialogData. - (get_widgets): Get a DialogData pointer. - (cal_prefs_dialog_destroy): Removed. - (config_control_destroy_callback): New, signal handler for - ::destroy for ConfigControl. - (cal_prefs_dialog_new): Create a new DialogData, connect all the - signal handlers. - (create_time_edit): Renamed from - `cal_prefs_dialog_create_time_edit'. - (cal_prefs_dialog_show): Removed. - (cal_prefs_dialog_button_clicked): Removed. - (show_task_list_config): Get a DialogData. - (show_config): Renamed from `cal_prefs_dialog_show_config'. - Likewise. - (update_task_list_config): Likewise. - (update_config): Renamed from - `cal_prefs_dialog_update_config'. Likewise. - (color_set_callback): New callback, makes the dialog report - changes when the setting in any of the color widgets is changed. - (widget_changed_callback): New callback, makes the dialog report - changes when any of the widgets changes status. - (connect_changed): New utility function to connect this callback - to all the widgets. - (setup_widgets): Connect all the widgets. - (cal_prefs_dialog_new): Call `setup_widgets'. - - * gui/config-control-factory.c: New. - * gui/config-control-factory.h: New. - - * gui/GNOME_Evolution_Calendar.oaf.in: Add - OAFIID:GNOME_Evolution_Calendar_ConfigControl and - OAFIID:GNOME_Evolution_Calendar_ConfigControlFactory. - -2002-03-06 Rodrigo Moya <rodrigo@ximian.com> - - Should fix #21240 - - * gui/alarm-notify/alarm-notify.c: replaced use of GnomeVFSURI - with EUri, to allow non-registered methods. - -2002-03-05 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-itip-control.c (e_itip_control_set_data): reverted my last - change of adding the METHOD property to the incoming request. - - * gui/itip-utils.c (comp_string): added extra - X-MICROSOFT-CDO-REPLYTIME property for broken Outlook. Should fix - #20783. - -2002-03-04 Dan Winship <danw@ximian.com> - - * gui/itip-utils.c (comp_compliant): Reset the DTSTAMP of the new - component. (RFC2245 says DTSTAMP corresponds to the time the - particular iCalendar representation of the object was created.) - Fixes #21198. - -2002-03-05 JP Rosevear <jpr@ximian.com> - - * gui/print.c: remove unneeded parameter from print_text_size - everywhere - (get_font_for_size): calculate a font size based on the available - height - (print_text): calculate the top of where the font should be drawn - (print_text_size): use get_font_for_size - (print_day_background): use get_font_for_size - -2002-03-05 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel-item.c - (e_meeting_time_selector_item_draw): pass the real table - to e_meeting_model_etable_view_to_model_row - (e_meeting_time_selector_item_paint_busy_periods): ditto - - * gui/dialogs/meeting-page.c (right_click_cb): ditto - - * gui/e-meeting-model.h: update protos - - * gui/e-meeting-model.c - (e_meeting_model_etable_model_to_view_row): take in to account the - fact the table used the without model - (e_meeting_model_etable_view_to_model_row): ditto - -2002-03-04 Damon Chaplin <damon@ximian.com> - - * gui/tasks-control.c: added support for printing the Tasks table. - I hacked it a bit so the user could choose portrait or landscape mode. - This is bug #9677. ETable printing has a few issues, though, and it - isn't very pretty. - -2002-03-04 Dan Winship <danw@ximian.com> - - * gui/itip-utils.c (comp_subject): Prefix the subject with an - indicator like "Accepted" or "Cancelled" explaining what the - action is, since Outlook doesn't display any of that information - inline like we do. (20780) - -2002-02-28 Rodrigo Moya <rodrigo@ximian.com> - - * calendar/gui/e-itip-control.c (e_itip_control_set_data): added the - METHOD property to the top level component we create. - -2002-02-26 Rodrigo Moya <rodrigo@ximian.com> - - * gui/control-factory.c (set_prop): - * gui/tasks-control.c (tasks_control_set_property): display an error - message if the call to gnome_calendar_open or e_tasks_open does not - return TRUE. Fixes #20346. - -2002-02-25 Dan Winship <danw@ximian.com> - - * gui/itip-utils.c (itip_send_comp): use - GNOME_Evolution_Composer_setBody rather than _setMultipartType and - _attachData now, to send a message containing just a text/calendar - part. Fixes 14705. Mostly. - (comp_content_type): Include the filename here since we can't add - a Content-Disposition now. - -2002-02-24 Chris Toshok <toshok@ximian.com> - - * gui/cal-search-bar.c (cal_search_bar_class_init): change - query_changed to search_activated. - (cal_search_bar_search_activated): rename - cal_search_bar_query_changed to this. - -2002-02-21 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (add_creatable_item): New helper - function. - (create_object): Add icons for the various user creatable items. - -2002-02-19 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (send_item): pass extra itip_send_comp - params - (send_freebusy): ditto - (ok_clicked_cb): ditto, including the timezones culled from the - component - - * gui/e-week-view.c: pass extra itip_send_comp params - - * gui/calendar-commands.c: ditto - - * gui/e-day-view.c: ditto - - * gui/dialogs/task-editor.c: ditto - - * gui/dialogs/event-editor.c: ditto - - * gui/dialogs/comp-editor.c: ditto - - * gui/itip-utils.h (itip_send_comp): update proto - - * gui/itip-utils.c (foreach_tzid_callback): check the passed in - zones, then the builtin time zones then the client - -2002-02-19 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (find_my_address): strip the ical value and - do a case insensitive compare - (find_attendee): ditto - (change_status): put the error message here - (ok_clicked_cb): don't update the item or rsvp unless - change_status was successful, trip the ical value and do a case - insensitive compare - - * gui/itip-utils.c (get_address): strip the incoming address - (itip_strip_mailto): use g_strncasecmp - (comp_limit_attendees): strip the ical value and do a case - insensitive compare - -2002-02-14 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c: use new column enums - (set_value_at): emit pre-change/cell change signals - (destroy): destroy refresh_queue and refresh_data - (init): init new elements - (refresh_queue_add): if the attendee is being refreshed already, - possibly update the start/end times to look for and update the - callback info, otherwise add it to the queue - (refresh_queue_remove): remove a refreshing attende from the queue - (process_callbacks): make all the callbacks and remove the - attendee from the queue - (process_free_busy): process the callbacks immediately if parsing - fails or on successful completion of processing - (async_close): process free busy - (cursor_cb): we're only looking for one at a time now - (refresh_busy_periods): idle callback to start processing the queue - (e_meeting_model_refresh_all_busy_periods): add every row to the queue - (e_meeting_model_refresh_busy_periods): add a single row to the queue - - * gui/e-meeting-model.h: new protos, enum the columns - - * gui/e-meeting-time-sel.c: use new compare time function - (e_meeting_time_selector_construct): listen for a cell changed - signal and use separate callbacks for rows_inserted and - rows_deleted - (e_meeting_time_selector_refresh_free_busy): util function to - refresh free busy info - (e_meeting_time_selector_on_update_free_busy): use above - (rows_inserted_cb): refresh free busy on the new rows - (cell_changed_cb): refresh free busy on the row when the address - changes - (rows_deleted_cb): redraw - - * gui/e-meeting-utils.[hc]: a holding spot for a meeting time - comparison function - - * gui/Makefile.am: compile new files - -2002-02-13 Rodrigo Moya <rodrigo@ximian.com> - - * gui/control-factory.c (set_prop): don't append 'calendar.ics' - to the URI. - (get_prop): finished. - - * gui/tasks-control.c (tasks_control_set_property): don't append - 'tasks.ics' to the URI. - (tasks_control_get_property): finished. - - * gui/gnome-cal.c (gnome_calendar_open): - * gui/e-tasks.c (e_tasks_open): append $filename.ics to the uri to be - opened if the uri is local. Leave intact in other cases. - -2002-02-08 Damon Chaplin <damon@ximian.com> - - * gui/comp-util.c (cal_comp_util_compare_event_timezones): check if - the CalComponentDateTime values are set before trying to use them. - Possibly fixes bug #18529. - - * importers/icalendar-importer.c: added vCalendar importer and - intelligent GnomeCalendar importer code here, as it shares a lot of - code with the iCalendar importer. - - NOTE: check_folder_type() needs to be finished at some point. - It needs a new shell Corba call so it can decide whether to import - events or tasks into the folder. Currently it just imports both. - - * importers/main.c (importer_factory_fn): create vCalendar importer - or GnomeCalendar importer if required. - - * importers/evolution-calendar-importer.h: added declarations for - creating a vCalendar importer and intelligent Gnome Calendar importer. - - * importers/Makefile.am: added -DEVOLUTION_SOUNDDIR so the importer - knows what filename to use for audio alarms in vCalendar files. - Added libicalvcal-evolution to LDADD. - - * importers/GNOME_Evolution_Calendar_Importer.oaf.in: added vCalendar - importer and intelligent Gnome Calendar importer. - - * gui/comp-util.c (cal_comp_util_compare_event_timezones): return TRUE - if the event uses UTC. We don't want to flag all events from Outlook, - which use UTC. - -2002-02-08 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-details-page.glade: change custom widget - creator to e_url_entry_new - - * gui/dialogs/task-details-page.c (get_widgets): get the url entry - and its entry - -2002-02-08 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-details-page.glade: add a custom widget created - with e_url_button_new - - * gui/dialogs/task-details-page.c (task_details_page_init): init - url_button member to NULL - (init_widgets): set the url button entry - (get_widgets): get the url button - - * gui/calendar-commands.c (pixmaps): use new all day event icon - -2002-02-07 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c: pass meeting boolean for - gnome_calendar_edit_object and gnome_calendar_new_appointment_for - - * gui/e-week-view-event-item.c: ditto - - * gui/e-week-view.c: ditto - - * gui/tasks-control.c (confirm_expunge): kill warning - - * gui/calendar-commands.c (new_meeting_cb): show a new meeting - dialog - (new_event_cb): pass new param - - * gui/gnome-cal.c (gnome_calendar_edit_object): take meeting - boolean and show meeting page if true - (gnome_calendar_new_appointment_for): takeing meeting param and - pass to above - (gnome_calendar_new_appointment): add new param - - * gui/gnome-cal.h: update proto - - * gui/component-factory.c (create_component): take a comp editor - mode, determine vtype - (sc_user_create_new_item_cb): check for meeting user creatable - item - (create_object): add meeting as user creatable item - - * gui/comp-editor-factory.c (edit_new): get a comp editor mode - now, determine vtype and show meeting page if required - (queue_edit_new): get comp editor mode - (impl_editNew): ditto, plus queue the mode directly instead of - determining the vtype - - * gui/dialogs/event-editor.c (show_meeting): new internal util - function to show meeting page - (event_editor_show_meeting): show the meeting - (schedule_meeting_cmd): use show_meeting - - * gui/dialogs/event-editor.h: new proto - - * idl/evolution-calendar.idl: editNew takes a mode rather than a - type now - - * cal-util/Makefile.am: fix includes - -2002-02-07 Christopher James Lahey <clahey@ximian.com> - - * gui/e-tasks.c (e_tasks_setup_view_menus), gui/gnome-cal.c - (gnome_calendar_setup_view_menus): Made these use the new - GalViewMenus stuff. - -2002-02-06 Damon Chaplin <damon@ximian.com> - - * cal-util/cal-recur.c (cal_recur_from_icalproperty): convert months - from 1-12 to 0-11. Fixes bug #19235. - -2002-02-04 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (e_todo_gui_new): new gui routines - for conduit settings - (e_todo_gui_fill_config): ditto - (e_todo_gui_fill_widgets): ditto - (e_todo_gui_destroy): ditto - (e_todo_context_destroy): destroy new_cfg and gui properly - (local_record_from_comp): set the priority to the default setting - if none is set on the icalendar object - (fill_widgets): fill gui widgets - (create_settings_window): create gui - -2002-01-30 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (write_html): if this is a reply, print the - attendee status - -2002-01-25 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-options.glade: Use 1 instead of zero as the - minimum value for the repetitions spin button as we use a check - box to specify whether the alarm has repetitions or not. Fixes - bug #19054. - -2002-01-24 Ettore Perazzoli <ettore@ximian.com> - - * importers/Makefile.am (evolution_calendar_importer_LDADD): - Ooops. Forgot to use EVOLUTION_CALENDAR_LIBS here. - -2002-01-24 Ettore Perazzoli <ettore@ximian.com> - - * conduits/calendar/Makefile.am: Use - EVOLUTION_CALENDAR_CONDUIT_LIBS and - EVOLUTION_CALENDAR_CONDUIT_CFLAGS. - * conduits/todo/Makefile.am: Likewise. - - * cal-client/Makefile.am: Use EVOLUTION_CALENDAR_LIBS and - EVOLUTION_CALENDAR_CFLAGS. - * cal-util/Makefile.am: Likewise. - * gui/alarm-notify/Makefile.am: Likewise. - * gui/Makefile.am: Likewise. - -2002-01-23 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (create_object): Pass a NULL @icon to - `evolution_shell_component_add_user_creatable_item()'. - -2002-01-21 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (todoconduit_load_configuration): - return a new configuration struct, load default priority setting - (todoconduit_save_configuration): save default priority setting - (e_todo_context_new): dupe configuration - - * conduits/calendar/calendar-conduit.c (e_calendar_context_new): - set ps to NULL - -2002-01-17 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/alarm-page.c (get_alarm_string): save the alarm string - in the correct variable (str), so it actually gets shown for alarms - with specific trigger times. Fixes bug #18801. - -2002-01-15 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/task-page.c (task_page_fill_widgets): default component - classification to PUBLIC. Fixes internal bug #1066 - -2002-01-14 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c: move all functions here, - get rid of header files, use e-pilot-settings to display gui - - * conduits/todo/todo-conduit.c: as above - -2002-01-14 JP Rosevear <jpr@ximian.com> - - * gui/gnome-cal.c (get_current_time): use icaltimetype_to_tm - -2002-01-14 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view-main-item.c (e_week_view_main_item_draw_day): - figure out when today is and highlight if it is not selected - - * gui/e-week-view.h: enum the "today" color - - * gui/e-week-view.c (e_week_view_realize): init the "today" color - -2002-01-13 JP Rosevear <jpr@ximian.com> - - * gui/alarm-notify/save.h: add protos - - * gui/alarm-notify/save.c (save_blessed_program): records a - program as blessed - (is_blessed_program): checks to see if a program is blessed - - * gui/alarm-notify/alarm-queue.c (procedure_notification_dialog): - popup a dialog notifying the user that is a program and let them - not see the dialog about this program again - (procedure_notification): use above - -2002-01-11 Damon Chaplin <damon@ximian.com> - - * gui/e-timezone-entry.c: - * gui/e-itip-control.c (write_label_piece): - * gui/calendar-config.c (on_timezone_set): translate timezone names - when displayed. Fixes bug #6544. - -2002-01-03 JP Rosevear <jpr@ximian.com> - - * gui/tasks-control.c (tasks_control_complete_cmd): new verb - callback - (sensitize_commands): set sensitivity of mark complete command - - * gui/e-tasks.h: new proto - - * gui/e-tasks.c (e_tasks_complete_selected): mark selected tasks - in the table as complete - - * gui/e-calendar-table.h: new proto - - * gui/e-calendar-table.c (e_calendar_table_complete_selected): - mark selected rows as complete - -2002-01-03 JP Rosevear <jpr@ximian.com> - - * gui/tasks-control.c (confirm_expunge): only need one warning - message now - - * gui/e-tasks.c (create_sexp): change the logic to expunge all - completed tasks not just hidden ones - -2002-01-03 JP Rosevear <jpr@ximian.com> - - * gui/tasks-control.c (confirm_expunge): confirm expunging of the - tasks - (tasks_control_expunge_cmd): verb callback - - * gui/calendar-config.c (config_read): read confirm expunge value - (calendar_config_write): write confirm expunge value - (calendar_config_write_on_exit): ditto - (calendar_config_get_confirm_expunge): get value - (calendar_config_set_confirm_expunge): set value - - * gui/calendar-config.h: new proto - - * gui/e-itip-control.c (start_calendar_server): kill warning - - * gui/e-tasks.c (e_tasks_init): init query member to NULL - (set_status_message): util function to set status message - (e_tasks_open): use above - (cal_opened_cb): ditto - (create_sexp): create sexp of items to be deleted - (query_obj_updated_cb): remove any items found - (query_eval_error_cb): bail out on error - (query_query_done_cb): tidy when done - (e_tasks_delete_completed): set up query - - * gui/e-tasks.h: new proto - - * gui/calendar-model.c (query_query_done_cb): use g_warning - instead of printing to stderr - (query_eval_error_cb): ditto - (update_query): clear the status message if we can't create the - query - - * gui/tag-calendar.c (resolve_tzid_cb): make this static - -2001-12-21 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.c: remove needs send signal related - cruft - (save_comp_with_send): with send_component_dialog, indicate if the - meeting info is newly created or not - (real_edit_comp): remember if the dialog initially needs a send - - * gui/dialogs/send-comp.c (send_component_dialog): take a "new" - parameter indicating whether the dialog should intimate if the - component to be sent is a new meeting or not - - * gui/dialogs/send-comp.h: update proto - - * gui/dialogs/comp-editor.c: remove no longer used needs_send - notification and signal - - * gui/dialogs/comp-editor.h: remove proto - - * gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received): add new - param to send_component_dialog - (e_day_view_finish_long_event_resize): ditto - (e_day_view_finish_resize): ditto - (e_day_view_on_editing_stopped): ditto - (e_day_view_on_top_canvas_drag_data_received): ditto - - * gui/e-week-view.c (e_week_view_on_editing_stopped): add new - param to send_component_dialog - -2001-12-21 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.h: inherit from bonobo window - - * gui/dialogs/comp-editor.c: inherit from bonobo window - (comp_editor_key_press_event): Look for an escape key press and - close the window if found - -2001-12-20 Ettore Perazzoli <ettore@ximian.com> - - [Fixes #17377, Evolution doesn't work on multi-depth displays.] - - * gui/main.c (main): Push GdkRGB visual and colormap. - -2001-12-19 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (check_for_slow_setting): - go slow and clear the map if the last uri and the current uri do - not match - (post_sync): save the last uri - - * conduits/calendar/calendar-conduit-config.h: handle a last uri - config option - - * conduits/todo/todo-conduit-config.h: ditto - - * conduits/calendar/calendar-conduit.c (start_calendar_server): - use the open_default_calendar method - - * conduits/todo/todo-conduit.c (start_calendar_server): same as above - - * cal-client/Makefile.am: link with bonobo conf - - * cal-client/cal-client.h: new protos - - * idl/evolution-calendar.idl: make sure open method raises - appropriate exceptions - - * gui/e-itip-control.c (start_calendar_server): use - cal_client_open_default_* calls - - * cal-client/cal-client.c (real_open_calendar): do the real work - of loading - (cal_client_open_calendar): use above - (get_fall_back_uri): get the basic local uri - (get_default_uri): get the default uri from the config db - (cal_client_open_default_calendar): open the default uri or the - fallback if the method is unsupported - (cal_client_open_default_tasks): same for tasks - -2001-12-17 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (send_item): use get_real_item - (get_refresh_options): uncomment out - (get_real_item): obtain the real object which has the uid of the - item received - (show_current_todo): use get_refresh_options for refresh method - and provide the description and summary from the real component - since its not in the reply - (show_current_event): ditto - (send_item): use get_real_item - -2001-12-17 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (comp_limit_attendees): can't remove properties - in an iteration loop, so remove them outside the loop - (comp_minimal): don't set a recurid if there isn't one, add the x - properties to the clone - (comp_compliant): unref the clone for DECLINECOUNTER - - * gui/e-itip-control.c (get_refresh_options): make function - available again - (show_current_event): use it here - (ok_clicked_cb): can't remove properties in an iteration loop, so - remove them outside the loop - - * cal-util/cal-component.c (free_icalcomponent): properly free the - attendee list - (cal_component_rescan): don't destroy the alarm hash - -2001-12-13 Damon Chaplin <damon@ximian.com> - - * zones.h: new file to contain all timezone names for translation. - We won't be using the translations in 1.0.1, but it gives translators - time before we do use them in 1.0.2. - - * Makefile.am: added zones.h to EXTRA_DIST. - -2001-12-12 JP Rosevear <jpr@ximian.com> - - * gui/e-day-view.c (e_day_view_on_top_canvas_button_release): - ungrab the pointer before calling - e_day_view_finish_long_event_resize - (e_day_view_on_main_canvas_button_release): ditto - (e_day_view_finish_long_event_resize): ask if the meeting should - be sent - (e_day_view_finish_resize): ditto - (e_day_view_on_editing_stopped): ditto - (e_day_view_on_top_canvas_drag_data_received): ditto - (e_day_view_on_main_canvas_drag_data_received): ditto - -2001-12-11 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (process_free_busy_comp): properly convert - the dtstart and dtend times if they are UTC - (cursor_cb): if we don't have anybody to get f/b info for, process - the callbacks immediately - (e_meeting_model_refresh_busy_periods): take start/end times, - calculate the timet values with object timezone - (e_meeting_model_etable_model_to_view_row): proper cast - (e_meeting_model_etable_view_to_model_row): ditto - (async_open): bail out if we couldn't open properly - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_on_update_free_busy): use defines for - determining the number of days before and after of free busy to - request - (e_meeting_time_selector_update_dates_shown): use defines for the - number of days shown - - * gui/e-meeting-model.h: update proto - -2001-12-10 Damon Chaplin <damon@ximian.com> - - * gui/control-factory.c (control_factory_new_control): removed code - that connects to GnomeCalendar's "dates_shown_changed" signal. - - * gui/calendar-commands.c (gcal_calendar_dates_change_cb): - (calendar_control_activate): moved it here, so it gets reconnected - whenever the control is activated. Fixes bug #15798. - -2001-12-10 Damon Chaplin <damon@ximian.com> - - * importers/GNOME_Evolution_Calendar_Importer.oaf.in: fixed executable - name. Fixes bug #16880. - -2001-12-08 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - if we have an alarm that can be represented on the pilot, set the - appointment fields appropriately, if the duration has values for - minutes and/or hours and/or days, use the lowest common - denominator - (comp_from_remote_record): if the appointment on the pilot has an - alarm, find the first alarm an item currently had that is relative - to the start and with a negative duration and update it (or create - a new one if no valid ones exist) - - * cal-util/cal-component.c (cal_component_get_alarm_uids): build - list in the order they appear in the component so we get - consisting order for the gui and for the pilot - -2001-12-08 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-config.c (calendar_config_get_default_uri): - (calendar_config_get_default_tasks_uri): s/%/%s - -2001-11-09 Federico Mena Quintero <federico@ximian.com> - - (committed by Damon) - - Fix bug #14699. - - * pcs/query.c (QueryState): Added a state QUERY_WAIT_FOR_BACKEND - to indicate that the query is not populated as we are waiting for - the backend to be opened. - (query_init): Start in the QUERY_WAIT_FOR_BACKEND state. - (query_destroy): Only disconnect from the backend if we are in a - state that implies that we are connected to its signals. - (query_construct): If the backend is already loaded, immediately - set the state to QUERY_START_PENDING. - (backend_opened_cb): Disconnect from the backend's "opened" - signal. Set the state to QUERY_START_PENDING. - (match_component): We can now only match components if the query - is in progress or if it is done. Assert to that effect, and do - not ensure_sexp(). - (match_component): Do not check for a nonexistent component using - g_return_if_fail(). Also, there is no need to ref/unref the - component. - (backend_obj_updated_cb): Assert to the effect of our state. - (backend_obj_removed_cb): Likewise. - (parse_sexp): Renamed from ensure_sexp(). Assert that the query - has not started. Do not disconnect from the backend's signals - here, since we have no connections. - (start_query_cb): Set the state to QUERY_IN_PROGRESS here instead - of in populate_query(). - -2001-12-07 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-config.c (calendar_config_get_default_uri): - (calendar_config_get_default_tasks_uri): if the key in the config - database does not exist, just return the local URIs, but never - return NULL - -2001-12-06 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/event-page.c (event_page_fill_widgets): default - component classification to PUBLIC - -2001-12-06 Jon Trowbridge <trow@ximian.com> - - * gui/dialogs/event-editor.c (event_editor_destroy): Explicitly - destroy the EMeetingModel. This is a hack to work around problems - with the reference counting; we are still leaking the - EMeetingModels. - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_construct): Ref our EMeetingModel. - (e_meeting_time_selector_destroy): Unref the model. - - * gui/e-meeting-model.c (destroy): Properly destroy - corba_select_names with a call to bonobo_object_release_unref. - (Fixes 14002) - -2001-12-05 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/event-page.glade: added entry for the LOCATION field - - * gui/dialogs/event-page.c: added support for the new LOCATION entry - added in the Event editor. - -2001-12-05 Zbigniew Chyla <cyba@gnome.pl> - - * gui/itip-utils.c (comp_subject, comp_description): - Marked strings for translation. - -2001-12-03 Damon Chaplin <damon@ximian.com> - - * gui/e-meeting-model.c: - * gui/calendar-model.c: make sure we call e_table_model_pre_change() - before changing the model. - - * gui/calendar-config.c (calendar_config_configure_e_calendar_table): - removed call to e_table_model_changed(). calendar_model_refresh() - results in that anyway. - -2001-12-03 Damon Chaplin <damon@ximian.com> - - * gui/e-calendar-table.etspec: disabled 'Alarms', 'End Date' and - 'Show Time As' fields, as these are not useful for tasks. We may want - to reenable them later if we add a table view of calendar events. - -2001-12-02 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-offline-handler.c (backend_cal_opened): connect to - "cal_set_mode" signal before calling cal_client_set_mode. Also, - s/cal_mode_set/cal_set_mode - (backend_go_offline): connect to "cal_opened" signal before calling - cal_client_open_calendar - -2001-11-30 Damon Chaplin <damon@ximian.com> - - * gui/e-itip-control.c (remove_item): only show the dialog if we - created it. Hopefully fixes bug #15774. - Also ifdef'ed out a lot of code that isn't currently used, including - code to use a label which is never created. The unused code was there - to support handling multiple iTIP objects in a message, but was never - updated when we switched to use HTML for the control. Fixes bug #16232. - -2001-11-28 Federico Mena Quintero <federico@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_new_task): Set the category of - the new task to that of the search bar. Fixes bug #15533. - -2001-11-27 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-itip-control.c (update_attendee_status): - * gui/itip-utils.c (comp_to_list): fixed typos in translatable - strings. Fixes Ximian #15456 - -2001-11-14 Damon Chaplin <damon@ximian.com> - - * gui/print.c: Substituted gnome_font_get_width_string() with - gnome_font_get_width_utf8() and gnome_font_get_width_string_n() - with gnome_font_get_width_utf8_sized(). Fixes calendar part of #15379. - -2001-11-14 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-model.c (date_value_to_string): Convert the buffer - to UTF8. - (calendar_model_value_to_string): Do not convert the string fields - to UTF8 again; they are already in UTF8. Fixes the UTF8-related - bits of bug #15304. - -2001-11-14 Damon Chaplin <damon@ximian.com> - - * gui/calendar-model.c: - * cal-util/cal-component.h: #ifdef'ed out the LOCATION field for now, - since it wasn't supported everywhere, or in the .etspec file. - -2001-11-14 Damon Chaplin <damon@ximian.com> - - * gui/e-calendar-table.c: don't abort when e_table_selected_count() - returns odd values. There seems to be a bug in ETable. This is to - avoid bug #13843. - -2001-11-13 Federico Mena Quintero <federico@ximian.com> - - (committed to CVS by Damon) - Fixes bug #15137. - - * gui/e-day-view.c (e_day_view_on_delete_appointment): Do not try - to operate on the event if it gets deleted while stopping the - edition. - (e_day_view_on_event_double_click): Likewise. - (e_day_view_on_long_event_button_press): Likewise. - (e_day_view_on_event_button_press): Likewise. - (e_day_view_on_long_event_click): Likewise. - (e_day_view_on_event_click): Likewise. - - * gui/e-week-view.c (e_week_view_on_text_item_event): Likewise. - -2001-11-14 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (pre_sync): remove silly - debug warning - -2001-11-13 Damon Chaplin <damon@ximian.com> - - * gui/alarm-notify/config-data.c (ensure_inited): - * gui/calendar-config.c (config_read): - * conduits/todo/todo-conduit.c (get_default_timezone): - * conduits/calendar/calendar-conduit.c (get_default_timezone): - make the timezone default to UTC. Fixes bug #14362. - -2001-11-13 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-week-view.c (selection_received): only change the day, - month and year for the start date, for not screwing up the start - time, which was being set to midnight always (Fixes Ximian #5287) - Also, deal correctly with VCALENDAR components - - * gui/e-day-view.c (selection_received): dela correctly with - VCALENDAR components being pasted - -2001-11-11 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/save.c (get_calendars_to_load): The last - argument to the bonobo_config_get_XXX_with_default() is a gboolean - *, not a CORBA_Environment *. Fixes bug #14655. - -2001-11-11 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c (free_busy_instance): recurrence - expansion callback for free/busy - (create_user_free_busy): expand recurrences and use date/time - values for dtstart and dtend - -2001-11-11 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.h: new protos - - * gui/e-meeting-model.c (e_meeting_model_get_zone): accessor - (e_meeting_model_set_zone): ditto - (init): init to the calendar default zone - (process_free_busy_comp): take the zone to convert to as a param - (e_meeting_model_refresh_busy_periods): redraw properly - - * gui/dialogs/schedule-page.c (update_time): set the zone of the - model - -2001-11-09 Damon Chaplin <damon@ximian.com> - - * gui/e-week-view.c (e_week_view_key_press): don't subtract a day - from DTEND. For DATE values we don't include the entire day now. - Fixes bug #14842. - -2001-11-09 Damon Chaplin <damon@ximian.com> - - * gui/e-week-view-layout.c (e_week_view_layout_events): fix buffer - overflow. Fixes bug #10285 (the printing of lines & dates in the - printout of the month view). - -2001-11-09 Zbigniew Chyla <cyba@gnome.pl> - - * gui/dialogs/meeting-page.c - (meeting_page_fill_widgets): Convert strings to GTK+ encoding. - (meeting_page_destroy): Free allocated strings before freeing the list - itself. - -2001-11-08 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_timeout_handler): don't let an empty - event occur for all days when auto scrolling - -2001-11-08 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-file.c - (cal_backend_file_compute_changes_foreach_key): don't leak the - string returned by cal_component_get_as_string nor the temporary - CalComponent we create - -2001-11-08 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (ok_clicked_cb): don't add the item, remove - it if declining (in case it was added before) - (remove_item): Since we can't discern between an item not found - and another error, always say the removal is complete - -2001-11-07 Zbigniew Chyla <cyba@gnome.pl> - - * gui/e-cell-date-edit-text.c (ecd_get_text): - Convert generated string to UTF-8. - -2001-11-07 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_on_start_time_changed): emit changed - signal - (e_meeting_time_selector_on_end_time_changed): emit changed - signal, if end time is now before start time and all day event, - make sure a whole day is still selected - (e_meeting_time_selector_drag_meeting_time): calculate the first - and last_time's in whole days for all day events - (e_meeting_time_selector_timeout_handler): calculate the drag time - to be whole days for all day events and scroll the canvas even if - we don't update the time so the user can see where they're headed - -2001-11-06 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/event-editor.c (event_editor_edit_comp): make sure - to remove all attendees from the model when we edit a new comp, - append the pages if they are needed and we weren't showing them - before - - * gui/dialogs/task-editor.c (task_editor_edit_comp): same as above - - * gui/dialogs/comp-editor.c (comp_editor_remove_page): check for a - return value indicating the page was not found and return if so - -2001-11-05 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/e-delegate-dialog.c: #include - "Evolution-Addressbook-SelectNames.h", not - "../Evolution-Addressbook-SelectNames.h". Grrr. - -2001-11-05 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c (e_meeting_time_selector_class_init): - add a changed signal - (e_meeting_time_selector_construct): emit changed signal - (e_meeting_time_selector_set_meeting_time): ditto - (e_meeting_time_selector_set_all_day): set the all day setting - (e_meeting_time_selector_autopick): emit changed signal - (e_meeting_time_selector_find_nearest_interval): find proper - interval when in all day mode - (e_meeting_time_selector_find_nearest_interval_backward): ditto - (e_meeting_time_selector_drag_meeting_time): for all day events, - move the time when past the 12 hour mark, and and always make sure - 1 full day is selected, emit changed signal when appropriate - (e_meeting_time_selector_update_start_date_edit): set date and - time of day together - (e_meeting_time_selector_update_end_date_edit): ditto, and adjust - display time if all day event - - * gui/e-meeting-time-sel-item.c - (e_meeting_time_selector_item_draw): remove unused variable - (e_meeting_time_selector_item_button_press): for all day mode, - make the interval a whole day - - * gui/dialogs/schedule-page.c (update_time): set the meeting time - selector setting instead of manual mucking with the e-date-edit - widgets - (init_widgets): listen to the changed signal of the meeting time - selector instead of propagating multiple events as it updates - - * gui/dialogs/event-page.c (update_time): block time zone change - signals - -2001-11-05 Damon Chaplin <damon@ximian.com> - - * gui/calendar-model.c (dup_date_edit_value): removed ';' in the wrong - place. Fixes bug #14421. - -2001-11-05 Dan Winship <danw@ximian.com> - - * gui/alarm-notify/Makefile.am (evolution_alarm_notify_LDFLAGS): - -export-dynamic for libglade custom widget. - -2001-11-04 Damon Chaplin <damon@ximian.com> - - * gui/comp-editor-factory.c (get_default_component): use TZID from the - builtin timezone, instead of using the location name. - -2001-11-02 Federico Mena Quintero <federico@ximian.com> - - * cal-util/cal-util.c (compute_alarm_range): Short-circuit the - calculation of the repeat time if there are zero repetitions. - (compute_alarm_range): I'm a moron. De-reference alarm_start when - subtracting stuff from it! Fixes bug #14209. - -2001-10-31 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/Makefile.am: Added rules to generate - `Evolution-Addressbook-SelectNames.h'. - - * gui/dialogs/comp-editor-util.h: #include - "Evolution-Addressbook-SelectNames.h" from this directory. - -2001-10-31 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-options.c: #include <string.h> - -2001-10-31 Federico Mena Quintero <federico@ximian.com> - - * gui/gnome-cal.c (dn_query_obj_updated_cb): If a query is not in - progress, just retag the whole thing. An event may change dates - and tag_calendar_by_comp() would not know how to untag the old - dates. Fixes bug #10220. - - * pcs/query.c (start_query_cb): Connect to the backend's - "obj_updated" and "obj_removed" signals here instead of in - query_construct(). If a query is started while another one is - notifying of an update, these signal connections would get appened - to the running signal (the one that triggered the notification - about an update) and the new signal handlers would also get - called. We are really not interested in updates before we - populate the query, because we'll catch the changes anyways. - -2001-10-31 Federico Mena Quintero <federico@ximian.com> - - Fix bug #13723. - - * gui/gnome-cal.h (GnomeCalendarClass): New signals - "calendar_focus_change", "taskpad_focus_change", and - "taskpad_selection_changed". Renamed "selection_changed" to - "calendar_selection_changed". - - * gui/gnome-cal.c (gnome_calendar_get_num_tasks_selected): New - function. - (setup_widgets): Connect to the focus event signals of the task - pad and the calendar view widgets. - (gnome_calendar_delete_selection): Renamed from - gnome_calendar_delete_event(). - (gnome_calendar_cut_clipboard): Handle the current focus location. - (gnome_calendar_copy_clipboard): Likewise. - (gnome_calendar_paste_clipboard): Likewise. - (gnome_calendar_delete_selection): Likewise. - (table_selection_change_cb): New callback. - - * gui/calendar-commands.c (sensitize_calendar_commands): Take in - whether we should unconditionally disable everything. - (sensitize_taskpad_commands): Analogous function to the above. - (gcal_calendar_focus_change_cb): New callback, used for calendar - views. - (gcal_taskpad_focus_change_cb): New callback, used for the - taskpad. - - * gui/e-day-view.c (e_day_view_key_press): Use a better test for - keys that should start editing. Fixes bug #6447. - - * gui/e-week-view.c (e_week_view_key_press): Likewise. - -2001-10-31 Christopher James Lahey <clahey@ximian.com> - - * gui/calendar-model.c: Make the pre_changes and changes match - here. - -2001-10-31 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): send as mixed rather than - alternative - -2001-10-31 Ettore Perazzoli <ettore@ximian.com> - - * gui/alarm-notify/save.c (KEY_CALENDARS_TO_LOAD): - Removed. - (KEY_NUM_CALENDARS_TO_LOAD): New key, containing the number of - calendars to load. - (BASE_KEY_CALENDAR_TO_LOAD): New base key name for the URIs of the - calendars to load. - (save_calendars_to_load): Rewrote to not use a sequence, to work - around an ORBit bug that causes bonobo-moniker-xmldb to crash. - (get_calendars_to_load): Likewise. - -2001-10-30 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (comp_editor_remove_page): disconnect - signals added in append_page(). Fixes Gtk-Critical warning about - GtkAccelGroup being added twice to a window. - -2001-10-30 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): set a body for the message - -2001-10-30 Dan Winship <danw@ximian.com> - - * gui/itip-utils.c (itip_send_comp): call - GNOME_Evolution_Composer_setMultipartType to get a - multipart/alternative. - -2001-10-30 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_on_start_time_changed): don't overwrite - memory - (e_meeting_time_selector_on_end_time_changed): ditto - -2001-10-30 Damon Chaplin <damon@ximian.com> - - * gui/calendar-model.c (dup_date_edit_value): return NULL if passed - NULL. Should fix bug #14048. - -2001-10-30 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-config.c (config_read): Do not ignore the - exceptions of the cases that do not have defaults. - -2001-10-30 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_drag_meeting_time): if we are doing all - day stuff, make the drag increment 1 day at a time - -2001-10-30 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/meeting-page.c (meeting_page_fill_component): Add - _() to a string that was missing it. - -2001-10-30 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/meeting-page.c (table_canvas_focus_out_cb): Commit - the ETable click-to-add for if the dialog is being destroyed. - Should fix bug #13959. - -2001-10-30 Federico Mena Quintero <federico@ximian.com> - - * gui/itip-utils.c (itip_send_comp): Allocate enough space for the - string! (was missing the null terminator) Possibly fixes #13924. - Thanks a *LOT* to Michael Zucchi for running this through Purify. - -2001-10-30 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel-item.c - (e_meeting_time_selector_item_button_press): move in whole day - increments if we are in all day mode - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_on_start_time_changed): get rid of - localtime call - (e_meeting_time_selector_on_end_time_changed): ditto - (e_meeting_time_selector_update_start_date_edit): set the date - editor using the meeting time fields directly - (e_meeting_time_selector_update_end_date_edit): ditto - - * gui/dialogs/schedule-page.c (update_time): do the set_show_time - stuff first - - * conduits/calendar/calendar-conduit.c (process_multi_day): don't - adjust the time, set the default timezone for date values - -2001-10-30 Dan Winship <danw@ximian.com> - - * gui/alarm-notify/Makefile.am (INCLUDES): - s/BONOBO_HTML_GNOME_LIBS/BONOBO_HTML_GNOME_CFLAGS/ - -2001-10-30 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (e_meeting_model_count_actual_attendees): - count the actual attendees (doesn't include people delegating - - * gui/e-meeting-time-sel.c: use - e_meeting_model_count_actual_attendees (renamed) - - * gui/e-meeting-time-sel-item.c: use - e_meeting_model_etable_view_to_model_row calls instead of calling - on the model directly, use e_meeting_model_count_actual_attendees - - * gui/e-meeting-model.c - (e_meeting_model_etable_model_to_view_row): get the real mapping - (e_meeting_model_etable_view_to_model_row): ditto - (get_key): e-table-without callback - (duplicate_key): ditto - (free_gotten_key): ditto - (free_duplicated_key): ditto - (init): create without model - (e_meeting_model_etable_from_model): build etable from without - model - - * gui/e-meeting-model.h: update protos - - * gui/dialogs/meeting-page.c (right_click_cb): convert row from - view to model row - -2001-10-30 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/task-page.c (task_page_fill_widgets): set to the default - timezone for DATE values, in case the user switches to a DATE-TIME. - -2001-10-30 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/task-page.c: handle DATE values for Start and Due dates. - -2001-10-30 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/schedule-page.c: - * gui/dialogs/event-page.c: - * gui/dialogs/comp-editor-util.c: updated code to handle DATE values. - - * gui/gnome-cal.c (gnome_calendar_new_appointment_for): - * gui/e-day-view.c (e_day_view_key_press): updated DATE code. - - * gui/e-cell-date-edit-text.c: - * gui/calendar-model.c: updated to support DATE values. - - * cal-util/cal-recur.c (cal_recur_generate_instances_of_rule): updated - to use DATE values in same way as Outlook - i.e. the DTEND date is - not included entirely. Though I did make it so that if the DTSTART - and DTEND used the same DATE value, it includes the entire day. - So 1-day events should be the same. Long All-Day events will be - 1 day shorter. - - * cal-util/cal-component.c (cal_component_get_start_plus_duration): - don't subtract a day from the end date. - - * gui/tasks-control.c: updated the EPixmap paths for Cut/Copy etc. - Removed Print & Print Preview paths, since we don't have menu commands - for these any more. - -2001-10-30 Federico Mena Quintero <federico@ximian.com> - - Fix bug #10016. - - * gui/dialogs/comp-editor.c (comp_editor_merge_ui): Use - bonobo_ui_util_set_ui() instead of doing things by hand. Hmmm, if - only that function had a way of telling us whether it failed so - that we could avoid setting the verb list... - - * gui/dialogs/event-editor.c (event_editor_init): Do not pass the - filename with the full path so that Bonobo can find it in a smart - way. - - * gui/dialogs/task-editor.c (task_editor_init): Likewise. - -2001-10-30 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/delete-comp.c (delete_component_dialog): Use an - EMessageBox instead of a gnome_dialog_question so that the label - gets line breaking. Fixes bug #11260. - -2001-10-29 Federico Mena Quintero <federico@ximian.com> - - Fix bug #13649. - - * gui/calendar-config.c - (calendar_config_get_use_default_reminder): New function. - (calendar_config_set_use_default_reminder): New function. - (calendar_config_get_default_reminder_interval): New function. - (calendar_config_set_default_reminder_interval): New function. - (calendar_config_get_default_reminder_units): New function. - (calendar_config_set_default_reminder_units): New function. - (config_read): Get the options for default reminders. - (calendar_config_write): Set the options for default reminders. - - * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): - Set the default reminder widgets from the config values. - (cal_prefs_dialog_update_config): Set the config values from the - widgets. - - * gui/comp-util.c (cal_comp_event_new_with_defaults): New - function; creates a VEVENT component with the default alarm. - - * gui/e-day-view.c (e_day_view_key_press): Use - cal_comp_event_new_with_defaults (); - - * gui/e-week-view.c (e_week_view_key_press): Likewise. - * gui/calendar-model.c (calendar_model_append_row): Likewise. - * gui/comp-editor-factory.c (get_default_component): Likewise. - * gui/gnome-cal.c (gnome_calendar_new_appointment_for): Likewise. - - * cal-util/cal-component.c (ensure_alarm_properties_cb): Ensure we - have a DESCRIPTION property. - (cal_component_commit_sequence): Ensure we have the mandatory - alarm properties. - -2001-10-30 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (process_section): process an individual - section here - (select_names_ok_cb): call above - (get_select_name_dialog): listen for ok:dialog signal - -2001-10-29 Damon Chaplin <damon@ximian.com> - - * importers/Makefile.am (evolution_calendar_importer_LDADD): - * gui/Makefile.am (evolution_calendar_LDADD): - * cal-util/Makefile.am (test_recur_LDADD): - * cal-client/Makefile.am (client_test_LDADD): use libical-evolution.la - - * gui/dialogs/schedule-page.c: save the timezone passed in for the - start time, so if our times are changed we use this. Also, if the - end time was passed in in a different timezone, convert it. - Also hide the time fields for DATE values. Note that DATE values still - do not work. - - * gui/dialogs/meeting-page.glade: changed "Invite Others" to - "Invite Others..." to be consistent with the other page. - - * gui/dialogs/event-page.c (times_updated): - (all_day_event_toggled_cb): set is_date if appropriate. - - * gui/e-itip-control.c (write_label_piece): convert all UTC times to - the current timezone. Outlook sends simple, non-recurring, events as - UTC times, which isn't very useful. - -2001-10-29 Federico Mena Quintero <federico@ximian.com> - - * gui/main.c (launch_alarm_daemon): Launch the alarm daemon as - soon as the calendar component is started. Fixes bug #13867; - we can't really do much better than this. - -2001-10-29 Federico Mena Quintero <federico@ximian.com> - - * gui/tasks-control.c (pixmaps): Fix the verb names for the - pixmaps in the Edit menu; they were out of synch with the XML - UI description. - -2001-10-29 Chris Toshok <toshok@ximian.com> - - * pcs/cal-factory.c (cal_factory_dump_active_backends): new - function. - (dump_backend): new function. - - * pcs/cal-factory.h: add prototype for - cal_factory_dump_active_backends. - -2001-10-29 Federico Mena Quintero <federico@ximian.com> - - Fix bug #12163. - - * cal-util/cal-util.c (compute_alarm_range): Take alarm - repetitions into account. - (add_alarm_occurrences_cb): Add alarm repetitions. - (generate_absolute_triggers): Likewise. - (generate_absolute_triggers): Oops, absolute triggers are in UTC, - so convert them as such. Also, pay attention to the timezones of - the dtstart and dtend properties. - -2001-10-29 JP Rosevear <jpr@ximian.com> - - * importers/Makefile.am: include the header as a source so it gets - dist'ed. - -2001-10-29 Ettore Perazzoli <ettore@ximian.com> - - * importers/Makefile.am (INCLUDES): - s/BONOBO_CFLAGS/BONOBO_GNOME_CFLAGS/. - -2001-10-29 Rodrigo Moya <rodrigo@ximian.com> - - * importers/icalendar-importer.c (load_file_fn): fixed URI - construction, which was preventing importing into the root - calendar (~/evo/local/Calendar/) - -2001-10-29 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (is_all_day): handle date - values - -2001-10-29 Rodrigo Moya <rodrigo@ximian.com> - - * importers/: added evolution-calendar-importer binary, starting - with an iCalendar file importer - -2001-10-29 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit-config.h - (todoconduit_load_configuration): get the management object by id - - * conduits/calendar/calendar-conduit-config.h - (calconduit_load_configuration): ditto - -2001-10-29 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-config.[ch] (calendar_config_get_default_uri): - (calendar_config_set_default_uri): - (calendar_config_get_default_tasks_uri): - (calendar_config_set_default_tasks_uri): new functions for setting - and retrieving the default calendar URIs - - * gui/e-itip-control.c (init): don't use - hard-coded URI, but use the default calendar URI, as returned - by calendar_config_get_default_uri - (start_calendar_server): added a "gboolean tasks" parameter, so - that the local tasks.ics file is used if the calendar to be - started is for tasks when no default tasks URI is found in - the configuration - -2001-10-28 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (add_record): unref the - comp when finished - - * conduits/todo/todo-conduit.c (add_record): ditto - -2001-10-28 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/task-page.c (task_page_fill_widgets): added break - statements after each case, when setting the classification. - Fixes bug #13772. - -2001-10-28 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client.c (destroy_wombat_client): removed this - function, as we don't need to unref at all the WombatClient - object, since it is aggregated to the CalListener object, which - will take care of unrefing it (Fixes Ximian #12001) - (cal_client_open_calendar): create the WombatClient here - -2001-10-28 Damon Chaplin <damon@ximian.com> - - * gui/print.c (print_todo_details): get the tasks directly from the - CalendarModel, so we get the filtering & sorting for free. Fixes - bug #10280. Hmm. This seems too easy. It isn't going to work is it... - - * gui/gnome-cal.c (gnome_calendar_get_task_pad): new function to get - the TaskPad ECalendarTable, for printing. - - * gui/calendar-model.c: - * gui/calendar-config.c (calendar_config_get_hide_completed_tasks_sexp): - split this out from calendar-model.c so we could use it for printing, - but ended up doing that a different way. - - * gui/dialogs/task-page.c (init_widgets): removed a duplicated signal - connected to field_changed_cb(). - -2001-10-27 Damon Chaplin <damon@ximian.com> - - * gui/print.c (print_week_view): - (range_selector_new): when the week start day is set to Sunday, we - have to be careful to make sure we print the correct week, since - the previous Saturday is actually printed first. Fixes bug #13687. - (print_week_summary): always set compress_weekend to true if - multi_week_view is FALSE (i.e. we are printing the week view). - Fixes bug #13688. - - * gui/e-itip-control.c (send_freebusy): use the timezones from the - DTSTART and DTEND. - (write_label_piece): output the date-time and the timezone after it. - Note that we may want to convert it to the current timezone and display - that as well. Also converted COMPLETED to the current timezone. - And fixed all uses of old timezone functions. - - * gui/dialogs/comp-editor.c (commit_all_fields): added function to - set the focus in the window to NULL, so all fields lose their focus, - so they emit "changed" signals and update their values if needed. - We call this when most menu commands are used, e.g. 'Save and Close', - 'Print' etc. Fixes bug #11434. In future we should also check fields - are valid and show dialogs if they are not. - - * gui/calendar-model.c (get_completed): use the completed value - properly. Fixes bug #13694. - - * cal-util/timeutil.c (icaltimetype_to_tm_with_zone): don't check - from_zone and to_zone != NULL. A NULL zone is valid, it is for - floating times. - -2001-10-27 Federico Mena Quintero <federico@ximian.com> - - * gui/e-day-view.c (e_day_view_on_text_item_event): Cancel editing - if the user presses Escape. - - * gui/e-week-view.c (e_week_view_on_text_item_event): Likewise. - - * gui/cal-search-bar.c: #include <string.h> - -2001-10-27 Federico Mena Quintero <federico@ximian.com> - - * gui/e-day-view.c (e_day_view_on_editing_stopped): Delete - appointments with empty summaries. Fixes Ximian bug #780. - - * gui/e-week-view.c (e_week_view_on_editing_stopped): Likewise. - - * gui/dialogs/delete-comp.c (delete_component_dialog): Added an - argument to specify whether we unconditionally want single - components to be considered as not having a summary. - - * gui/comp-util.c (cal_comp_confirm_delete_empty_comp): New - function. - - * gui/misc.[ch]: New files with miscellaneous utility functions; - moved string_is_empty() over from calendar-model.c. - - * gui/calendar-model.c: Use the string_is_empty() - function from misc.c. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added misc.[ch] to - the list of sources. - -2001-10-27 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (local_record_from_comp): touch on - lookup - (check_for_slow_setting): write touched only if slow sync - (match): touch on lookup - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - touch the record on lookup - (check_for_slow_setting): write touched only if slow sync - (pre_sync): don't touch on lookup - (match): touch on lookup - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/e-calendar.conduit.in: remove the merges as - valid sync types - - * conduits/todo/e-todo.conduit.in: as above - - * conduits/calendar/calendar-conduit.c (pre_sync): write out only - the touched records if we are doing copies - - * conduits/todo/todo-conduit.c: as above - - * conduits/calendar/calendar-conduit-config.h - (calconduit_load_configuration): get the sync type - - * conduits/todo/todo-conduit-config.h: as above - -2001-10-26 Damon Chaplin <damon@ximian.com> - - * gui/e-itip-control.c (write_label_piece): convert the formatted - date to UTF-8. - - * cal-util/cal-recur.c (CAL_OBJ_DEBUG): turn off debug functions. - - * gui/dialogs/comp-editor-util.c (parse_contact_string): handle UTF8 - correctly. Bug #4450. Good enough for 1.0. - - * gui/e-week-view-event-item.c (e_week_view_draw_time): set the gc - color before drawing. Should fix bug #11469. - - * gui/dialogs/task-editor.c (task_editor_edit_comp): show or hide the - meeting page as appropriate. Note this may be called more than once, - if the task gets updated somewhere else and the user clicks 'Update - the object'. Hopefully fixes bug #12930. - - * gui/print.c (print_comp_item): printed more fields and made a little - prettier. Fixes bug #9352. - (print_date_label): used the correct timezones for each date field. - - * *.c: removed several debug messages. - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (check_for_slow_setting): - make debug output more accurate - - * conduits/todo/todo-conduit.c (check_for_slow_setting): ditto - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (pre_sync): remove the uid from the - map if was archived and is now deleted - - * conduits/calendar/calendar-conduit.c: ditto - -2001-10-26 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-calendar_table.c (delete_selected_components): - (selection_received): added status bar messages - - * gui/e-day-view.c (e_day_view_cut_clipboard): - (selection_received): likewise - - * gui/e-week-view.c (e_week_view_cut_clipboard): - (selection_received): likewise - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.h: modify fields - - * conduits/todo/todo-conduit.h: as above - - * conduits/calendar/calendar-conduit.c (print_remote): free the - struct after use - (e_calendar_context_new): explicitly init context fields - (e_calendar_context_destroy): free local records and properly free - changed hash elements - (start_calendar_server_cb): tidy - (start_calendar_server): ditto - (free_local): free a local record - (local_record_to_pilot_record): use a static buffer to avoid leaks - (local_record_from_comp): only copy over alarm stuff from the - original record, we sync everything else - (local_record_from_uid): unref the comp when we are done - (pre_sync): free change_id - (post_sync): ditto - (for_each): track locals - (for_each_modified): ditto - (free_match): use free_local - - * conduits/todo/todo-conduit.c: as above - -2001-10-26 Federico Mena Quintero <federico@ximian.com> - - * pcs/cal.c (cal_construct): Get a fresh CORBA_Environment for - every CORBA call. Hopefully will fix #11978, but I'm not sure - about what else could be happening. - (cal_get_password): Free the exception. - -2001-10-25 Damon Chaplin <damon@ximian.com> - - * gui/e-itip-control.c: used functions to get PUBLISH_OPTIONS etc., - so we can translate them. - -2001-10-25 Damon Chaplin <damon@ximian.com> - - * cal-util/cal-recur.c (cal_obj_bysetpos_filter): subtract 1 from - any positive BYSETPOS value, since our array is 0-based. - - * gui/dialogs/recurrence-page.c (simple_recur_to_comp): - (recurrence_page_fill_widgets): Outlook (2000) will not accept monthly - recurrences like BYDAY=2TU. Instead it uses BYDAY=TU;BYSETPOS=2. - So to be compatable with it we now do the same, although we still - accept and convert the old format. - - * cal-client/cal-client.c (cal_client_get_component_as_string): new - function to return a complete VCALENDAR string containing a VEVENT - or VTODO with all the VTIMEZONEs it uses. - - * gui/dialogs/comp-editor.c (save_as_ok): use above function so we - save the VTIMEZONE data with the VEVENT/VTODO. Fixes bug #8626. - Also made sure we output "METHOD:PUBLISH" since Outlook (2000) will - not import it otherwise. - - * gui/dialogs/comp-editor.c (page_mapped_cb): - (page_unmapped_cb): install/uninstall the GtkAccelGroup for the page. - (comp_editor_append_page): connect to the map/unmap signals to - install/uninstall the accelerators. (This is all for bug #11609, - though of course it doesn't work too well in GTK+ 1.2 anyway.) - - * gui/dialogs/task-page.c (get_widgets): - * gui/dialogs/task-details-page.c (get_widgets): - * gui/dialogs/schedule-page.c (get_widgets): - * gui/dialogs/recurrence-page.c (get_widgets): - * gui/dialogs/meeting-page.c (get_widgets): - * gui/dialogs/event-page.c (get_widgets): - * gui/dialogs/alarm-page.c (get_widgets): got the GtkAccelGroup from - the original window, ref'ed it and placed it in the CompEditorPage - struct. - - * gui/dialogs/comp-editor-page.c (comp_editor_page_destroy): unref - any GtkAccelGroup for the page. - - * gui/dialogs/task-page.glade: changed '_Confidential' to - 'Con_fidential' as it clashed with '_Contacts'. It now matches the - event editor as well. - - * gui/dialogs/event-page.glade: - * gui/dialogs/task-page.glade: Set CAN_FOCUS to TRUE for the custom - EDateEdit widgets, and set them as the accel targets of the labels. - -2001-10-25 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/comp-editor.c (save_comp): show an error message when - we can't update the object on the calendar server - -2001-10-25 Federico Mena Quintero <federico@ximian.com> - - * gui/control-factory.c: Ifdef-ed out the PersistFile bits. - - * gui/GNOME_Evolution_Calendar.oaf.in: The tasks folder does not - support the PersistFile interface; removed it. Removed it as well - from the calendar folder since it is aggregated but not actually - implemented. - -2001-10-25 Federico Mena Quintero <federico@ximian.com> - - * gui/component-factory.c (xfer_folder): Handle tasks folders as - well; was always using "calendar.ics" as the filename. - -2001-10-24 Damon Chaplin <damon@ximian.com> - - * gui/GNOME_Evolution_Calendar.oaf.in: added sections for Tasks - factory and control. I hope someone checks these! - -2001-10-24 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (xfer_folder): Fixed to only copy the - `calendar.ics' and `calendar.ics~' files. - -2001-10-24 Damon Chaplin <damon@ximian.com> - - * pcs/cal-backend-file.c (cal_backend_file_update_objects): when - iterating over the subcomponents, use 'subcomp' rather than 'icalcomp'. - That meant it wasn't working at all well when an entire VCALENDAR - was passed in. - - * cal-util/cal-component.c: handle DURATION property used instead of - DTEND or DUE. In cal_component_get_dtend/due we will return DTSTART - + DURATION if necessary. In set_dtend/due we remove any DURATION - property. Fixes bug #11262. - - * gui/e-meeting-model.c (build_etable): - * gui/e-calendar-table.c (e_calendar_table_init): use U_ for the - ECellCombo popdown strings, as it expects UTF-8 strings. - -2001-10-24 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c (e_meeting_time_selector_construct): - track the spacer vbox - (e_meeting_time_selector_style_set): make sure the rows are the - correct size for the style - - * gui/e-meeting-time-sel-item.c - (e_meeting_time_selector_item_paint_day_top): slight adjustments - to where the text is drawn - - * gui/e-meeting-time-sel.h: new member - - * gui/e-meeting-model.c (build_etable): ensure uniform row height - - * conduits/todo/todo-conduit.c (comp_from_remote_record): mark - status as completed in appropriate places and don't overwrite - legitimate percentages and such - -2001-10-24 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #5282. - - * cal-util/timeutil.c (icaltimetype_to_tm_with_zone): New function - to avoid copying the same code all over the place. - (icaltimetype_to_tm): Also set the tm.tm_wday. - - * gui/alarm-notify/alarm-queue.c (queue_midnight_refresh): Use - time_day_end_with_zone(). - (load_alarms_for_today): Likewise. And oops, we were only - computing the times and not loading the alarms. - (obj_updated_cb): Likewise. - (load_alarms): Removed assertion that is no longer valid because - we may load the alarms for a client in two stages. - - * gui/dialogs/alarm-page.c (get_alarm_string): Convert absolute - trigger times to the local timezone. - - * gui/alarm-notify/alarm-notify-dialog.c (write_html_heading): - Convert the times to the local timezone. - (alarm_notify_dialog): Likewise, for the window title. - (alarm_notify_dialog): Set the window layer to WIN_LAYER_ONTOP. - - * gui/e-cell-date-edit-text.c (ecd_get_text): Use - icaltimetype_to_tm_with_zone(). - - * gui/alarm-notify/save.c (get_config_db): Made public. - (discard_config_db): Made public. - - * gui/alarm-notify/config-data.[ch]: New files with functions to - fetch the calendar configuration data used by the alarm daemon. - -2001-10-23 Damon Chaplin <damon@ximian.com> - - * cal-util/cal-component.c (cal_component_event_dates_match): make sure - we free all the CalComponentDateTime's when we are finished. - - * gui/gnome-cal.c (gnome_calendar_notify_dates_shown_changed): just - return if no time range is set. - -2001-10-23 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_table_vadjustment_changed): adjust the - display canvas when the table scrolls - (e_meeting_time_selector_construct): listen for table scrolling - -2001-10-23 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (build_etable): no longer set the - scrollbar policy here - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_update_main_canvas_scroll_region): add an - extra row to the height so the click to add row can be properly - seen - (e_meeting_time_selector_construct): set the scrollbar policy for - the etable scrolled - -2001-10-23 JP Rosevear <jpr@ximian.com> - - * cal-util/timeutil.c (icaltimetype_to_tm): convert an - icaltimetype to a tm - (tm_to_icaltimetype): vice versa - - * cal-util/timeutil.h: new protos - - * conduits/calendar/calendar-conduit.c: replace all mktime and - localtime calls (except for debugging calls) - - * conduits/todo/todo-conduit.c: ditto - (comp_from_remote_record): make sure the completed time is in UTC - -2001-10-23 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-query.c (cal_query_construct) set priv->corba_query - to CORBA_OBJECT_NIL if there was an error - -2001-10-22 Damon Chaplin <damon@ximian.com> - - * idl/evolution-calendar.idl: added setDefaultTimezone() method. - - * pcs/cal-backend.c (cal_backend_get_default_timezone): - (cal_backend_set_default_timezone): new functions to call class - methods. - - * pcs/cal-backend-file.c: lots of changes to handle the default - timezone and use it. - - * pcs/query.c: use the default timezone. - - * gui/dialogs/task-details-page.c (date_changed_cb): initialized - completed_tt. - - * gui/dialogs/event-page.c: changed it to handle DATE values. The - 'All Day Event' checkbox is only set now when the DTSTART and DTEND - are DATE values. - - * gui/dialogs/comp-editor-util.c (comp_editor_free_dates): free the - CalComponentDateTime structs as well. - - * gui/e-tasks.c: set the default timezone on the server. - - * gui/tag-calendar.c: - * gui/gnome-cal.c: - * gui/e-week-view.c: - * gui/e-day-view.c: updates to handle DATE values. - - * gui/e-calendar-table.c (date_compare_cb): updated to use the new - ECellDateEditValue values, so it now works. - (percent_compare_cb): updated to use GPOINTER_TO_INT values. - (e_calendar_table_init): use an ECellPercent for the percent field - and an ECellDateEditText for the date fields. - - * gui/comp-util.c (cal_comp_util_compare_event_timezones): return TRUE - if the DTSTART or DTEND is a DATE value. We don't want to show the - timezone icons for DATE values. - - * gui/comp-editor-factory.c (resolve_pending_requests): set the default - timezone on the server. - - * gui/calendar-model.c: major changes to support sorting properly. - For date and percent fields we now use subclasses of ECellText, so - we don't use a char* as the model value. For the percent field we now - use a GINT_TO_POINTER. For the date fields we now use a - ECellDateEditValue* as the value. - - * gui/calendar-config.c (calendar_config_configure_e_cell_date_edit): - set the timezone and use_24_hour flags of the new ECellDateEditText. - - * conduits/todo/todo-conduit.c (pre_sync): - * conduits/calendar/calendar-conduit.c (pre_sync): set the default - timezone on the server. - - * cal-util/timeutil.c (time_days_in_month): removed debug message. - - * cal-util/test-recur.c: try to handle timezones in the iCalendar - file properly, and updated to pass default timezone. - - * cal-util/cal-util.c (cal_util_generate_alarms_for_comp): - (cal_util_generate_alarms_for_list): added default timezone argument. - - * cal-util/cal-recur.c: changed many of the functions to take a default - timezone, to use to resolve DATE and floating DATE-TIME values. - - * cal-client/cal-client.c (cal_client_set_default_timezone): new - function to set the default timezone. - (cal_client_ensure_timezone_on_server): new function to ensure that - a given timezone is on the server. - - * gui/e-cell-date-edit-text.c: new subclass of ECellText to display - and edit a date value. - - * cal-util/cal-recur.c (cal_obj_byday_expand_monthly): changed week_num - to -week_num when calculating the weeks to go back from the end of the - month for things like BYDAY=-2WE. Fixes bug #11525. - (cal_recur_generate_instances_of_rule): only go up to MAX_YEAR (2037). - We can't really handle anything past that anyway. - (cal_recur_ensure_rule_end_date): initialize cb_date.end_date to 0, - so if the RULE doesn't generate COUNT instances we save 0 as the - time_t. - -2001-10-22 Federico Mena Quintero <federico@ximian.com> - - * gui/tasks-control-factory.c (tasks_control_factory_fn): Put up a - warning dialog box if we failed to create the tasks control. - Fixes bug #13033. - -2001-10-22 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (set_date_label): write out the correct - time in the control - - * pcs/cal.c (build_fb_seq): utility function to build sequences of - f/b data - (impl_Cal_get_free_busy): use above so we never return a NULL - - * conduits/calendar/calendar-conduit-config.h - (calconduit_save_configuration): fix c/p error - (calconduit_load_configuration): ditto - -2001-10-22 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (meeting_page_destroy): we don't need - to save the state - - * gui/e-meeting-time-sel.c (e_meeting_time_selector_destroy): - ditto - - * gui/e-meeting-model.c (build_etable): listen for the etable - being destroyed - (table_destroy_cb): save the state when the etable is destroyed - -2001-10-21 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/schedule-page.c (init_widgets): listen for changes - in the date editors - (schedule_page_set_dates): update the times when they change - elsewhere - (update_time): set the time in the dialog - (time_changed_cb): notify of changed times - - * gui/dialogs/comp-editor.c (page_dates_changed_cb): don't call - the set dates function on the page that noted the change - (page_summary_changed_cb): same for set summary function - - * gui/dialogs/event-page.c (update_time): move time setting stuff - to util function - (event_page_set_dates): use it - (event_page_fill_component): ditto - - * gui/e-meeting-time-sel.h: fix comment - -2001-10-19 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-notify.c (add_uri_to_load): Do not assert - if we fail to load the URI list. This would of course have been a - bonobo-conf activation problem. - (remove_uri_to_load): Likewise. - - * gui/alarm-notify/notify-main.c (load_calendars): Likewise. - - * gui/alarm-notify/alarm-queue.c (load_missed_alarms): Make the - time range half-open so that we do not display the last alarm - twice. - -2001-10-19 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-model.c (calendar_model_set_status_message): make - it a public function - - * gui/e-tasks.c (e_tasks_open): display progress messages - (cal_opened_cb): clean up status bar messages - - * gui/gnome-cal.c (gnome_calendar_open): display progress messages - (client_cal_opened_cb): clean up status bar messages - -2001-10-19 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-model.c (set_status_message): new function - (update_query): call set_status_message - (query_query_done_cb): - (query_eval_error_cb): clean up status bar messages - (get_location, set_location): new functions for setting and - retrieving the location in the calendar model - -2001-10-19 Rodrigo Moya <rodrigo@ximian.com> - - * gui/component-factory.c (owner_set_cb): keep a reference to the - EvolutionShellClient component - - * gui/e-week-view.c (e_week_view_set_status_message): new function - (update_query): call e_week_view_set_status_message - (query_query_done_cb): - (query_eval_error_cb): clean up status bar messages - - * gui/e-day-view.c (e_day_view_set_status_message): new function - (update_query): call e_day_view_set_status_message - (query_query_done_cb): - (query_eval_error_cb): clean up status bar messages - - * gui/Makefile.am: added EVOLUTION_IMAGESDIR to CFLAGS - -2001-10-18 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - (e_meeting_time_selector_on_invite_others_button_clicked): call - the invite others dialog in the model - - * gui/e-meeting-attendee.c (e_meeting_attendee_get_atype): pick - attendee type based on role and cutype - - * gui/e-meeting-attendee.h: remove proto - - * gui/Makefile.am: compile select names idl - - * gui/e-meeting-model.h: new proto - - * gui/dialogs/meeting-page.c: remove invite others dialogs bits - from here - - * gui/e-meeting-model.c (e_meeting_model_invite_others_dialog): - and put them here - - * gui/dialogs/Makefile.am: compile corba bits in parent dir - - * gui/dialogs/comp-editor-util.h: reflect above in includes - - * gui/dialogs/e-delegate-dialog.c: ditto - - * gui/dialogs/schedule-page.c: ditto and clean includes - -2001-10-18 Larry Ewing <lewing@ximian.com> - - * gui/alarm-notify/alarm-notify-dialog.c: add html widget - (url_requested_cb): add function to load images from file as they - are requested. - (write_html_heading): convert to using html. - (alarm_notify_dialog): convert to use html display. - (make_html_display): this is the function the custom widget in the - galde file uses to create the html widget. - - * gui/alarm-notify/alarm-notify.glade: add placeholder for the - custom html widget. - - * gui/alarm-notify/Makefile.am: add flags for gtkhtml and gal. - -2001-10-18 Federico Mena Quintero <federico@ximian.com> - - Adds session management for the alarm daemon. Also makes it store - a list of calendars to be monitored. Those calendars will all be - loaded when the alarm daemon starts up. - - * idl/evolution-calendar.idl (AlarmNotify): Removed the ::die() - method. The alarm daemon now handles termination via the session - manager's commands. - - * gui/alarm-notify/notify-main.c (set_session_parameters): New - function, sets some parameters so that the session manager can - restart the daemon via the evolution-alarm-client program. Also, - sets up the "die" signal so that the daemon can terminate when the - session ends. - (load_calendars): New function to load the calendars on startup. - (main): Set the session parameters. Load the calendars on startup. - - * gui/alarm-notify/alarm-notify.c (alarm_notify_add_calendar): New - function, moved over from the impl_ function. Added a - load_afterwards argument to indicate whether the calendar should - just be loaded or if it should also be added to the list of - calendars to load on startup. - (AlarmNotify_addCalendar): Use alarm_notify_add_calendar(). - (AlarmNotify_removeCalendar): Remove the calendar from the list of - calendars to load on startup. - - * gui/alarm-notify/save.c (save_calendars_to_load): New function, - saves a sequence of the URIs to load. - (get_calendars_to_load): New function, loads a sequence of - calendars to load. - - * gui/alarm-notify/alarm.h: Removed stale prototype for alarm_init(). - - * gui/component-factory.c (remove_folder): Ask the alarm daemon to - stop monitoring alarms for the folder that is being deleted. - -2001-10-18 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-time-sel.c - - * gui/e-meeting-time-sel-item.c - (e_meeting_time_selector_item_paint_day_top): use 12 or 24 hour - settings - - * gui/e-meeting-time-sel.c: strings for 12 hour setting - (e_meeting_time_selector_construct): increase width slightly - - * gui/e-meeting-time-sel.h: extern the new char array - -2001-10-18 Rodrigo Moya <rodrigo@ximian.com> - - * cal-util/cal-component.[ch] (cal_component_get_location): - (cal_component_set_location): new functions - -2001-10-18 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (process_callbacks): util routine to - handle calling back - (async_close): use above - (e_meeting_model_refresh_busy_periods): ditto - -2001-10-17 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (local_record_from_comp): translate - 1-5 priorites to 1-9 priorities better - (comp_from_remote_record): ditto - -2001-10-17 JP Rosevear <jpr@ximian.com> - - * idl/evolution-calendar.idl: allow some decent exceptions - -2001-10-17 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/query.c (match_component): there may be cases when the backend - will return an invalid component from a valid UID (an UID returned - by the get_uids method), so don't abort if that's the case - -2001-10-15 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: removed Help button. Do we have - any others? - -2001-10-15 Larry Ewing <lewing@ximian.com> - - * gui/dialogs/comp-editor.c (set_icon_from_comp): remove warnings. - -2001-10-15 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (process_multi_day): - function to break up multi day events into single events for both - evo and the pilot and create new CalClientChange structures - (pre_sync): call above function, and adjust changed list if - necessary - -2001-10-15 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (is_all_day): util function - to determine if event is all day - (local_record_from_comp): use new util function - (comp_from_remote_record): kill use of deprecated time functions - -2001-10-13 Larry Ewing <lewing@ximian.com> - - * gui/dialogs/comp-editor.c (real_edit_comp): call - set_icon_from_comp. - (set_icon_from_comp): set the window icon from the comp. - (make_icon_from_comp): get the icon path based on comp type. - - * gui/dialogs/Makefile.am (iconsdir): EVOLUTION_ICONSDIR bits. - -2001-10-13 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-editor.c (task_editor_send_comp): send - cancellation comp if necessary - -2001-10-12 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/alarm-page.c: return fill_component success - - * gui/dialogs/task-page.c: ditto - - * gui/dialogs/task-details-page.c: ditto - - * gui/dialogs/schedule-page.c: ditto - - * gui/dialogs/recurrence-page.c: ditto - - * gui/dialogs/event-page.c: ditto - - * gui/dialogs/meeting-page.c: use e_notice instead of - duplicate_error - (meeting_page_get_cancel_comp): duh, deleted_attendees is an array - now - (meeting_page_fill_component): spew gui errors if there is no - organizer or no attendees, return success - - * gui/dialogs/event-editor.c (event_editor_send_comp): always call - parent method and don't send the cancellation comp if the method - is publish - (refresh_meeting_cmd): use the orginal comp to refresh - (forward_cmd): prompt the user for the version they want to send - (current, original) - - * gui/dialogs/task-editor.c (forward_cmd): as above - (refresh_task_cmd): ditto - - * gui/dialogs/comp-editor-page.c - (comp_editor_page_fill_component): return boolean of whether the - component could be filled or not - - * gui/dialogs/comp-editor-page.h: update proto - - * gui/dialogs/comp-editor.c (prompt_to_save_changes): take a param - on whether to try and send or not - (comp_editor_get_current_comp): only fill component if its changed - (comp_editor_save_comp): prompt user as well - - * gui/dialogs/comp-editor.h: change proto - - * gui/itip-utils.c: replace error_dialog with e_notice - (comp_content_type): specify charset - -2001-10-11 Larry Ewing <lewing@ximian.com> - - * gui/e-itip-control.c: large reworking of i18n tagging and now - uses gtk_html_stream write and U_ where appropriate. More to - come. - -2001-10-10 Larry Ewing <lewing@ximian.com> - - * gui/e-itip-control.c (init): set the default character set to - utf-8. - -2001-10-10 Federico Mena Quintero <federico@ximian.com> - - * pcs/cal-factory.c (lookup_backend): Return the original key in - the hash table if requested. - (backend_last_client_gone_cb): Use lookup_backend() so that we - have the URI mangling done for us. - (impl_CalFactory_open): The type should be GtkType *, not GtkType! - -2001-10-10 JP Rosevear <jpr@ximian.com> - - * cal-client/cal-client.c (cal_set_mode_cb): remove unneeded - assertions - -2001-10-10 JP Rosevear <jpr@ximian.com> - - * pcs/cal-factory.c (add_uri): fix logic checks - - * gui/dialogs/event-editor.c (event_editor_init): init the - exisiting_org boolean - (set_menu_sens): base sensitivity on existing_org boolean - (event_editor_edit_comp): set exisiting_org boolean - - * gui/dialogs/task-editor.c: same as above - - * gui/calendar-offline-handler.c (add_connection): handle the - protocol or host being unknown - - * cal-util/cal-component.c (cal_component_has_organizer): - implement - -2001-10-09 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #884. - - * gui/alarm-notify/save.[ch]: New files with functions to - save/load the last notification time. - - * gui/alarm-notify/alarm-queue.c (alarm_trigger_cb): Save the last - notification time. - (alarm_queue_init): Load the last notification time when the - daemon is inited. - (alarm_queue_add_client): Load the alarms that we missed while the - alarm daemon was not running. - (cal_opened_cb): Likewise. - - * gui/alarm-notify/Makefile.am (evolution_alarm_notify_SOURCES): - Added save.[ch] to the list of sources. - -2001-10-09 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (get_address): util function to get address - (itip_addresses_get_default): get only the default address - (itip_address_free): free single address - (itip_addresses_free): use above - (comp_limit_attendees): limit the number of attendees to one, the - user - (comp_sentby): set the sentby parameter if the user is not the - organizer - (comp_minimal): remove extraneous info for send (for refresh and - declinecounter) - (comp_compliant): remove all alarms, do various things to make the - components comply with itip spec based on method - (itip_send_comp): use comp_compliant method - - * gui/itip-utils.h: new protos - - * gui/e-itip-control.c: rescan the component when necessary - (get_next): don't get stuck in infinite loop if there are no - viewable components - (e_itip_control_set_data): if there are no viewable components, - spit an error message - - * gui/dialogs/meeting-page.h: tidy - - * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): use - organizer's cn if possible - (other_clicked_cb): no longer doing the sent by stuff directly, - hide more widgets - - * pcs/query.c: use bonobo exception stuff - - * cal-util/cal-component.c (cal_component_rescan): have the comp - rescan its libical component (for when you change things directly) - (free_icalcomponent): take a param on whether to free the - component or just clean up the mappings - (cal_component_has_attendees): util function - - * cal-util/cal-component.h: new protos - -2001-10-09 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-factory.c (lookup_backend, add_backend): deal correctly with - URIs to be inserted into the hash table, so that we don't add the same - backend over and over because the URI strings were different (although - refering to the same backend) - - * pcs/cal-backend-file.c (mail_account_*): moved to a common place - (cal_backend_file_open): check if "uristr != NULL" and not - "uri != NULL" - - * pcs/cal-backend-util.c: moved to here - - * gui/e-day-view.c: add missing header file - -2001-10-09 Dan Winship <danw@ximian.com> - - * gui/e-meeting-model.c (process_free_busy_comp): Fix incorrect - variable name check. - -2001-10-03 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): refactor functionality into - several function - (comp_string): if we are publishing, empty the attendee list - - * gui/dialogs/event-editor.c (schedule_meeting_cmd): when we - schedule a new meeting, mark the event editor as changed - - * pcs/cal.c (cal_class_init): get correct parent class - - * gui/dialogs/comp-editor.c (comp_editor_merge_ui): use the - generated ui component name - -2001-10-03 Rodrigo Moya <rodrigo@ximian.com> - - * gui/component-factory.c: - * gui/calendar-offline-handler.c: - * gui/comp-editor-factory.c: replace use of gnome_vfs_uri with e_uri - - * gui/e-meeting-model.c (start_addressbook_server): make it return void, - since the return value does not mind - - * pcs/cal.c: - * pcs/cal-factory.c: - * pcs/cal-backend.[ch]: don't use GnomeVFS for URI management - - * pcs/cal-backend-file.c: ditto, only use GnomeVFS for internal - operations - - * cal-client/cal-client.c (cal_client_open_calendar): don't CORBA_exception_free - before checking for exceptions - -2001-10-03 Christopher James Lahey <clahey@ximian.com> - - * gui/e-calendar-table.etspec: Added priorities to a bunch of - these columns. Fixes Ximian bug #7158. - -2001-10-03 Damon Chaplin <damon@ximian.com> - - * gui/comp-util.c (cal_comp_util_add_exdate): save the EXDATE as a - DATE-TIME value, since we know the exact time. Fixes bug #11278. - (Before we were setting is_date, but icaltime_from_timet_with_zone() - didn't convert it properly. We need to figure out how to handle DATEs - when using time_t's.) - - * gui/dialogs/recurrence-page.c (get_exception_string): use - e_time_format_date_and_time() so we show the time as well, if the - exception is a DATE-TIME value. - - * cal-util/timeutil.c: removed time_add_month(), time_year_begin(), - time_month_begin() & time_week_begin() - old pre-timezone functions - which we no longer use. - - * cal-util/cal-recur.c (cal_recur_from_icalproperty): set - ir.until.is_date to FALSE before converting to a time_t. - Hopefully fixes bug #5034. - -2001-10-02 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/comp-editor.c (setup_widgets): Use - `bonobo_ui_component_new_default()', not - `bonobo_ui_component_new()'. - -2001-10-02 JP Rosevear <jpr@ximian.com> - - * cal-client/cal-query.c: use bonobo-exception to tidy - -2001-10-02 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (nth_weekday): handle -1 as - well - (comp_from_remote_record): fix monthly by day recurrences and - handle "last" day type - -2001-10-01 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (comp_editor_destroy): unref the page - objects here, instead of in close_dialog(). (This was fixed a while - ago, but accidentally reverted.) Fixes bug #7543. - -2001-10-01 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-notify-dialog.c (alarm_notify_dialog): - Set the window state to sticky. Thanks to Peter Teichman for the - suggestion. - -2001-10-01 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - Convert the comp exceptions to the pilot record - (comp_from_remote_record): record exceptions on the desktop and - use time zone stuff on recurrence end date - -2001-10-01 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c (cal_backend_file_compute_changes): - strdup the uid to avoid double free, write out only after - everything is done - -2001-10-01 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_open): don't use - gnome_vfs_uri_is_local on URIs created with - gnome_vfs_uri_new_private - -2001-09-28 Damon Chaplin <damon@ximian.com> - - * gui/print.c (print_comp_item): use bound_text to print the summary, - so it wraps instead of being clipped to 1 line. Fixes part 3 of bug - #10285, I think. - - * gui/dialogs/alarm-page.glade: left-aligned the Date/Time label. - Also set the width of the Summary & Date/Time labels to 10, and set - expand to TRUE, to make sure that the dialog doesn't keep getting - wider as the summary text on the main page gets longer. Could possibly - use an EClippedLabel here instead, so we get a '...' at the end if it - is clipped. - - * gui/dialogs/recurrence-page.glade: changed Summary & Date/Time - widths as above. - - * gui/print.c (print_calendar): use landscape mode for the month - preview. - (print_border_with_triangles): use EPSILON to account for floating - point errors. Hopefully fixes part 2b of bug #10285. - -2001-09-28 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - Handle the fields and category we don't sync by making sure we - don't overwrite them - (local_record_to_pilot_record): use local record category - (pre_sync): track db info - - * conduits/calendar/calendar-conduit.h: db info field - - * conduits/todo/todo-conduit.[hc]: same as above - - * pcs/cal-backend-file.c - (cal_backend_file_compute_changes_foreach_key): create a dummy - component of the right type and strdup the uid - (cal_backend_file_compute_changes): sync the db hash after each - change and free the uid - -2001-09-28 JP Rosevear <jpr@ximian.com> - - * cal-client/cal-client.c (cal_client_open_calendar): init the - execption rather than freeing it - -2001-09-28 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client.c (cal_client_construct): use bonobo-exception - for exceptions - (cal_client_open_calendar): likewise - -2001-09-27 Ettore Perazzoli <ettore@ximian.com> - - * gui/calendar-commands.c (pixmaps): Update pixmap menu paths; - /menu/ComponentToolsPlaceholder/Tools -> - /menu/Tools/ComponentPlaceholder . - * gui/tasks-control.c: Likewise. - -2001-09-27 Rodrigo Moya <rodrigo@ximian.com> - - * idl/evolution-calendar.idl: added InvalidURI and UnsupportedMethod - exceptions to the CalFactory interface - - * pcs/cal-factory.c (impl_CalFactory_open): raise InvalidURI exception on - URI errors and UnsupportedMethod when we don't support the method for - a given URI - -2001-09-26 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client.c: added support for using multiple calendar - factories - (cal_client_uri_list): use the list of factories loaded for this - CalClient - -2001-09-26 Damon Chaplin <damon@ximian.com> - - * gui/e-calendar-table.c (date_compare_cb): - (percent_compare_cb): - (priority_compare_cb): added comparison functions for these special - cell types. But the date and percent ones don't work yet due to the - use of static text buffers for return cell values. - (e_calendar_table_init): added the comparison functions to the - ETableExtras. NOTE: task_compare_cb() never seems to be called. - I'm not sure why it is there. - - * gui/e-calendar-table.etspec: set the comparison function names for - the date/percent/priority fields. - - * cal-util/cal-util.c (cal_util_priority_to_string): - (cal_util_priority_from_string): new utility functions. - - * gui/calendar-model.c (get_priority): - (set_priority): used above utility functions, and removed the warning - dialog which isn't useful now that the field isn't editable. - - * gui/dialogs/event-page.c (times_updated): handle timezones and for - all-day events make sure it stays an all-day event after adjusting. - Fixes bugs #5945 and #10222. - - * gui/calendar-commands.c (pixmaps): fixed the E_PIXMAP paths - the - edit items were moved beneath 'EditPlaceholder'. This gets rid of - those long Bonobo warnings! (and we get the icons back) - - * gui/dialogs/comp-editor.c (pixmaps): removed the PrintPreview toolbar - icon, since it doesn't appear in the xml file. Gets rid of warning. - - * gui/dialogs/event-page.c (notify_dates_changed): new function to - emit the notification signal when the dates are changed. It also - handles timezones now. - - * gui/dialogs/comp-editor-page.h (CompEditorPageDates): used - CalComponentDateTime for start/end/due so we have the timezone as well - as the time. - - * gui/dialogs/comp-editor-util.c (comp_editor_dates): updated to get - the timezones as well as the times. - (comp_editor_free_dates): new function needed to free all the structs. - - * gui/dialogs/recurrence-page.c (recurrence_page_set_dates): added call - to preview_recur() to make sure the preview gets updated. - - * gui/dialogs/alarm-page.c (alarm_page_fill_widgets): free the - CompEditorPageDates struct after use. - - * gui/tag-calendar.c (tag_calendar_by_comp): added 'comp_is_on_server' - argument. If FALSE, we try to use builtin timezones first. This is - needed for the recurrence page of the event editor, because the - timezones may not have been added to the server yet. This and the - changes to the notification stuff should fix bug #5034. - - * gui/gnome-cal.c (dn_query_obj_updated_cb): call above - tag_calendar_by_comp() with TRUE since the events will be on the - server in this case. - - * gui/e-day-view-layout.c: - * gui/e-day-view.c: made sure an event always takes up at least one - row, even when the start & end times are the same. Fixes bug #5944. - I don't know if we should try to also handle events with the end time - before the start time. - - * gui/e-week-view.c (e_week_view_style_set): check that the small font - is actually smaller than the normal font. If it isn't, don't use it. - Hopefully fixes bug #6876. - (e_week_view_on_new_appointment): if only one day is selected, then - we set the initial time of the event to 1/2-hour from the start of the - working day, to differentiate 'New Appointment' from 'New All Day - Event'. Fixes bug #8892. - - * gui/e-day-view.c (e_day_view_on_new_appointment): do the same as the - above. - -2001-09-26 Federico Mena Quintero <federico@ximian.com> - - Fixes the GUI part of bug #7892. - - * gui/dialogs/alarm-page.c (get_alarm_duration_string): Return - NULL if the duration is zero. - (get_alarm_string): Handle duration of zero. Also, hopefully - make the strings be more l10n-friendly. - - * gui/alarm-notify/alarm.c (alarm_ready_cb): I am a moron. Fix - reversed test. - -2001-09-26 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.c (comp_editor_destroy): disconnect - signals first thing - -2001-09-26 Dan Winship <danw@ximian.com> - - * gui/Makefile.am (evolution_calendar_LDFLAGS): Add - -export-dynamic to make glade custom widgets work on non-Linux. - -2001-09-26 Rodrigo Moya <rodrigo@ximian.com> - - * cal-util/cal-util.h: added CAL_MODE_INVALID to CalMode enum - -2001-09-26 JP Rosevear <jpr@ximian.com> - - * pcs/cal.h: new proto - - * pcs/cal.c (impl_Cal_set_mode): implement set mode method - (cal_class_init): set setMode function in epv - (cal_notify_mode): notify listener of mode change - - * pcs/cal-factory.c (add_uri): deal with UriType renaming - - * pcs/cal-backend.h: add new virtual methods and protos - - * pcs/cal-backend.c (cal_backend_class_init): init new virtual - methods to null - (cal_backend_set_mode): sets mode - (cal_backend_get_mode): gets mode - - * pcs/cal-backend-file.c (cal_backend_file_class_init): overide - get_mode and set_mode methods - (cal_backend_file_get_mode): return mode - (notify_mode): have listeners notified of the set mode call - (cal_backend_file_set_mode): set the mode by indicating not - supported - - * cal-client/cal-listener.h: update proto - - * cal-client/cal-listener.c (impl_notifyCalSetMode): implement set - mode callback - (cal_listener_construct): take set mode callback - (cal_listener_new): ditto - - * cal-client/cal-client.h: update protos, add signal proto - - * cal-client/cal-client.c (cal_client_class_init): add - cal_set_mode signal - (cal_set_mode_cb): handle set mode callback from listener - (cal_client_open_calendar): pass additional param to cal_listener_new - (cal_client_set_mode): wrapper to set the calendar mode - - * idl/evolution-calendar.idl: make UriType into CalMode, add - SetModeStatus enum and notifyCalSetMode method to the listener - - * gui/calendar-offline-handler.c (create_connection_list): fetch - the uri list ourselves - (impl_prepareForOffline): reflect param change of - create_connect_list - (update_offline): ditto - (backend_cal_set_mode): set mode call back - (backend_cal_opened): cal opened call back, set mode to local - (impl_goOffline): reflect UriType renaming - - * cal-util/cal-util.h: rename UriType to CalMode - -2001-09-25 Federico Mena Quintero <federico@ximian.com> - - Warning fixes courtesy of Chris Lahey <clahey@ximian.com>. - - * gui/e-itip-control.c (write_html): Warning fixes. Also, don't - strdup() more than necessary. - - * gui/e-meeting-time-sel.c (e_meeting_time_selector_refresh_cb): - Warning fixes. - - * gui/itip-utils.c (itip_addresses_get): Warning fixes. - - * gui/print.c (print_day_background): Warning fixes. - - * gui/dialogs/alarm-options.c (alarm_to_aalarm_widgets): Warning - fixes. - (alarm_to_palarm_widgets): Likewise. - - * gui/dialogs/delete-comp.c: #include "../calendar-config.h" - -2001-09-25 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm.c (alarm_ready_cb): Check that the - timeout is not set up before we create a new one; the alarm_fn - callback may cause the alarm system to re-enter and add a new - alarm. Fixes bug #10840. - (pop_alarm): Assert that there is at least one alarm in the queue. - -2001-09-25 JP Rosevear <jpr@ximian.com> - - * pcs/cal.c: use bonobo-exception stuff to clean code - - * pcs/cal-factory.c (add_uri): add uri to the list if the type - matches - (impl_CalFactory_uriList): implement uriList method - - * pcs/cal-backend.h: new virtual function member - - * pcs/cal-backend.c (cal_backend_is_remote): call virtual function - - * pcs/cal-backend-file.c (cal_backend_file_class_init): override - virtual function - (cal_backend_file_is_remote): new virtual function, always return - FALSE - - * idl/evolution-calendar.idl: uriList factory call, with flags for - types to get - - * gui/dialogs/comp-editor.c (comp_editor_destroy): cast to remove - warning - - * gui/e-itip-control.c (write_label_piece): kill warnings by take - const char * - - * gui/component-factory.c (create_object): aggregate offline - interface - - * gui/Makefile.am: compile new files - - * calobj.[hc]: Remove obsolete files - - * cal-util/cal-util.h: enum URI types for uriList call - - * cal-client/cal-client.c (build_uri_list): build list from string - sequence - (cal_client_uri_list): factory call to get uri list - - * cal-client/cal-client.h: new proto - - * cal-client/cal-client.c: use bonobo exception stuff to clean - code - - * gui/calendar-offline-handler.[hc]: Start some skeleton routines - for online/offline handling - - * pcs/cal-factory.c (launch_backend_for_uri): use accessor and - remove FIXME - -2001-09-23 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (set_date_label): base text on component - type - -2001-09-20 Rodrigo Moya <rodrigo@ximian.com> - - * gui/component-factory.c: don't use gnome_vfs_uri_new_private - (fixes Ximian #10544) - -2001-09-20 Federico Mena Quintero <federico@ximian.com> - - * gui/component-factory.c: #include a few files we were missing - from libgnomevfs. - -2001-09-20 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c (load_db): gets a config db - (cal_backend_file_destroy): release config db - (cal_backend_file_init): use load_db - (mail_account_get): gets a mail account by number - (mail_account_get_default): gets the default mail account - (mail_account_is_valid): looks to see if any accounts have the - given address - (create_user_free_busy): modularize so we can call multiple times - if necessary, set organizer - (cal_backend_file_get_free_busy): if the list of users is null, - use the default account otherwise get the same info for each - address that is an identity in the mailer - - * gui/itip-utils.c (itip_addresses_get): s/gint/glong/ for bonobo - conf returns - - * gui/calendar-commands.c (publish_freebusy_cmd): fix problems - from a merge so that we publish 6 weeks of free/busy information - again - -2001-09-20 Larry Ewing <lewing@ximian.com> - - * gui/dialogs/recurrence-page.c (recurrence_page_destroy): make - sure to release the ref on priv->comp. - - * gui/dialogs/comp-editor.c (real_edit_comp): make sure to release - the ref on priv->comp. - -2001-09-19 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-queue.c (audio_notification): Display a - notification message always, in addition to playing the sound. - (procedure_notification): Present a confirmation dialog before - actually running the alarm's program. - (procedure_notification): Use gnome_execute_shell() instead of - gnome_execute_async() so that we handle multiple arguments - properly. Plus, it is most likely what the user expects. - (mail_notification): Display a message about unsupported email - reminders instead of blindly dropping the alarm. - - * gui/dialogs/alarm-options.glade: Added an explanatory message - about mail alarms not being supported. - - * gui/dialogs/alarm-page.glade: Removed the "Send an email" - option. - - * gui/dialogs/alarm-page.c (action_map): Removed CAL_ALARM_EMAIL. - -2001-09-19 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-editor.c (init_widgets): listen for model - changes - (task_editor_edit_comp): add the attendees to the model and notify - of need send - (row_count_changed_cb): mark as changed when row added/deleted - (model_row_changed_cb): mark as changed when row changes - - * gui/dialogs/event-editor.c (init_widgets): listen for model - changes - (event_editor_init): flip page order - (event_editor_edit_comp): set needs send value - (schedule_meeting_cmd): flip page order - (row_count_changed_cb): mark as changed when row added/deleted - (model_row_changed_cb): mark as changed when row changes - - * gui/dialogs/schedule-page.c: remove model change notification - stuff - (schedule_page_fill_widgets): no need to do the needs_send here - because the editor handles this since it owns the model - - * gui/dialogs/event-editor.c (init_widgets): listen for model - changes - (event_editor_init): flip page order - (event_editor_edit_comp): set needs send value - (schedule_meeting_cmd): flip page order - (row_count_changed_cb): mark as changed when row added/deleted - (model_row_changed_cb): mark as changed when row changes - - * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): no need - to do the needs_send here because the editor handles this since it - owns the model - (invite_entry_changed): ditto - - * gui/dialogs/comp-editor.c (comp_editor_set_changed): new - accessor - (comp_editor_get_changed): ditto - (comp_editor_set_needs_send): ditto - (comp_editor_get_needs_send): ditto - - * gui/dialogs/comp-editor.h: new protos - - * gui/itip-utils.c (itip_addresses_get): reflect configuration - path changes in the mailer - - * gui/e-meeting-model.c: remove commented out code, ifdef one - section for later - -2001-09-19 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-factory.c (cal_factory_oaf_register): add a new parameter - (const char *iid) to specify the OAFIID of the factory being - registered - -2001-09-19 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-model.c (e_meeting_model_refresh_busy_periods): - remove silly debug #if 0 - - * gui/calendar-commands.c (publish_freebusy_cmd): g_list_free - rather than g_free - - * gui/e-itip-control.c (write_html): eliminate code path that - caused double freed memory - -2001-09-18 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/schedule-page.*: A page that shows the meeting time - selector and free/busy data for attendees - - * gui/dialogs/meeting-page.c: use the meeting model to track/edit - attendees, remove table value conversion routines and simple table - routines - (set_attendees): take a pointer array - (meeting_page_destroy): destroy the pointer array, save state - (meeting_page_init): new pointer array - (meeting_page_fill_widgets): don't null the deleted attendees - field - (popup_delegate_cb): array add - (popup_delete_cb): array add - (cleanup_attendees): iterate over the array to unref now - (meeting_page_fill_widgets): don't null out fields, no need to add - attendees here - (invite_entry_changed): use e_meeting_attendee routines - (popup_delegate_cb): ditto - (popup_delete_cb): ditto - (meeting_page_new): take new arg and pass it to construct - (meeting_page_construct): take new arg, use e-meeting-model - routines to construct table - - * gui/dialogs/task-editor.c (task_editor_init): new meeting model - (task_editor_destroy): unref the model - - * gui/dialogs/event-editor.c (event_editor_init): make new model - and pass it to meeting and schedule pages - (event_editor_set_cal_client): virtual function, set meeting model - client - (event_editor_edit_comp): add the attendees to the model - (event_editor_destroy): unref model - - * gui/dialogs/comp-editor.h: add virtual function - * gui/dialogs/comp-editor.c (comp_editor_set_cal_client): make - set_cal_client a virutal function - - * gui/e-meeting-types.h: generally useful type defines - - * gui/e-meeting-time-sel*.[hc]: Move here and use an e-table for - the attendee list and extract display information from the new - meeting model and attendees - - * gui/e-meeting-time-sel.etspec: spec for the table - - * gui/e-meeting-attendee.[hc]: meeting attendees for the model, - with to/from conversions for CalComponentAttendee structure, emits - changed signal and allows getting and setting of free busy - periods - - * gui/e-meeting-model.[hc]: move the model out on its own - - * gui/e-itip-control.c (write_error_html): clean up warnings - -2001-09-18 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #6350. - - * gui/component-factory.c (remove_folder): Use a simplified method - for removing our folder data; we just need to remove calendar.ics - or tasks.ics and the corresponding backup files. - -2001-09-18 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #2830. - - * gui/calendar-config.c (calendar_config_get_confirm_delete): New - function. - (calendar_config_set_confirm_delete): New function. - (config_read): Get the default value for the ConfirmDelete option. - (calendar_config_write): Set the value of ConfirmDelete. - - * gui/dialogs/delete-comp.c (delete_component_dialog): Handle the - configuration option for confirmation. - - * gui/dialogs/cal-prefs-dialog.c (CalPrefsDialogPrivate): Added - the fields for the Other page. - (get_widgets): Handle the new widgets. - (cal_prefs_dialog_show_config): Likewise. - (cal_prefs_dialog_update_config): Likewise. - -2001-09-18 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client-multi.[ch]: new class for managing multiple - calendars, with an API very similar to the CalClient one, - for ease of transition from one to the other - - * gui/component-factory.c (xfer_folder, remove_folder, create_folder): - reworked to be able to manage folders for any calendar backend, and - not only the file: one - -2001-09-18 Rodrigo Moya <rodrigo@ximian.com> - - * idl/evolution-calendar.idl: changed signature for the getFreeBusy - method, to return a sequence of CalObj's, and added sequence of users - as a new parameter to that method - - * cal-client/cal-client.c (cal_client_get_free_busy): adapted to new - IDL method signature, by adding a new "GList *users" parameter, for - callers to be able to specify a list of users - - * pcs/cal-backend.[ch] (cal_backend_get_free_busy): - * pcs/cal-backend-file.c (cal_backend_file_get_free_busy): add the - "GList *users" parameter. In cal_backend_file_get_free_busy, call - lookup_component to get the CalComponent for each uid, instead - of calling cal_backend_get_object, which meant converting the - component to a string and then parsing it again. - - * cal-client/client-test.c (cal_opened_cb): - * gui/e-itip-control.c (send_freebusy): - * gui/calendar-commands.c (publish_freebusy_cmd): adapted to - new getFreeBusy method signature - -2001-09-17 Damon Chaplin <damon@ximian.com> - - * gui/calendar-model.c: added a timeout to refresh the list every - 10 minutes. Not ideal, as the user may be editing a task when it gets - refreshed. - (adjust_query_sexp): use the 'completed-before?' operator to filter - out tasks according to the config settings. - - * gui/dialogs/task-details-page.c (task_details_page_fill_widgets): - added support for the 'Completed' date. This code must have got lost - somewhere, as it used to work. - (date_changed_cb): set the priv->updating flag while updating the other - widgets. - - * pcs/cal-backend-file.c (cal_backend_file_update_objects): made sure - we freed the components. - - * pcs/query.c (func_completed_before): added 'completed-before?' - operator. - - * gui/calendar-config.c (calendar_config_configure_e_cell_date_edit): - don't set the lower & upper hour. Use 0-24 like the EDateEdit does. - - * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): set - the 12/24-hour time format options sensitive only if we support both. - - * gui/calendar-config.c (config_read): if the locale doesn't define - 'am' and 'pm' strings then we must use 24-hour format. - - * gui/calendar-commands.c (calendar_set_folder_bar_label): don't - translate the '%d' as it doesn't make much sense. Resolves bug #8027. - -2001-09-17 Federico Mena Quintero <federico@ximian.com> - - * gui/component-factory.c (owner_set_cb): Do not call - calendar_config_init() here. - - * gui/main.c (main): Call calendar_config_init() here. - -2001-09-17 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm.c (queue_alarm): Duh, only setup the - timeout if the list was empty. - (alarm_ready_cb): Notify with the ID of the original alarm. - (alarm_remove): Likewise. - -2001-09-17 Federico Mena Quintero <federico@ximian.com> - - Switch the alarm system from using SIGALRM to normal glib timers. - Also, use a more robust de-queueing mechanism. - - * gui/alarm-notify/alarm.c (alarm_init): Removed. - (alarm_done): Remove the glib timeout instead of closing the pipes - and the signal handler. - (alarm_add): Allow adding alarms that happen before right now. - (queue_alarm): Use a glib timer instead of a signal. - (alarm_remove): Adjust the timeout as appropriate. - - * gui/alarm-notify/notify-main.c (main): There is no need to - initialize the alarm system now. - - * gui/main.c (main): Likewise. - -2001-09-17 JP Rosevear <jpr@ximian.com> - - * gui/calendar-model.c (calendar_model_init): get itip addresses - (calendar_model_destroy): destroy same - (calendar_model_value_at): do more thorough checking on whether to - use recurring, assigned, assigned to or regular task icons - -2001-09-17 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (for_each_remove_all_alarms): for each - call back, removes the alarms - (cal_component_remove_all_alarms): remove all alarms from the - component - - * cal-util/cal-component.h: new proto - - * gui/e-itip-control.c (write_error_html): writes error messages - rather than normal html - - * gui/itip-utils.c (itip_send_comp): remove all alarms if the - method warrants it - -2001-09-16 Christopher James Lahey <clahey@ximian.com> - - * gui/dialogs/meeting-page.c (build_etable): Updated this to match - the new ETableSimple interface. - -2001-09-14 Ettore Perazzoli <ettore@ximian.com> - - [Automake 1.5 fixes pointed out by Richard Boulton - <richard@tartarus.org>, as per #9258.] - - * cal-client/Makefile.am: Set CLEANFILES directly instead of using - `+='. - * gui/Makefile.am: Likewise. - * gui/alarm-notify/Makefile.am: Likewise. - * pcs/Makefile.am: Likewise. - -2001-09-14 Damon Chaplin <damon@ximian.com> - - * gui/e-itip-control.c (ok_clicked_cb): added space after 'identities' - in the message. Fixes bug #9896. - -2001-09-14 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/e-calendar.conduit.in: remove translation - marker for now - -2001-09-13 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.h: use ical partstat, role, cutypes - directly - - * cal-util/cal-component.c: ditto - - * gui/e-itip-control.c (find_my_address): set my addresses if the - addresses match - (find_attendee): strstr returns non-null on a match - (write_html): use new icon, select the name displayed (organizer - or attendee) based on method, - (ok_clicked_cb): when rsvp'ing strip off all but the attendee - being replied for as is specified in the spec - (find_attendee_partstat): new util function to extract the - partstat of an attendee - (update_attendee_status): updates the partstat of a specific - attendee in the reply message - - * gui/dialogs/meeting-page.c: use ical partstat, role, cutypes - directly - (popup_delegate_cb): if we delegate, notify of needs send and - changed - (popup_delete_cb): notify of needs send and changed for each - deletion - -2001-09-12 JP Rosevear <jpr@ximian.com> - - * gui/calendar-commands.c (publish_freebusy_cmd): send 6 weeks of - free busy info starting with the UTC start of day - - * gui/itip-utils.c (get_label): create a text representation of - the given icaltime - (itip_send_comp): if the summary is empty, set the subject based - on the type of component, put the right extension on free/busy - components and base descriptions on type of component, include - start/end for free/busy info - -2001-09-11 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-queue.c (display_notification): Added an - use_description argument so that other alarms can fall back to - this type. - (audio_notification): Implemented. - (remove_comp): Call remove_queued_alarm() here; there is no longer - a destroy notification function for alarms so must we do this - manually. - (alarm_trigger_cb): Do not pass the alarm to the notification - functions so that we can free it ourselves before all the alarms - in the component get freed. - (display_notification): Get the alarm here instead of getting it - as an argument. - (procedure_notification): Implemented. - -2001-09-11 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (invite_entry_changed): free the - destination vector when we finish with it, if we actually add - anyone, notify listeners of the needs send and changed info. Fixes - bug #8632. - -2001-09-10 Zbigniew Chyla <cyba@gnome.pl> - - * gui/print.c - (format_date): Convert string generated by strftime to UTF-8. - (print_week_view_background): Ditto. - (print_month_summary): Ditto. - (print_month_small): Use U_() instead of _(). - (print_day_background): Ditto. - (print_todo_details): Ditto. - (print_date_label): Convert generated string to UTF-8. - -2001-09-10 Federico Mena Quintero <federico@ximian.com> - - * cal-util/cal-component.c (cal_component_alarm_get_attach): - Handle the new icalattach type instead of struct icalattachtype. - (cal_component_alarm_set_attach): Likewise. - - * gui/dialogs/alarm-options.c (alarm_to_aalarm_widgets): Likewise. - (alarm_to_palarm_widgets): Likewise. - (aalarm_widgets_to_alarm): Likewise. - (palarm_widgets_to_alarm): Likewise. - -2001-09-05 Ettore Perazzoli <ettore@ximian.com> - - [Fix #958, ShellComponents should not be created by factories, for - the calendar.] - - * gui/GNOME_Evolution_Calendar.oaf.in: Remove the - ShellComponentFactory. - - * gui/component-factory.c (create_object): Renamed from - `component_fn'. Don't get any args. - (component_factory_init): Create the component using - `create_object()' and register it into OAF. - (COMPONENT_FACTORY_ID): Removed. - (COMPONENT_ID): New. - -2001-09-04 Federico Mena Quintero <federico@ximian.com> - - * gui/component-factory.c (sc_user_create_new_item_cb): - Implemented. - - * gui/main.c (component_editor_factory_init): New function to - create the factory for the comp_editor_factory. - - * gui/comp-editor-factory.c: Finished implementation. - - * gui/alarm-notify/alarm-queue.c (edit_component): Implemented the - Edit command. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - comp-editor-factory.[ch] to the list of sources. - -2001-09-03 Damon Chaplin <damon@ximian.com> - - * gui/calendar-commands.c (calendar_control_activate): - * gui/tasks-control.c (tasks_control_activate): don't call - calendar_config_check_timezone_set() now, since the startup wizard - handles that. - - * gui/e-tasks.c (e_tasks_class_init): changed selection_changed signal - to GTK_RUN_LAST. It has no reason to be GTK_RUN_FIRST. - - * gui/gnome-cal.c: - * gui/e-week-view.c: - * gui/e-day-view.c: added "selection_changed" signal, - XX_delete_event() and XX_get_num_events_selected(). - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw): fix the shadow - around the dates at the top - it was 1 pixel off. - - * gui/calendar-commands.c: added sensitize_commands(), similar to in - tasks-control.c, so we only make Cut/Copy/Delete sensitive when an - event is selected. Also added delete_event_cmd(). - - * gui/dialogs/task-page.c (task_page_set_summary): - * gui/dialogs/event-page.c (event_page_set_summary): do nothing, - since the summary only gets changed on the main event/task page now. - Fixes bug #6939. - - * gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received): - (e_day_view_on_top_canvas_drag_data_received): check that we are - dragging an event from the same EDayView. We currently don't support - DnD from other widgets. - (e_day_view_update_top_canvas_drag): only get the summary if we - actually have an event. Fixes bug #5162. - - * gui/e-day-view.c (e_day_view_on_editing_stopped): if the text hasn't - changed we need to call e_day_view_update_event_label() to show the - times again if necessary. Fixes bug #1813. - - * gui/dialogs/comp-editor.c (comp_editor_destroy): destroy the - CompEditorPage objects here rather than in close_dialog(), after the - widgets have been destroyed. We do this because the widgets have lots - of signal handlers connected with the CompEditorPage objects as the - signal data, so we want to ensure that the data pointer is always - valid. (Alternatively we could disconnect all the handlers when the - CompEditorPage objects are destroyed, or use connect_while_alive()). - Fixes bug #7543. - - Note: there is still a small bug in that if you type in a time and - then hit 'Save and Close', the time won't be saved. I'm not sure - where this should be fixed - should the actions which close the - dialog grab the focus to the toplevel, so any widgets currently - being edited finish the edit and emit 'changed'? - - * gui/dialogs/recurrence-page.c (append_exception): use - gtk_clist_set_row_data_full() so freeing is handled automatically by - the GtkClist. This helps avoid problems at destroy-time. - (exception_delete_cb): just call gtk_clist_remove() now. No need to - free the row data as GtkCList now handles it. - (recurrence_page_destroy): no need to free the data in the clist. - - * gui/dialogs/alarm-page.c: ditto. - - * gui/dialogs/meeting-page.c: ditto. - (etable_destroy_cb): save the ETable state in this new handler cb - rather than in the destroy method, since the widget will already be - destroyed by then. - -2001-08-31 Damon Chaplin <damon@ximian.com> - - * gui/e-itip-control.c: changed 3 occurrences of 'Replyed' to 'replied' - -2001-08-31 Zbigniew Chyla <cyba@gnome.pl> - - * gui/e-itip-control.c (write_html): - Marked strings for translation (with U_). - - * gui/itip-utils.c (itip_send_comp): - Ditto. - -2001-08-31 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor-util.c (comp_editor_contacts_to_widget): - (comp_editor_contacts_to_component): fix debugging messages so they - use "" rather than NULL. Fixes bug #8559. - -2001-08-29 Federico Mena Quintero <federico@ximian.com> - - * pcs/cal-backend-file.c (cal_backend_file_remove_object): See if - the set of categories changed by using the removed_categories hash - table. - (cal_backend_file_init): Create a table of removed categories. - This allows us to notify if and only if the set of category - changes when an object is updated/removed, instead of - unconditionally notifying if an object is updated. - (cal_backend_file_update_objects): Only notify if the set of - categories really changed. - (update_categories_from_comp): Shuffle the categories between the - priv->categories and priv->removed_categories lists. - -2001-08-28 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #7879, a query may receive an update notification from - the backend before the query itself gets populated. - - * pcs/query.c (ensure_sexp): New function; ensures that the esexp - is created and notifies of parse errors. It is the bulk of - start_query_cb() but put in a separate function so that we can - share it elsewhere. - (start_query_cb): Use ensure_sexp(). - (process_component_cb): Oops, notify of a successfully finished - query. - (match_component): Call ensure_sexp(). This function can be - called by the backend notification callbacks before the query is - populated, so we need to make sure the esexp exists here. - -2001-08-22 Federico Mena Quintero <federico@ximian.com> - - * gui/cal-search-bar.c (cal_search_bar_construct): Set the - "category is" criterion as the default for the calendar and tasks. - -2001-08-22 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/recurrence-page.c (recurrence_page_fill_widgets): - Unset the priv->updating flag before returning in the case the - component has no recurrence information. Fixes bug #6850. - -2001-08-22 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-queue.c (QueuedAlarm): Added a snooze - flag to differentiate snoozed alarms from real occurrences. - (add_component_alarms): Do not specify a destroy function for the - alarm trigger. We handle this in the callbacks now. - (alarm_trigger_cb): Just remove the alarms for the unimplemented - notification types. - (create_snooze): Implemented snooze. - (notify_dialog_cb): Snooze as appropriate. - -2001-08-22 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (foreach_tzid_callback): call back to add - timezones to the top level - (itip_send_comp): call icalcomponent_foreach_tzid - -2001-08-22 Dan Winship <danw@ximian.com> - - * gui/gnome-cal.c: #include <libgnomevfs/gnome-vfs-types.h> so - this will compile against gnome-vfs 1.0.1. - -2001-08-22 Rodrigo Moya <rodrigo@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_open): open the tasks folder - associated with the calendar being opened, and not always the local - tasks.ics file - - * pcs/cal-factory.c (open_fn): use gnome_vfs_uri_new_private when - parsing the URI to allow non-registered URIs - -2001-08-21 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-options.c (alarm_to_palarm_widgets): Handle - the case where there is no attachment. Fixes bug #7257. - -2001-08-21 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (write_html): strip the mailto bit for the - email address if we display it - -2001-08-21 Damon Chaplin <damon@ximian.com> - - * pcs/query.c (func_is_completed): added new e-sexp operator. We - don't currently use it though. - - * gui/dialogs/cal-prefs-dialog.glade: Changed '_Overdue' to 'O_verdue' - since we have an '_Other' notebook tab. Added '_Hide' accel. - - * gui/dialogs/cal-prefs-dialog.c: hooked up config options to dialog. - - * gui/calendar-config.c: added config options for hiding completed - tasks. - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - * gui/e-day-view.c (e_day_view_reshape_long_event): added 2 pixels - extra space between icons and text for long events, and 1 pixel space - between icons in all events. - (e_day_view_realize): changed the background color to match the - EGrayBar in the shell. - -2001-08-21 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-util.[ch]: new files to contain utility functions - for calendar backends - - * pcs/cal-backend.c (cal_backend_add_cal): implement it here, and not in - the calendar backends. Add a "cal_added" signal, so that backends are - notified when a new Cal is added, if they need to - (cal_backend_get_type_by_uid): implement it here - - * pcs/cal-backend-file.c (fill_alarm_instances_seq): moved to - cal-backend-util.c - (cal_backend_file_add_cal): removed - (cal_backend_file_init): connect to the "cal_added" signal in the - CalBackend class so that we can update categories when a new Cal is - added - (cal_backend_file_get_type_by_uid): removed - - * pcs/cal-backend-db.c (fill_alarm_instances_seq): moved to - cal-backend-util.c - (cal_backend_db_add_cal): removed - (cal_backend_db_get_type_by_uid): removed - - * AUTHORS: added JP and Damon to list of authors - -2001-08-20 Rodrigo Moya <rodrigo@ximian.com> - - * cal-util/cal-util.[ch] (cal_util_generate_alarms_for_list): - (cal_util_generate_alarms_for_comp): - new functions moved from the CalBackendFile, to allow its use outside - of it. The signature has changed a little bit, since these functions - need a way to get the timezones from the callers, so a callback - function to resolve the timezones has been added to the list of - parameters - - * pcs/cal-backend-file.c (generate_alarms_for_list): - (generate_alarms_for_comp): moved to cal-util, with all their related - functions/structures - - * pcs/cal-backend-db.c: removed functions that were moved to cal-util - -2001-08-20 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (pixmaps): use Delete icon in menu, and - change to bigger Save icon in toolbar. - - * gui/tasks-control.c: - * gui/calendar-commands.c (pixmaps): used new_task-16.png and - goto-16.png. - -2001-08-20 Damon Chaplin <damon@ximian.com> - - * gui/calendar-commands.c (pixmaps): added delete icons for menu - and toolbar. - -2001-08-20 Damon Chaplin <damon@ximian.com> - - * gui/tasks-control.c: added Cut/Copy/Paste icons for toolbar. - -2001-08-20 Damon Chaplin <damon@ximian.com> - - * gui/tasks-control.c: uses new delete icons in menu & toolbar. - -2001-08-19 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c: Update the folder list to include a - display name and a description. - -2001-08-20 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (pixmaps): use new delete icon for toolbar. - -2001-08-19 Damon Chaplin <damon@ximian.com> - - * gui/e-itip-control.c: fixed typo, 'send' -> 'sent'. Bug #7621. - -2001-08-18 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: added option to hide completed - tasks after a given number of minutes/hours/days. Unfinished. - - * gui/dialogs/event-page.c (event_page_fill_component): initialize - zone to NULL to avoid a warning. - (contacts_clicked_cb): work around a bug in SelectNames by notifying - that the page has changed when you click the 'Contacts' button. - Otherwise it is easy to lose changes. - - * gui/dialogs/task-page.c (contacts_clicked_cb): ditto. - -2001-08-18 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (pixmaps): used new Save/Save As icons. - - * gui/tasks-control.c: - * gui/calendar-commands.c (pixmaps): added new Cut/Copy/Paste icons, - and changed the 'New Task' icon to use the bigger one I made. - -2001-08-05 Zbigniew Chyla <cyba@gnome.pl> - - * gui/dialogs/task-page.c (summary_changed_cb): - Use e_dialog_editable_get instead of gtk_editable_get_chars (we need - UTF-8 string). - -2001-08-18 Zbigniew Chyla <cyba@gnome.pl> - - * gui/calendar-config.c (locale_uses_24h_time_format): New. - (config_read): Use locale's setting as default for - /Calendar/Display/Use24HourFormat so that Europeans don't have to - switch to 24-hour format manually. - -2001-08-17 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (destroy): destroy the addresses - (clean_up): don't free the addresses, we need them - -2001-08-17 Damon Chaplin <damon@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_new_task): new function to open the - task editor to add a new task. - - * gui/calendar-commands.c: added new_task_cb() to create a new task - in the calendar folder, and added menu commands for it, and a toolbar - button (I think that is what Ettore wanted. Maybe he just meant menu - commands. Anyway, it is easy to take out.) Note that we don't have a - decent icon for 'New Task' for the toolbar. - Also added the new Goto button (but we don't have a similar one for - the menu command). - -2001-08-16 Iain Holmes <iain@ximian.com> - - * gui/Makefile.am: Add the libetimezonedialog.a lib link - - * gui/calendar-config.c: Change the #include for the timezone dialog - - * gui/e-timezone-entry.c: Ditto. - - * gui/dialogs/Makefile.am: Remove the e-timezone-dialog stuff. - -2001-08-16 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/event-page.c: hide the timezone fields for all-day - events. We will use DATE values for these eventually, and these - don't have timezones associated with them. Currently we just use the - default timezone for all-day events, as a workaround until we have - DATE values working. - - * gui/dialogs/comp-editor-util.c (comp_editor_new_date_edit): added - make_time_insensitive flag. Though we may not use it. - - * gui/dialogs/event-page.glade: made the 'All day event' toggle - right-aligned, so it doesn't move when the other widgets are shown - and hidden. - - * gui/e-timezone-entry.c (e_timezone_entry_set_default_timezone): new - function to set the default timezone of the widget. If the current - timezone setting matches the default then the entry field is hidden. - Most people won't use timezones so this makes the GUI simpler. - - * gui/dialogs/event-page.c (init_widgets): - * gui/dialogs/task-page.c (init_widgets): set the default timezone - using the above function. - - * gui/dialogs/task-page.c (task_page_fill_widgets): if the start date - or due date is not set, we use the default timezone, so the user - doesn't have to set this each time they set the date. - -2001-08-16 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-page.c (alarm_page_fill_widgets): If the - component has no alarms remember to set the priv->updating flag to - FALSE before returning. - -2001-08-16 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/e-delegate-dialog.c - (e_delegate_dialog_get_delegate_name): get the destinations - property, not the text property - -2001-08-16 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-page.c (clear_widgets): Set the default-to-add - notification to be display a message 15 minutes before the start - of the appointment. Fixes bug #7175. - -2001-08-16 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/comp-editor-util.c (comp_editor_strip_categories): - New function to strip surrounding whitespace from a string of - categories entered by the user. - - * gui/dialogs/task-page.c (task_page_fill_component): Use - comp_editor_strip_categories(). - - * gui/dialogs/event-page.c (event_page_fill_component): Likewise. - -2001-08-16 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-config.c (calendar_config_configure_e_date_edit): - Do not set the time popup range. We also want to be able to - create appointments that are not within nine-to-five! Think of - going to the movies! Fixes bug #7436. - - * gui/dialogs/cal-prefs-dialog.glade: "am/pm" is now "AM/PM". - Fixes bug #7367. - -2001-08-16 Jon Trowbridge <trow@ximian.com> - - * gui/cal-search-bar.c: Changed to reflect my renaming of some of - the more hideously-named functions in the ESearchBar API. - -2001-08-15 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.c (save_comp): only fill the component - and save it if something has changed - (save_comp_with_send): only try to send if something has changed - and the editor needs a send - -2001-08-15 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: OK, re-added the default - alarm options. Way too many people are asking for them. - -2001-08-15 Federico Mena Quintero <federico@ximian.com> - - * gui/component-factory.c (factory_fn): Add the user creatable - items. The callback is not actually implemented yet; this is just - to finalize the GUI. - - * gui/dialogs/cal-prefs-dialog.glade: Added an option to ask for - confirmation when deleting items. Added underlined shortcuts - (they may not all work currently). - -2001-08-14 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/task-page.c: - * gui/dialogs/event-page.c: added support for the Contacts field. - Note that I'm not sure what we should put in the iCalendar CONTACT - properties. Currently we put "name <email>", but it isn't recognized - as a contact when we reopen the dialog, so we may need more info here. - Also we currently use a simple parser to parse the above format, and - we should maybe use some camel function. - - * gui/dialogs/task-page.glade: - * gui/dialogs/event-page.glade: replaced the GtkEntry fields for the - Contacts with a GtkEventBox which we put the BonoboControl in at - runtime. - - * gui/dialogs/meeting-page.c (invite_entry_changed): added FIXMEs - since it doesn't seem to be freeing the EDestination stuff. JP? - - * gui/dialogs/comp-editor-util.c: added bunch of utility functions to - handle the Contacts field in the main Event and Task pages. - - * gui/gnome-cal.c: added visible_start and visible_end fields, so we - only emit the 'dates-shown-changed' signal when really necessary. - Currently changing the folder title bar label results in a complete - redraw of the Evolution window (silly GtkLabel queueing a resize), - so we want to avoid that as much as possible. - (gnome_calendar_new_appointment_for): only move the event's end time - to the end of the day if it is not already 00:00:00. - - * gui/e-week-view-event-item.c: - * gui/e-week-view.c: - * gui/e-day-view.c: added support for double-clicking on an event to - open it, and for double-clicking on the background to create a new - event. There is still a minor problem to sort out, but it basically - works. - - * cal-util/cal-component.c: added support for CONTACT properties, - mainly by copying the code for COMMENT properties which are exactly - the same type. - - * gui/e-day-view.c (e_day_view_realize): use the same color for the - top canvas background as the shortcut bar, to make it look a little - nicer (I think). Although we still have the theme problem with - hard-coded colors. - -2001-08-14 Federico Mena Quintero <federico@ximian.com> - - * gui/e-calendar-table.etspec: Made the click-to-add message - shorter. Fixes bug #7177. - -2001-08-14 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-commands.c (pixmaps): Added Tigert's new icons for - Prev and Next. - -2001-08-14 Federico Mena Quintero <federico@ximian.com> - - * gui/cal-search-bar.c (make_suboptions): Make the "Any Category" - item consistent with the one in the addressbook. Also, free the - items correctly. - -2001-08-14 Federico Mena Quintero <federico@ximian.com> - - * gui/cal-search-bar.c (get_current_category): Handle an array of - categories in the CalSearchBar instead of our own menu items. - (notify_query_contains): Fetch the text from the search bar here - instead of in regen_query(). - (regen_query): Handle category searches. - (notify_category_is): New function. - (cal_search_bar_construct): Do not create an option menu. - (make_suboptions): New function to create the suboption items from - the list of categories. - (notify_query_contains): Do not include a category sexp here. - -2001-08-13 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (update_item): add dialog for feedback - (remove_item): ditto - (send_item): ditto - (send_freebusy): ditto - -2001-08-13 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c: rewrite the gui to use gtkhtml - - * gui/Makefile.am: define the icon dir - -2001-08-12 Kjartan Maraas <kmaraas@gnome.org> - - * gui/e-itip-control.h: Remove #include <config.h> from here. - * gui/itip-utilss.h: Same here. - -2001-08-11 Ettore Perazzoli <ettore@ximian.com> - - * gui/tasks-control.c: Update the paths of the Tools menu - according to the changes in the XML [i.e. things are moved to the - ComponentToolsPlaceholder]. - - * gui/calendar-commands.c: Likewise. - -2001-08-11 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/event-page.c (init_widgets): - * gui/dialogs/task-page.c (init_widgets): turn on word-wrap for the - description fields. Fixes bug #6821. - -2001-08-10 Jon Trowbridge <trow@ximian.com> - - * gui/cal-search-bar.c: Where we have ESearchBarItems, set their - subitems to NULL. - -2001-08-09 Damon Chaplin <damon@ximian.com> - - * pcs/cal-backend.c (cal_backend_get_object_component): added new - backend method to get the component given a UID. - - * pcs/cal-backend-file.c (cal_backend_file_get_object_component): - added implementation of above virtual method. - - * pcs/query.c (match_component): use the new backend function to get - the CalComponent rather than the string. This avoids converting all - the calendar components to strings and parsing them back into - components for every query! (That wasn't a good idea, was it ;) - - * gui/e-week-view.c: - * gui/e-day-view.c: use a timeout handler to layout the events, - to avoid doing a layout for each event we get from a query. - - * gui/print.c (print_day_add_event): - * gui/e-day-view.c (e_day_view_add_event): set start_row_or_col and - num_columns to 0. They are guint8's. - - * gui/e-week-view.c (e_week_view_free_events): hide all the jump - buttons. Fixes bug #5946. - - * gui/calendar-commands.c (calendar_set_folder_bar_label): added the - day numbers for the month view. - - * gui/dialogs/recurrence-page.glade: changed "_Delete" to "_Remove", - since it clashed with "_Add". Also added underlined accelerators for - the recurrence radio buttons. Note that none of these accelerators - actually work at present, due to the way we are using .glade files - for each notebook page. I need to add a bug about this. - Also, the "_Action" menu doesn't popup when I press Alt+A, even though - the "_File" menu does popup when I press Alt+F. Strange. - - * pcs/cal-backend-file.c (cal_backend_file_get_timezone_object): - removed debug msgs. - -2001-08-09 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): - unref the GdkPixmap and GdkBitmap returned by the function - e_categories_config_get_icon_for () - -2001-08-09 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-page.*: Remove progress frame - - * gui/dialogs/task-details-page.*: Put in progress frame, remove - basics frame - - * gui/dialogs/task-editor.c (set_menu_sens): util function to set - menu sensitivity based on state - (task_editor_init): add meeting page - (task_editor_edit_comp): show page if necessary - (task_editor_destroy): unref meeting page - (assign_task_cmd): bring up meeting page - (refresh_task_cmd): save before sending - (forward_cmd): ditto - - * gui/dialogs/comp-editor.c (save_cmd): implement new save command - -2001-08-09 Federico Mena Quintero <federico@ximian.com> - - * gui/e-itip-control.c (destroy): Chain to the destroy handler in - the parent class! - - * gui/dialogs/comp-editor-page.c (comp_editor_page_destroy): - Likewise. Sigh. - - * gui/cal-search-bar.c (cal_search_bar_destroy): Whoops, added a - destroy handler. - -2001-08-08 Damon Chaplin <damon@ximian.com> - - * gui/goto-dialog.glade: removed underlined accelerator key from - "_Go To Today" button. GnomeDialog doesn't actually support underlined - accelerator keys for buttons. We could hack it, like Glade does, if - we really need to. Fixes bug #6418. - -2001-08-08 Federico Mena Quintero <federico@ximian.com> - - * gui/e-day-view.c (update_query): Stop editing any event. Fixes - bug #5949. - -2001-08-08 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-page.c (alarm_page_fill_component): Duuuh, set - the alarm_copy on the component, not the original alarm. Fixes - bug #5214. - -2001-08-08 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (set_attendees): set the attendees of - a component - (meeting_page_fill_component): use above - (meeting_page_get_cancel_comp): return a comp with the attendees - to be cancelled - - * gui/dialogs/meeting-page.h: get a component that will be sent as - a cancellation - - * gui/dialogs/event-editor.c (event_editor_class_init): override - send_comp class method - (event_editor_send_comp): send cancellation notices to deleted - attendees - (refresh_meeting_cmd): save before send - (forward_cmd): ditto - - * gui/dialogs/comp-editor.c (comp_editor_class_init): set default - send_comp method - (real_send_comp): do the real work - (comp_editor_send_comp): call class method - (save_comp): don't do any sending - (save_comp_with_send): save and send here - (prompt_to_save_changes): use above - (save_close_cmd): ditto - - * gui/dialogs/comp-editor.h: add virtual function - -2001-08-08 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-week-view-event-item.c - (e_week_view_event_item_draw_icons): don't use a NULL mask in the - call to gdk_gc_set_clip_mask - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - ditto - - * gui/e-day-view-main-item.c - (e_day_view_main_item_draw_day_event): ditto - -2001-08-08 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit-config.h: fix pre-processor - macros - - * conduits/calendar/calendar-conduit.h: ditto - - * conduits/todo/todo-conduit-config.h: fix pre-processor macros - - * conduits/todo/todo-conduit.h: ditto - -2001-08-07 Federico Mena Quintero <federico@ximian.com> - - * cal-client/cal-listener.c (cal_listener_stop_notification): New - function to stop further notification from happening. - (impl_notifyCalOpened): Do not notify if requested. - (impl_notifyObjUpdated): Likewise. - (impl_notifyObjRemoved): Likewise. - (impl_notifyCategoriesChanged): Likewise. - (CalListenerPrivate): Do not keep a reference to the server-side - Cal. This would create a circular reference since the server - keeps a reference to the listener. - (cal_listener_destroy): Likewise. - (impl_notifyCalOpened): Likewise. - - * pcs/cal.c (cal_destroy): bonobo_object_release_unref() the listener. - - * cal-client/cal-client.c (cal_client_destroy): Ask the listener - to stop notifications. Also, do not unref it as the server does - that itself when we unref the Cal. - -2001-08-07 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-model.c (calendar_model_free_value): Only unref the - FIELD_COMPONENT if it is non-NULL. We return a NULL for that - field from ::initialize_value(), after all. Fixes bug #6098. - -2001-08-07 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): Make calendar.ics the - suggested name when attaching the ical object - -2001-08-06 Damon Chaplin <damon@ximian.com> - - * gui/e-week-view.h: - * gui/e-day-view.h: added 'different_timezone' fields to EDayViewEvent - and EWeekViewEvent, to note that the event is in a different timezone. - We now compute this once when we add the event to the array, rather - than each time we draw the event. If it is set, we will draw the - timezone icon next to the event. - - * gui/e-day-view-main-item.c: take transparency into account when - drawing the blue vertical bars to represent busy time. - - * gui/tag-calendar.c: take transparency into account when tagging - the mini calendar. - - * gui/e-calendar-table.c (e_calendar_table_init): removed the "None" - options for transparency and classification, since these properties - have defaults anyway, so we may as well use those to keep it simple. - Also use "Free" and "Busy" for transparency, rather than "Transparent" - and "Opaque". - - * gui/calendar-model.c: updated classification & transparency code - as above. - - * gui/e-calendar-table.etspec: changed "Transparency" to "Show Time As" - since people have a chance of understanding that. - - * gui/e-week-view.c: - * gui/e-day-view.c: - * gui/gnome-cal.c: added functions to get the visible time range. - - * gui/calendar-commands.c: finished stuff to set the folder bar - label to the dates currently displayed. - - * gui/control-factory.c (control_factory_new_control): connected - signal to update the folder title bar label when the dates shown - are changed. I had to connect it here since we need the BonoboControl - in the callback, and I don't know how to get the control from the - widget. - - * gui/tasks-control.c (tasks_control_activate): clear the folder bar - label. We could display something here at some point. - - * gui/dialogs/recurrence-page.glade: changed "_Add" to "A_dd", since - we have an "_Actions" menu. (These also use Alt+key, right?) - - * gui/dialogs/event-page.glade: - * gui/dialogs/event-page.c: added 'Show Time As' field, which is - really the TRANSP property but with a better name! - Also changed one of the "_Confidential" to "Con_fidential" since we - already have "_Contacts" using the same 'C' key. - - * pcs/cal-backend-file.c (cal_backend_file_get_free_busy): skip - events that are TRANSPARENT. Also added comment as this code looks - inefficient. - - * cal-util/cal-component.c: removed stuff for comparing timezones. - - * gui/comp-util.c (cal_comp_util_compare_event_timezones): moved the - above function here, and updated it to compare the UTC offsets of the - times as well as the TZIDs. - -2001-08-06 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: In process of fixing bug - #6005. The "Calendar" page is now "Display", and it has no - frames. The "Task list" page has colons between the labels and - the color pickers, and it has no frame. - -2001-08-06 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client.c (destroy_wombat_client): added check for - NULL pointers. Maybe fixes #5203 (I can't reproduce it, so I'm not - sure) - -2001-08-03 Federico Mena Quintero <federico@ximian.com> - - * cal-client/query-listener.c (query_listener_stop_notification): - New function; stops further notification from happening. This is - needed since the listener is destroyed asynchronously from the - Wombat and the corresponding CalQuery may already have died. - (impl_notifyObjUpdated): Do not notify if requested. - (impl_notifyObjRemoved): Likewise. - (impl_notifyQueryDone): Likewise. - (impl_notifyEvalError): Likewise. - - * cal-client/cal-query.c (cal_query_destroy): Use - query_listener_stop_notification(). - - * cal-client/cal-listener.c (cal_listener_destroy): Nullify the - pointers to the callback functions. - - * gui/e-day-view.c (update_query): Commit our state of no longer - having a query before unrefing it. We may reenter from the ORBit - main loop and we *really* want this information to be committed. - - * gui/e-week-view.c (update_query): Likewise. - - * gui/calendar-model.c (update_query): Likewise. - - * gui/tag-calendar.c (tag_calendar_by_comp): Added a "clear_first" - argument that indicates whether the ECalendar should be cleared of - any marks first. - - * gui/calendar-commands.c (calendar_control_activate): Removed - ifdefed-out view buttons code from the Gnomecal days. - - * gui/gnome-cal.c (client_categories_changed_cb): Merge the - categories of the calendar and tasks clients so that we can - display the categories in both sets. - (gnome_calendar_construct): Connect to "categories_changed" on - both clients. - (gnome_calendar_on_date_navigator_selection_changed): Removed call - to gnome_calendar_update_view_buttons(). - (gnome_calendar_update_view_buttons): Removed. We cannot have - this until Bonobo supports radio toolbar items. - (gnome_calendar_set_view_buttons): Removed. - (gnome_calendar_dayjump): Do not use priv->day_button. - (GnomeCalendarPrivate): Removed the {day,work_week,week,month}_button - fields. - (gnome_calendar_set_query): Start a retagging process of the date - navigator so that it reflects the current query. - (update_query): New function to restart a query for the date navigator. - (initial_load): Use update_query() instead of tagging the date - navigator directly. - (gnome_calendar_on_date_navigator_date_range_changed): Likewise. - (client_cal_opened_cb): Use update_query() instead of initial_load(). - (initial_load): Removed. - (client_obj_updated_cb): Removed. - (client_obj_removed_cb): Removed. - (gnome_calendar_new_appointment_for): Set the default category of - the new component. - (search_bar_category_changed_cb): Set the default category for the - calendar views. - - * gui/cal-search-bar.c (cal_search_bar_set_categories): Sort the - categories before creating the menu. - - * gui/e-day-view.c (adjust_query_sexp): Return NULL instead of - "#f" if the time range is not set yet. - (update_query): Do not start a query if the time range is not set. - (e_day_view_set_default_category): New function. - (e_day_view_key_press): Set the default category on the new - component. - - * gui/e-week-view.c (adjust_query_sexp): Analogous to the above. - (update_query): Analogous to the above. - (e_week_view_set_default_category): Analogous to the above. - (e_week_view_key_press): Analogous to the above. - -2001-08-03 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #1407. - - * gui/dialogs/cal-prefs-dialog.glade: Removed the alarm - preferences page, since we decided it was unnecessary. - -2001-08-03 Zbigniew Chyla <cyba@gnome.pl> - - I18n fixes. - - * gui/dialogs/event-page.c (summary_changed_cb): - Use e_dialog_editable_get instead of gtk_editable_get_chars (we need - UTF-8 string). - - * gui/itip-utils.c: - Added missing #include <config.h> - -2001-08-02 Jon Trowbridge <trow@ximian.com> - - * gui/Makefile.am: Added camel dependency (now needed by ebook). - -2001-08-01 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-model.c (calendar_model_value_is_empty): If the - default category is the same as the value passed in to this - function, return TRUE. This could be a hack or not, but it - prevents two items from being added to the table if a category is - selected. - - * gui/e-tasks.c (setup_widgets): Allow the search bar to shrink - horizontally. - - * gui/dialogs/task-page.c (clear_widgets): Pass valid values to - e_dialog_option_menu_set(); these need to come from the status map. - -2001-08-01 Damon Chaplin <damon@ximian.com> - - * cal-client/cal-client.c: removed debugging messages. - -2001-08-01 Federico Mena Quintero <federico@ximian.com> - - The calendar search bar widget now includes a drop-down menu of - available categories. - - * pcs/query.c (func_has_categories): Handle one and only one #f - value as meaning "unfiled", for components that have no categories - at all. - - * pcs/cal-backend-file.c (open_cal): Duh, do not notify here about - changed categories since at this point we don't have any clients - bound to us yet. - (create_cal): Likewise. - (cal_backend_file_add_cal): Notify here. - - * gui/cal-search-bar.h (CalSearchBarClass): New signal - "category_changed". - - * gui/cal-search-bar.c (cal_search_bar_construct): Add a drop-down - menu for the list of categories. - (search_option_items): Removed the "Has category" option, since we - now have the drop-down menu instad and it would be confusing to - have both options. - (regen_query): Likewise. Also, this function is now the old - cal_search_bar_query_changed() and is shared by that very function - and by the callback from the drop-down menu. - (notify_query_contains): Include the sub-sexp for the categories. - (cal_search_bar_set_categories): New function. - (cal_search_bar_get_category): New function. - (categories_selection_done_cb): Emit the "category_changed" signal. - - * gui/e-tasks.c (obj_updated_cb): Removed function since it did - not do anything; all updates are handled by the CalendarModel. - (obj_removed_cb): Likewise. - (ETasksPrivate): Removed the fields for the categories option - menu, since now it is in the ESearchBar. - (search_bar_sexp_changed_cb): Use calendar_model_set_query() - directly here, as we do not need to frob the sexp anymore. - (update_query): Removed. - (client_categories_changed_cb): New callback. - (search_bar_category_changed_cb): New callback. - (e_tasks_new_task): Set the default category on the component to - the one that is selected in the search bar. - (e_tasks_on_filter_selected): Removed. - (e_tasks_on_categories_changed): Removed. - (e_tasks_rebuild_categories_menu): Removed. - (e_tasks_add_menu_item): Removed. - (e_tasks_setup_view_menus): Sanitized not to sink objects wildly. - (e_tasks_discard_view_menus): New function. - - * gui/calendar-model.h (CalendarModelClass): Removed the - "categories_changed" signal since this is handled in the Wombat - now. - - * gui/calendar-model.c (calendar_model_get_categories): Removed. - (calendar_model_set_value_at): Do not collect the categories. - (query_obj_updated_cb): Likewise. - (calendar_model_collect_categories): Removed. - (calendar_model_set_default_category): Constify. - - * gui/tasks-control.c (tasks_control_deactivate): Call - e_tasks_discard_view_menus(). - - * gui/gnome-cal.c (search_bar_category_changed_cb): Set the - default category for the task pad's model. - -2001-07-31 Federico Mena Quintero <federico@ximian.com> - - The Wombat now keeps track of which categories are present in the - objects of a calendar. It will notify the clients of changes in - this set. This is to make the category drop-down menus in the - calendar/tasks views be always up to date. - - * idl/evolution-calendar.idl (Listener): Added a - notifyCategoriesChanged() method. The Wombat now keeps track of - the categories within a calendar. - - * cal-client/cal-listener.[ch]: Switched it to use BonoboXObject. - Also added the notifyCategoriesChanged implementation. - - * cal-client/cal-client.[ch]: Added a "categories_changed" signal. - - * pcs/cal-backend-file.c: Maintain a list of the live categories. - (update_categories_from_comp): New function to maintain the set of - live categories. - (add_component): Update the set of categories. - (remove_component): Likewise. - (open_cal): Notify about changes in the set of categories. - (create_cal): Likewise. - (cal_backend_file_update_objects): Likewise. - (cal_backend_file_remove_object): Likewise. - (notify_categories_changed): New function to notify the clients - about the current set of categories. - - * pcs/cal.c (cal_notify_categories_changed): New function. - -2001-07-31 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (selection_received): - * gui/e-week-view.c (selection_received): yes, set the end date, but - correctly calculated, not by using the component's duration, which - may not exist. Now really fixes #5836 - -2001-07-31 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (selection_received): - * gui/e-week-view.c (selection_received): don't set the end date - for the pasted components, since it will be recalculated when the start - date is set, thus keeping the same duration than the original - cut/copied component. Fixes #5836 - -2001-07-30 Damon Chaplin <damon@ximian.com> - - * gui/gnome-cal.c: - * gui/calendar-commands.c (clear_folder_bar_label): started some code - to show the currently displayed dates in the folder title bar. - Unfinished. - - * gui/e-itip-control.c (set_date_label): - * conduits/todo/todo-conduit.c (local_record_from_comp): - * conduits/calendar/calendar-conduit.c (local_record_from_comp): free - the CalComponentDateTimes. (Note the iTIP control needs updating for - timezone support.) - - * cal-util/cal-component.c: Changed CalComponentDateTime so that the - TZID is malloc'ed and freed rather than being a pointer to a static - string. This was causing problems as sometimes we were freeing the - string that was being pointed to, so we got corrupted TZIDs. - - * gui/comp-util.c (cal_comp_util_add_exdate): set TZID to NULL. - DATE values do not have timezones. - - * gui/e-week-view.c: - * gui/e-day-view.c: Moved 'Paste' after the New Appointment commands, - since I think they are more commonly-used. Also added underlined - accelerator keys. - - * gui/e-calendar-table.c: changed 'Edit this task' to 'Open' in the - popup menu to be consistent with other folders, and separated from the - clipboard commands. Also changed to use EPopupMenu so the accelerators - work, and the masks may be useful at some point. - - * gui/dialogs/recurrence-page.c: use DATE values for UNTIL, since - that makes it simpler. Fixes bug #5034. - - * gui/calendar-config.c (calendar_config_set_timezone): strdup the - location string. Fixes bug #4990. - - * gui/tag-calendar.c (tag_calendar_cb): take 1 off iend as the times - don't include the end time. - - * gui/e-week-view-layout.c (e_week_view_layout_event): fixed - days_shown. Fixes bug #5709. - - * cal-client/cal-client.c (cal_client_get_timezone): took out some - debugging messages. - -2001-07-30 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/cal-prefs-dialog.glade: added Help button. Though of - course it doesn't do anything yet. - -2001-07-30 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c: Mark strings for translation - -2001-07-30 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/client-test.c (cal_opened_cb): call - cal_client_get_free_busy for testing the new method - - * pcs/cal-backend-file.c (cal_backend_file_get_free_busy): implemented - -2001-07-28 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #5352. - - * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show): Added a - `page' argument so that we can select which page to show when - popping up the dialog. - (cal_prefs_dialog_construct): Added the `page' argument as well. - (cal_prefs_dialog_new): Likewise. - - * gui/calendar-commands.c (settings_cmd): Set the page to the main - calendar settings one. - - * gui/tasks-control.c (tasks_control_settings_cmd): Implemented - callback for the "Task Settings" command. - (verbs): Added the "TasksSettings" verb. - (pixmaps): Added an icon for the tasks settings command. - -2001-07-27 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - recur is always in UTC - -2001-07-27 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c: handle timezones - everywhere - (get_timezone): new function to get a timezone based - on a tzid - (get_default_timezone): get default timezone - - * conduits/calendar/calendar-conduit.h: time zone field for the - context - - * conduits/calendar/Makefile.am: link to bonobo conf - - * conduits/todo/todo-conduit.c: handle timezones - everywhere - (get_timezone): new function to get a timezone based - on a tzid - (get_default_timezone): get default timezone - - * conduits/todo/todo-conduit.h: time zone field for the - context - - * conduits/todo/Makefile.am: link to bonobo conf - -2001-07-27 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): - initialize to NULL some pointers - - * e-calendar-table.c (selection_received): deal correctly with - VCALENDAR objects - (e_calendar_table_copy_clipboard): g_strdup the value returned by - icalcomponent_get_as_ical_string - -2001-07-27 Federico Mena Quintero <federico@ximian.com> - - * gui/gnome-cal.c (gnome_calendar_set_query): Constify and set the - query sexp on the task pad's model as well. - -2001-07-27 Federico Mena Quintero <federico@ximian.com> - - * gui/cal-search-bar.[ch]: New files with a derivative of - ESearchBar that generates sexps for calendar queries directly. - - * gui/gnome-cal.c (setup_widgets): Use CalSearchBar instead of - ESearchBar. - - * gui/e-calendar-table.h (ECalendarTable): Removed the ->colors - array since it is handled by ETableExtras now. - - * gui/e-calendar-table.[ch]: Removed the subset_model. Now we use - the live query facility to filter tasks. Removed the filter - function stuff as well. - - * gui/e-tasks.c (e_tasks_construct): Use - calendar_model_set_cal_client() directly instead of - e_calendar_table_set_model(). - (setup_widgets): Create a calendar search bar for the tasks - component. - (search_bar_sexp_changed_cb): Set the query sexp on the table model. - (e_tasks_on_filter_selected): Regenerate the query from the - selected category and the current sexp. - (update_query): New convenience function to recompute the real - query sexp. - - * gui/gnome-cal.c (gnome_calendar_construct): Likewise. - - * gui/e-calendar-table.c (e_calendar_table_set_cal_client): - Removed function; people are now supposed to get the model from - the calendar table and operate on it. - - * gui/calendar-commands.c (verbs): Consistency fixes with the XML - file. - (pixmaps): Likewise. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - cal-search-bar.[ch] to the list of sources. - -2001-07-20 Federico Mena Quintero <federico@ximian.com> - - * idl/evolution-calendar.idl (CompEditorFactory): New interface to - a centralized factory for calendar component editors. Has - editExisting() and editNew() methods to edit an existing component - from a URI/UID pair, and to create a new component in a calendar - that is in a particular URI, respectively. - - * gui/comp-editor-factory.[ch]: Implementation files for the - component editor factory. - - * gui/GNOME_Evolution_Calendar.oaf.in: Added the CompEditorFactory - stuff. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - comp-editor-factory.[ch] to the list of sources. - -2001-07-26 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (invite_entry_changed): when an entry - has changed, iterate over the elements of the entry and add them - to the list if need be - (get_select_name_dialog): add a Chair Persons section - - * gui/itip-utils.c (itip_send_comp): send the empty string as - subject if there is no summary - -2001-07-26 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c (itip_send_comp): send the empty string as - subject if there is no summary - - * gui/dialogs/meeting-page.c (cleanup_attendees): free a list of - attendees - (meeting_page_fill_widgets): clean up attendee lists and fix typo - (find_match): add ability to return pos of match - (popup_delete_cb): if deletion happens, make sure to tidy up - delegation chain - - * gui/dialogs/e-delegate-dialog.c (e_delegate_dialog_construct): - use the destination rather than text property - (e_delegate_dialog_get_delegate): ditto - (e_delegate_dialog_new): take name/address pair for dialog default - - * gui/dialogs/e-delegate-dialog.h: update protos - - * gui/e-itip-control.c (clean_up): only unref the object if we - have one - - * gui/itip-control-factory.c (stream_read): make sure we null - terminate the final buffer - - * gui/itip-utils.c (itip_send_comp): strip the mailto: from the - organizer address if necessary - -2001-07-26 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/recurrence-page.c (exception_select_row_cb): check that - the row passed in is valid. Sometimes we get the "row-selected" - signal for row 0 when there are no rows in the list. Fixes bug #4266. - - * cal-client/cal-client.c (cal_client_get_object): prefetch all the - timezone data needed by the object, to try to avoid making Corba - calls all over the place. They can cause problems because they call - the GTK+ main loop recursively. This currently leads to an assertion - failure in the GnomeCanvas occasionally. - -2001-07-25 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (e_itip_control_set_data): gracefully - handle the lack of a method - -2001-07-25 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (selection_received_cb): check type of component - before actually pasting. - Deal with VCALENDAR components also (fixes bug #5140) - - * gui/e-week-view.c (selection_received_cb): ditto - - * cal-client/cal-client.c (cal_client_update_object): check the return - value from cal_component_get_as_string and don't call - GNOME_Evolution_Calendar_Cal_updateObjects if NULL - -2001-07-25 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (pixmaps): used the new print preview icon. - - * gui/print.c (range_selector_new): changed the 'Current day/week...' - strings to 'Selected day/week...' to make a little less confusing. - Fixes bug #5451. - -2001-07-25 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (is_duplicate): see if the address is - already in the list of attendees - (duplicate_error): throw up an error dialog - (popup_delegate_cb): if the attendee has already delegated, delete - the old delegatee - (value_at): cast to kill warnings - (append_row): don't add the new attendee if they are already in - the list - -2001-07-24 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/recurrence-page.c (get_exception_string): calculate - tmp_tm.tm_wday ourselves. strftime has a habit of crashing if you - have weird values here. I think this fixes bug #4574. - -2001-07-24 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (value_at): stip the delto and - delfrom - (popup_delegate_cb): show a delegate dialog and add the new - delegatee and update the delegator - (add_section): listen for changes in a more direct manner - (get_select_name_dialog): add_section now takes a limit argument - - * gui/dialogs/e-delegate-dialog.[hc]: New dialog to query the user - for a person to delegate to - - * gui/dialogs/Makefile.am: build/install new files - - * gui/Makefile.am: add ldadd line for ebook - -2001-07-21 Damon Chaplin <damon@ximian.com> - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): fixed - the test to see whether we should draw the icons. - -2001-07-22 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (get_local_file_name_for_folder_type): - New helper function. - (remove_folder): Add a @type arg and handle it, by deleting - "tasks.ics" instead of "calendar.ics" if the type is "tasks". If - the type is not "tasks" or "calendar", report an - `UNSUPPORTED_TYPE' error. - (xfer_folder): Likewise. - -2001-07-21 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c: Make folders of type "calendar" and - "tasks" user-creatable by setting `user_creatable' to %TRUE in the - `EvolutionShellComponentFolderType's. - -2001-07-19 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/event-editor.h (event_editor_update_widgets): - Removed unused prototype. - - * gui/dialogs/task-editor.h (task_editor_update_widgets): - Likewise. - -2001-07-19 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (clean_up): free various data related - settings - (destroy): use cleanup and unref the clients - (e_itip_control_set_data): clean up before setting the data and - store the timezones in a top level component - (update_item): use cal_client_update_objects and our top level - (including the timezones) - -2001-07-19 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/comp-editor.c (pixmaps): - * gui/calendar-commands.c (pixmaps): updated to use new print icon. - -2001-07-17 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/recurrence-page.c (init_widgets): don't show the time - in the EDateEdit widget for adding EXDATEs. - - * cal-util/cal-component.c (cal_component_alarm_set_trigger): don't - set t.time.is_date to -1. It is a boolean flag, 0 or 1. We probably - don't want a date value, so we leave it at 0. - -2001-07-18 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - do not discard drawing icon if mask is NULL - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - ditto - -2001-07-17 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (get_next): find the next displayable - component - (get_prev): find the previous displayable component - (e_itip_control_set_data): use above - (prev_clicked_cb): ditto - (next_clicked_cb): ditto - -2001-07-17 Federico Mena Quintero <federico@ximian.com> - - Really fixes #4380. The previous fix was necessary but not - sufficient; it worked for me because my system timezone happens to - match the Evolution timezone --- if they don't match, the bug - would persist. Not matching is *not* an error; it is just a - matter of Unix sucking a lot and XST not being finished :) - - * cal-util/timeutil.c (time_to_gdate_with_zone): New function. We - cannot use g_date_set_time() anymore because it does not take - timezones into account. - - * gui/gnome-cal.c (get_days_shown): Use the function above. - - * gui/e-day-view.c (e_day_view_find_work_week_start): Likewise. - - * gui/e-week-view.c (e_week_view_set_selected_time_range): Likewise. - -2001-07-17 Jon Trowbridge <trow@ximian.com> - - * gui/dialogs/meeting-page.c (invite_entry_changed): Print - a g_message when the list of invited people changes - in the SelectNames control. - (add_section): #if 0/#endif out some (broken?) code. - (get_select_name_dialog): Listen for changes in the - SelectNames control. - -2001-07-17 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/e-timezone-dialog.c (e_timezone_dialog_destroy): destroy - the dialog widget here. Fixes bug #4198. - -2001-07-16 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/task-page.c (task_page_fill_widgets): - * gui/dialogs/event-page.c (event_page_fill_widgets): try to use - builtin timezones before getting them from the server. When creating - new events/tasks the timezones may not be on the server. - - * gui/dialogs/event-page.c (event_page_fill_widgets): for all-day - events we subtract a day from the end date rather than add it. - - * gui/dialogs/e-timezone-dialog.c (on_map_leave): ignore the event - if it isn't a GDK_CROSSING_NORMAL event. For some reason we are getting - leave events when the button is pressed, which meant that selecting - timezones in the map didn't work. - - * gui/dialogs/comp-editor-util.c (comp_editor_dates): - * gui/print.c (print_date_label): only free icaltimetype if not NULL. - -2001-07-12 Taylor Hayward <taylorhayward@yahoo.com> - - * gui/goto-dialog.glade: - * gui/meeting-mockup.glade: - * gui/alarm-notifyålarm-notify.glade: - * gui/dialogs/alarm-page.glade: - * gui/dialogs/meeting-page.glade: - * gui/dialogs/recurrence-page.glade: Added missing underlined - shortcuts. - -2001-07-12 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-util.h: new proto - - * cal-util/cal-util.c (cal_util_new_top_level): standard place to - get your top level calendar component - - * pcs/cal-backend-file.c (create_cal): use it - - * gui/itip-utils.c (itip_send_comp): ditto - - * gui/e-calendar-table.c (e_calendar_table_copy_clipboard): ditto - -2001-07-12 JP Rosevear <jpr@ximian.com> - - * gui/e-calendar-table.c (e_calendar_table_copy_clipboard): fix - typo breaking compilation - - * gui/dialogs/meeting-page.c: fix include - - * gui/dialogs/Makefile.am: build select names idl here - - * gui/Makefile.am: remove select names compilation from here - -2001-07-12 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-details-page.c (task_details_page_set_dates): - guard against infinite loops with the updating boolean, fixes 4270 - -2001-07-12 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-calendar-table.c: added support for multiple selections in - cut/copy/paste. Also, it's now ready for the - s/update_object/update_objects change (I think) - -2001-07-11 Damon Chaplin <damon@ximian.com> - - * idl/evolution-calendar.idl: renamed updateObject to updateObjects - and removed the UID argument, since it can add/update multiple objects - at once. (It can't yet, but it will!) - - * pcs/cal.c: - * pcs/cal-backend.[hc]: - * pcs/cal-backend-file.c: renamed update_object to update_objects and - got rid of the UID arg. - - * cal-client/cal-client.c (cal_client_update_objects): new function to - add/update multiple objects in one go, i.e for iTIP and for importing - calendars. - - * gui/print.c (print_date_label): fixed type bug. - - * gui/e-week-view.[hc]: - * gui/e-week-view-event-item.c: draw the timezone icons if the event's - DTSTART or DTEND is in a different timezone to the current one. - Note that we may want to change this so it compares the UTC offsets - rather than the TZIDs, since currently it will draw the icons for all - events coming from iTIP requests from other clients. - -2001-07-11 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #4380 as well as some leftovers from the days of struct - tm and some uninitialized values. - - * gui/gnome-cal.c - (gnome_calendar_on_date_navigator_selection_changed): Initialize - the icaltimetype structures completely. - (gnome_calendar_init): Do not reset priv->zone to NULL here, since - it was set by gnome_calendar_update_config_settings() from - setup_widgets(). - - * gui/calendar-model.c (set_completed): Do not set is_daylight. - - * gui/e-day-view.c (e_day_view_convert_grid_position_to_time): - Likewise. - - * gui/e-week-view.c (e_week_view_set_timezone): Likewise. - - * cal-util/cal-recur.c (generate_instances_for_chunk): Likewise, - and initialize start_tt and end_tt completely. - - * cal-util/timeutil.c (time_year_begin_with_zone): Likewise. - (time_month_begin_with_zone): Likewise. - (time_week_begin_with_zone): Likewise. - (time_day_begin_with_zone): Likewise. - (time_day_end_with_zone): Likewise. - (time_from_isodate): Likewise. - - * gui/dialogs/task-page.c (task_page_fill_component): Initialize - icaltime before using it. - - * gui/dialogs/event-page.c (event_page_fill_component): Likewise. - - * gui/dialogs/recurrence-page.c (simple_recur_to_comp): Removed an - unused icaltimetype. - - * gui/dialogs/task-details-page.c - (task_details_page_fill_component): Initialize icaltime before - using it. - -2001-07-11 JP Rosevear <jpr@ximian.com> - - * gui/component-factory.c: fix the calendar not exiting with a - gross hack because i don't have time to fix the ref counting right - now - -2001-07-11 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c: be careful about adding and - stripping MAILTO:'s properly - - * gui/dialogs/meeting-page.etspec: add missing columns - - * gui/itip-utils.c (itip_strip_mailto): point to the real start of - the email address - - * gui/itip-utils.h: add proto - - * gui/itip-control-factory.c: get rid of the my address property - - * gui/e-itip-control.c: use the users real identity to figure out - which attendee they are - (find_my_address): figure out who the user is among the attendees - - * gui/e-itip-control.h: remove protos - - * gui/dialogs/Makefile.am: extra dist etspecs - - * gui/Makefile.am: ditto - -2001-07-11 Kjartan Maraas <kmaraas@gnome.org> - - * gui/e-calendar-table.c: Added a hack to get the last - string translated since xml-i18n-tools doesn't recognize - _click-to-add-message="Click here to add a task". - -2001-07-10 Peter Williams <peterw@ximian.com> - - * gui/Makefile.am (BUILT_SOURCES): Move this higher so that - Makefile properly depends on us. Fixes distcheck. - -2001-07-11 Jason Leach <jleach@ximian.com> - - [Fix bug #4389: ETableSpecification still in e-calendar-table.c - file] - - * gui/e-calendar-table.etspec: New file containing the spec that - was in e-calendar-table.c as a big string. - - * gui/e-calendar-table.c (e_calendar_table_init): Use the spec - file instead of a string. - (e_calendar_table_get_spec): Removed this function, we don't need - it anymore. - - * gui/e-tasks.c (e_tasks_setup_menus): Don't load from string, - from file instead. - - * gui/Makefile.am: Necessary changes to get the new .etspec file - installed. - -2001-07-10 Jason Leach <jleach@ximian.com> - - [Fix bug #4388: ETableSpecification still in meeting-page.c file] - - * gui/dialogs/meeting-page.etspec: New file containing the spec - that was previously in meeting-page.c as a string. - - * gui/dialogs/meeting-page.c: One line change to get it to use - this spec file instead of a string. - - * gui/dialogs/Makefile.am: Necessary changes to get the new - meeting-page.etspec installed. - -2001-07-10 Damon Chaplin <damon@ximian.com> - - * gui/calendar-model.c: - * gui/e-calendar-table.c: - * gui/e-day-view-main-item.c: - * gui/e-day-view-top-item.c: - * gui/e-day-view.[hc]: - * gui/e-week-view.c: - * gui/gnome-cal.c: - * gui/print.c: - * gui/dialogs/cal-prefs-dialog.c: - * gui/dialogs/comp-editor-util.c: - * gui/dialogs/event-page.c: - * pcs/cal-backend-file.c: - * pcs/query.c: - * cal-util/cal-component.[hc]: - * cal-util/cal-recur.c: - * cal-util/timeutil.[hc]: - * cal-client/cal-client.[hc]: more timezone updates. I'm pretty much - done with the calendar code now, except for alarms and conduits, - which Federico and JP know more about. And there are a couple of - other minor things to fix. But it is still pretty buggy. - -2001-07-10 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c: Add popup support so you can delete - users from the list - - * gui/dialogs/comp-editor.c (setup_widgets): fix typo - -2001-07-10 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-queue.c (alarm_trigger_cb): Handle the - different alarm actions. - (display_notification): Do the alarm notification dialog here. - - * gui/alarm-notify/alarm-notify-dialog.c (make_heading): Take in a - CalComponentVType, not a whole component. - (alarm_notify_dialog): Take in a CalComponentVType and the final - message instead of generating it ourselves. - -2001-07-09 Federico Mena Quintero <federico@ximian.com> - - * pcs/cal-backend-file.c (generate_alarms_for_comp): Pass the - parent vCalendar component as the timezone closure of - cal_recur_generate_instances(). - - * gui/dialogs/alarm-page.c (get_alarm_string): Make the string - consistent with the option menu text. - (get_alarm_string): Removed extra spaces from the last part of the - alarm string. - -2001-07-09 Federico Mena Quintero <federico@ximian.com> - - * gui/e-day-view.c (e_day_view_key_press): Use - e_utf8_from_gtk_event_key() so that we can input utf8 text - properly. - (e_day_view_cut_clipboard): Constify. - (e_day_view_on_cut): Constify. - (e_day_view_reshape_long_event): Remove unused variable. - - * gui/e-week-view.c (e_week_view_key_press): Use - e_utf8_from_gtk_event_key() so that we can input utf8 text - properly. - (e_week_view_cut_clipboard): Constify. - (e_week_view_on_cut): Constify. - - * cal-client/cal-client.c (cal_client_resolve_tzid_cb): Fix the - prototype so that this matches CalRecurResolveTimezoneFn. Also - renamed it so that it is clear that it is supposed to be a - callback. - -2001-07-06 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (init_widgets): connect to the entry - not the combo - - * gui/dialogs/event-editor.c (set_menu_sens): set menu - sensitivities based on whether or not the meeting page is shown - (event_editor_init): call above - (event_editor_edit_comp): ditto - (schedule_meeting_cmd): ditto - - * gui/dialogs/comp-editor.h: new proto - - * gui/dialogs/comp-editor.c (comp_editor_set_ui_prop): new - function to allow for set of ui props (esp. "sensitive") - -2001-07-06 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c (clear_widgets): actually clear some - widgets and hide/show widgets in the default setup - (meeting_page_destroy): destroy the address lists - (meeting_page_fill_widgets): allow the user to select among their - identities as a new organizer, or show the existing organizer as - label - (meeting_page_fill_component): set the "MAILTO:" bit of the - organizer to match spec, set CN properly if we know it - (get_widgets): load new widgets - (other_clicked_cb): handle "Other Organizer" click - (change_clicked_cb): handle "Change Organizer" click - (init_widgets): listen for clicks on new buttons - - * gui/dialogs/comp-editor.c (comp_editor_remove_page): remove the - page from our internal list and unref it - - * gui/itip-utils.c (itip_addresses_get): get the configure mail - identities - (itip_addresses_free): free a list of identities returned by - itip_addresses_get - - * gui/itip-utils.h: remove obsolete protos, and new protos - - * gui/gnome-cal.html: Remove ancient file - -2001-07-04 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #4018 and what would be the analogous bugs for the other - component editors. - - * gui/dialogs/comp-editor-page.h (CompEditorPageClass): New - virtual method "::focus_main_widget()". - - * gui/dialogs/comp-editor-page.c - (comp_editor_page_focus_main_widget): New function. - - * gui/dialogs/comp-editor.c (comp_editor_append_page): If we are - inserting the main page, ask it to focus its main widget. - - * gui/dialogs/alarm-page.c (alarm_page_focus_main_widget): - Implemented. - - * gui/dialogs/event-page.c (event_page_focus_main_widget): - Implemented. - #include "e-util/e-categories-config.h". - - * gui/dialogs/meeting-page.c (meeting_page_focus_main_widget): - Implemented. - - * gui/dialogs/recurrence-page.c - (recurrence_page_focus_main_widget): Implemented. - - * gui/dialogs/task-details-page.c - (task_details_page_focus_main_widget): Implemented. - - * gui/dialogs/task-page.c (task_page_focus_main_widget): - Implemented. - -2001-07-04 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-commands.c (clear_folder_bar_label): New function. - (calendar_control_activate): Clear the folder bar label; we really - don't have anything interesting to display. - -2001-07-03 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/meeting-page.c: Add new columns for information - specification - (meeting_page_destroy): save the table state - (build_etable): load new table state - - * gui/dialogs/task-editor.c (task_editor_destroy): unref pages - - * gui/dialogs/event-editor.c (event_editor_destroy): unref pages - - * gui/dialogs/comp-editor.c (setup_widgets): kill warning - (comp_editor_append_page): ref page passed in - (close_dialog): unref pages - -2001-07-03 Damon Chaplin <damon@ximian.com> - - * gui/e-day-view.c (query_obj_updated_cb): fix warning, and added - some debug messages. - - * gui/dialogs/comp-editor-util.c (write_label_piece): - * gui/e-day-view-top-item.c (e_day_view_top_item_draw): call mktime() - to set the weekday, though this is a temporary fix. - -2001-07-03 Damon Chaplin <damon@ximian.com> - - * pcs/cal-backend.[hc]: added virtual method to get a VTIMEZONE - component given a TZID. We need this to resolve TZIDs when expanding - an event using cal_recur_generate_instances() in query.c. - - * pcs/cal-backend-file.c (cal_backend_file_get_timezone): implemented - virtual method. - (cal_backend_file_update_object): fixed bug, kind -> child_kind. - - * pcs/query.c (func_occur_in_time_range): use the virtual method for - resolving TZIDs. The other way didn't work anyway, as we didn't have - the entire VCALENDAR with VTIMEZONEs in it. - - * gui/dialogs/recurrence-page.c (init_widgets): - (make_ending_until_special): moved the call to - e_date_edit_set_get_time_callback() from init_widgets to - make_ending_until_special(), since that is where the widget gets - created. - - * gui/e-timezone-entry.c (e_timezone_entry_set_timezone): handle zone - being NULL. - -2001-07-02 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/alarm-options.[ch]: New files with the alarm options - dialog; this configures the repeat/duration properties and the - options specific to each alarm action type. - - * gui/dialogs/alarm-page.c (AlarmPagePrivate): Added the alarm - options button. Also, keep an alarm structure which we are - editing and an alarm options dialog. - (init_widgets): Connect to the options button. - (add_clicked_cb): Clone the component we are editing instead of - creating a new one so that we preserve the data from the alarm - options dialog. - (button_options_clicked_cb): Pop up the alarm options dialog. - - * cal-util/cal-component.c (cal_component_alarm_new): Doh, - initialize the other fields in the new alarm. - -2001-07-03 Damon Chaplin <damon@ximian.com> - - * cal-client/cal-client.[hc] - * cal-util/cal-component.c - * cal-util/cal-recur.[hc] - * cal-util/test-recur.c - * cal-util/timeutil.c - * gui/calendar-config.c - * gui/calendar-model.[hc] - * gui/comp-util.[hc] - * gui/e-calendar-table.c - * gui/e-day-view-main-item.c - * gui/e-day-view-top-item.c - * gui/e-day-view.[hc] - * gui/e-itip-control.c - * gui/e-timezone-entry.[hc] - * gui/e-week-view.[hc] - * gui/gnome-cal.[hc] - * gui/goto.c - * gui/tag-calendar.[hc] - * gui/dialogs/cal-prefs-dialog.c - * gui/dialogs/comp-editor-page.[hc] - * gui/dialogs/comp-editor-util.[hc] - * gui/dialogs/comp-editor.c - * gui/dialogs/e-timezone-dialog.[hc] - * gui/dialogs/event-page.c - * gui/dialogs/meeting-page.c - * gui/dialogs/recurrence-page.c - * gui/dialogs/task-details-page.c - * gui/dialogs/task-details-page.glade - * gui/dialogs/task-page.c - * idl/evolution-calendar.idl - * pcs/cal-backend-file.c - * pcs/cal-backend.c - * pcs/cal-backend.h - * pcs/cal.c - * pcs/query.c: timezone changes everywhere. There's still quite a - few things to update, and its not working well at present. - -2001-07-02 JP Rosevear <jpr@ximian.com> - - * gui/calendar-commands.c (publish_freebusy_cmd): publish - free/busy information for the currently viewed time range - -2001-07-02 Christopher James Lahey <clahey@ximian.com> - - * gui/Makefile.am (INCLUDES): Added $(BONOBO_CONF_CFLAGS). - (evolution_calendar_LDADD): Added $(BONOBO_CONF_LIBS). - -2001-07-02 Federico Mena Quintero <federico@ximian.com> - - Support for ATTACH, DESCRIPTION properties in alarm components. - - * cal-util/cal-component.c (scan_alarm_property): Deal with - ATTACH, DESCRIPTION properties. - (cal_component_alarm_get_attach): New function. Libical is - actually bogus; supposedly icalattachtype structures are - refcounted but the property functions return them by value. - (cal_copmonent_alarm_set_attach): New function. - (cal_component_alarm_get_description): New function. - (cal_component_alarm_set_description): New function. - -2001-07-02 Federico Mena Quintero <federico@ximian.com> - - Support for repeat/duration properties in alarm components. - - * cal-util/cal-component.h (CalAlarmRepeat): New structure that - pairs the repeat/duration values of an alarm component, which must - be set both together or not set at all. - - * cal-util/cal-component.c (CalComponentAlarm): Added fields for - the repeat and duration properties. - (scan_alarm_property): Scan the DURATION and REPEAT properties. - (make_alarm): Nullify/initialize all the fields in the alarm. - (cal_component_alarm_get_repeat): New function. - (cal_component_alarm_set_repeat): New function. - - * gui/dialogs/alarm-page.glade: Changed the label of display - alarms from "Show a dialog" to "Display a message". - -2001-07-02 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-details-page.c - (task_details_page_fill_widgets): fill in delegated from field - -2001-07-02 Rodrigo Moya <rodrigo@ximian.com> - - * gui/dialogs/task-page.c (categories_clicked_cb): - * gui/dialogs/event-page.c (categories_clicked_cb): use the new - self-contained e_categories_config_open_dialog_for_entry() function - - * gui/e-week-view-event-item.c (e_week_view_item_draw_icons): - * gui/e-day-view-top-item.c (e_day_view_reshape_long_event): - (e_day_view_reshape_day_event): ditto - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - use e_categories_config_get_icon_for() to retrieve the icon - associated with each category - -2001-07-02 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (send_freebusy): implement - - * cal-util/cal-component.c (set_attendee_list): add the delto - property rather than the delfrom property twice - - * gui/dialogs/task-editor.c (task_editor_edit_comp): show - delegation info if appropriate - (delegate_task_cmd): delegate command - (cancel_task_cmd): cancel command - (refresh_task_cmd): refresh command - - * gui/dialogs/task-details-page.c: Load new widgets - (task_details_page_show_delegation): show/hide delegation info widgets - - * gui/dialogs/task-details-page.h: new proto - - * gui/dialogs/event-editor.c (event_editor_edit_comp): free - attendee list when finished - - * gui/dialogs/comp-editor.c (setup_widgets): explicitly show the - widgets, update pixmaps after the verbs have been added - (comp_editor_focus): don't do a show all - -2001-07-02 Federico Mena Quintero <federico@ximian.com> - - Fixes bug #1406. - - * gui/calendar-config.c (config_read): Handle the options for the - task list colors. - (calendar_config_write): Ditto. - (calendar_config_get_tasks_due_today_color): New function. - (calendar_config_set_tasks_due_today_color): New function. - (calendar_config_get_tasks_overdue_color): New function. - (calendar_config_set_tasks_overdue_color): New function. - (calendar_config_configure_e_calendar_table): Use - e_table_model_changed() for the colors. - - * gui/dialogs/cal-prefs-dialog.glade: Updated the options for the - task list and alarms. - - * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): - Update the task list settings. - (cal_prefs_dialog_update_config): Ditto. - - * gui/calendar-model.c (get_color): Deal with tasks for today as - well as overdue tasks. Make it cleaner, even though we have to - duplicate a chunk of is_overdue(). - - * gui/calendar-commands.c (preferences_cmd): Renamed from - properties_cmd(). - -2001-07-01 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view-main-item.c - (e_day_view_main_item_draw_day_event): draw icons per category - - * gui/e-day-view-top-item.c - (e_day_view_top_item_draw_long_event): draw icons per category - - * gui/e-day-view.c - (e_day_view_reshape_long_event): - (e_day_view_reshape_day_event): calculate space for category icons - - * gui/e-week-view-event-item.c - (e_week_view_event_item_draw_icons): draw icons per category - - * gui/e-week-view.c - (e_week_view_reshape_event_span): calculate space for category icons - -2001-07-01 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (e_day_view_*_clipboard): fixed clibpoard - command activation from the menu entries. CTRL-C and CTRL-X don't - work though, since it seems the key presses are being captured by - the text item - - gui/e-week-view.c (e_week_view_*_clipboard): ditto - -2001-06-30 Federico Mena Quintero <federico@ximian.com> - - * gui/e-week-view-event-item.c - (e_week_view_event_item_button_press): Only set the - pressed_event_num and pressed_span_num if button 1 was pressed. - Fix up return values a bit. This fixes bug #3780. - - * gui/gnome-cal.c - (gnome_calendar_on_date_navigator_selection_changed): Doh, the - call for the day view was supposed to be - gnome_calendar_set_view(), not set_view(). Fixes bug #3779. - -2001-06-30 Rodrigo Moya <rodrigo@ximian.com> - - * gui/tasks-control.c (tasks_control_cut_cmd): call - e_calendar_table_cut_clipboard with the correct object - - (tasks_control_copy_cmd): ditto - - (sensitize_commands): sensitize clipboard commands based on the - number of selected tasks - -2001-06-28 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-calendar-table.[ch] (e_calendar_table_cut_clipboard), - (e_calendar_table_copy_clipboard), - (e_calendar_table_paste_clipboard): new functions for allowing the - execution of clipboard-related commands - - * gui/tasks-control.c (tasks_control_cut_cmd), - (tasks_control_copy_cmd), (tasks_control_paste_cmd): added - callbacks for the new clipboard-related menu entries - -2001-06-28 Rodrigo Moya <rodrigo@ximian.com> - - * gui/component-factory.c: removed not-uses-anymore parameter in - call to evolution_shell_component_new - - * gui/gnome-cal.[ch] (gnome_calendar_cut_clipboard), - (gnome_calendar_copy_clipboard), (gnome_calendar_paste_clipboard): - new functions for allowing execution of clipboard-related commands - - * gui/e-day-view.[ch] (e_day_view_cut_clipboard), - (e_day_view_copy_clipboard), (e_day_view_paste_clipboard): ditto - - * gui/e-week-view.[ch] (e_week_view_cut_clipboard), - (e_week_view_copy_clipboard), (e_week_view_paste_clipboard): ditto - -2001-06-27 Rodrigo Moya <rodrigo@ximian.com> - - * gui/calendar-commands.c (cut_event_cmd), - (copy_event_cmd), (paste_event_cmd): added callbacks for the new - clipboard-related menu entries - -2001-06-27 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (factory_fn): Pass NULL as the - @external_uri_schemas argument to - `evolution_shell_component_new()'. - -2001-06-27 Peter Williams <peterw@ximian.com> - - * conduits/*/Makefile.am (INCLUDES): More srcdir != builddir - fixes. - -2001-06-27 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-calendar-table.c (selection_received): fixed - (e_calendar_table_on_copy): fixed - -2001-06-26 Federico Mena Quintero <federico@ximian.com> - - * idl/evolution-calendar.idl (CalAlarmInstance): Renamed the occur - field to occur_start; added an occur_end field. This way we can - present the complete times for the occurrence from the server. - - * cal-util/cal-component.h (CalAlarmInstance): Likewise. - - * pcs/cal-backend-file.c (add_alarm_occurrences_cb): Fill the new - fields appropriately. - (generate_absolute_triggers): Likewise; we use -1 in case the - component has no DTSTART or DTEND because there are no meaningful - occurrence dates here. - (fill_alarm_instances_seq): Fill in the new fields. - - * cal-client/cal-client.c (build_alarm_instance_list): Likewise. - - * gui/alarm-notify/alarm-notify-dialog.c (alarm_notify_dialog): - Take in both the occur_start and occur_end times. - - * gui/goto.c (goto_dialog): Free the dlg structure on the bail-out - cases. - - * gui/dialogs/event-page.c (get_widgets): Do not assert if we - cannot find the main widget; just return FALSE. - - * gui/dialogs/alarm-page.c (get_widgets): Likewise. - - * gui/dialogs/task-page.c (get_widgets): Likewise. - - * gui/dialogs/task-details-page.c (get_widgets): Likewise. - - * gui/dialogs/meeting-page.c (get_widgets): Likewise. - -2001-06-25 Peter Williams <peterw@ximian.com> - - * conduits/calendar/Makefile.am (INCLUDES): Fixes for - srcdir != builddir. Link to the static libwombat. - - * conduits/todo/Makefile.am (INCLUDES): Here too. - -2001-06-24 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/notify-main.c (main): Initialize libglade. - - * pcs/cal-backend-file.c (compute_alarm_range): - icaldurationtype_as_int() will now return a negative value if - dur->is_neg is true, so we need to flip the sign of some - operations here. - (add_alarm_occurrences_cb): Likewise. - - * pcs/cal-backend-db.c (compute_alarm_range): Likewise. - (add_alarm_occurrences_cb): Likewise. - -2001-06-24 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-notify.c: Converted to use BonoboXObject. - - * gui/gnome-cal.c (gnome_calendar_open): Ask the alarm - notification service to add the calendar and tasks URIs. - (add_alarms): New function. - - * gui/alarm-notify/notify-main.c (main): Doh, fixed typo in the - OAFIID. - (main): Initialize and shut down gnome-vfs. - - * gui/Makefile.am (IDLS): Added evolution-calendar.idl, sigh. - (evolution_calendar_SOURCES): Added the files generated from the IDL. - - * gui/alarm-notify/alarm-queue.c (alarm_trigger_cb): New function - used when an alarm is triggered. - - * gui/dialogs/Makefile.am: Removed the alarm-notify-dialog files; - they are now in gui/alarm-notify. - - * gui/alarm-notify/Makefile.am: Added the alarm-notify-dialog - files. - - * pcs/cal.c (cal_forget_password): This was incorrectly named - cal_client_forget_password(); renamed it. - - * gui/main.c (main): Initialize and shut down gnome-vfs. - -2001-06-23 Federico Mena Quintero <federico@ximian.com> - - * gui/e-calendar-table.c (task_compare_cb): New function to - compare tasks like the Pilot task list. - - * cal-util/cal-component.h (CalComponentField): Added a - semi-hackish CAL_COMPONENT_FIELD_COMPONENT. In the ETable model, - it is intended to return a pointer to the component itself. - - * gui/calendar-model.c (calendar_model_value_at): Return the - component itself for CAL_COMPONENT_FIELD_COMPONENT. Be more - paranoid about invalid columns. - (calendar_model_set_value_at): Be more paranoid about invalid - columns. - (calendar_model_duplicate_value): Ref the component field. - (calendar_model_initialize_value): Deal with the component field. - (calendar_model_value_is_empty): Likewise. - (calendar_model_value_to_string): Likewise. - -2001-06-22 Jeffrey Stedfast <fejj@ximian.com> - - * gui/Makefile.am: Added itip-control-factory.* to the build. - -2001-06-22 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal.[ch] (cal_get_password): new function for the backends to - be able to call the getPassword method on the associated - WombatClient - (cal_forget_password): ditto for the forgetPassword method - -2001-06-22 Rodrigo Moya <rodrigo@ximian.com> - - * idl/evolution-calendar.idl: changed getFreeBusy method to return - a CalObj instead of a sequence - - * cal-client/cal-client.[ch] (cal_client_get_free_busy): changed it to - work like the cal_client_get_object function, that is, it does not - return anymore a list of UIDs, but a CalClientGetStatus code, and - added a new parameter for the caller to get the component back when - this function returns - (cal_client_open): aggregate WombatClient interface to the CalListener - being used - - * pcs/cal-backend-db.c, pcs/cal-backend-file.c (..get_free_busy): set - return value to "char *" as it will be returning a FreeBusy object, - and not a list of UIDs - - * pcs/cal-backend.[ch] (cal_backend_get_free_busy): ditto - - * pcs/cal.c (cal_construct): queryInterface on the listener to obtain - the WombatClient interface - -2001-06-21 JP Rosevear <jpr@ximian.com> - - * gui/main.c (main): update to new call - - * gui/e-itip-control.[hc]: break the widget bits out on their own - into a proper object, basic stuff seems to be working again - - * gui/itip-control-factory.c: put the control specific bits here - from e-itip-control.c - - * gui/itip-control-factory.h: new header - -2001-06-21 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/Makefile.am (gladedir): add include path - - * gui/dialogs/comp-editor.c (setup_widgets): remove buttons and - use evolution's standard ui config - - * gui/print.c (print_comp_item): print description text - -2001-06-21 Rodrigo Moya <rodrigo@ximian.com> - - * cal-client/cal-client.[ch]: - (cal_client_init): create a WombatClient when creating a CalClient - object, so that we can receive authentication notifications from - the wombat - (cal_client_destroy): destroy the WombatClient object when dying - (cal_client_set_auth_func): new function to set the authentication - function to be called when a password is required by the calendar - server (through the WombatClient object) - (cal_client_get_free_busy): new function for calling the new IDL - method Cal::getFreeBusy - - * gui/alarm-notify/Makefile.am: add libwombat to LDADD - - * gui/Makefile.am: add libwombat to LDADD - -2001-06-20 Dave Camp <dave@ximian.com> - - * gui/itip-utils.c (itip_send_comp): Changed attach_data - to be a GNOME_Evolution_Composer_AttachmentData rather than a - CORBA_char*. - -2001-06-20 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor.c (print_cmd): print menu command - (print_preview_cmd): ditto for print preview - (print_setup_cmd): ditto for print setup - (comp_editor_set_cal_client): listen for updated and removed - signals - (obj_updated_cb): if the item changes else where, query the user - for the course of action - (obj_removed_cb): ditto for removal - - * gui/print.c (print_setup): rudimentary page setup support - (print_comp): rudimentary individual event/task printing support - - * gui/print.h: new protos - - * gui/dialogs/changed-comp.[hc]: dialog to query the user about - what to do when a item is changed elsewhere - - * gui/dialogs/Makefile.am: build new files - - * gui/dialogs/send-comp.c (send_component_dialog): remove useless - assignment - -2001-06-20 Rodrigo Moya <rodrigo@ximian.com> - - * idl/evolution-calendar.idl: added getFreeBusy method - - * pcs/cal.c (impl_Cal_get_free_busy): implementation of the new - getFreeBusy added method - - * pcs/cal-backend.[ch]: added new virtual method to the CalBackend - class (get_free_busy) - - * pcs/cal-backend-db.c (cal_backend_db_get_free_busy): new function, - not implemented yet - - * pcs/cal-backend-file.c (cal_backend_file_get_free_busy): new funtion, - not implemented yet - -2001-06-20 Damon Chaplin <damon@ximian.com> - - * gui/calendar-config.[hc]: - * gui/gnome-cal.[hc]: - * gui/tasks-control.c (tasks_control_activate): - * gui/calendar-commands.c (calendar_control_activate): moved the - function to check for a default timezone to calendar-config.c, and - also used it in the tasks control. - - * gui/dialogs/e-timezone-dialog.h: #include <gtk/gtkwidget.h> fix. - -2001-06-20 Damon Chaplin <damon@ximian.com> - - * gui/calendar-commands.c (calendar_control_activate): - * gui/gnome-cal.[hc]: added code to show the timezone dialog if the - user hasn't set a default timezone yet. - - * gui/dialogs/e-timezone-dialog.c (e_timezone_dialog_add_timezones): - set the "None" item string before adding it to the combo, to stop the - combo putting "None" in the entry initially. - -2001-06-19 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-calendar-table.[ch]: added cut/copy/paste support. It works - with single selections (a single component selected) and with - multiple ones (several components selected) - -2001-06-19 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/event-page.c: if the timezones of the start and end of - the event are the same, then if the start timezone is changed we - change the end timezone as well, since that is what most users will - want. - -2001-06-19 Damon Chaplin <damon@ximian.com> - - * pcs/cal.c: - * idl/evolution-calendar.idl: - * cal-client/cal-client.[hc]: removed stuff to get builtin timezone - info from the server. - -2001-06-19 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/cal-prefs-dialog.c: added a 'Time zone' setting. Also - rearranged a little, adding a new 'General' page, since we had too - many settings on the 'Calendar' page. - - * gui/e-timezone-entry.[hc]: - * gui/dialogs/e-timezone-dialog.[hc]: - * gui/dialogs/comp-editor.c: - * gui/dialogs/comp-editor-page.[hc]: - * gui/dialogs/event-page.c: - * gui/dialogs/task-details-page.c: - * gui/dialogs/task-page.c: removed CalClient stuff. The timezone dialog - now uses the timezone data directly from the client's libical library. - -2001-06-19 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-editor.c (task_editor_init): add ui - (forward_cmd): implement forward command - - * gui/dialogs/comp-editor.c (save_as_ok): bug fix, seems to work - now - -2001-06-19 JP Rosevear <jpr@ximian.com> - - * gui/control-factory.c (control_factory_init): add auto exit unref - - * gui/component-factory.c (destroy_cb): destroy our selves if we - have no more shells - (component_factory_init): add auto exit unref - -2001-06-19 JP Rosevear <jpr@ximian.com> - - * gui/Makefile.am: don't compile or install the old meeting edit - stuff - - * gui/e-week-view.c: ditto - - * gui/e-day-view.c: Remove scheduling menu option - -2001-06-19 JP Rosevear <jpr@ximian.com> - - * gui/itip-utils.c: add some needed commas - (itip_send_comp): if publishing, don't set the to list and show - the message. unless publishing, just send the email - - * gui/Makefile.am: remove typo - -2001-06-19 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/send-comp.c: itip/imip send dialog - - * gui/dialogs/send-comp.h: new proto - - * gui/dialogs/recurrence-page.c (recurrence_page_set_dates): only - use the weekday picker if visible - - * gui/dialogs/meeting-page.c: just show the meeting list - - * gui/dialogs/event-editor.c (event_editor_edit_comp): remove the - meeting page if no attendees - (schedule_meeting_cmd): schedule a meeting menu item - (refresh_meeting_cmd): refresh meeting request menu item - (cancel_meeting_cmd): ditto for cancel - (forward_cmd): send as attachment - - * gui/dialogs/comp-editor.c (comp_editor_remove_page): remove page - from dialog - (comp_editor_show_page): show a given page - (comp_editor_get_current_comp): return a cal component - representing the current widget state - (comp_editor_save_comp): save the cal component - (comp_editor_delete_comp): delete the cal component - (comp_editor_send_comp): send the cal component - (comp_editor_merge_ui): merge xml in to the bonobo gui - (setup_widgets): use a bonobo window instead of a gtk window, add menus again - (save_as_cmd): save to file on disk - still broken - (save_close_cmd): close menu command - (save_close_cmd): save and close menu command - - * gui/dialogs/comp-editor.h: new protos - - * gui/dialogs/cancel-comp.c (cancel_component_dialog): itip/imip - cancellation dialog - - * gui/dialogs/cancel-comp.h: new proto - - * gui/dialogs/Makefile.am: build new files - - * gui/dialogs/comp-editor-page.c - (comp_editor_page_notify_needs_send): emit needs_send signal - - * gui/dialogs/comp-editor-page.h: new signal protos - - * gui/itip-utils.c (itip_send_comp): new function to send cal - components - - * gui/itip-utils.h: new proto - - * gui/e-itip-control.c (pstream_load): trim using cal-component - wrapper stuff - (accept_button_clicked_cb): use itip_send_comp - (tentative_button_clicked_cb): ditto - (decline_button_clicked_cb): ditto - - * gui/Makefile.am: compile select name idl stuff - - * cal-util/cal-component.c (cal_component_get_organizer): get the organizer - (cal_component_set_organizer): set the organizer - (cal_component_get_recurid): get the recurrence id - (cal_component_set_recurid): set the recurrence id - (set_attendee_list): actually set the attendee list - (get_attendee_list): build the attendee list - - * cal-util/cal-component.h: new protos - -2001-06-19 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/task-details-page.glade: - * gui/dialogs/task-page.glade: - * gui/dialogs/event-page.glade: added timezone fields. Also moved the - 'All Day' flag into an alignment so it doesn't mess up the height of - the other widgets. - - * gui/dialogs/task-details-page.c: - * gui/dialogs/task-page.c: - * gui/dialogs/event-page.c: added code to handle the timezone fields. - This still needs to be hooked up when the libical code is finished. - - * gui/dialogs/e-timezone-dialog.c (on_map_leave): new function to - clear the preview label and turn off the highlighted point on the - map when you move the mouse outside it. - (find_selected_point): new function to try to find the point - corresponding to the text in the combo. - (on_combo_changed): call the above function to update the selected - point. - (on_map_leave): turn off the preview point & label when the mouse - leaves the map. - (e_timezone_dialog_set_cal_client): changed it so that selecting "None" - clears the entry. - - * gui/dialogs/comp-editor-page.[hc]: added set_cal_client() virtual - method since some pages need to access the CalClient to get timezone - information. Also added comp_editor_page_set_cal_client() to call - the virtual method. - - * gui/dialogs/comp-editor.c (comp_editor_set_cal_client): called - comp_editor_page_set_cal_client() on each page. - - * gui/calendar-config.c: added functions to get & set the timezone. - -2001-06-18 Eskil Heyn Olsen <eskil@eskil.dk> - - * conduits/calendar/calendar-conduit.c: (comp_from_remote_record), - (check_for_slow_setting), (conduit_get_gpilot_conduit): - * conduits/todo/todo-conduit.c: (check_for_slow_setting), - (conduit_get_gpilot_conduit): - Tweaked for some gnome-pilot api changes - -2001-06-15 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-view.[ch]: New files with the generic calendar view - object. It sucks that we have to implement at least two classes - to define a GalView and its factory. - - * gui/calendar-view-factory.[ch]: New files; factory for calendar - views. - - * gui/gnome-cal.h (GnomeCalendarViewType): Moved from gnome-cal.c - and renamed from ViewType. We no longer use strings to identify - the view types. - - * gui/gnome-cal.c (gnome_calendar_get_view_type): New function. - (set_view): Renamed from gnome_calendar_set_view_internal(). - (gnome_calendar_set_query): Made public; renamed from set_query(). - (gnome_calendar_setup_view_menus): New function to set up the view - collection and the GalViewMenus. - (gnome_calendar_discard_view_menus): New function to discard them. - - * gui/calendar-commands.c (calendar_control_activate): Set up the - GalView menus. - (calendar_control_deactivate): Discard the GalView menus. - - * gui/e-day-view.c: #include <gtk/gtkinvisible.h> - - * gui/dialogs/comp-editor.c (comp_editor_get_type): The type info - structure should be static. - -2001-06-15 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (selection_received): generate a new UID - when pasting - - * gui/e-week-view.c (selection_received): ditto - -2001-06-15 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.c (selection_received): finished implementation - of Paste stuff - - * gui/e-week-view.c (selection_received): ditto - -2001-06-14 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.[ch]: added popup menu items for cut/copy/paste - - * gui/e-week-view.[ch]: ditto - -2001-06-14 Damon Chaplin <damon@ximian.com> - - * gui/e-timezone-entry.[hc]: new widget to enter a timezone. - - * gui/Makefile.am (evolution_calendar_SOURCES): added the above. - * gui/Makefile.am (evolution_calendar_LDADD): had to move - libcal-dialogs.a above libmiscwidgets.a to get it to compile. - -2001-06-14 Damon Chaplin <damon@ximian.com> - - * gui/dialogs/e-timezone-dialog.[hc]: - * gui/dialogs/e-timezone-dialog.glade: new dialog for setting the - time zone. - - * gui/dialogs/Makefile.am: added timezone dialog files. - - * idl/evolution-calendar.idl: added CalTimezoneInfo struct and seq, - and getBuiltinTimezoneInfo method. - - * pcs/cal.c (impl_Cal_get_builtin_timezone_info): implemented method. - (cal_class_init): added method to epv. - - * cal-client/cal-client.c (struct CalClientPrivate): added - timezone_info array to contain cached info on builtin timezone city - names and coordinates. - (cal_client_get_builtin_timezone_info): new function to get the info - about builtin timezones. - - * cal-client/cal-client.h: added CalTimezoneInfo struct, to contain - the city names and coords of the builtin timezones. - -2001-06-13 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor-util.c (comp_editor_date_label): remove - unnecessary space - - * gui/dialogs/task-page.c (task_page_set_summary): indicate we are - updating, Fixes #3307 - -2001-06-13 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-details-page.c (task_details_page_set_dates): - set the completed time in the date editor if appropriate - - * gui/dialogs/task-page.c (task_page_set_dates): if we are - updating, return - (complete_date_changed): don't returns if we are updating - the - guards are done in the calling function - (status_changed): indicate when we are updating and when we are - finished, round the completion time to the nearest minute - (percent_complete_changed): indicate when are updating and when we - are finished - (percent_complete_changed): notify of the date change after the - option menu is updated - -2001-06-11 Rodrigo Moya <rodrigo@ximian.com> - - * gui/e-day-view.[ch]: added cut&paste support, by using a GtkInvisible - widget to manage the clipboard selections. - - * gui/e-week-view.[ch]: ditto - -2001-06-08 Iain Holmes <iain@ximian.com> - - * gui/component-factory.c: Removed the executive-summary includes. - (component_factory_init): Don't init the summary factory. - - * gui/calendar-summary.[ch]: Removed. - - * gui/Makefile.am: Remove executive-summary stuff, move some libs - around a bit. - -2001-06-04 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/recurrence-page.c (recurrence_page_set_dates): - update the blocked/selected days if the starting day of the - appointment changes, fixes #2188 - - * gui/dialogs/task-details-page.h: tidy proto - -2001-06-03 Ettore Perazzoli <ettore@ximian.com> - - * gui/e-itip-control.c: #include <bonobo/bonobo-context.h> instead - of <bonobo/bonobo-running-context.h>. - * gui/tasks-control-factory.c: Likewise. - - * gui/Makefile.am (evolution_calendar_LDADD): Move `$(DB3_LDADD)' - before libeutil. - -2001-06-01 JP Rosevear <jpr@ximian.com> - - * gui/Makefile.am: no longer build widget-util.*, the code has - been moved - -2001-06-01 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/event-page.c (make_date_edit): use new func - - * gui/dialogs/task-details-page.c - (task_details_page_create_date_edit): ditto - - * gui/dialogs/recurrence-page.c (make_ending_until_special): ditto - - * gui/dialogs/comp-editor-util.c (comp_editor_new_date_edit): - rename date_edit_new function - - * gui/dialogs/comp-editor-util.h: new proto - - * gui/dialogs/task-page.c (task_page_set_summary): no longer any - need to block/unblock the handler - (task_page_create_date_edit): use new func - -2001-06-01 JP Rosevear <jpr@ximian.com> - - * gui/.cvsignore: Update - - * gui/evolution-calendar-control.c: Remove dead file - - * gui/*.vcf: Remove dead files - -2001-06-01 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/comp-editor-page.[hc]: renamed from editor-page for - consistency, more complete implementation - - * gui/dialogs/comp-editor.[hc]: More complete implementation - - * gui/dialogs/*-page.*: The various pages needed to construct the - event and task dialogs - - * gui/dialogs/comp-editor-util.[hc]: useful utility functions for the - component editor pages to use - - * gui/dialogs/Makefile.am: Build and install new files - - * gui/event-editor*: Remove, obsoleted by the new comp-editor - stuff - - * gui/dialogs/task-editor-dialog.glade: ditto - - * gui/e-calendar-table.c (open_task): update to use comp editor - stuff - - * gui/e-tasks.c (e_tasks_new_task): ditto - - * gui/gnome-cal.c (gnome_calendar_edit_object): ditto - - * gui/Makefile.am: don't build non-existent files nor try to - install them - -2001-06-01 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (e_itip_control_factory_init): ditto - - * gui/tasks-control-factory.c (tasks_control_factory_init): - auto_exit_unref the factory - -2001-06-01 Ettore Perazzoli <ettore@ximian.com> - - * gui/Makefile.am (evolution_calendar_LDADD): Add `$(DB3_LDADD)'. - -2001-05-29 Federico Mena Quintero <federico@ximian.com> - - * gui/e-tasks.c (e_tasks_get_calendar_table): New function. - - * gui/tasks-control.c (tasks_control_activate): Connect to the - "selection_changed" signal of the tasks widget here, not in - tasks_control_new(). Also, update the sensitivity of the commands - here for the first time. - (tasks_control_deactivate): Disconnect from the signal here since - it only makes sense to monitor selection changes while the control - is active. - (selection_changed_cb): Removed hack that tested the presence of - the remote UI container. - (sensitize_commands): New function. - -2001-05-28 Damon Chaplin <damon@ximian.com> - - * gui/e-week-view-layout.[hc]: - * gui/e-day-view-layout.[hc]: new files to contain layout code split - off from EDayView an EWeekView, so we can use it for printing. - - * gui/print.c: rewritten to use the same layout code as the EDayView - and EWeekView widgets. - - * gui/gnome-cal.c (gnome_calendar_get_task_pad_cal_client): added - function so we can get the CalClient used for the TaskPad for printing. - - * gui/Makefile.am (evolution_calendar_SOURCES): added - e-day-view-layout.[hc] amd e-week-view-layout.[hc]. - - * cal-util/timeutil.c (time_week_begin): - (time_week_end): added week_start_day argument. - - * cal-util/cal-recur.c: added comments describing problems in it. - -2001-05-27 Rodrigo Moya <rodrigo@ximian.com> - - * gui/component-factory.c (remove_folder): implemented the - 'remove_folder' function for the calendar shell component - (xfer_folder): ditto for 'xfer_folder' - -2001-05-27 Dan Winship <danw@ximian.com> - - * gui/calendar-commands.c: #include - "evolution-shell-component-utils.h" rather than "e-gui-utils.h" - for e_pixmaps_update. - - * gui/tasks-control.c: Likewise. - -2001-05-25 Peter Williams <peterw@ximian.com> - - * gui/Makefile.am: Reference libeshell.la instead of libeshell.a. - -2001-05-23 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/recurrence-page.c: Finished porting from the old - event-editor.c. Made it store a clone of the component for when - we need to expand the recurrence set. - - * gui/dialogs/event-page.c (event_page_get_dates): New function. - - * gui/dialogs/editor-page.c (editor_page_set_dates): Renamed from - editor_page_set_dtstart(); now sets both DTSTART and DTEND. - - * gui/dialogs/alarm-page.c (alarm_page_set_dates): Ahem, it is a - label, not an entry. - -2001-05-21 Federico Mena Quintero <federico@ximian.com> - - Fix bug #2831; the tasks toolbar and menu now have a button to - delete the selected tasks. - - * gui/e-calendar-table.c (e_calendar_table_delete_selected): New - function. - (delete_cb): Use e_calendar_table_delete_selected(). - (e_calendar_table_get_table): New function. - - * gui/tasks-control.c (tasks_control_new_task_cmd): Handle the - delete command. - (selection_changed_cb): Change the sensitivity of the TasksDelete - command when the selection in the table changes. - - * gui/e-tasks.c (table_selection_change_cb): Notify upstream when - the ETable selection changes. - -2001-05-18 Federico Mena Quintero <federico@ximian.com> - - Fix bug #2829. - - * gui/dialogs/delete-comp.c (delete_component_dialog): Allow the - caller to specify whether just one or many components are to be - deleted. - - * gui/e-calendar-table.c (tasks_popup_one): Popup menu definition - for when one and only one task is selected. - (tasks_popup_many): Likewise, for more than one task. - (e_calendar_table_on_right_click): Do not create a structure for - the closure data; we can simply pass the cal_table. Use a - different menu depending on the number of selected tasks. - (mark_as_complete_cb): Renamed; now iterates over the selected - rows. - (delete_selected_components): New function to delete all the - selected components. - (delete_cb): Adjusted for delete_component_dialog(). - (open_task): New function, simply open a CalComponent in the task - editor. - (open_task_by_row): Renamed; use open_task(). - - * gui/e-week-view.c (e_week_view_on_delete_appointment): Updated - for delete_component_dialog(). - - * gui/e-day-view.c (e_day_view_on_delete_appointment): Likewise. - -2001-05-16 Duncan Mak <duncan@ximian.com> - - * gui/Makefile.am (evolution_calendar_SOURCES): removed - editor-page.[ch] because they've now moved dialogs. - -2001-05-16 Federico Mena Quintero <federico@ximian.com> - - Split the event and task editors into different objects for the - separate pages; this way they can be shared by both editors. - - * gui/dialogs/editor-page.[ch]: New abstract class for a page in a - calendar component editor. - - * gui/dialogs/event-page.[ch]: Main page of an event editor. - - * gui/dialogs/alarm-page.[ch]: Alarm page of a calendar component - editor. - - * gui/dialogs/recurrence-page.[ch]: Recurrence page of a calendar - component editor. - - * gui/dialogs/event-page.c (event_page_fill_widgets): Eeek, this - was missing a bunch of break statements. - (event_page_fill_component): Use a temporary variable rather than - allocating a struct icaltimetype. - - * gui/dialogs/alarm-page.c (get_alarm_string): Do not use - fixed-size buffers. - (alarm_page_fill_widgets): Use cal_obj_uid_list_free(). - (append_reminder): Now the list stores the plain CalComponentAlarm - structures in the row data. We do *NOT* want to be frobbing the - component's data directly. Rather, we clone the alarms from the - component and maintain them on our own. - (alarm_page_fill_component): Clone the alarms before adding them - to the component so that we maintain the invariant that the alarm - structures in the list did *not* come from the component. - - * cal-util/cal-component.c (cal_component_add_alarm): Added - documentation. - (cal_component_remove_alarm): Added documentation. - (cal_component_remove_alarm): Do a lookup in our hash table of - alarms instead of scanning the whole component. - (CalComponentAlarm): Removed the `parent' field, since it was - unused. - (cal_component_free_alarm_uids): Removed function, since - cal_component_get_alarm_uids() is documented so that the user will - know that he must use cal_obj_uid_list_free(). - (cal_component_alarm_clone): New function. - -2001-05-09 Federico Mena Quintero <federico@ximian.com> - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - editor-page.[ch] to the list of sources. - -2001-05-09 JP Rosevear <jpr@ximian.com> - - * gui/event-editor.c (reminder_add_cb): switch on the correct - widget and map - -2001-05-08 JP Rosevear <jpr@ximian.com> - - * gui/e-itip-control.c (e_itip_control_factory): unref the - property bag when we finish with it - - * gui/evolution-calendar-control.c (calendar_properties_init): ditto - - * gui/control-factory.c (calendar_properties_init): ditto - - * gui/calendar-summary.c (create_summary_view): ditto - -2001-05-08 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (cal_component_alarm_free): - (cal_component_alarm_free): free the alarm component if it doesn't - have a parent, rather than if it does - - * gui/Makefile.am: sanitize LD_ADDS and CFLAGS so the libtool - lines are shorter (fixes problem on solaries due to sed) - -2001-05-07 JP Rosevear <jpr@ximian.com> - - * pcs/cal-factory.[hc]: Convert to bonobo xobject - - * pcs/cal.[hc]: Convert to bonobo xobject - -2001-05-07 Gediminas Paulauskas <menesis@delfi.lt> - - * gui/event-editor.c (make_title_from_comp): conversion summary - from utf8 here, use translated strings as is. - (set_title_from_comp): reflect this, simplify. - - * gui/dialogs/task-editor.c: updated copies of above functions here. - - * gui/gnome-cal.c: use defines from widgets/misc/e-filter-bar.h for - consistency in "Show all". - -2001-05-04 JP Rosevear <jpr@ximian.com> - - * gui/calendar-model.c (calendar_model_append_row): unref the - calcomponent when we're done with it - - * cal-util/cal-component.c (cal_component_gen_uid): free the iso - date string when we finish with it - -2001-04-27 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-edit.c (put_property_in_list): remove hardcoded - values - (edit_attendee): ditto, and there are only 4 roles now - - * gui/e-meeting-dialog.glade: tweak - - * gui/itip-utils.c: There shouldn't be an "other" role - -2001-04-26 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-edit.c (edit_attendee): use enums not hard code - values - -2001-04-26 JP Rosevear <jpr@ximian.com> - - * gui/e-meeting-edit.c (add_button_clicked_cb): - icalparameter_new_rsvp now takes an enum - -2001-04-26 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (cal_component_alarm_set_trigger): the - value type should be inited with ICAL_VALUE_* rather than - ICAL_*_VALUE because it is a param argument. - -2001-04-26 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-model.c (get_is_overdue): Replace "<" by "<=" in - the comparison for due dates against the current time. This makes - tasks appear immediately as red when you click Now in the due date - popup field. - - This is not a complete solution to the more general problem of - tasks staying the same color even if they become overdue while the - task list remains the same on the screen. This has been logged as - bug #2399. - -2001-04-26 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/Makefile.am (INCLUDES): Add `$(EXTRA_GNOME_CFLAGS)'. - -2001-04-26 Dan Winship <danw@ximian.com> - - * conduits/todo/Makefile.am (libetodo_conduit_la_LIBADD): Remove - UNICODE_LIBS - - * cal-client/Makefile.am (client_test_LDADD): Remove -lunicode - -2001-04-24 Duncan Mak <duncan@ximian.com> - - * gui/alarm-notify/notify-main.c (funny_trigger_cb): Fixed - Strftime so it uses the locale prefered way to display date/time. - ("%x %X" instead of "%Y/%m/%d %H:%M:%S") - -2001-04-21 Gediminas Paulauskas <menesis@delfi.lt> - - * gui/calendar-summary.c: translate "Things to do" etc. and convert them - to utf8. Changed some link from helixcode to ximian. - -2001-04-18 Ettore Perazzoli <ettore@ximian.com> - - * gui/dialogs/Makefile.am (INCLUDES): Add - `-I$(top_srcdir)/calendar/cal-client', - `-I$(top_builddir)/calendar/cal-client'. - * gui/Makefile.am (INCLUDES): Likewise. - - * cal-client/cal-query.h: #include "evolution-calendar.h". - -2001-04-17 Federico Mena Quintero <federico@ximian.com> - - * gui/event-editor.c (init_widgets): Connect to the "changed" - signal of the categories entry so that they will be applied - correctly. - (EventEditorPrivate): Added fields for the contacts button and - entry. - (init_widgets): Disable the contacts widgets as we do not support - them yet. - (get_widgets): Get the contacts widgets. - - * gui/dialogs/task-editor.c (get_widgets): Get the contacts - button, which was missing. - (init_widgets): Disable the contacts widgets as we do not support - them yet. - - * pcs/query.c (matches_text_list): Use e_utf8_strstrcasedecomp() - instead of plain e_utf8_strstrcase(). - (matches_summary): Likewise. - -2001-04-17 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (cal_component_alarm_set_action): the - libical action stuff uses enums rather than strings to enumerate - the various actions now - (cal_component_alarm_get_action): ditto - -2001-04-17 Ettore Perazzoli <ettore@ximian.com> - - * gui/alarm-notify/Makefile.am (evolution_alarm_notify_SOURCES): - Add `$(CORBA_GENERATED)'. - -2001-04-16 Dan Winship <danw@ximian.com> - - * pcs/Makefile.am (INCLUDES): Add EXTRA_GNOME_CFLAGS, for gal. - -2001-04-15 Federico Mena Quintero <federico@ximian.com> - - * gui/gnome-cal.c (setup_widgets): Create the ESearchBar thingy. - (search_bar_query_changed_cb): Build the different queries based - on the type and string. - - * pcs/query.c (backend_obj_updated_cb): Ref the query while we are - notifying the listener so that it will not disappear from under us. - (backend_obj_removed_cb): Likewise. - (process_component_cb): Likewise. - (func_contains): New function to match text fields. - (matches_comment): New function to match comment lists. - (matches_description): New function to match description lists. - (matches_summary): New function to match summaries. - (matches_any): New function to match any text field. - (func_has_categories): New function to match categories. - -2001-04-14 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/notify-main.c (main): Initialize the trigger - and queue systems. - -2001-04-13 Dan Winship <danw@ximian.com> - - * cal-util/timeutil.c (time_from_isodate): Fix the syntactic bogon - here, and attempt to fix the logical bogon too. (tm_gmtoff and - timezone have opposite signs... I'm assuming Federico tested the - Linux case, so I'm flipping the sign of the BSD case. But maybe he - didn't and it's supposed to be the other way...) - -2001-04-12 Federico Mena Quintero <federico@ximian.com> - - * gui/e-day-view.c (update_query): New function to restart a query - for the day view. - (query_obj_updated_cb): Renamed from obj_updated_cb(); updated for - queries instead of calendar clients. - (query_obj_removed_cb): Likewise. - (cal_opened_cb): Just update_query() instead of queueing reloading - all the events. - (e_day_view_set_cal_client): Likewise. - (e_day_view_set_query): Likewise. - (e_day_view_set_selected_time_range): Likewise. - (e_day_view_set_days_shown): Likewise. - (e_day_view_recalc_work_week): Likewise. - (e_day_view_queue_reload_events): Removed function now that events - are updated entirely by the query. - (e_day_view_reload_events_idle_cb): Likewise. - (e_day_view_reload_events): Likewise. - (e_day_view_init): Use a pretty arrow instead of GDK_TOP_LEFT_ARROW. - - * gui/e-week-view.c: Analogous changes to the ones in e-day-view.c. - (e_week_view_init): Use a pretty arrow instead of GDK_TOP_LEFT_ARROW. - - * cal-util/timeutil.c (isodate_from_time_t): Return a g_strdup()ed - version of the string instead of a pointer to a static buffer. - (time_from_isodate): Resurrected function. Polished up to our - current standards of paranoia. - - * pcs/query.c (func_time_now): New function (time-now). - (func_make_time): New function (make-time ISODATE). - (func_time_add_day): New function (time-add-day TIME N). - (func_time_day_begin): New function (time-day-begin TIME). - (func_time_day_end): New function (time-day-end TIME). - (func_occur_in_time_range): Use time_t values instead of ints. - (match_component): Free the stringized component. Free the ESexp - result value. - - * gui/e-day-view.h: Removed a couple of unused prototypes. - - * pcs/query.c (query_destroy): Oops, disconnect from the backend. - - * pcs/cal.c (Cal_get_query): Duplicate the query reference before - we return it. - - * gui/calendar-commands.c (pixmaps): Fixed paths to image files. - -2001-04-11 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c (cal_backend_file_compute_changes): - prepend to both changes and change_ids when different and mark as - modified, not added - -2001-04-11 Christopher James Lahey <clahey@ximian.com> - - * gui/calendar-model.c (calendar_model_append_row): Fix this to - just send the data to the wombat instead of inserting it - ourselves. - -2001-04-11 Gediminas Paulauskas <menesis@delfi.lt> - - Display fixes, thanks to Kjartan for finding these. - - * gui/event-editor.c: use simple (not e_utf8_) gtk_clist_append for - strings which are never in utf-8. - * dialogs/delete-comp.c (delete_component_dialog): convert only - summary from utf-8 to gtk charset. Translated values are in correct - craset already. - -2001-04-04 Kjartan Maraas <kmaraas@gnome.org> - - * gui/calendar-commands.c: Fix headers. - * gui/calendar-config.c: Same here. - * gui/calendar-model.c: Same here. - * gui/e-day-view-time-item.c: Same here. - * gui/e-day-view-top-item.c: Same here. - * gui/e-day-view.c: Same here. - * gui/e-meeting-edit.c: Same here. - * gui/e-week-view-main-item.c: Same here. - * gui/e-week-view.c: Same here. - * gui/event-editor.c: Same here. - * gui/gnome-cal.c: Same here. - * gui/goto.c: Same here. - * gui/main.c: Same her. - * gui/print.c: Same here. - -2001-04-02 Federico Mena Quintero <federico@ximian.com> - - * gui/e-tasks.c (e_tasks_setup_menus): Plug leak. - - * gui/event-editor.c (obj_updated_cb): Do nothing for now until we - think of something sensible to do. - (obj_removed_cb): Likewise. - - * gui/dialogs/task-editor.c (obj_updated_cb): Likewise. - (obj_removed_cb): Likewise. - - * gui/event-editor.c (dialog_to_comp_object): Plug leak. - -2001-04-01 Federico Mena Quintero <federico@ximian.com> - - Client-side glue for the live query engine. - - * cal-client/query-listener.[ch]: New files with the - implementation fo the QueryListener interface. - - * cal-client/cal-query.[ch]: New files with the client-side - convenience object for live queries. - - * cal-client/cal-listener.h (CalListenerClass): Removed unused - slots for signal handlers. - - * cal-client/Makefile.am (libcal_clientinclude_HEADERS): Now we - install the evolution-calendar.h header. This sucks a bit. - -2001-04-01 Gediminas Paulauskas <menesis@delfi.lt> - - * gui/calendar-commands.c: use new pixmap cache. Added some menu icons - and changed filenames of renamed icons. - * gui/tasks-control.c: added icons for new task and print in menu. - -2001-03-29 Federico Mena Quintero <federico@ximian.com> - - Engine for live queries to calendars. A query object watches a - CalBackend in the PCS and is otherwise completely separate from - it; backends need to do nothing to support live queries. Right - now we have the following functions: - - (get-vtype) - - Returns a string indicating the type of component - (VEVENT, VTODO, VJOURNAL, VFREEBUSY, VTIMEZONE, - UNKNOWN). - - (occur-in-time-range? START END) - - START - int, time_t start of the time range - END - int, time_t end of the time range - - Returns a boolean indicating whether the component - has any occurrences in the specified time range. - - * idl/evolution-calendar.idl (Cal::getQuery): New method that - initiates a live query. - (Query): New interface for a handle to a live query. - (QueryListener): New interface for a listener to changes in a live - query. - - * pcs/query.[ch]: New files with the live query engine. - - * pcs/cal-backend.h (CalBackendClass): Added notification signals - so that the query system can catch them. - (CalBackendClass): New virtual method ::get_load_state(). - - * pcs/cal-backend.c (cal_backend_opened): - (cal_backend_obj_updated): - (cal_backend_obj_updated): New functions to emit the notification - signals; to be used only by backend implementations. - (cal_backend_get_load_state): New function. - - * pcs/cal-backend-file.c (notify_update): Call - cal_backend_obj_updated(). - (notify_remove): Call call_backend_obj_removed(). - (open_cal): Free the icalcomp if it is not of the correct type. - (cal_backend_file_get_load_state): Implemented new method. - - * pcs/cal-backend-db.c (cal_backend_db_update_object): Call - cal_backend_obj_updated(). - (cal_backend_db_remove_object): Call cal_backend_obj_removed(). - (cal_backend_db_get_load_state): Implemented new method. - - * pcs/cal.c (Cal_get_query): Implementation of the ::getQuery() - method. - -2001-03-27 Anna Marie Dirks <anna@ximian.com> - - * gui/e-itip-control.c: fixed button placement to comply - with gnome standards. - -2001-03-27 Anna Marie Dirks <anna@ximian.com> - - * gui/e-itip-control.glade: fixed spacing and label alignment to - comply with gnome standards. Also removed shadows from extraneous - scrolled windows to avoid bevelitous. There are many more changes - that need to happen to this viewer, but they all require a hacker - to do some c-coding, so I will avoid committing them until after the - .10 release. - -2001-03-26 Kjartan Maraas <kmaraas@gnome.org> - - * cal-client/client-test.c: Replace includes of <gnome.h>, <bonobo.h> - and <gtk/gtk.h> with the needed headers to speed up compile. - * cal-util/test-recur.c: Same here for <gtk/gtk.h> - * gui/calendar-commands.c: Replace <bonobo.h> and remove - <libgnorba/gnorba.h> - * gui/calendar-summary.c: Replace <gnome.h> and <bonobo.h> - * gui/calendar-summary.h: Added <bonobo/bonobo-generic-factory.h> - * gui/component-factory.c: Remove <bonobo.h> - * gui/control-factory.c: Replace <bonobo.h> - * gui/e-calendar-table.c: Remove <gnome.h> - * gui/e-itip-control.c: Replace <gnome.h> and <bonobo.h> - * gui/e-meeting-edit.c: Replace <bonobo.h> - * gui/e-tasks.c: Replace <gnome.h> - * gui/e-tasks.h: Replace <bonobo.h> - * gui/gnome-cal.h: Remove <bonobo.h> - * gui/main.c: Replace <bonobo.h> and <glade/glade.h> - * gui/tasks-control-factory.c: Replace <bonobo.h> - * gui/tasks-control.c: Replace <gnome.h> and <bonobo.h> - * gui/weekday-picker.c: Add <string.h> and <libgnome/gnome-defs.h> - * gui/alarm-notify/client-main.c: Remove <gnome.h> and <bonobo.h> - * gui/alarm-notify/notify-main.c: Replace <gnome.h> and <bonobo.h> - * gui/dialogs/alarm-notify-dialog.c: Replace <gnome.h> - * pcs/cal-backend.c: Replace <gtk/gtk.h> - -2001-03-25 Federico Mena Quintero <federico@ximian.com> - - * gui/e-calendar-table.c (e_calendar_table_init): The - model_rows_{inserted,deleted} signals changed names; deal with it. - (e_calendar_table_on_rows_inserted): Updated for new ETable API. - (e_calendar_table_on_rows_deleted): Likewise. - - * gui/gnome-cal.h (GnomeCalendarOpenMode): Removed unused enum. - - * gui/gnome-cal.c (gnome_calendar_open): Constify. - - * gui/calendar-commands.c (calendar_set_uri): Removed function, - since it was just calling gnome_calendar_open(). - - * gui/control-factory.c (set_prop): Replace usage of - calendar_set_uri() with gnome_calendar_open(). - (load_calendar): Likewise. - (calendar_persist_init): Made static. - - * gui/e-tasks.c: #include "calendar-config.h" - (e_tasks_update_all_config_settings): We are configuring a table, - not a calendar! Use the appropriate function. - -2001-03-17 Miguel de Icaza <miguel@ximian.com> - - * gui/e-day-view.c (e_day_view_on_new_event, - e_day_view_on_new_appointment): Simplifed this function to use the - shared code. - - * gui/e-week-view.c (e_week_view_on_new_event, - e_week_view_on_new_appointment): ditto. - - * gui/gnome-cal.c (gnome_calendar_new_appointment_for): New - function used to launch editor components with a time range. A - bunch of functions use this code now instead of duplicating code - all over the place - - * gui/e-week-view.c (e_week_view_new_event): Moved functionality - here from e_day_view_on_new_appointment. Allows setting for "full - day" event. - (e_week_view_on_new_full_day): New function for making a full day - event. - (e_week_view_on_goto_date): Go To support. - (e_week_view_on_goto_today): Goto today support. - - * gui/e-day-view.c (e_day_view_new_event): Moved functionality - here from e_day_view_on_new_appointment. Allows setting for "full - day" event. - (e_day_view_on_new_full_day): New function for making a full day - event. - (e_day_view_on_goto_date): Go To support. - (e_day_view_on_goto_today): Goto today support. - - * main_items: Add New All Day Event; Go to Today; Go to Date. - -2001-03-07 Miguel de Icaza <miguel@ximian.com> - - * gui/control-factory.c (calendar_persist_init): New function: - inits the BonoboPersistFile server. - - * gui/GNOME_Evolution_Calendar.oaf.in: Added BonoboPropertyBag to - the list of supported interfaces that were supported but not - reported. Add the new PersistFile. - - Add text/calendar mime type attribute. - -2001-03-15 Dan Winship <danw@ximian.com> - - * gui/e-week-view.c (e_week_view_start_editing_event): - * gui/e-day-view.c (e_day_view_start_editing_event): Update - arguments to e_canvas_item_grab_focus. - -2001-03-15 Gediminas Paulauskas <menesis@delfi.lt> - - * gui/*.xpm: moved to ../art. - * gui/Makefile.am: removed *.xpm and oaf_DATA from EXTRA_DIST. - * gui/e-calendar-table.c, gui/e-day-view.c, gui/e-week-view.c: - #include "art/*.xpm". - -2001-03-09 JP Rosevear <jpr@ximian.com> - - * conduits/todo/Makefile.am: PISOCK_INCLUDEDIR has become - PISOCK_CFLAGS in gnome-pilot.m4 and remove capplet foo - - * conduits/calendar/Makefile.am: ditto - -2001-03-08 Ettore Perazzoli <ettore@ximian.com> - - * gui/component-factory.c (factory_fn): Specify a NULL - `EvolutionShellComponentGetDndSelectionFn'. - -2001-02-27 Miguel de Icaza <miguel@ximian.com> - - * gui/e-day-view.c (e_day_view_on_event_right_click): Reorganize - the menus to have entries always in a consistent fashion, as - reported to the genepool mailing list. - (e_day_view_on_event_right_click): Added a FIXME comment to the - FIXME comment without a FIXME. - - Now we use e_popup_menu. This allows us to hide/show items on - demand, and to sensitize/de-sensitize items depending on their - state. - - This will also let us add icon support (when we get nice icons for - this) - - * gui/e-week-view.c (e_week_view_show_popup_menu): Ditto. - - The files popup-menu.c and popup-menu.h can now be removed. - -2001-03-05 Damon Chaplin <damon@ximian.com> - - * gui/e-tasks.c: keep list of all Tasks folders so we can update the - preference settings when necessary. - - * gui/gnome-cal.c: configure the TaskPad according to the settings. - - * gui/e-calendar-table.c: use ECellCombo and ECellDateEdit for fields, - so the tasks folders is almost usable now. - - * gui/calendar-model.c: added support for the Status property. - - * gui/calendar-config.[hc]: added convenience functions to setup - ECalendarTable and ECellDateEdit objects. - - * gui/calendar-commands.c: connected to "destroy" signal of calendars - so we can remove them from all_calendars list. - - * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_update_config): - call e_tasks_update_all_config_settings() to update all the settings - in the Tasks folders as well. - - * cal-util/cal-component.h: added CAL_COMPONENT_FIELD_STATUS. - - * cal-util/cal-component.c (cal_component_get_transparency): fixed - calls to strcasecmp so they check for '== 0'. - - Applied patch from Miguel... - -2001-02-27 Miguel de Icaza <miguel@ximian.com> - - * gui/e-day-view.c (e_day_view_on_event_right_click): Reorganize - the menus to have entries always in a consistent fashion, as - reported to the genepool mailing list. - (e_day_view_on_event_right_click): Added a FIXME comment to the - FIXME comment without a FIXME. - - Now we use e_popup_menu. This allows us to hide/show items on - demand, and to sensitize/de-sensitize items depending on their - state. - - This will also let us add icon support (when we get nice icons for - this) - - * gui/e-week-view.c (e_week_view_show_popup_menu): Ditto. - - The files popup-menu.c and popup-menu.h can now be removed. - -2001-03-02 JP Rosevear <jpr@ximian.com> - - * conduits/todo/e-todo.conduit.in: update for new pilot foo - - * conduits/calendar/e-calendar.conduit.in: ditto - - * conduits/todo/Makefile.am: update sed script - - * conduits/calendar/Makefile.am: ditto - -2001-02-28 Federico Mena Quintero <federico@ximian.com> - - * gui/event-editor.c (recurrence_exception_select_row_cb): New - function to set the EDateEdit's value when a row is selected in - the exception date list. Fixes bug #1638. - (append_exception): Set the value as well. Block/unblock signals - from the clist as appropriate. Gotta love non-model/view widgets. - (recurrence_exception_delete_cb): Be more paranoid about the - contents of the list row's data. - (recur_to_comp_object): Likewise. - (fill_exception_widgets): Select the first row after we are done - appending the exception dates. - -2001-02-26 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/Makefile.am (libalarm_a_SOURCES): Create a - little stand-alone library for the low-level alarm trigger - mechanism. This is so that the GUI parts of the calendar can use - it in addition to the alarm daemon. - - * gui/main.c: #include "alarm-notify/alarm.h". - - * gui/calendar-summary.c: Likewise. - (alarm_fn): Do not remove the previous alarm; it is removed - automatically when it is triggered. - - * gui/Makefile.am (evolution_calendar_SOURCES): Removed alarm.[ch] - from the sources. - - * gui/alarm.[ch]: Removed obsolete files. - -2001-02-23 Federico Mena Quintero <federico@ximian.com> - - * gui/alarm-notify/alarm-notify.c (AlarmNotify_addCalendar): - Switched to using our own refcounted structure for loaded clients. - (AlarmNotify_removeCalendar): Ditto. Also, do the full - destruction of the client. - (alarm_notify_destroy): Destroy each element in the hash table. - - * cal-client/cal-client.c (cal_client_construct): Test for - exceptions from OAF when activating the Wombat calendar factory. - - * gui/alarm-notify/GNOME_Evolution_Calendar_AlarmNotify.oaf.in: - New .oaf.in file. - - * gui/alarm-notify/Makefile.am (oaf_in_files): Updated. - - * gui/GNOME_Evolution_Calendar.oaf.in: Put all the servers here - instead of in a million files. - - * gui/GNOME_Evolution_Calendar_Control.oaf.in: Removed file. - - * gui/GNOME_Evolution_Calendar_gnomecal.oaf.in: Removed *REALLY* - obsolete file. - - * gui/Makefile.am (oaf_in_files): Updated. - -2001-02-23 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-db.c (add_history): fixed generation of history records - -2001-02-16 Federico Mena Quintero <federico@ximian.com> - - * pcs/cal-factory.c (CalFactoryPrivate): Added a `registered' - field. - (cal_factory_oaf_register): New function; now the factory performs - its own registration with OAF. - (cal_factory_destroy): Unregister from OAF if appropriate. - -2001-02-19 JP Rosevear <jpr@ximian.com> - - * conduits/todo/Makefile.am: Remove PISOCK_LIBDIR - - * conduits/calendar/Makefile.am: ditto - -2001-02-16 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/calbackend-db.c (cal_backend_db_destroy): close DB environment. - Some compilation warnings removed - -2001-02-13 Christopher James Lahey <clahey@ximian.com> - - * gui/Makefile.am (evolution_calendar_LDADD): Added libmenus.la. - - * gui/e-calendar-table.c, gui/e-calendar-table.h - (e_calendar_table_get_spec): Added this function. - - * gui/e-tasks.c, gui/e-tasks.h (e_tasks_setup_menus): Added this - function. - - * gui/tasks-control.c (tasks_control_activate): Call - e_tasks_setup_menus. - -2001-02-13 JP Rosevear <jpr@ximian.com> - - * gui/e-tasks.c (e_tasks_new_task): call task_editor_focus - -2001-02-13 JP Rosevear <jpr@ximian.com> - - * gui/calendar-commands.c (update_pixmaps): Set toolbar new - appointment icon - (set_pixmap): load files rather than create from xpm file - - * gui/*view.xpm: move to the art directory - -2001-02-13 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-db.c (cal_backend_db_get_alarms_for_object): - implemented - -2001-02-13 JP Rosevear <jpr@ximian.com> - - * gui/calendar-commands.c (update_pixmaps): Set toolbar new command - - * gui/e-calendar-table.c: Add titles to pixbuf column for grouping - - * gui/calendar-model.c (calendar_model_class_init): override value - to string virtual method - (calendar_model_value_to_string): implement value to string for - etable (necessary for group by) - -2001-02-12 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-file.c: - cal_backend_db_update_object(): manage both updates and additions/add notification - cal_backend_db_get_object(): don't use DB cursors - cal_backend_db_get_type_by_uid(): don't use DB cursors - cal_backend_db_remove_object(): don't use DB cursors/add notification - cal_backend_db_get_alarms_in_range(): implemented - -2001-02-12 Kjartan Maraas <kmaraas@gnome.org> - - * gui/Makefile.am: Hook up the xml-i18n-tools + .oaf.in stuff. - * gui/GNOME_Evolution_Calendar*.oaf.in: Marked strings for translation. - -2001-02-11 Rodrigo Moya <rodrigo@ximian.com> - - * pcs/cal-backend-db.c: added DB3 transactions support - * pcs/cal-backend-db.[ch]: added the new DB3-based backend. This is just - the beginning, there are some missing things still. - -2001-02-11 Gediminas Paulauskas <menesis@delfi.lt> - - Really use xml-i18n-tools. - - * conduits/calendar/e-calendar-conduit-control-applet.desktop, - conduits/todo/e-todo-conduit-control-applet.desktop: removed. - - * conduits/calendar/e-calendar-conduit-control-applet.desktop.in, - conduits/todo/e-todo-conduit-control-applet.desktop.in: added empty. - - * conduits/calendar/Makefile.am, conduits/todo/Makefile.am: - reflect above changes, merge translations. - - * gui/*.glade.h, gui/dialogs/*.glade.h: removed, xml-i18n-extract - takes care of strings itself. - - * gui/*.glade, gui/dialogs/*.glade: do not output_translatable_strings - - * gui/Makefile.am, gui/dialogs/Makefile.am: do not include removed - files in EXTRA_DIST. - -2001-02-08 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-editor-dialog.glade: Oops, remove old widget - -2001-02-08 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/task-editor.c (fill_widgets): fill in new - classification stuff properly - (get_widgets): load new class. widgets - (init_widgets): if the class. widgets change, mark the dialog - dirty - (dialog_to_comp_object): set the comp class. from the new widgets - - * gui/dialogs/task-editor-dialog.glade: Make more consistent, - fixing bugs 1247 and 1249 - - * gui/dialogs/task-editor.c (fill_widgets): - - * gui/event-editor-dialog.glade: Gui tidying - - * gui/event-editor.c: Remove old alarm cruft - - * cal-util/cal-component.c (cal_component_set_url): Don't try and - write an empty string as a property - - -2001-02-08 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c: Move the get_change code here - - * pcs/cal-backend.c: Remove get_changes related stuff and - implement by calling the virtual method instead - - * pcs/cal-backend.h: New virtual method. - - * pcs/cal-backend-file.c (compute_alarm_range): Use - icaldurationtype_as_int (replace _as_timet) - (add_alarm_occurrences_cb): ditto - -2001-02-08 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend-file.c (compute_alarm_range): Use - icaldurationtype_as_int (replace _as_timet) - (add_alarm_occurrences_cb): ditto - - * gui/e-week-view.c (e_week_view_on_schedule_meet): new routine to - throw up the meeting schedule dialog - (e_week_view_show_popup_menu): add schedule meeting to the - contextual menu where appropriate - -2001-02-08 JP Rosevear <jpr@ximian.com> - - * gui/event-editor.c: Remove assorted menu/bonobo stuff - - * gui/dialogs/task-editor.c: Remove assorted menu/bonobo stuff - (task_editor_construct): no longer suck out the glade contents - into a bonobo win, listen for apply and close signals - (tedit_apply_event_cb): listen for apply signal and save object - (tedit_close_event_cb): listen for close signal and prompt to save - if need be - (task_editor_focus): new function to bring the dialog to the front - - * gui/dialogs/task-editor.h: new prototype - - * gui/e-meeting-edit.c (schedule_button_clicked_cb): no need to - update widgets in the event editor since the event editor won't be - open - (e_meeting_editor_new): don't need the event editor reference any - more - - * gui/e-meeting-edit.h: Change prototype - - * gui/e-day-view.c (e_day_view_on_event_right_click): Make - schedule meeting a new contextual menu item - (e_day_view_on_schedule_meet): new routine to schedule a meeting - from the contextual menu - - * gui/e-calendar-table.c (e_calendar_table_open_task): Call - task_editor_focus - - * gui/event-editor-dialog.glade: Update to be a property box - - * gui/dialogs/task-editor-dialog.glade: Update to be a property - box - -2001-02-07 Iain Holmes <iain@ximian.com> - - * gui/calendar-summary.c (create_summary_view): Add a setter to the - property bag. - (set_property): The setter. - (generate_html_summary): Sort the UIDs accodring to time. - -2001-02-06 JP Rosevear <jpr@ximian.com> - - * gui/event-editor.c (fill_reminder_widgets): Match new - append_alarm signature - (reminder_to_comp_object): only add alarms tagged as new, no - longer delete all alarms first - (append_reminder): the row data is now of type ReminderData, - rename from append_alarm - (reminder_add_cb): math new append_alarm signature - (reminder_delete_cb): if the alarm existed before the dialog was - loaded, delete it immediately from the cal component - -2001-02-06 JP Rosevear <jpr@ximian.com> - - * gui/event-editor-dialog.glade: Gui tweaks for bugs 1248 and 1246 - - * gui/dialogs/task-editor-dialog.glade: ditto - -2001-02-07 JP Rosevear <jpr@ximian.com> - - * gui/event-editor-dialog.glade: Fix spacing - -2001-02-06 JP Rosevear <jpr@ximian.com> - - * gui/event-editor-dialog.glade: Gui tweaks for bugs 1248 and 1246 - - * gui/dialogs/task-editor-dialog.glade: ditto - -2001-02-06 JP Rosevear <jpr@ximian.com> - - * gui/e-week-view.c (e_week_view_show_popup_menu): Make the menus more - consistent - - * gui/e-day-view.c (e_day_view_on_event_right_click): ditto - - * gui/e-calendar-table.c: ditto - -2001-02-06 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (cal_component_set_categories): If the - categories string is empty, remove the property - (get_period_list): Fixes from clahey to handle the new rdate - format in libical - (set_period_list): ditto - -2001-02-05 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (cal_component_alarm_set_trigger): Set - the time and duration values in the trigger to null by default - (cal_component_free_alarm_uids): properly free the list of alarm - uids - -2001-02-05 JP Rosevear <jpr@ximian.com> - - * gui/event-editor.c (get_widgets): get the new reminder widgets - (sync_entries): different callback data - (summary_changed_cb): take different data and handle various cases - (init_widgets): connect signals for the new widgets - (get_alarm_duration_string): give a text string of the alarm - duration - (get_alarm_string): give a string representing the alarm - (fill_widgets): make sure we don't loop infinitely and remove old - alarm cruft - (reminder_to_comp_object): dump alarm info in the gui into the cal - component - (append_alarm): add alarm to the clist - (reminder_add_cb): create new alarm - (reminder_delete_cb): remove the alarm from the list - - * gui/event-editor-dialog.glade: Update gui - - * gui/e-calendar-table.c: include gnome.h for all the menu stuff - - * gui/calendar-summary.c: for internationalization - - * gui/tasks-control.c: include gnome.h - - * gui/e-tasks.c: ditto - - * gui/e-itip-control.c: ditto - - * cal-util/cal-recur.c (cal_recur_set_rule_end_date): Update for - libical changes - -2001-02-05 Christopher James Lahey <clahey@helixcode.com> - - * gui/calendar-model.c: Fixed up these #includes. - -2001-02-03 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/save-comp.c (save_component_dialog): - gnome_dialog_grab_focus() on the Yes button. Fixes bug #1242. - -2001-01-30 Kjartan Maraas <kmaraas@gnome.org> - - * gui/e-calendar-table.c: Mark a string for translation. - * gui/e-itip-control.c: Mark a bunch of strings for translation. - -2001-01-30 Ettore Perazzoli <ettore@ximian.com> - - * gui/print.c: #include <sys/time.h>. - -2001-01-29 Federico Mena Quintero <federico@ximian.com> - - * gui/calendar-config.c: <gnome.h> trimming to reduce compilation - time. - * gui/calendar-summary.c: Likewise. - * gui/e-calendar-table.c: Likewise. - * gui/e-day-view-time-item.c: Likewise. - * gui/e-day-view.c: Likewise. - * gui/e-itip-control.c: Likewise. - * gui/e-meeting-edit.c: Likewise. - * gui/e-meeting-edit.h: Likewise. - * gui/e-tasks.c: Likewise. - * gui/e-week-view.c: Likewise. - * gui/event-editor.c: Likewise. - * gui/gnome-cal.c: Likewise. - * gui/goto.c: Likewise. - * gui/itip-utils.h: Likewise. - * gui/main.c: Likewise. - * gui/popup-menu.c: Likewise. - * gui/print.c: Likewise. - * gui/tasks-control-factory.c: Likewise. - * gui/tasks-control.c: Likewise. - * gui/tasks-migrate.c: Likewise. - -2001-01-25 Federico Mena Quintero <federico@ximian.com> - - * cal-util/timeutil.c: <gnome.h> trimming to reduce compilation time. - * gui/dialogs/task-editor.c: Ditto. - * gui/dialogs/cal-prefs-dialog.c: Ditto. - * gui/dialogs/save-comp.c: Ditto. - * gui/dialogs/delete-comp.c: Ditto. - * gui/calendar-commands.c: Ditto. - * gui/calendar-model.c: Ditto. - -2001-01-26 Ettore Perazzoli <ettore@ximian.com> - - * gui/e-itip-control.c (itip_control_destroy_cb): Don't attempt to - call `icalcomponent_remove_component()' on a NULL component or a - NULL subcomponent. - -2001-01-25 Damon Chaplin <damon@ximian.com> - - * gui/tag-calendar.c: don't tag the calendar if no dates are shown. - (e_calendar_item_get_date_range() now returns FALSE in this case.) - -2001-01-23 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-model.c (ensure_task_complete): make sure the status - is set to "Completed". Fixes bug #1253. - - * gui/e-tasks.c (e_tasks_open): load the ETable state after opening - the tasks folder, since it relies on the folder uri, which isn't set - now until you open the folder. - - * gui/calendar-model.c (obj_updated_cb): add the categories from the - updated object to our tree, and emit the "categories-changed" signal - if they have changed. Fixes bug #1255. - - * gui/e-tasks.c: removed debug messages. - -2001-01-23 JP Rosevear <jpr@ximian.com> - - * libical import cleanup - -2001-01-23 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (local_record_from_comp): properly ref - the cal component when we use it, prevents double free - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): ditto - -2001-01-22 JP Rosevear <jpr@ximian.com> - - * gui/dialogs/Makefile.am: compile new stuff - - * gui/dialogs/task-editor.c (prompt_to_save_changes): use new - standard dialog - - * gui/event-editor.c (prompt_to_save_changes): ditto - - * gui/dialogs/save-comp.h: new header - - * gui/dialogs/save-comp.c (save_component_dialog): shows the save - dialog - -2001-01-22 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (for_each_modified): remove duplicate - message - - * conduits/calendar/Makefile.am: Remove vfs lib dependency - - * conduits/todo/Makefile.am: ditto - - * conduits/calendar/calendar-conduit.c: Remove alarm foo for now - (for_each_modified): remove duplicate message - -2001-01-21 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (delete_record): Remove - deleted records from the pilot map so we don't have dupes in the future - - * conduits/todo/todo-conduit.c (delete_record): ditto - -2001-01-21 Federico Mena Quintero <federico@ximian.com> - - * gui/dialogs/task-editor.c (file_delete_cb): Fix bug #1250; now - we present a confirmation dialog before deleting the component. - -2001-01-20 Federico Mena Quintero <federico@ximian.com> - - * gui/event-editor-dialog.glade: Fix bug #1243. Turn on the Y - expand/fill options for the date widgets in the General page. - This makes them be vertically aligned with the "All day event" - toggle so that they will get the focus in the proper order; the - toggle would get the focus before them because it was a pixel or - two above them. - -2001-01-19 Federico Mena Quintero <federico@ximian.com> - - * gui/weekday-picker.c (weekday_picker_init): Unset the - GTK_CAN_FOCUS flag on the weekday picker. This will do until it - supports being used with the keyboard. - -2001-01-19 JP Rosevear <jpr@ximian.com> - - * cal-util/cal-component.c (cal_component_alarm_new): create a new - cal component alarm - (cal_component_add_alarm): add alarm to the cal component - (cal_component_remove_alarm): remove alarm from the cal component - (remove_alarm): remove alarm from hash - - * cal-util/cal-component.h: new protos - - * conduits/calendar/calendar-conduit.c (comp_from_remote_record): - add alarm information, still needs to be hacked to replace an already - existing alarm. questions abound about the heuristic for doing this. - -2001-01-17 JP Rosevear <jpr@ximian.com> - - * gui/event-editor.c (dialog_to_comp_object): Properly set categories - to NULL if there are none - -2001-01-18 Federico Mena Quintero <federico@ximian.com> - - * gui/tasks-migrate.[ch]: New files with a simple sequence to - migrate the task components from the old calendar folder into the - new tasks folder. - - * gui/component-factory.c (owner_set_cb): Call tasks_migrate() - once evolution_dir is set. It sucks to have to do this here. - - * cal-client/cal-client.c (cal_client_get_uids): In the inline - docs, indicate how to free the return value. - (cal_opened_cb): Ahem, moved assertion to the right place. Also, - ref() and unref() around our own signal emission because we are - not inside a signal handler, rather a simple callback from the - listener object; we want to have a chance to clean up even if the - client is unrefed during the emission. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - tasks-migrate.[ch] to the list of sources. - -2001-01-17 Federico Mena Quintero <federico@ximian.com> - - * gui/event-editor.c (init_widgets): Use - e_calendar_item_set_max_days_sel() instead of setting GTK+ object - arguments. - - * gui/e-day-view.c (e_day_view_set_cal_client): Oops, we had a - reversed test for the client being loaded. - - * gui/tag-calendar.c (tag_calendar_by_client): Fixed similarly - reversed test. - -2001-01-17 Damon Chaplin <damon@helixcode.com> - - * gui/e-week-view*.c - * gui/e-day-view*.c: don't use the theme colors at all within - the graphical parts of the widgets, since they may clash with - our colors. May make them configurable in future so people can tweak - them to go with their theme. At least the calendars are usable in any - theme now, even though the colors may not go well with the theme. - Also set the font of all the EText items in style_set. - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): don't - draw the icons if we are editing the event. - - * gui/e-day-view.c: - * gui/e-week-view.c: reinstated the optimizations so we don't do a - complete relayout if the event's dates haven't been changed. - (Though we still do a re-layout when recurring events change, since - comparing all the RDATES/RRULES/EXDATES/EXRULES is too much hassle.) - A side-effect of this change is that the EWeekView won't crash so - often - only recurring events will be a problem. - - * cal-util/cal-component.[hc]: added function to check if the start - and end dates of a component match. Used for optimizing the updating - of the EDayView & EWeekView. - -2001-01-17 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (start_calendar_server): Check - for open error and handled - - * conduits/todo/todo-conduit.c (start_calendar_server): ditto - -2001-01-17 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/calendar-conduit.c (start_calendar_server): Check - for open error and handled - - * pcs/cal-backend.c (cal_backend_compute_changes): Fix transposition - of sync db location - -2001-01-17 Federico Mena Quintero <federico@ximian.com> - - * */*: Ximianified email addresses and copyrights. - - * idl/evolution-calendar.idl (CalFactory::open): Renamed from - ::load(), and added an only_if_exists argument. - (CalFactory::create): Removed method. - (Listener::OpenStatus): Removed the IN_USE error and replaced it - with a NOT_FOUND one; renamed the enum from LoadStatus. - (Listener::notifyCalOpened): Renamed from notifyCalLoaded(). - - * pcs/cal-backend.h (CalBackend): Removed the uri field. - (CalBackendOpenStatus): Renamed from CalBackendLoadStatus and - added a NOT_FOUND value. - (CalBackendClass::open): Put in a slot for the open method. - - * pcs/cal-backend.c (cal_backend_create): Removed function. - - * pcs/cal-backend-file.c (cal_backend_file_open): Return the - appropriate value when only_if_exists is TRUE. - (create_cal): We are Ximian now, so set the PRODID property to - the appropriate foo. - - * pcs/cal-factory.c (CalFactory_open): implemented, replacing - CalFactory_load() and CalFactory_create(). - (CalFactory_open): Moved the queue_load_create_job() stuff to - here, since we now only need to contemplate the open case instead - of load/create ones. - (open_backend): Do everything here; replaces load_backend() and - create_backend(). - - * cal-client/cal-listener.h (CalListenerClass::cal_opened): - Renamed from cal_loaded. - (CalListenerClass): Replaced the silly signals, which are - gratuitous abstraction, by a set of function pointers in the - instance structure. - - * cal-client/cal-listener.c (cal_listener_get_calendar): Removed - unused function. - (cal_listener_construct): Added the listener notification functions. - (cal_listener_new): Ditto. - (Listener_notifyCalOpened): Renamed to our new naming convention - for servant implementations. - (Listener_notifyObjUpdated): Ditto. - (Listener_notifyObjRemoved): Ditto. - - * cal-client/cal-client.h (CalClientOpenStatus): Renamed from - CalClientLoadStatus. - (CalClientClass::cal_opened): Renamed from ::cal_loaded(). - (CalClientLoadState): New enum; basically make LoadState public so - that users of this code do not have to maintain their own states. - - * cal-client/cal-client.c (cal_client_create_calendar): Removed - function. - (cal_client_open_calendar): Moved the functionality over from - load_or_create(); now we do everything here. - (*): Use the CalClientLoadState enum values instead of the old - LoadState values. - (cal_client_get_load_state): Renamed from cal_client_is_loaded(), - and return the appropriate value. - (CalClientPrivate): Added an uri field. - (cal_client_init): Initialize priv->uri. - (cal_client_destroy): Free the priv->uri. - (cal_opened_cb): Maintain the priv->uri. - (cal_client_open_calendar): Fill in the priv->uri. - (cal_client_get_uri): New function. - - * gui/calendar-model.c (calendar_model_set_new_comp_vtype): New - function to configure the type of calendar components to create - when doing click-to-add. This makes the model usable for - something other than task lists. - (calendar_model_get_new_comp_vtype): New function. - - * gui/e-calendar-table.c (e_calendar_table_get_model): New function. - (e_calendar_table_destroy): Unref the subset_model. - - * gui/gnome-cal.h (GnomeCalendarOpenMode): Removed enum. - - * gui/gnome-cal.c (LoadState): Removed enum; we now use the - CalClientLoadState from the client objects. - (GnomeCalendarPrivate): Removed the loading_uri and - task_pad_loading_uri fields as well as the load_state and - task_pad_load_state fields, as we can now query them directly from - the CalClient. - (open_error): Renamed from load_error(). - (create_error): Removed function. - (gnome_calendar_open): Do not take in the mode parameter. - (cal_opened_cb): Get rid of our beautifully-crafted state machine - and replace it with simple code; all the loading smarts are in the - Wombat now. - (setup_widgets): Set the new component vtype of the table model to - CAL_COMPONENT_TODO. - - * gui/Makefile.am (evolution_calendar_SOURCES): Removed - gnome-month-item.[ch] from the list of sources. - - * gui/calendar-summary.c (CalSummary): Removed unused cal_loaded - field. - (create_summary_view): Do not check if the file exists; this is - the job of the Wombat. - (generate_html_summary): Fixed prototype. - (alarm_fn): Fixed prototype. - (property_dialog): Fixed prototype. Wonder if/how this ever - worked. - (create_summary_view): Cast the component and view as - appropriate. Removed unused html variable. - - [Iain dude, are you compiling with -Wall?] - - * gui/e-itip-control.c (cal_opened_cb): Sigh, this function - signature was *very* wrong. It was using CalClientGetStatus - instead of CalClientOpenStatus. - - * gui/e-tasks.h (ETasksOpenMode): Removed enum. - - * gui/e-tasks.c (setup_widgets): Set the new component vtype of - the table model to CAL_COMPONENT_TODO. - (LoadState): Removed the state machine foo. - (e_tasks_open): Removed the mode parameter. - (initial_load): Removed function. - (create_error): Removed function. - (ETasksPrivate): Removed folder_uri field. - (cal_opened_cb): Remove the state machine. - - * gui/component-factory.c: #include "tasks-control.h" - - * conduits/calendar/calendar-conduit.h (ECalConduitContext): - Removed calendar_load_tried field. - - * conduits/calendar/calendar-conduit.c (start_calendar_server_cb): - Sigh, fixed function prototype. - - * conduits/todo/todo-conduit.h (EToDoConduitContext): Removed - calendar_load_tried field. - - * conduits/todo/todo-conduit.c (start_calendar_server_cb): Fixed - function prototype. - -2001-01-16 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (print_local): fix debug output - (print_remote): ditto - -2001-01-15 JP Rosevear <jpr@ximian.com> - - * pcs/cal-backend.c (cal_backend_compute_changes): accomadate tasks - in their new dir - - * conduits/todo/todo-conduit.c (start_calendar_server): ditto - -2001-01-15 JP Rosevear <jpr@ximian.com> - - * conduits/todo/todo-conduit.c (print_local): prevent segfaults and - buffer overflows. - (print_remote): ditto - - * conduits/calendar/calendar-conduit.c: as above - -2001-01-14 Damon Chaplin <damon@helixcode.com> - - * gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): changed the expansion - values so that small text fields are 1.0, all the date fields and the - URL field are 2.0, and the Summary is 3.0. Hopefully the user will - resize the fields as desired, but at least this is a better start. - -2001-01-14 JP Rosevear <jpr@ximian.com> - - * conduits/calendar/Makefile.am: pass -module and -avoid-version to - conduit linker - - * conduits/todo/Makefile.am: ditto - -2001-01-14 Damon Chaplin <damon@helixcode.com> - - * gui/dialogs/task-editor.[hc]: moved #include - <cal-client/cal-client.h> to the .h file. - - * gui/e-tasks.c: load & save the Tasks folders' ETable layout. - Added an option menu to filter tasks by category. - - * gui/gnome-cal.c: use the "Tasks" folder for the TaskPad. - (We may make the actual tasks folder shown a per-calendar option.) - - * gui/tasks-control.c (tasks_control_new_task_cmd): added support for - the New Task icon on the toolbar. - - * gui/e-calendar-table.[hc]: we now use an ETableSubsetVariable model - to filter the tasks by a category. And tidied up a little. - - * gui/calendar-model.[hc]: added way to get all the categories used by - the tasks, so we can show an option menu of them. Also a signal which - is emitted when they are changed. - Also allows a default category to be set, which is used to initialize - the 'click-to-add' row. - Also made sure the initialize_value()/get_value() functions don't - return NULL since that can cause a SEGV. - - * gui/e-week-view.c: - * gui/e-day-view.c: set the "fill_color_rgba" arg of the EText items - to black since it doesn't seem to set up a default color properly. - Hopefully this fixes the bug on Solaris where the items appear with - strange colors. - - * gui/widget-util.c (date_edit_new): use the calendar_config function - to set most of the options. It wasn't setting the 12/24 hour option - before. - - * gui/dialogs/task-editor-dialog.glade: added "Undefined" priority. - -2001-01-12 Ettore Perazzoli <ettore@helixcode.com> - - * gui/component-factory.c (factory_fn): Pass NULL as the - @copy_folder_fn arg to `evolution_shell_component_new()'. - -2001-01-12 Miguel de Icaza <miguel@ximian.com> - - * gui/e-calendar-table.c: Add translation strings. - -2001-01-08 Iain Holmes <iain@helixcode.com> - - * gui/calendar-summary.c (create_summary_view): Add a PropertyControl - interface to set whether or not to show tasks and appointments. Add - a PersistStream to remember this. - -2001-01-09 Dave Camp <dave@helixcode.com> - - * gui/Makefile.am: Replaced e-meet-dialog.glade.h with - e-meeting-dialog.glade in glade_messages. - - * gui/e-meeting-dialog.glade: Enabled the translatable string option. - - * gui/e-itip-control.glade: Likewise. - -2001-01-09 Federico Mena Quintero <federico@helixcode.com> - - * idl/evolution-calendar.idl (AlarmNotify): New interface for the - alarm notification system. - - * gui/alarm-notify: New directory for the alarm notification - daemon and its auxiliary stuff. - - * gui/alarm-notify/alarm.[ch]: Moved over from gui/alarm.[ch]. - - * gui/alarm-notify/alarm-queue.[ch]: Moved over from - gui/alarm-notify.[ch]. Renamed functions from alarm_notify_*() to - alarm_queue_*(). - - * gui/alarm-notify/alarm-notify.[ch]: Implementation of the - GNOME::Evolution::Calendar::AlarmNotify interface. - - * gui/Makefile.am (evolution_calendar_LDADD): Removed the - LINK_FLAGS variable and reordered the libraries to remove some - duplicated ones. - (SUBDIRS): Added the alarm-notify directory. - -2001-01-08 Iain Holmes <iain@helixcode.com> - - * gui/calendar-summary.c (generate_html_summary): Get the tasks - correctly. - (generate_html_summary): Mark the tasks as completed if so. - -2001-01-08 Damon Chaplin <damon@helixcode.com> - - * gui/Makefile.am: added new source files for the Tasks folders. - - * gui/e-tasks.[hc]: new widget to encapsulate the Tasks view. - - * gui/tasks-control.[hc]: new files to implement the Tasks control. - - * gui/tasks-control-factory.[hc]: new files to implement the factory - for the Tasks controls. (I think the way I've split the code up is a - lot cleaner than the GnomeCal implementation - the factory file just - contains the factory functions and the control file contains all the - control functions. Maybe we should make GnomeCal like this.) - - * gui/main.c: initialize the Tasks control factory. - - * gui/component-factory.c: added support for the Tasks control. - Also added a "create_folder" function so we can now create new Tasks - and Calendar folders within Evolution. - I'm not a Bonobo expert so someone might want to check these over. - - * gui/calendar-config.[hc]: added convenience functions to configure - the common settings of ECalendar and EDateEdit widgets. - - * gui/dialogs/task-editor.c (task_editor_create_date_edit): - * gui/gnome-cal.c (gnome_calendar_update_config_settings): - * gui/event-editor.c: used function to configure the ECalendars - and EDateEdits. - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - fixed minor bug in format strings. - -2001-01-06 Iain Holmes <iain@helixcode.com> - - * gui/calendar-summary.c (generate_html_summary): Neaten the HTML, - and fix the time printing stuff. Add stuff the get Tasks. - (alarm_fn): Set up an alarm for midnight everynight and regenerate - the HTML for the new day. - -2001-01-05 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c (get_widgets): get categories button - (init_widgets): listen for button click - (fill_widgets): fill in the categories area - (dialog_to_comp_object): set the cal component categories - (categories_clicked): throw up the categories dialog and update - when ok is clicked - - * gui/event-editor-dialog.glade: Add categories and contacts buttons - and fields - - * gui/dialogs/task-editor-dialog.glade: Rename button - -2001-01-05 JP Rosevear <jpr@helixcode.com> - - * gui/dialogs/task-editor.c (get_widgets): get categories button - (init_widgets): listen for button click - (fill_widgets): fill in the categories area - (dialog_to_comp_object): set the cal component categories - (categories_clicked): throw up the categories dialog and update - when ok is clicked - - * gui/dialogs/task-editor-dialog.glade: Tweak to name the categories - button and make it active - - * gui/calendar-model.c (get_categories): We can get the string list of - categories directly now - - * cal-util/cal-component.c (cal_component_get_categories): new function - to get the categories list as a string - (cal_component_set_categories): same but for setting - (free_icalcomponent): init the categories var - (scan_categories): kill - (scan_property): assign the prop to the categories var - (cal_component_get_categories_list): deal with renaming var to categories - (cal_component_set_categories_list): fix brokeness - -2001-01-03 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-commands.c (new_calendar): Handle the case where - the calendar view cannot be created; present a warning dialog box. - (new_calendar): Do not show the widget here, since we already show - it in control-factory.c. - - * gui/control-factory.c (control_factory_new_control): Handle the - case where the calendar view cannot be created. - - * gui/component-factory.c (create_view): Ditto. - - * gui/calendar-summary.h: Added prototype for - calendar_summary_factory_init(). - -2001-01-02 Federico Mena Quintero <federico@helixcode.com> - - * gui/alarm-notify.c (add_component_alarms): If the component has - no alarms, do not try to queue them. - (remove_client_alarms): New function to remove all the queued - alarms for a calendar client. - (alarm_notify_remove_client): Remove the client's alarms. - -2001-01-02 Federico Mena Quintero <federico@helixcode.com> - - * gui/dialogs/delete-comp.c (delete_component_dialog): Do not - compose strings so that they can be localized correctly. Also, - convert from UTF8 into the font's encoding. Fixes bug #1030. - - * gui/e-calendar-table.c (delete_component): Pass the widget - argument to delete_component_dialog(). - - * gui/e-day-view.c (e_day_view_on_delete_appointment): Likewise. - - * gui/e-week-view.c (e_week_view_on_delete_appointment): Likewise. - - * gui/event-editor.c (file_delete_cb): Likewise. - - * gui/calendar-commands.c: Use BONOBO_UI_VERB() instead of - BONOBO_UI_UNSAFE_VERB(). Guess what, all of our handler - signatures were wrong. - - * gui/event-editor.c: Likewise. - - * gui/dialogs/task-editor.c: Likewise. - - * gui/goto-dialog.glade: Added some spacing between the month/year - widgets and the calendar widget. - -2001-01-01 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_destroy): Unconditionally remove - the client from the alarm notification system. - Removed all the obsolete alarm code. - - * gui/event-editor.c: Removed some crufty externs left over from - Gnomecal. - - * gui/calendar-commands.c: #include "goto.h" - Removed crufty variables left over from Gnomecal. - (new_calendar): Do not take a full_name parameter. - (init_username): Removed function. - (init_calendar): Wheeeeeeee! Removed crufty function. - (quit_cmd): Removed function. - - * gui/print.c (WEEK_STARTS_ON_MONDAY): Made it unconditionally - FALSE because we do not use the configuration setting anyways. - Sigh, all the printing code needs to be revamped. - -2000-12-26 Iain Holmes <iain@helixcode.com> - - * gui/calendar-summary.c (create_summary_view): Create a shared - BonoboEventSource object. - -2000-12-25 Miguel de Icaza <miguel@helixcode.com> - - * gui/e-day-view.c (e_day_view_init): Set draw background to FALSE. - (e_day_view_reshape_long_event): ditto. - (e_day_view_reshape_day_event): ditto. - -2000-12-22 JP Rosevear <jpr@helixcode.com> - - * gui/dialogs/delete-comp.c (delete_component_dialog): Clean up - translatable strings for translators, fixes bug 993 - -2000-12-22 JP Rosevear <jpr@helixcode.com> - - * gui/goto.c (create_ecal): Make sure the current month is shown - when the dialog pops up. - - * gui/goto-dialog.glade: Remove flicker - -2000-12-22 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend-file.c (cal_backend_file_get_alarms_for_object): - account for the case where there are no alarms, fixes crash - -2000-12-22 JP Rosevear <jpr@helixcode.com> - - * gui/goto.c (ecal_date_range_changed): New function to keep the - ecal marked properly - (create_ecal): move more creation code here, update marks - (goto_dialog_init_widgets): listen for date_range_changed signal - in the ecal - - * gui/calendar-commands.c (init_calendar): Remove ancient gnomecal - cruft - - * gui/mark.[hc], gui/prop.c: Remove ancient gnomecal code that is - no longer needed, last bit of bug 904 - -2000-12-22 JP Rosevear <jpr@helixcode.com> - - * gui/goto-dialog.glade.h: translations - - * gui/goto-dialog.glade: new glade file for goto dialog - - * gui/gnome-cal.c (setup_widgets): Set date navigator attributes - - * gui/calendar-commands.h: remove prototype - - * gui/goto.h: Add prototype - - * gui/Makefile.am: Add glade file stuff - - * gui/gnome-cal.c (setup_widgets): Use accessors to configure the - calendar item properly - -2000-12-21 Federico Mena Quintero <federico@helixcode.com> - - Alarm trigger queueing for the GUI part. - - * gui/alarm-notify.[ch]: New files with the high-level alarm - notification system; mostly moved over from gnome-cal.c. The - low-level timer stuff is still in alarm.[ch]. - - * gui/alarm-notify.c (alarm_notify_init): New function to - initialize the alarm notification system. - (alarm_notify_done): New function to shut down the alarm - notification system. - (alarm_notify_add_client): New function to start monitoring a - calendar client for alarm notification. - (alarm_notify_remove_client): New function to stop monitoring a - client. - - * gui/alarm.h (AlarmDestroyNotify): Also pass in the alarm ID so - the callback may know which ID is being destroyed. - - * gui/alarm.c (clear_itimer): New function. - (pop_alarm): Use clear_itimer(). - (alarm_done): New function to shut down the timer system. - (alarm_add): Add some preconditions. Do not call the destroy - notification function if we could not create the alarm. - (alarm_ready): Pass the alarm ID to the destroy notify function. - (alarm_remove): Likewise. Also, add some preconditions. - - * gui/gnome-cal.c: Removed the alarm notification functions from - here since they are now in alarm-notify.c. - (gnome_calendar_construct): Register the client with - alarm_notify_add_client(). - (gnome_calendar_destroy): Use alarm_notify_remove_client() to - unregister the client. - (obj_updated_cb): Do not do any alarm-related stuff. - (obj_removed_cb): Likewise. - - * gui/main.c (main): Shut down the alarm timer system. - (main): Initialize and shut down the alarm notification system. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - alarm-notify.[ch] to the list of sources. - - * gui/calendar-model.c (calendar_model_set_cal_client): Only - connect to the "cal_loaded" signal if the client is not already - loaded. - - * gui/e-day-view.c (e_day_view_set_cal_client): Likewise. - - * gui/e-week-view.c (e_week_view_set_cal_client): Likewise. - - * gui/e-itip-control.c (update_calendar): Connect to "cal_loaded" - before issuing the load request. - -2000-12-21 Iain Holmes <iain@helixcode.com> - - * gui/calendar-summary.c: Updated for new executive summary. - - * gui/component-factory.c: Reenabled the summary. - - * gui/GNOME_Evolution_Calendar.oafinfo: Added the summary. - -2000-12-20 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.h: Fix erroneous documentation - - * conduits/todo/todo-conduit.c (comp_from_remote_record): if - !is_empty_time rather than is_empty_time - (e_todo_context_new): Return a pointer rather than fill in - a parameter - (e_todo_context_foreach_change): Free just the key - (e_todo_context_destroy): Plug this enormous leakage. I had assumed - i had done this earlier, which isn't too bright when anything beyond - 2 minutes ago is fuzzy. - (comp_from_remote_record): Kill warnings - (post_sync): Destroy the map later - (conduit_get_gpilot_conduit): Fix e_todo_context_new params - - * conduits/calendar/calendar-conduit.[hc]: Similar to above - -2000-12-19 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c: Remove pointless comment - - * conduits/todo/todo-conduit.c (is_empty_time): add utility function - (comp_from_remote_record): use it - -2000-12-19 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - Convert cal component strings to pilot character set - (comp_from_remote_record): vice versa - - * conduits/todo/todo-conduit.c: Same as above - -2000-12-19 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend-file.c (compute_alarm_range): Fix confusion in - the way the range is expanded. - - * cal-util/cal-component.c (cal_component_alarms_free): Doh, - alarms->alarms is a list, not a generic pointer. Free it properly. - (cal_component_free_pilot_id): Removed unused function. - (cal_component_free_pilot_status): Likewise. - - * gui/main.c (init_bonobo): Use VERSION instead of a hardcoded - string. Pass argc by value, not by reference. Test the return - value of gnome_init_with_popt_table(). - - * cal-client/cal-client.c (cal_client_free_alarms): Oops, missed - implementing this function. - - * cal-util/timeutil.c (print_time_t): Better printing format. - (isodiff_to_secs): Removed unused function. - (isodiff_from_secs): Removed unused function. - (time_day_end): Removed crufty part. - (time_day_begin): Removed crufty part. - (time_day_hour): Removed unused function. - (format_simple_hour): Removed unused function. - (get_time_t_hour): Removed unused function. - (time_from_start_duration): Removed unused function. - - * cal-util/timeutil.h (parse_date): Removed unimplemented, unused - function prototype. - -2000-12-19 Christopher James Lahey <clahey@helixcode.com> - - * gui/gnome-cal.c: Removed prototype for setup_alarm to fix a - warning. - -2000-12-18 Federico Mena Quintero <federico@helixcode.com> - - Alarm instance generation support for the Wombat. - - * idl/evolution-calendar.idl (Cal::CalAlarmInstance): Changed to - have an alarm UID, the trigger time, and the actual occurrence - time. - (Cal::CalComponentAlarms): New structure to hold a pair of a - component and its alarms that trigger in a particular range of - time. - (Cal::getAlarmsInRange): Changed to return a CalComponentAlarmsSeq. - - * cal-util/cal-component.h (CalAlarmInstance): New C-side - structure to match the one on the IDL. - (CalComponentAlarms): Ditto. - (CalAlarmAction): Renamed from CalComponentAlarmAction. - (CalAlarmTriggerType): Renamed from CalComponentAlarmTriggerType. - Encoded the START and END parameters for the RELATED parameter in - this enum, too. Added a NONE value for invalid or missing trigger - specifications. - (CalComponentAlarmTriggerRelated): Removed. - (CalAlarmTrigger): Renamed from CalComponentAlarmTrigger. Renamed - the duration/time fields to rel_duration/abs_time, respectively. - - * cal-util/cal-component.c (cal_component_alarm_get_trigger): - Changed to use the new trigger structure. - (cal_component_alarm_set_trigger): Likewise. - (cal_component_alarm_free_trigger): Removed function. - (cal_component_has_alarms): Count the elements in the - alarm_uid_hash instead of trying to fetch the first alarm subcomponent. - (cal_component_alarms_free): New function to free a - CalComponentAlarms structure. - (CalComponentAlarmPrivate): Added an uid property pointer. - (scan_alarm_property): Scan for the our extension UID property. - (cal_component_alarm_get_uid): New function. - - * pcs/cal-backend.h (CalBackendClass): Changed the signatures of - the ::get_alarms_in_range() and ::get_alarms_for_object() methods. - - * pcs/cal-backend.c (cal_backend_get_alarms_in_range): Changed - signature; use the new method. - (cal_backend_get_alarms_for_object): Likewise. - - * pcs/cal-backend-file.c (compute_alarm_range): New spiffy - function to compute a range of time for alarm occurrences. - (add_alarm_occurrences_cb): New function to add alarms for a - particular occurrence of the component. - (generate_absolute_triggers): New function to add the absolute - alarm triggers. - (generate_alarms_for_comp): New function to generate all the alarm - instances for a component. - (cal_backend_file_get_alarms_in_range): Implemented. - - * pcs/cal.c (Cal_get_alarms_in_range): Use the new CalBackend API. - (Cal_get_alarms_for_object): Likewise. - (build_alarm_instance_seq): Removed old function. - - * cal-util/cal-util.c (cal_alarm_instance_list_free): Removed - function. - - * cal-client/cal-client.c (build_component_alarms_list): New - function to demarshal the component alarms sequence. - (build_alarm_instance_list): New function to demarshal the alarm - instances sequence. - (cal_client_get_alarms_in_range): Updated for the new API. - (cal_client_get_alarms_for_object): Updated for the new API. - - * gui/gnome-cal.c: Temporary #ifdef-ing out of alarm-related stuff - to make it build. - -2000-12-15 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/timeutil.[ch] (time_from_isodate): Removed unused - function, a relic from Gnomecal. - -2000-12-15 Dan Winship <danw@helixcode.com> - - * cal-util/timeutil.c (time_from_isodate): Fix the sign in the - HAVE_TM_GMTOFF case - -2000-12-15 Federico Mena Quintero <federico@helixcode.com> - - * gui/Makefile.am (evolution_calendar_SOURCES): Removed getdate.y. - We no longer use it; it is a relic from Gnomecal. - - * gui/getdate.y: Removed file. - -2000-12-14 Federico Mena Quintero <federico@helixcode.com> - - Fixes bug #955. - - * gui/weekday-picker.c (WeekdayPickerPrivate): Added a field for - the week_start_day, to be used in the same way as - calendar-config.h defines it. Removed the week_starts_on_monday - flag. - (day_event_cb): Use the week_start_day. - (colorize_items): Likewise. - (configure_items): Likewise. - (weekday_picker_set_week_start_day): New function. - (weekday_picker_get_week_start_day): New function. - (weekday_picker_set_week_starts_on_monday): Removed function. - (weekday_picker_get_week_starts_on_monday): Removed function. - - * gui/widget-util.[ch]: New files with utilities for creating or - configuring widgets. - - * gui/widget-util.c (date_edit_new): New function to create an - EDateEdit configured with the calendar's preferences; moved over - from event-editor.c. - - * gui/event-editor.c (make_recur_weekly_special): Use - weekday_picker_set_week_start_day() and the corresponding function - from calendar-config.h. - (init_widgets): Likewise. - (make_date_edit_with_time): Removed function. - (make_recur_ending_until_special): Use date_edit_new(). - (make_date_edit): Likewise. - - * gui/dialogs/task-editor.c (task_editor_create_date_edit): Likewise. - - * gui/event-editor-dialog.glade: Removed references to - make_date_edit_with_time(); replace them with make_date_edit(). - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - widget-util.[ch] to the list of sources. - -2000-12-14 Federico Mena Quintero <federico@helixcode.com> - - * gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): Reset the widths - of the columns with pixbufs to the actual pixbufs' sizes; now - ETable properly computes its column widths so we do not need to - add extra padding here. - -2000-12-14 Dan Winship <danw@helixcode.com> - - * gui/calendar-model.c (_XOPEN_SOURCE): #define this to 500, not - nothing. Also, move this bit after the other #includes to - prevent potential messiness. - -2000-12-13 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (ensure_mandatory_properties): Even - though icaltime_from_timet() now properly ignores the is_utc - argument since time_t values *are* in UTC by definition, we were - passing FALSE for that argument's value in a bunch of places. So - although it is ignored, changed them to TRUE for consistency. - Hopefully newer versions of libical will remove that argument - entirely since it does not make sense to speak of non-absolute - time_t values. - - * cal-util/cal-recur.c (cal_recur_set_rule_end_date): Likewise. - - * conduits/calendar/calendar-conduit.c (comp_from_remote_record): Likewise. - - * conduits/todo/todo-conduit.c (comp_from_remote_record): Likewise. - - * gui/dialogs/task-editor.c (dialog_to_comp_object): Likewise. - - * gui/e-day-view.c (e_day_view_on_new_appointment): Likewise. - (e_day_view_on_delete_occurrence): Likewise. - (e_day_view_on_unrecur_appointment): Likewise. - (e_day_view_on_unrecur_appointment): Likewise. - (e_day_view_finish_long_event_resize): Likewise. - (e_day_view_finish_resize): Likewise. - (e_day_view_key_press): Likewise. - (e_day_view_on_top_canvas_drag_data_received): Likewise. - (e_day_view_on_main_canvas_drag_data_received): Likewise. - - * gui/e-week-view.c (e_week_view_key_press): Likewise. - (e_week_view_on_new_appointment): Likewise. - (e_week_view_on_delete_occurrence): Likewise. - (e_week_view_on_unrecur_appointment): Likewise. - - * gui/event-editor.c (simple_recur_to_comp_object): Likewise. - (recur_to_comp_object): Likewise. - (dialog_to_comp_object): Likewise. - - * gui/gnome-cal.c (gnome_calendar_new_appointment): Likewise. - -2000-12-13 Christopher James Lahey <clahey@helixcode.com> - - * cal-util/cal-recur.c: #if 0ed cal_obj_date_only_compare_func. - (cal_object_get_rdate_end): Changed this function to get rid of a - possible uninitialized error on the rdate function. - - * gui/calendar-model.c: Fixed some warnings involving the #define - _XOPEN_SOURCE lines here. - - * gui/component-factory.c: #ifdef WANT_THE_EXECUTIVE_SUMMARYed out - the summary_factory object since it's unused if - WANT_THE_EXCUTIVE_SUMMARY is not defined. - - * gui/e-day-view.c: #if 0ed out e_day_view_remove_event_cb. - (obj_updated_cb): #ifndef NO_WARNINGSed out a #warning. - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): Made - it so that - - * gui/e-week-view.c (obj_updated_cb): #ifndef NO_WARNINGSed out a - #warning. - -2000-12-13 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/Makefile.am: Revert federico's change for now - because of libtool limitations with ldadding shared libtool - libs - - * conduits/calendar/Makefile.am: ditto - -2000-12-12 JP Rosevear <jpr@helixcode.com> - - * gui/dialogs/task-editor.c (task_editor_set_todo_object): Use - set_title_from_comp - (save_todo_object): ditto - (set_title_from_comp): Make sure the title is encoded properly (as in - event-editor) - -2000-12-12 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (get_text_list): Constify for new - libical API. - (set_text_list): Likewise. - - * cal-util/cal-recur.c (cal_recur_get_rule_end_date): Likewise. - (cal_recur_set_rule_end_date): Likewise. - - * gui/e-itip-control.c (find_attendee): Likewise. - (pstream_load): Likewise. - - * gui/gnome-cal.c (released_event_object_cb): Removed unused function. - - * gui/dialogs/task-editor.c (status_string_map): Removed unused - variable. - -2000-12-11 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/Makefile.am (test_recur_LDADD): Link to the libical - shared library. - - * cal-client/Makefile.am (client_test_LDADD): Likewise. - - * conduits/calendar/Makefile.am (libecalendar_conduit_la_LIBADD): - Likewise. - - * gui/Makefile.am (LINK_FLAGS): Likewise. - -2000-12-11 Federico Mena Quintero <federico@helixcode.com> - - This is to make things work with libical 0.21helix1 and later. - Warnings remain because at last libical was constified; will take - care of those tomorrow. - - * cal-util/timeutil.h: #include <ical.h> instead of <icaltypes.h> - - * gui/e-itip-control.c: Likewise. - - * gui/e-meeting-edit.c: Likewise. - - * gui/itip-utils.h: Likewise. - - * cal-util/cal-component.c (alarm_uid_from_prop): constify. - (cal_component_get_status): Updated for new libical API. - (cal_component_set_status): Likewise. - - * gui/calendar-model.c (ensure_task_complete): Removed unused - status code. - (ensure_task_not_complete): Update for new status API. - - * gui/dialogs/task-editor.c (status_string_to_value): Removed - function. - (status_value_to_string): Removed function. - (status_string_map): Removed variable. - (fill_widgets): Update for new status API. - (dialog_to_comp_object): Likewise. - -2000-12-11 Damon Chaplin <damon@helixcode.com> - - * cal-util/cal-recur.c (generate_instances_for_chunk): updated the - tests on the start & end time just before calling the callback. It - was skipping occurrences that started before the required interval's - start time, which was wrong. We want all occurrences that intersect - the interval. - (cal_obj_time_weekday): removed the CalRecurrence* argument, since it - isn't needed. - -2000-12-11 Damon Chaplin <damon@helixcode.com> - - * gui/event-editor.c: added changed flags and added calls to a new - function event_editor_set_changed() to set & reset this flag. - Added prompt_to_save_changed() which is called when the user - selects File/Close or the window's close button. - Fixed the 'All day event' toggle button. - Made the 'Alarm' page sensitive as appropriate when filling widgets. - (Though note that the alarm widgets are not being set yet.) - - * gui/dialogs/task-editor.c: added changed flag as above. - - * gui/event-editor-dialog.glade: used good names for all the - classification radio buttons so we can access them in the code. - - * gui/event-editor.c (init_widgets): use the "show week numbers" config - option in the recurrence preview calendar. - - * gui/e-day-view.c (e_day_view_update_event_label): use 9:00 instead - of 09:00 in the main view, as we do everywhere else now. It means the - times won't line up, but they are easier to read which I think is - better. - Added support for Page Up/Down, though I think it should move the - selection rather than just scroll the canvas. - - * cal-util/cal-recur.c (generate_instances_for_chunk): removed the - end parameter since we should be using the chunk end time now. - Added single_rule parameter for when we are generating the - occurrences of a single RRULE, in which case the event's start date is - not included in the occurrences output (unless it results from the - RRULE expansion). Both of these fix problems when using COUNT. - - * gui/gnome-cal.c (gnome_calendar_on_date_navigator_selection_changed): - fixed bug when checking if the new start day starts on the week start - day. If you select a complete week it should now show the Week view. - -2000-12-08 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (dialog_to_comp_object): Free the strings we - get from the editables. - - * gui/dialogs/task-editor.c (dialog_to_comp_object): Likewise. - This sucks; this code should be shared between the two dialogs. - -2000-12-08 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (fill_widgets): Free the dates we get from - the component. - -2000-12-08 JP Rosevear <jpr@helixcode.com> - - * gui/e-calendar-table.c (e_calendar_table_init): Attach signal - handlers to the e_scrolled_table's etable rather than to the - e_scrolled_table directly - (e_calendar_table_on_double_click): This signal provides more - params now - -2000-12-07 Christopher James Lahey <clahey@helixcode.com> - - * gui/e-calendar-table.c: Got rid of code referencing the - ETableScrolled proxy functions. - -2000-12-07 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (post_sync): Ugly hack for syncing - until pcs can be altered (longer term) - - * conduits/todo/todo-conduit.c (post_sync): ditto - -2000-12-07 Chris Toshok <toshok@helixcode.com> - - * cal-client/Makefile.am (client_test_LDADD): add - EXTRA_GNOME_LIBS. - -2000-12-07 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_compute_changes_foreach_key): Create - an empty cal component if the object has been deleted. - - * idl/evolution-calendar.idl: Bit shift the change type constants - properly - -2000-12-07 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/cal-client.c (cal_client_generate_instances): Unref - the component from the objects list; it got referenced as many - times as appropriate for the instances list. - -2000-12-06 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (file_delete_cb): Confirm before deleting the - event. - -2000-12-06 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view.c (e_week_view_init): unref the pixbuf when - finished with it - -2000-12-06 Federico Mena Quintero <federico@helixcode.com> - - Fixes bug #920. - - * gui/e-calendar-table.c (delete_component): New function. - (e_calendar_table_on_delete_task): Use delete_component(). - (e_calendar_table_on_key_press): Likewise. Also, mark the event - as handled. - - * gui/calendar-model.c (calendar_model_get_component): Renamed - function from calendar_model_get_cal_object(). - (calendar_model_delete_task): Removed function. - - * gui/dialogs/delete-comp.[ch]: New files with the dialog for - deleting a calendar component. - - * gui/e-day-view.c (e_day_view_on_delete_appointment): Confirm - before actually deleting the appointment. - - * gui/e-week-view.c (e_week_view_on_delete_appointment): Likewise. - - * gui/dialogs/Makefile.am (libcal_dialogs_a_SOURCES): Added - delete-comp.[ch] to the list of sources. - - * cal-util/cal-component.c (cal_component_destroy): Free the alarm - UID hash. - -2000-12-06 JP Rosevear <jpr@helixcode.com> - - * pcs/cal.c (build_change_seq): kill - (Cal_get_changes): return the corba sequence directly - - * pcs/cal-backend.h: update prototype - - * pcs/cal-backend.c (cal_backend_compute_changes_foreach_key): Build - the corba struct rather than the old calobjchange thing - (cal_backend_compute_changes): ditto. build and return the actual - corba sequence rather than the list of calobjchanges - (cal_backend_get_changes): return the corba sequence - - * cal-util/cal-util.h: Remove CalObjChange cruft - - * cal-util/cal-util.c (cal_obj_change_list_free): Kill - -2000-12-06 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-util.c: - - * conduits/calendar/calendar-conduit.c (map_name): Update so as not to conflict - with calendar - (next_changed_item): update to use CalClientChange instead of CalObjChange - (compute_status): ditto - (pre_sync): ditto - (for_each_modified): since we now have the cal component we can call - local_record_from_comp directly - - * conduits/todo/todo-conduit.c: same as above - - * pcs/cal-backend.c: Remove much logging cruft - (cal_backend_compute_changes): Calculate the changes based on the - hashed database - (cal_backend_get_changes): call cal_backend_compute_changes - (cal_backend_compute_changes_foreach_key): hash callback for - calculating deletions - - * pcs/cal-backend.h: update protype, remove logging cruft from - object - - * pcs/cal.c (build_change_seq): dup the calobj rather than the uid - now - (Cal_get_changes): rename from Cal_get_changed_uids - (cal_get_epv): reflect name change in epv - - * cal-util/cal-util.c (cal_obj_change_list_free): update assertion - - * cal-util/cal-util.h: CalObjChange now returns the entire ical - component, update the change types. This should all go away shortly - - * idl/evolution-calendar.idl: getChangedUIds -> getChanges. - CalObjChange now contains the calobj rather than the uid, update - the change types - - * cal-client/cal-client.c (cal_client_get_changes): rename from - cal_client_get_changed_uids to make idl and addressbook - - * cal-client/cal-client.h: Update prototype - - * cal-client/cal-client.c (build_change_list): Build a list of - CalClientChange instead of CalObjChange - - * cal-client/cal-client-types.c (cal_client_change_list_free): Free - a glist of CalClientChanges - - * cal-client/cal-client-types.h: New file. Declarations for - CalClientChange. - - * cal-client/Makefile.am: Build new files - -2000-12-06 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/Makefile.am: Fix my build stupidty READ THE MACRO - - * conduits/calendar/Makefile.am: ditto - -2000-12-04 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view-time-item.c (e_day_view_time_item_get_column_width): - Initialize max_large_digit_width to 0 to prevent crazy sizing issues. - -2000-12-04 Dan Winship <danw@helixcode.com> - - * gui/e-itip-control.c: Remove mysterious #include inserted by - mmeeks to break the build. - -2000-12-01 Federico Mena Quintero <federico@helixcode.com> - - Fixes bug #918. - - * gui/weekday-picker.c (WeekdayPickerPrivate): Added a field for a - set of blocked days. - (weekday_picker_set_blocked_days): New function to configure a set - of days that cannot be modified by the user. - (weekday_picker_get_blocked_days): Query function for the above. - (day_event_cb): Block the appropriate days from being modified. - - * gui/event-editor.c (get_start_weekday_mask): New function to - compute a day mask for the start day of a calendar component. - (set_recur_special_defaults): New function to set sane defaults - for the recurrence special widgets. - (fill_recurrence_widgets): Use set_recur_special_defaults(). - (make_recur_weekly_special): Block the appropriate days. - -2000-12-01 Federico Mena Quintero <federico@helixcode.com> - - * gui/control-factory.c (set_prop): Removed debugging message. - (control_factory_init): Ditto. - - * gui/calendar-commands.c (calendar_set_uri): Ditto. - - * gui/main.c (main): Ditto. - - * gui/event-editor.c (set_title_from_comp): New function to - generate a title and convert it from UTF8 before setting it on the - window. - (save_event_object): Uset set_title_from_comp(). - (event_editor_set_event_object): Likewise. - -2000-11-30 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c: Debug message cleanups - (comp_from_remote_record): Properly set the ical description field - - * conduits/calendar/calendar-conduit.c (is_empty_time): New utility - functions that look for all 0's in a struct tm - (comp_from_remote_record): use above - (local_record_from_comp): Correctly set the repeatForever value so - that we repeat forever instead of a really long time - (comp_from_remote_record): Only set the cal component recurrence - until field when repeatForever is 0 - -2000-11-30 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: fixed a bug that caused the calendar to - segfault when the iTip control was destroyed. - -2000-11-30 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): Empty - by_day entries are no longer indicated by ICAL_RECURRENCE_ARRAY_MAX not - SHRT_MAX. Calculate weekly and monthly by date recurrences properly - (get_pilot_day): Convert ical day to corresponding integer for pilot day - -2000-11-30 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c: Debug message cleanups - (get_ical_day): Fix off-by-one error which affected weekly occurences. - (comp_from_remote_record): Monthly by day and by date were reversed - (nth_weekday): function taken from event-editor.c that encodes BYDAY - values - this needs to be in libical really. - (comp_from_remote_record): Don't set the description if the pilot note - is null. Rejig so that we don't have to free objects. - -2000-11-28 Federico Mena Quintero <federico@helixcode.com> - - Upgrade of the alarm framework. We now access alarms by a unique - identifier. This UID is added as an extension property to alarm - subcomponents when their parent components are scanned by - CalComponent. - - * cal-util/cal-component.c (CalComponentPrivate): Added a hash - table of alarm UIDs -> alarm properties. - (cal_component_init): Initialize priv->alarm_uid_hash. - (free_icalcomponent): Free the elements in the - priv->alarm_uid_hash. - (scan_alarm): New function to add scan an alarm subcomponent and - ensure that it has an alarm UID extension property so that we can - add it to our mapping table. - (cal_component_get_first_alarm): Removed function. - (cal_component_get_next_alarm): Removed function. - (cal_component_get_alarm_uids): New function. - (cal_component_get_alarm): New function. - -2000-11-28 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (local_record_to_pilot_record): Return - a struct rather than a pointer to a struct - (compare): local_record_to_pilot_record now returns a struct - (prepare): ditto - (free_prepare): remove as per gnome-pilot changes - (conduit_get_gpilot_conduit): don't listen for free_prepare signal - - * conduits/calendar/calendar-conduit.c: Same as above - -2000-11-28 Federico Mena Quintero <federico@helixcode.com> - - * gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): Reformatted the - table spec to make it easier to read. - - * gui/tag-calendar.c: Oops, Damon wrote this, not me. Fixed the - Authors line. - -2000-11-28 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view*.[hc]: - * gui/e-week-view*.[hc]: finished 12-hour support and tried to tidy - up & comment the drawing code in places. Also fixed a couple of bugs I - spotted. All the options on the 'Calendar' page should now work. - -2000-11-28 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: removed some debugging code that I had, - which might have caused problems. - -2000-11-27 Jesse Pavel <jpavel@helixcode.com> - - * gui/calendar-model.c: added a preliminary change to have - Assigned To-Do items have a corresponding icon. - -2000-11-27 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (free_prepare): Ditto - - * conduits/calendar/calendar-conduit.c (free_prepare): Adjust - free_prepare to the correct signal parameters. Don't actually - do anything - there is a semantic discrepancy that needs to be - resolved. - -2000-11-26 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c (e_day_view_set_days_shown): == instead of =. - -2000-11-26 Damon Chaplin <damon@helixcode.com> - - * gui/gnome-cal.c: added more support for config settings. - - * gui/e-week-view.[hc]: - * gui/e-day-view.[hc]: added support for setting - show event end - times, week start day and 12-hour format (unfinished). - - * gui/e-day-view-time-item.c: started 12-hour support. - - * gui/tag-calendar.c (prepare_tag): use end_day + 1 since we want to - include the last day. - - * gui/event-editor.c (set_all_day): minor change when turning all_day - off - set the event end to one hour after the event start if it is on - or before the start time. Also added more comments to make it a bit - clearer. - - * cal-util/cal-recur.c (cal_obj_time_add_days): use a gint for day - rather than a guint since we now support -ve days. - Also fixed bug with weekly recurrences. - - * gui/dialogs/task-editor.c (task_editor_create_date_edit): use - config settings. - - * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_update_config): - updated EDateEdit calls. - -2000-11-24 Federico Mena Quintero <federico@helixcode.com> - - * gui/e-calendar-table.c (e_calendar_table_init): Unref the ETable - extras. - -2000-11-24 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (free_icalcomponent): DOH, fixed - reversed test for the presence of the icalcomp's parent. This was - causing memory leaks in the Wombat and elsewhere. - - * pcs/cal-backend.c (cal_backend_set_node_timet): Plug leak. - -2000-11-24 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend-file.c (scan_vcalendar): Use the new libical - external iterators (icalcomponent_begin_component() and friends); - the internal iterators are deprecated. - - * cal-util/test-recur.c (generate_occurrences): Likewise. - - * gui/e-itip-control.c (pstream_load): Likewise. - - * gui/e-meeting-edit.c (e_meeting_edit): Likewise. - - * pcs/cal-backend.c (cal_backend_log_entry): Plug leak. - (cal_backend_log_sync): Free the entry->uid. - - * util/icalendar-save.[ch]: - * util/icalendar-test.c: - * util/icalendar.[ch]: Removed obsolete files. - -2000-11-21 Federico Mena Quintero <federico@helixcode.com> - - * gui/task.xpm: Remove the check because it makes it look like the - task is already completed. This fixes bug #819. - - * gui/task-recurring.xpm: Make it use a prettier overlaid icon. - - * gui/task-*.xpm: Made the things look like little spiral-bound - notebooks. - - * gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): Make the default - column order be icon/completed/summary. You may need to erase - your ~/evolution/config/TaskPad for this to appear. - -2000-11-21 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (calendar_model_is_cell_editable): The icon - column is not editable! - - * gui/calendar-commands.c (todo_properties_changed): Removed. - (time_format_changed): Removed. - (colors_changed): Removed. - - * gui/calendar-commands.h: - * gui/prop.c (prop_apply): - * gui/calendar-commands.c (init_calendar): Removed the old to-do - list crap. - - * gui/gncal-todo.[ch]: Removed obsolete files. - - * gui/Makefile.am (evolution_calendar_SOURCES): Removed gncal-todo.[ch]. - - * gui/gnome-cal.c (gnome_calendar_todo_properties_changed): Removed. - (gnome_calendar_time_format_changed): Removed. - (gnome_calendar_colors_changed): Removed. - -2000-11-21 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: fixed the stupid Bonobo widget size - allocation bug that had been vexing me. - - * gui/e-itip-control.glade: I removed some hacks that were - necessary for said size bug. - -2000-11-16 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c, gui/e-meeting-edit.c: added cancellation - code to our program; people can cancel meetings, which is the best - thing to do for most meetings. - -2000-11-13 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: made the REPLY code actually work. - -2000-11-13 Jesse Pavel <jpavel@helixcode.com> - - * gui/itip-utils.[ch]: I created this file to store some commonly used enumeration to - string mappings and functions. - - * gui/Makefile.am: this was changed to reflect the addition of the above file. - - * gui/e-itip-control.c: added code to take action on a REPLY message. - - * gui/e-meeting-edit.c: bug fixes. - -2000-11-12 Federico Mena Quintero <federico@helixcode.com> - - OK, bugzilla bug #829 is fixed and that does not redeem me from - extreme procrastination. Wheeeeeeeeeeeeeeee! - - * gui/event-editor-dialog.c: Changed the "Rule view" label to - "Preview" - -2000-11-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (make_recur_ending_count_special): Misspelled - "occurrences". - (fill_recurrence_widgets): Sensitize the "Custom recurrence" radio - button as appropriate. - (sensitize_recur_widgets): Resurrected the recurrence custom - warning label. - (get_widgets): Load the recurrence custom warning bin. - - * gui/event-editor-dialog.glade: Add an empty alignment for the - recurrence custom warning label. - -2000-11-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (recur_preview_date_range_changed_cb): New - function; re-tag the calendar when its date range changes. - (init_widgets): Connect to "date_range_changed" on the recurrence - preview calendar. - (make_recur_weekly_special): Connect to "changed" on the weekday - picker. - (recur_weekday_picker_changed_cb): New function; re-tag the calendar. - (month_day_menu_selection_done_cb): Re-tag the calendar. - (recur_month_index_value_changed_cb): Likewise. - (recur_ending_until_changed_cb): Likewise. - (recur_ending_count_value_changed_cb): Likewise. - (make_recur_monthly_special): Connect to "value_changed" on the - adjustment of the month index. - (make_recur_ending_until_special): Connect to "changed" on the - ending-until date picker. - (make_recur_ending_count_special): Connect to "value_changed" on - the ending-count adjustment. - (init_widgets): Set to zero the maximum number of selectable days - in the recurrence preview calendar. Set the week_start_day from - the calendar's configuration. - -2000-11-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (clear_widgets): Block the signals as appropriate. - (fill_ending_date): Ditto. - (fill_recurrence_widgets): Ditto. - (recurrence_type_toggled_cb): Only sensitize the widgets and - preview the recurrence if the toggle button is active. - -2000-11-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (recur_to_comp_object): Clear the rdate and - exrule lists from the component if we are setting a simple - recurrence. - (recur_to_comp_object): Set the exdate list here instead of in - dialog_to_comp_object(). - (preview_recur): New function to tag the recurrence preview - calendar based on the information from the dialog box. - (fill_exception_widgets): Fill the exception widgets here; moved - over from fill_widgets(). - (fill_recurrence_widgets): Call preview_recur(). Also, call - fill_exception_widgets() first of all. - (recurrence_type_toggled_cb): Call preview_recur(). - (recur_interval_selection_done_cb): Likewise. - (recur_ending_selection_done_cb): Likewise. - (recurrence_exception_add_cb): Likewise. - (recurrence_exception_modify_cb): Likewise. - (recurrence_exception_delete_cb): Likewise. - (date_changed_cb): Likewise. - (recur_interval_value_changed_cb): Likewise, new function. - - * gui/tag-calendar.[ch]: New files with utilities for tagging - calendars. mark.[ch] should go away some day. - - * gui/tag-calendar.c (tag_calendar): Moved over from - gnome_calendar_tag_calendar(). Take in a CalClient instead of a - GnomeCalendar. Added API docs. - (tag_calendar_by_comp): New function to tag a calendar based on a - single calendar component instead of a whole client. - - * gui/gnome-cal.c (initial_load): Use tag_calendar_by_client(). - (obj_updated_cb): Likewise. - (obj_removed_cb): Likewise. - (gnome_calendar_on_date_navigator_date_range_changed): Likewise. - (editor_closed_cb): Free the closure. - (destroy_editor_cb): Renamed from free_uid(). Do not free the - UID; just unref the event editor. Our destroy handler to it will - free things properly. This will also cause the corresponding - calendar client to be unrefed. - (editor_closed_cb): Use a flag on the GnomeCalendar to decide - whether to remove the editor from the hash table. This is sort of - icky. - - * gui/calendar-model.c (obj_updated_cb): If the object is new, we - have to use e_table_model_row_inserted(), not row_changed(). - Thanks to JP Rosevear for reporting this. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - tag-calendar.[ch] to the list of sources. - -2000-11-11 Matt Bissiri <bissiri@eecs.umich.edu> - - * gui/evolution-calendar.oafinfo: - Update the remaining "IDL:Evolution*" to "IDL:GNOME/Evolution*" - to sync up with yesterday's IDL re-scoping. - -2000-11-10 Michael Meeks <michael@helixcode.com> - - * gui/Makefile.am ($(IDL_GENERATED)): sort include order. - - * pcs/Makefile.am (idl_flags): ditto. - -2000-11-10 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (for_each_modified): Inc the - iterator before finding the next changed item. - - * conduits/todo/todo-conduit.c (for_each_modified): ditto - -2000-11-09 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: I wrote the code so that recipients of meeting requests - can reply appropriately. - -2000-11-09 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: fixed a bug that would make the calendar segfault - if the meeting editor were called up twice without first saving the - component. - -2000-11-08 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c, gui/e-itip-control.glade: updated the GUI - to allow the user to add PUBLISHed events to his calendar, and created - unworking buttons for meeting requests. - -2000-11-08 Federico Mena Quintero <federico@helixcode.com> - - These changes fix bugzilla bugs #874 and #875. - - * cal-util/cal-component.c (cal_component_get_exdate_list): Return - a list of CalComponentDateTime instead of simple struct - icaltimetype objects. Exception date properties *can* contain a - timezone parameter, so we need to include those if they are - present. - (cal_component_set_exdate_list): On the input, handle a list of - CalComponentDateTime structures. On the internals, handle a list - of struct datetime instead of plain properties. - (cal_component_free_exdate_list): Handle a list of - CalComponentDateTime structures. - (scan_exdate): Create a list of struct datetime structures. - (free_icalcomponent): Free the exdate_list properly. - - * cal-util/cal-recur.c (generate_instances_for_chunk): Use the - proper types for exception dates. - - * gui/comp-util.h: - * gui/comp-util.c: New files with utilities for manipulating - calendar component objects. - (cal_comp_util_add_exdate): New function. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - comp-util.[ch] to the list of sources. - - * gui/e-day-view.c (add_exdate): New convenience function to add - an exception date to a calendar component. - (e_day_view_on_unrecur_appointment): Use cal_comp_util_add_exdate(). - (e_day_view_on_delete_occurrence): Likewise. - - * gui/e-week-view.c (e_week_view_on_delete_occurrence): Likewise. - (e_week_view_on_unrecur_appointment): Likewise. - - * gui/event-editor.c (nth_weekday): Be paranoid about valid - position values. - (fill_widgets): Use the proper types for exdates. - (dialog_to_comp_object): Likewise. - -2000-11-08 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (adjust_day_index_spin): Adjust the valid - range of the month index spin button depending on the selection of - the day/weekday menu. - -2000-11-07 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c, gui/e-itip-control.glade: changed the GUI, - and added some extra feedback for the user. - -2000-11-07 Federico Mena Quintero <federico@helixcode.com> - - * gui/weekday-picker.h (WeekdayPickerClass): Added a "changed" - signal to notify of changes to the set of selected days. - - * gui/weekday-picker.c (weekday_picker_class_init): Create the - "changed" signal. - (weekday_picker_set_days): Emit the "changed" signal. - -2000-11-06 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c, gui/e-itip-control.glade: changed to GUI to - accomodate dynamically generated buttons, which will be tailored to - the type of iTip message that is incoming. - - * gui/e-meeting-dialog.glade gui/e-meeting-edit.c: added a new button - to publish events, in addition to requesting meetings. - -2000-11-05 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor-dialog.glade: Removed the old recurrence page. - Wheeeeeeeeee! - - * gui/event-editor.c (make_recurrence_special): Clear the monthly - widgets. - (make_recur_monthly_special): Create the monthly widgets. - (clear_widgets): Clear the monthly values. - (simple_recur_to_comp_object): Fill in the monthly values. - (fill_recurrence_widgets): Fill in the monthly and yearly source - values. - (dialog_to_comp_object): Take in a CalComponent instead of using - the event editor's directly. - (recur_to_comp_object): Likewise. - (simple_recur_to_comp_object): Likewise. - (EventEditorPrivate): Removed the widgets from the old recurrence - page. - (get_widgets): Likewise. - (clear_widgets): Likewise. - (dialog_to_comp_object): If the description or summary are empty, - just clear the description list or summary property, respectively, - instead of saving empty ones. - (simple_recur_to_comp_object): Set the week_start field. - - * gui/main.c: Fix includes, and add calendar-config.h. - - * gui/Makefile.am (evolution_calendar_SOURCES): The glade messages - file should not be in SOURCES. - -2000-11-05 Christopher James Lahey <clahey@helixcode.com> - - * doc/.cvsignore, doc/C/.cvsignore: Removed unnecessary .cvsignore - files. - -2000-11-03 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (check_all_day): Block signals from the - toggle button. - (date_changed_cb): Merged check_dates() and check_times() into - this function; provide better behavior as well. - (check_dates): Removed function. - (check_times): Removed function. - (init_widgets): Connect to the "changed" signal on the start_time - and end_time widgets. - (check_all_day): Use a better test. - - * gui/Makefile.am: Clean the idl-generated sources properly. - * cal-client/Makefile.am: Likewise. - -2000-11-03 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: added some checks for the type of an - incoming iCal component before passing it off to the CalComponent - routines. - -2000-11-02 Federico Mena Quintero <federico@helixcode.com> - - * gui/dialogs/task-editor.c (init_widgets): The date editor's - signal is now "changed". - (completed_changed): Renamed callback to reflect the name of the - signal. - -2000-11-01 Gediminas Paulauskas <menesis@delfi.lt> - - * gui/main.c: (main): added call to bindtextdomain and textdomain, so - all calendar gui shows up localized. - -2000-10-31 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (count_by_xxx): Hmmm. SHRT_MAX changed to - ICAL_RECURRENCE_ARRAY_MAX in libical. Deal with it. - (fill_recurrence_widgets): Likewise. - (simple_recur_to_comp_object): Fixed incorrect assertion. The - weekday picker is not the immediate child of the recurrence - special container. - (fill_recurrence_widgets): Call make_recurrence_special() after - setting the recurrence period type. - (fill_ending_date): Call make_recurrence_ending_special(). This - would be so much nicer if GTK+ were model/view all over. - -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 - -2000-10-30 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (sensitize_recur_widgets): New function. We - split it from the radio callback so that we can call it explicitly - from fill_recurrence_widgets(). - (fill_recurrence_widgets): Call sensitize_recur_widgets() as - appropriate. - -2000-10-30 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-commands.c (new_calendar): Removed the geometry and - hidden arguments. This code is ancient. - (all_calendars): Made static. This sucks; configuration should be - notification-based instead of "let's iterate through all open - calendars". - (active_calendars): Removed. Functions can check the length of - the all_calendars list if they are interested. - - * gui/event-editor.c (sync_entries): Do not take in an extra data - pointer. - (summary_changed_cb): Use a single call back to sync both entries. - (sync_date_edits): New function to sync two EDateEdit widgets. - (init_widgets): Connect the general and recurrence starting date - widgets. - -2000-10-27 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (sync_entries): New function. - (general_summary_changed_cb): Sync the general summary to the - recurrence summary widget. - (recurrence_summary_changed_cb): Vice-versa. - (init_widgets): Hook to the summaries. - - * event-editor-dialog.glade: Do not expand/fill the start and end - date so that the "all day event" button is not pushed all the way - to the right. - Decrease the spacing between the recurrence sentence widgets. - Remove a spurious empty label that was lurking around the - recurrence widgets. - Make the alarm widgets expand the right way. - Delete old recurrence widgets. - -2000-10-27 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (init_widgets): Connect to the recurrence - ending menu. - (recur_ending_selection_done_cb): Implemented. - (make_recurrence_ending_special): Implemented. - (make_recur_ending_until_special): Implemented. - (fill_ending_date): Implemented. - (make_recur_ending_count_special): Implemented. - (simple_recur_to_comp_object): Fill in the ending date. - (clear_widgets): Clear the recurrence ending widgets. - - * gui/event-editor-dialog.glade: Moved the recurrence type radio - buttons to a single hbox to save space. - Fixed the lower value of the recurrence interval spin button. - Removed the stale widgets from the recurrence ending date part. - -2000-10-27 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: fixed problems in which I allocated CORBA - strings of 0 length, but then didn't NULL terminate them. - -2000-10-27 <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (check_for_slow_setting): - Check boundary case of fast sync - - * conduits/todo/todo-conduit.c (check_for_slow_setting): ditto - -2000-10-27 <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (add_archive_record): Remove - invalid test. - (local_record_from_comp): If the event is all day, mark it as timeless - (comp_from_remote_record): Timeless events take up all day - - * conduits/todo/todo-conduit.c (add_archive_record): ditto - -2000-10-27 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (add_archive_record): Take proper - number of parameters - - * conduits/calendar/calendar-conduit.c (add_archive_record): ditto - -2000-10-26 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (EventEditorPrivate): Integrate Anna's new - recurrence page. Replace the old widget pointers with the new - ones. Modified the relevant functions accordingly and added - plenty of new ones. - (event_editor_get_cal_client): New function. - (fill_recurrence_widgets): This is *THE* tricky function for you. - It has to discriminate whether we get a recurrence we support for - editing or not. And this is not trivial. Sigh. - (event_editor_update_widgets): Added preconditions and API docs. - - * event-editor-dialog.glade: Fixed all the spacings/ - paddings/packing options so that the widgets will look right if - the dialog box is resized. Also fixes some misaligned widgets. - - * cal-util/cal-component.c (cal_component_set_rdate_list): Removed - incorrect assertion. - -2000-10-26 Michael Meeks <michael@helixcode.com> - - * pcs/cal-factory.c (str_tolower): unsigned chars to isalpha - - * cal-util/calobj.c (weekdaylist, weekdaynum): ditto. - -2000-10-25 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: brushed up some code to deal with - the organizer entry, and solidified the CORBA memory-freeing - issues. - -2000-10-25 Jesse Pavel <jpavel@helixcode.com> - - * removed the Evolution-Composer generated files, due - to a tip on how we do things. - -2000-10-25 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: I fixed a bunch of memory-deallocation - bugs, and finished the initial integration with the mailer. - - * gui/Makefile.am: made the build us the Evolution-Composer.idl - from the composer directory. - -2000-10-25 Jesse Pavel <jpavel@helixcode.com> - - * gui/Evolution-Composer.idl: added this from the composer IDL sources - - * gui/Makefile.am: changed to reflect the above IDL and the associated - orbit-idl generated files. - - * gui/Evolution-Composer.h, - gui/Evolution-Composer-common.c, - gui/Evolution-Composer-stubs.c, - gui/Evolution-Composer-skels.c: - the generated files, as per the above description. - - * gui/e-meeting-edit.c: more work towards mailer integration. - -2000-10-24 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: I've added code to interact with the mailer's - CORBA interfaces, though it's not yet working. - -2000-10-23 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (local_record_from_comp): Use - new e-pilot-map lookup function - (match): ditto - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): Use - new e-pilot-map lookup function - (match): ditto - -2000-10-23 Dan Winship <danw@helixcode.com> - - * pcs/Makefile.am (INCLUDES): - * gui/dialogs/Makefile.am (INCLUDES): - * gui/Makefile.am (INCLUDES): - * cal-util/Makefile.am (INCLUDES): - * cal-client/Makefile.am (INCLUDES): Update GNOMELOCALEDIR. - -2000-10-23 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.h: Use new libeconduit calls and - abstraction - - * conduits/calendar/calendar-conduit.c: ditto - - * conduits/calendar/calendar-conduit.h: ditto - - * conduits/todo/todo-conduit.c: ditto - - * conduits/calendar/Makefile.am: Add libeconduit-static.la - - * conduits/calendar/calendar-conduit.c (post_sync): Use e_pilot_map_write - (pre_sync): Use e_pilot_map_read - -2000-10-23 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/Makefile.am: Add libeconduit-static.la - - * conduits/todo/todo-conduit.c (post_sync): Use e_pilot_map_write - (pre_sync): Use e_pilot_map_read - -2000-10-21 Damon Chaplin <damon@helixcode.com> - - * gui/dialogs/cal-prefs-dialog.c - (cal_prefs_dialog_use_24_hour_toggled): removed debug message. - - * gui/e-calendar-table.c (e_calendar_table_save_state): new function - to save the state of the table to a given file. - - * gui/e-calendar-table.h (struct _ECalendarTable): added etable field - so we can access it to save the state. - - * gui/gnome-cal.c (gnome_calendar_destroy): call - e_calendar_table_save_state() to save the state of the TaskPad. - (setup_widgets): load the state of the TaskPad. - - * gui/calendar-config.c: added support for the default view. - - * gui/gnome-cal.c (gnome_calendar_construct): - (gnome_calendar_set_view_internal): use/set the default view setting. - -2000-10-20 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-editor.c: added more (working) integration with the - meeting schedular. - -2000-10-20 Jesse Pavel <jpavel@helixcode.com> - - * cal-utils/cal-component.c: in set_datetime(), I put an #if 0'd portion - of the code back into operation, because the icalproperty_remove_parameter() - function is now implemented. - - * gui/e-meeting-editor.c: added more (unworking) integration with the - meeting schedular. - -2000-10-20 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_destroy): New destroy - handler to properly stop the timer, sync the log and unref - the URI. - (cal_backend_last_client_gone): Just emit the signal, - clean up work is done in cal_backend_destroy now. - - * pcs/cal-backend-file.c (cal_backend_file_load): Unref the - uri we are replacing NOT the new uri. - -2000-10-20 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/Makefile.am: Fix build - - * conduits/calendar/Makefile.am: Fix build - -2000-10-20 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (delete_archive_record): - Don't throw an error - - * conduits/todo/todo-conduit.c (delete_archive_record): ditto - -2000-10-20 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit-control-applet.c: Add defines - - * conduits/todo/todo-conduit-config.h: put #ifdefs around functions - can't make this a public interface in the usual way as then the - symbols would be exported - - * conduits/todo/todo-conduit.c: Kill warnings. clahey will be - happy! Add some defines to include only the necessary config functions. - (conduit_get_gpilot_conduit): Hook up archive signals - - * conduits/calendar/calendar-conduit.c: Same as above - - * conduits/calendar/calendar-conduit-control-applet.c: ditto - - * conduits/calendar/calendar-conduit-config.h: ditto - -2000-10-20 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.h: s/BonoboUIHandler/BonoboUIComponent/ - - * gui/calendar-commands.c (properties_cmd): ditto. - -2000-10-20 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-model.c (calendar_model_value_at): use - cal_component_has_alarms(). - -2000-10-20 Damon Chaplin <damon@helixcode.com> - - * gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): added - _click-to-add-message, though I'm not sure if i18n will work. - - * cal-util/cal-recur.c (cal_obj_time_add_hours): - (cal_obj_time_add_minutes): - (cal_obj_time_add_seconds): updated to handle -ve args. - - * cal-util/timeutil.c (time_add_day): set tm_isdst to -1 before calling - mktime(). - - * cal-util/cal-recur.c (generate_instances_for_chunk): don't call the - callback if the event ends exactly on the interval start time. - - * gui/e-week-view.c (e_week_view_reshape_event_span): - * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - * gui/e-day-view.c (e_day_view_reshape_long_event): - (e_day_view_reshape_day_event): use cal_component_has_alarms(). - - * cal-util/cal-component.[hc]: added cal_component_has_alarms(). - -2000-10-16 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-config.c (config_read): set default MonthVPanePosition - to 1 rather than 0, so if you move the hpane you'll see the date - navigator. - -2000-10-19 Jesse Pavel <jpavel@helixcode.com> - - * gui/event-editor.[ch]: added a public function which causes the - event editor to reload its widgets to the associated CalComponent. - - * gui/e-meeting-edit.c: added rudimentary support for the phat - e-meeting-time-selector widget, though it has no effect on the - component yet. - - * gui/Makefile.am: the meeting editor depends on the meeting widget - library, now. - - * gui/e-itip-control.glade: I added another toolbar button that summons - from the hoary deep the meeting time widget. - -2000-10-19 Ettore Perazzoli <ettore@helixcode.com> - - * gui/Makefile.am: Add `event-editor-dialog.glade.h'. - (EXTRA_DIST): Add `$(glade_messages)'. - -2000-10-19 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.c (tb_print_cb): remove; redundant. - - * gui/event-editor.c (create_menu, create_toolbar): kill. - (event_editor_destroy): upd. - (event_editor_construct): update to new UI handler, cast - priv->general_summary to a widget not an object. - -2000-10-18 Michael Meeks <michael@helixcode.com> - - * gui/dialogs/task-editor.c (create_menu, create_toolbar): die. - (debug_xml_cb): add debugging hook. - - * gui/dialogs/Makefile.am: add EVOLUTION_DATADIR - - * gui/dialogs/task-editor.c (task_editor_construct): upd for new UI. - -2000-10-17 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit-control-applet.c: Add defines - - * conduits/todo/todo-conduit-config.h: put #ifdefs around functions - can't make this a public interface in the usual way as then the - symbols would be exported - - * conduits/todo/todo-conduit.c: Kill warnings. clahey will be - happy! Add some defines to include only the necessary config functions. - (conduit_get_gpilot_conduit): Hook up archive signals - - * conduits/calendar/calendar-conduit.c: Same as above - - * conduits/calendar/calendar-conduit-control-applet.c: ditto - - * conduits/calendar/calendar-conduit-config.h: ditto - -2000-10-16 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: You can now add incoming iTip - messages to your calendar store. - - * gui/e-itip-control.glade: added a progress bar dialog - in case the calendar loading takes a long time. - -2000-10-16 JP Rosevear <jpr@helixcode.com> - - * cal-client/cal-client.h: Remove pilot cruft. All pilot stuff - is in the conduits now and uses the logging facility. - - * pcs/cal-backend-file.c: ditto - - * pcs/cal-backend.h: ditto - - * pcs/cal-backend.c: ditto - - * pcs/cal.c: ditto - - * pcs/cal.h: ditto - - * idl/evolution-calendar.idl: ditto - - * cal-util/cal-component.h: ditto - - * cal-util/cal-component.c: ditto - - * cal-client/cal-client.c: ditto - - * conduits/calendar/calendar-conduit.c (local_record_from_comp): - Take a stab at storing recurrence stuff on the pilot properly - - * pcs/cal-backend.c (cal_backend_update_object): Don't log the - event until after the update in case its a new item - -2000-10-16 Tuomas Kuosmanen <tigert@helixcode.com> - - * gui/dayview.xpm, gui/workweekview.xpm, gui/weekview.xpm - gui/monthview.xpm gui/yearview.xpm: Updated icons, let me know - if you like these or not, I might work on these some more but - I wanted to put these versions up anyway to get feedback.. - -2000-10-15 Dan Winship <danw@helixcode.com> - - * gui/Makefile.am: Remove CPPFLAGS def since the -D there was - already in INCLUDES - -2000-10-14 Ettore Perazzoli <ettore@helixcode.com> - - * gui/evolution-calendar.oafinfo: Added an - "evolution:shell-component-icon" attribute. - -2000-10-12 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.{c,glade}: Made the control much more - relavent to the function at hand. - -2000-10-12 Damon Chaplin <damon@helixcode.com> - - * gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): set the 2 icon - columns to a min width of 18 and resizable to FALSE. - -2000-10-12 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): - (update_pixmaps): - (set_pixmap): set the pixmaps of the toolbar buttons for the views, - and removed a lot of old unused stuff. We'll use plain buttons for - the view buttons for now, until Bonobo toolbars support radio buttons. - - * gui/gnome-cal.c (gnome_calendar_dayjump): check day_button is not - NULL before using it. - (gnome_calendar_update_view_buttons): check button is not NULL. - -2000-10-11 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view-time-item.c (e_day_view_time_item_draw): got 12/24 - hour format the wrong way round. - -2000-10-12 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (comp_from_remote_record): - Store recurrence stuff on the desktop properly - (get_ical_day): Utility function - -2000-10-12 Iain Holmes <iain@helixcode.com> - - * gui/component-factory.c: Disable the executive summary. - -2000-10-11 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_log_entry): Take CalObjType - as a param because its impossible to determine after a delete. - (cal_backend_remove_object): Calculate CalObjType and pass - it to cal_backend_log_entry - (cal_backend_update_object): ditto - - * conduits/todo/todo-conduit.c (local_record_from_comp): Kill - unused variables. - (add_archive_record): Don't kill the sync if this happens - (update_record): Kill old function - (replace_record): New function to handle replace_record signal - (conduit_get_gpilot_conduit): Listen for replace record signal - (add_record): Always add a new record, never replace - (replace_record): Always replace an existing record - - * conduits/calendar/calendar-conduit.c: Same as above - -2000-10-10 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-itip-control.c: set a default size for the control. - -2000-10-10 Jesse Pavel <jpavel@helixcode.com> - - * gui/evolution-calendar.oafinfo: Added information about the - text/calendar MIME type, so that the evolution-calendar is called - to deal with iMIP attachments. - - * gui/e-itip-control.[ch]: These files implement a Bonobo - control that will eventually deal with iMIP/iTIP messages from - the mailer. Right now, it's not working. - - * gui/e-itip-control.glade: The Glade GUI for the above-mentioned - control. - - * gui/Makefile.am: added references to the files I created. - - * gui/main.c: called the initialization function of the Bonobo - control factory. - -2000-10-11 Tuomas Kuosmanen <tigert@helixcode.com> - - * gui/task-assigned-to.xpm gui/task-assigned.xpm - gui/recur.xpm gui/task-recurring.xpm gui/task.xpm: - New versions of the icons for the tasklist/pad. - -2000-10-11 Damon Chaplin <damon@helixcode.com> - - * gui/component-factory.c (owner_unset_cb): don't free evolution_dir - as we need it to save the config settings. - -2000-10-11 Damon Chaplin <damon@helixcode.com> - - * gui/main.c (main): call calendar_config_write_on_exit() to write - out some special config settings (as the mail component does). - - * gui/calendar-commands.c (properties_cmd): changed to use the new - preferences dialog. - (update_all_config_settings): new function to iterate over all the - calendars and update the config settings. - - * gui/dialogs/cal-prefs-dialog.glade: preferences dialog. - - * gui/dialogs/cal-prefs-dialog.[hc]: new files for the preferences - dialog. - - * gui/calendar-config.[hc]: new files to handle loading/saving config - settings. - - * cal-util/cal-recur.c: fixed bug in YEARLY when no filters were set, - plus minor changes. - - * cal-util/test-recur.c: updated. - - * gui/e-day-view-time-item.c: - * gui/popup-menu.c: update to #include <gal/widgets/e-gui-utils.h> - - * gui/component-factory.c (owner_set_cb): called calendar_config_init. - (owner_set_cb): - (owner_unset_cb): updated the prototypes. - - * gui/main.c (main): added call to calendar_config_write_on_exit(). - - * gui/component-factory.h: - * gui/component-factory.c (owner_set_cb): added global evolution_dir - just like the mail component, so we know we to store config stuff. - -2000-10-11 Christopher James Lahey <clahey@helixcode.com> - - * gui/e-calendar-table.c: Fixed the column elements here. - -2000-10-11 Christopher James Lahey <clahey@helixcode.com> - - * gui/e-calendar-table.c: Updated to use the new ETable - specification stuff. - -2000-10-11 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (map_sax_start_element): The - element is "pilot_id" not "pilotid". Update both maps - (compute_pid): Utility function to set a local records pid - (local_record_from_comp): Compute the pid and status here, - no longer use the old cal_component pilot interfaces - (free_match): Its a *local not a **local - - * conduits/calendar/calendar-conduit.c: same as above - - * conduits/todo/todo-conduit.h: Have both a uid and pid map - - * conduits/todo/calendar-conduit.h: same as above - -2000-10-09 JP Rosevear <jpr@helixcode.com> - - * conduits/*: Adjust to using gnome-pilot-sync-abs conduit which - is based on the latest pilot link changes. - -2000-10-09 Iain Holmes <iain@helixcode.com> - - * Makefile.am: Added the executive-summary library and cflags - - * gui/evolution-calendar.oafinfo: Added oaf servers for the - executive summary and executive summary factory. - - * gui/calendar-summary.[ch]: New files to create the summary. - - * gui/component-factory.c (summary_fn): Create the executive - summary component. - (component_factory_init): Start the summary factory as well. - -2000-10-06 Federico Mena Quintero <federico@helixcode.com> - - * gui/weekday-picker.[ch]: New widget to pick weekdays. - -2000-10-05 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.c: upd. - (calendar_control_activate): upd. - (calendar_control_deactivate): upd. - -2000-10-05 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c: - * gui/e-week-view.c: when the user types in a new event, don't create - it until the user hits Return or switches focus. Removed the - editing_new_event flags. - - * cal-util/test-recur.c: rewritten to work on ics files. Now I can - start testing the recurrence code. - - * cal-util/cal-recur.c: a few fixes. - - * gui/e-day-view.c (e_day_view_check_if_new_event_fits): fixed to - return TRUE for long events, not FALSE. - -2000-10-04 Federico Mena Quintero <federico@helixcode.com> - - * gui/print.c (print_todo_details): As a temporary solution to the - to-do printing, just print the summaries. We'll use the ETable - printing stuff later. - - * gui/print.c (print_day_summary_cb): Use g_list_append() correctly. - (print_todo_details_cb): Likewise. - (print_day_summary): Initialize psi.events. This code was - obviously never tested. - (print_todo_details): Likewise. - (print_day_details): Initialize pdi.slots. - - * gui/print.c (range_selector_new): Fix strftime() %a versus %b - confusion. Fixes bugzilla #644. - (range_selector_new): Fix the whole localization mess by making - better use of strftime(). Now we generate whole date strings at a - time and compose them later. Fixes bugzilla #643. - -2000-10-02 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: added support for the ROLE and RSVP parameters - in both the GUI and underlying iCal. - -2000-09-29 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: added support for organizers in the meeting - scheduler. - -2000-09-29 Jesse Pavel <jpavel@helixcode.com> - - * gui/e-meeting-edit.c: added code that makes changes to the underlying - iCAL structure of an event, when the user changes meeting information. - - * gui/e-meeting-dialog.glade: this is the Glade UI for the meeting dialog - and accoutrements. - -2000-09-29 Damon Chaplin <damon@helixcode.com> - - * cal-util/cal-recur.c: updated to support RDATE end times or - durations. Note that if you have two RDATEs with the same start times, - but with different end dates/durations set, the results are - unpredictable. So the event editor dialog should check for this. - - * gui/e-week-view-main-item.c (e_week_view_main_item_draw_day): - make strftime() strings translatable, and changed the formats a bit. - - * NOTE: someone needs to check print.c to make sure strftime strings - are OK for i18n. - - * gui/e-day-view.h: Changed EDayViewDateFormat enum. We now try to - include the weekday if possible. Also changed EDayView struct so we - store the month & weekdays with the longest names rather than the - actual widths. This helps i18n. - - * gui/e-day-view.c (e_day_view_recalc_cell_sizes): used _() for - strftime strings, tried to see if weekday fits, and rearranged a - bit to make i18n easier. - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw): used _() for - strftime strings, and updated to use new formats. - - * gui/calendar-model.c: added use_24_hour_format boolean to - CalendarModelPrivate so we can display dates in 12-hour format if - requested. This meant adding a CalendarModel argument to a few - functions. Also added get/set functions to set use_24_hour_format. - I suppose ideally we should have an ECellDate renderer and this option - should go there. - -2000-09-27 Jesse Pavel <jpavel@helixcode.com> - - * gui/event-editor.c: changed a menu entry so that it will invoke - my meeting editor. - - * gui/e-meeting-edit.[ch]: added these files to provide preliminary - support for iTIP meeting scheduling. Currently, only the GUI works; - there is not yet any backend support. - - * gui/Makefile.am: added entries for e-meeting-edit.[ch] - -2000-09-24 Damon Chaplin <damon@helixcode.com> - - * gui/dialogs/task-editor-dialog.glade: set the height of the scrolled - window for the description field, since the default window height - doesn't seem to be working. - - * cal-util/cal-component.h: added functions to get the actual - icalproperty lists for RRULE and EXRULE properties. - - * cal-util/cal-recur.[hc]: added support for COUNT, though I need to - test it a bit. Also fixed the call to generate_instances_for_year() so - it uses the chunk dates. - -2000-09-20 Damon Chaplin <damon@helixcode.com> - - * gui/event-editor.c: got rid of 1 '_' in '__Formatting'. - -2000-09-22 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): upd. - -2000-09-21 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-commands.c (verbs): Removed the "about calendar" - command, since we don't want to have both "About Evolution" and - "About Calendar". - -2000-09-21 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): _UIHandler - update. - -2000-09-20 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (pre_sync): Don't fail if there - is no map file. - -2000-09-20 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.h: Add since field to context - - * conduits/todo/todo-conduit.c (map_set_node_timet): New utility - function - (map_sax_start_element): Look for the map timestamp as well - (map_write): Write the map timestamp - (pre_sync): Use the map time stamp when looking for changed entries - - * pcs/cal-backend.c (cal_backend_log_sax_start_element): Make sure - we are in a valid timestamp - -2000-09-20 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_log_name): Make the log file - name relevant to the actual calendar file, rather than just the - directory. - -2000-09-20 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_get_log_entries): Oops - -2000-09-20 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_get_log_entries): Use a local - sax handler. - - * conduits/todo/todo-conduit.c (pre_sync): Use xmlSAXParseFile - (map_sax_parse): Delete - -2000-09-20 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_log_sax_start_element): Properly - assign the CalObjChange type. - (cal_backend_log_sax_parse): Delete - (cal_backend_get_log_entries): Use xmlSAXUserParseFile - -2000-09-19 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend.c (cal_backend_set_uri): New utility function - (cal_backend_load): use above - (cal_backend_create): use above - (cal_backend_log_name): Take a uri instead of a backend param - - * pcs/cal-backend-file.c: Get rid of useless hash functions - (cal_backend_file_load): Check to make sure path exists and is - local - (cal_backend_file_load): Unref the current uri if there is one - (cal_backend_file_create): ditto - - * pcs/cal-backend.c (cal_backend_last_client_gone): Sync before - shooting ourselves in the foot - - * pcs/cal-backend-file.c (save): Fully implement backing up the - calendar before writing out the new entry. - -2000-09-19 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (check_for_slow_setting): Add some - other cases where a slow sync is in order - (pre_sync): Pre load the uids, the map and the add/mod/del lists - (match_record): Use the map hash to match records - (iterate): Iterate using the pre-loaded uid list - (iterate_specific): Iterate using the add/mod/del lists - (purge): Delete all entries in the del list - (set_status): Set status by adding to an appropriate list - (set_pilot_id): Set pilot_id by updating map hash - - * conduits/todo/todo-conduit.h: Add lists for added, modified and - deleted objects - - * conduits/todo/todo-conduit.c (map_name): Get the pilot_id->uid map - file name - (map_sax_start_element): SAX handler to extract a pilot_id->uid - mapping - (map_sax_parse): Parse the given file and build a pilot_id->uid hash - (map_write_foreach): Write out individual mapping elements - (map_write): Write out the pilot_id->uid mapping - (start_calendar_server_cb): Rename from gnome_calendar_load_cb - - * conduits/todo/todo-conduit-config.h: Rename pilotID to pilot_id - - * conduits/todo/e-todo.conduit.in: A little renaming - - * conduits/todo/Makefile.am: Fix build slightly - - * pcs/cal.c (build_change_seq): Build a corba sequence out of a list - of CalObjChanges - (Cal_get_objects_in_range): Implement new corba function - - * pcs/cal-backend.c (cal_backend_init): Intiliaze to NULL - (cal_backend_load): Track the uri so we can write the log file - to the same place - (cal_backend_log_name): Figure out the log filename/path based on - the calendar uri - (cal_backend_set_node_timet): Set an xml node property value from - a time_t - (cal_backend_log_entry): Adds a log entry to list waiting to be written - out - (cal_backend_log_sync): Syncs the log entries to disk - (cal_backend_log_sax_start_element): SAX callback for reading in - log entries - (cal_backend_log_sax_end_element): ditto - (cal_backend_log_sax_parse): Main SAX parser call to parse the log - file looking for particular log entries and creating a CalObjChange - hash with the last change for each object - (cal_backend_get_log_entries): Returns a hash of objects of a given - type changed since the given time - (cal_backend_update_object): Add appropriate log entries - (cal_backend_remove_object): ditto - (cal_backend_get_changed_uids): Implement new idl interface call - (cal_backend_foreach_changed): Convert CalObjChange hash into a list - - * pcs/cal-backend-imc.[hc]: Remove crufty files - - * pcs/cal-backend-file.c (cal_backend_file_get_type_by_uid): New - function that returns the CalObjType for a uid. - - * cal-client/cal-client.h: Update prototypes. - - * cal-client/cal-client.c (build_change_list): Build a list - of CalObjChange items from a corba sequence. - (cal_client_get_changed_uids): New accessor method for the - similarly named addition to the idl file. - - * cal-util/cal-util.h: Update prototypes and add CalObjChangeType - enum. - - * cal-util/cal-util.c (cal_obj_change_list_free): New utility - method to free a list of CalObjChange objects. - - * idl/evolution-calendar.idl: Add get_changed_uids method - and associated types. - -2000-09-18 Christopher James Lahey <clahey@helixcode.com> - - * gui/Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and - $(EXTRA_GNOME_LIBS). Removed unneeded libraries. - - * gui/calendar-model.h, gui/e-calendar-table.c, gui/e-day-view.c, - gui/e-week-view-event-item.c, gui/e-week-view.c, - gui/event-editor.c, gui/gncal-todo.c, gui/gnome-cal.c, gui/main.c, - gui/print.c, gui/dialogs/task-editor.c: Fixed the #include lines - to deal properly with gal. - - * gui/check-filled.xpm: New file since we can't include it from - e-table anymore. - -2000-09-16 Michael Meeks <michael@helixcode.com> - - * gui/Makefile.am (INCLUDES): add datadir - - * gui/calendar-commands.c (calendar_control_activate): use it. - -2000-09-14 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/.cvsignore: Shush - -2000-09-14 JP Rosevear <jpr@helixcode.com> - - * Add headers with GPL notice and credit copyright to those appropriate - - * conduits/todo/todo-conduit-control-applet.c (doHelp): Update name, - authors, copyright for about dialog. - (activate_sync_type): Tidy - - * conduits/todo/Makefile.am: Rename binaries and libs to e-todo* - to avoid conflicts. - - * conduits/todo/e-todo.conduit.in: Reflect binary/lib name changes - - * conduits/todo/e-todo-conduit-control-applet.desktop: ditto - - * conduits/todo/todo.conduit.in: Removed - - * conduits/todo/todo-conduit-control-applet.desktop: Removed - - * conduits/todo/todo-conduit-config.h (todoconduit_load_configuration): - The config file will now be called e-todo-conduit - (todoconduit_save_configuration): ditto - - * conduits/todo/todo-conduit.c: Some renaming to keep consistent. - (pre_sync): Remove commented out function that does not exist. - - * conduits/todo/todo-conduit-control-applet.c: ditto - - * conduits/todo/todo-conduit-config.h: ditto - - * conduits/todo/todo-conduit.h: ditto - - -2000-09-07 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.c: Re-write most UI handler code. - -2000-09-13 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (obj_updated_cb): Removed an unused - variable. - - * gui/calendar-model.c (obj_updated_cb): See if the new object - matches the type of objects we were told to deal with. - (load_objects): Likewise. - -2000-09-13 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend-file.c (remove_component): Only remove the pilot - item from the hash if it exists in the first place. - -2000-09-12 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend-file.c (add_component): plug leakage - -2000-09-12 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c: Hack to compile for distcheck. - - * conduits/calendar/calendar-conduit.h: Remove calobj.h dependency - -2000-09-12 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend-file.c (cal_backend_file_load): Use g_int_* - for now - (cal_backend_file_create): ditto - - * conduits/todo/todo-conduit.c (local_record_from_compobject): Make - this actually fill in the todo record. - (find_record_in_repository): Add debug stuff - (iterate_specific): Use the already exisiting utility function - - * pcs/cal-backend-file.c (cal_backend_file_update_pilot_id): correct - the status and id types. g_strdup the uid since this is not a - constified return - (cal_backend_file_get_uid_by_pilot_id): correct the id type - -2000-09-12 Ettore Perazzoli <ettore@helixcode.com> - - * gui/Makefile.am: Remove `ui.xml' stuff. - - * pcs/cal-backend.c: Dont' #include calobj.h anymore as it's gone. - -2000-09-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_construct): Connect to the - "cal_loaded" signal of the client here. - (connect_load): Removed function. - (disconnect_load): Removed function. - (cal_loaded_cb): Store the URI we are loading in the GnomeCal - structure instead of in a weird closure. This gets rid of the - connect/disconnect mess as well. - (gnome_calendar_open): Store the URI in the GnomeCal. - -2000-09-11 Christopher James Lahey <clahey@helixcode.com> - - * gui/e-day-view.c: Fixed a warning (removed unused variable - gfloat width from e_day_view_get_event_position.) - -2000-09-11 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c: Handle renaming, header cleanup - - * conduits/todo/todo-conduit.h: Rename GCalLocalRecord to - EToDoLocalRecord, header cleanup - -2000-09-11 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (comp_from_remote_record): Use - description list instead of comment list for pilot todo note - (transmit): Check for null cal component properties, set priority - correctly, use description list instead of comment list. Make - pilot record private when appropriate. - -2000-09-10 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (comp_from_remote_record): Only - set the due date only if it exists - -2000-09-10 JP Rosevear <jpr@helixcode.com> - - * gui/calendar-model.c (get_is_complete): Relying on the status - field is somewhat faulty since it is related to group scheduling - -2000-09-10 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (update_calendar_entry_in_repository): - Make log output a little more sensible - (comp_from_remote_record): Minor correction when making a CalComponent - from scratch. - (update_record): Use comp_from_remote_record for new items, rather - than repeating the code here. - -2000-09-10 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c: Remove catch_ret_val function - since its no longer useful. Fix naming of various fields from - the header changes. Use GnomePilotRecord* stuff instead of - ICAL_PILOT_SYNC_* - (e_todo_context_new): Rename from gcalconduit_new_context. Now takes - a pilot id and loads the configuration here - (e_todo_context_destroy): Rename from gcalconduit_destroy_context. - Unref the client and destroy the configuration if they exist here - (start_calendar_server): Change the default calendar name - (local_record_from_comp_uid): Rename from local_record_from_ical_uid - (local_record_from_compobject): Rename from - local_record_from_icalobject. Properly do the pilot id and status. - (comp_from_remote_record): Rename from ical_from_remote_record. - Handle due, complete, classification and pilot stuff properly - (pre_sync): Remove some old stuff. We need to figure out how to - set some of the field values. - (set_status): Reflect pilot status changes from above - (conduit_destroy_gpilot_conduit): Remove cleanup stuff that is - now done by e_todo_context_destroy - (conduit_get_gpilot_conduit): Only set the context as object - data of the conduit. - - * conduits/todo/todo-conduit.h: Rename GCalConduitContext to - EToDoConduitContext. Remove some unused struct fields. - For GCalLocalRecord, rename ical to comp. - -2000-09-11 Damon Chaplin <damon@helixcode.com> - - * gui/dialogs/task-editor.c: changed to use EDateEdit. - - * gui/dialogs/task-editor-dialog.glade: added "None" option to - Classification option menu, and used custom widgets for the date - entries so we can use EDateEdit widgets. - - * gui/event-editor.c: changed to use EDateEdit. Note that this needs - to be fixed at some point to handle invalid dates, i.e. when - e_date_edit_get_time returns -1. - - * gui/calendar-model.c (ensure_task_complete): - (ensure_task_not_complete): new functions to set the related properties - to make sure a task is marked as complete on not, i.e. "Date Completed" - "Status" and "Percent" properties. - -2000-09-08 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-model.c (get_is_complete): use the status field rather - than the completed date, as it is more reliable. - (get_is_overdue): use get_is_complete(). - (calendar_model_mark_task_complete): check if it is already complete, - and if so don't update it. - - * cal-util/cal-component.c (cal_component_get_status): - (cal_component_set_status): added functions to support the STATUS - property. Also added the property to CalComponentPrivate and set it - to NULL in free_icalcomponent(). Someone should check my code as I've - mainly done a Cut & Paste job. - -2000-09-10 JP Rosevear <jpr@helixcode.com> - * conduits/todo/todo-conduit.c: Convert "//" style comments - (local_record_from_ical_uid): Remove iCalObject cruft - (ical_from_remote_record): ditto - (free_match): Properly unref the CalComponent - -2000-09-10 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c (local_record_from_icalobject): Use - cal component pilot stuff properly - (find_record_in_repository): Remove cruft - (ical_from_remote_record): Remove cruft - (update_record): Set the vtype immediately after creation. Remove cruft - - * conduits/todo/todo-conduit.h: Remove iCalObject stuff - - * conduits/todo/todo-conduit-config.h: Move all the config stuff - here, I need to kill the warnings at some point - - * conduits/todo/todo-conduit-control-applet.c (doRevertSettings): - Set all the state variables correctly on a revert - (doSaveSettings): Update original state - (doHelp): Rename from about_cb - (main): Destroy configurations when done - - * conduits/todo/Makefile.am: Tidy - - * pcs/cal-backend-file.c (cbf_pilot_hash): Function for hashing - pilot ids - (cbf_pilot_equal): For hash table of pilot ids - (cal_backend_file_destroy): Destroy pilot id hash - (add_component): Insert the uid into the pilot hash - (remove_component): Remove the uid from the pilot hash - (cal_backend_file_load): Create the pilot hash - (cal_backend_file_create): ditto - (cal_backend_file_get_uid_by_pilot_id): Implement using the pilot hash - (cal_backend_file_update_pilot_id): ditto - - * cal-util/cal-component.h: Update prototypes - - * cal-util/cal-component.c (cal_component_get_pilot_id): Implement - using ical X properties - (cal_component_set_pilot_id): ditto - (cal_component_get_pilot_status): ditto - (cal_component_set_pilot_status): ditto - (cal_component_free_pilot_id): Free a pilot id - (cal_component_free_pilot_status): Free a pilot status - -2000-09-09 Ettore Perazzoli <ettore@helixcode.com> - - * gui/dialogs/Makefile.am (INCLUDES): Add - `-I$(top_builddir)/libical/src/libical' so that we get - `icalversion.h' from the build directory instead of taking it from - the installation directory, which is of course Wrong (tm). - * gui/Makefile.am (INCLUDES): Likewise. - -2000-09-08 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (cal_loaded_cb): New function with the - loading/creation state machine. It is carefully modelled after - the state machine that started the Universe, so bow before it. - (gnome_calendar_construct): Do not connect to cal_loaded here. - (connect_load): The closure for the cal_loaded callback is a bit - tricky, so provide a function to create it and connect to the - signal. - (disconnect_load): Disconnect from the signal and free the - closure. - (gnome_calendar_load_cb): Removed obsolete buggy function. - (gnome_calendar_open): Use the new mechanism. - - * gui/control-factory.c (set_prop): The default filename is now - calendar.ics. - -2000-09-08 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/calendar-conduit.c (transmit): Use - icaltime_as_timet - -2000-09-08 Christopher James Lahey <clahey@helixcode.com> - - * cal-util/cal-recur.c, gui/e-day-view.c, gui/e-week-view.c, - gui/event-editor.c, gui/getdate.y, gui/gncal-todo.c, - gui/gnome-cal.c, gui/dialogs/task-editor.c: Fixed some warnings. - -2000-09-08 JP Rosevear <jpr@helixcode.com> - - * conduits/calendar/Makefile.am: Tidy - - * conduits/todo/Makefile.am: Tidy - -2000-09-08 Federico Mena Quintero <federico@helixcode.com> - - Fall equinox cleanup! - - OK, I know the equinox is not here yet, but weather has changed - enough to warrant it. - - Sigh. This place is definitely not the tropics. - - * gui/gnome-cal.c (obj_updated_cb): Renamed from - gnome_calendar_object_updated_cb(); fixed prototype. - (obj_removed_cb): Renamed from gnome_calendar_object_removed_cb(); - fixed prototype. - (GnomeCalendarPrivate): Moved all the GnomeCalendar fields to a - private structure so I don't have to rebuild the whole calendar - GUI directory every time something changes in the object. - (GnomeCalendarPrivate): Removed the property bag and the control - fields; they are local to the control-factory now. - (gnome_calendar_update_view_buttons): Remove the - ignore_view_button_clicks mess and just block the signal. - (gnome_calendar_set_view): Added a "focus" argument to indicate - whether we want the main widget in the specified view to grab the - focus. - (gnome_calendar_set_view_internal): Handle the focus argument here. - (gnome_calendar_set_view_buttons): Temporary hack to notify the - calendar about its buttons. - (gnome_calendar_get_selected_time_range): New function. - (gnome_calendar_get_cal_client): New function. - - * gui/control-factory.c (calendar_properties_init): Keep the - property bag local to here; it does not need to be in the calendar - object yet. - (control_factory_fn): Renamed from control_factory(). Just use - control_factory_new_control(). - (control_factory_new_control): Moved the stuff over from - create_control(), and keep the control local to here. Check the - return value of bonobo_control_new(). - - * gui/calendar-commands.c (show_day_view_clicked): Remove the - ignore_view_button_clicks mess. - (new_calendar): Removed the useless "page" argument. - (calendar_control_activate): Use gnome_calendar_set_view_buttons() - for now. - -2000-09-07 Lauris Kaplinski <lauris@helixcode.com> - - * cal-client/Makefile.am: Added -lunicode - - * gui/dialogs/task-editor.c: More UTF-8 wrappers - (priority_index_to_value): Kill warning, add assertion - -2000-09-06 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - Use new cal_component_has_recurrences convenience function - - * gui/e-week-view.c (e_week_view_show_popup_menu): ditto - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): - ditto - - * gui/calendar-model.c (calendar_model_value_at): ditto - (calendar_model_value_at): ditto - - * gui/e-day-view.c (e_day_view_on_event_click): ditto - (e_day_view_on_event_right_click): ditto - (e_day_view_on_top_canvas_motion): ditto - (e_day_view_on_top_canvas_motion): ditto - (e_day_view_on_main_canvas_motion): ditto - (e_day_view_on_main_canvas_motion): ditto - (e_day_view_reshape_day_event): ditto - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): - ditto - - * gui/e-day-view.c (e_day_view_on_long_event_click): ditto - -2000-09-06 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-recur.c (cal_recur_generate_instances): Use - new convenience functions and only get the recurrence - stuff if needed. Free the recurrence stuff if used. - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-component.h: Add new prototypes - - * cal-util/cal-component.c (cal_component_has_exrules): Utility - function to determine whether a cal component has any exrules - (cal_component_has_exdates): Ditto for exdates - (cal_component_has_exceptions): Utility function to determine - whether a cal component has any exception rules - (cal_component_has_recurrences):Utility function to determine - whether a cal component has any recurrence rules - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c (dialog_to_comp_object): Kill all exdates if - there are no dates in the box - - * cal-util/cal-recur.c (generate_instances_for_year): Add a special - case for when there are exceptions but no rrules or rdates. - (cal_obj_remove_exceptions): Use date only compare func - (cal_obj_date_only_compare_func): New compare function that - compares the date only, not the time. - - * gui/event-editor.c (dialog_to_comp_object): Need a break for the - yearly recurrence type - (dialog_to_comp_object): We need to allocate icaltimetypes for the - exdate list - (fill_widgets): Handle a weekly recurrence with no particular day set - (dialog_to_comp_object): Kill all rrules if "None" is selected as - the recurrence type by the user - -2000-09-06 Damon Chaplin <damon@helixcode.com> - - * gui/e-calendar-table.c (e_calendar_table_open_task): uses the new - TaskEditor dialog. - - * gui/dialogs/task-editor.[hc]: - * gui/dialogs/task-editor-dialog.glade: updated. Still need to fix the - 'Status' property (CalComponent doesn't support it yet), and use a - replacement for GnomeDateEdit, since we need to support setting 'None' - as the date. - -2000-09-04 Damon Chaplin <damon@helixcode.com> - - * gui/event-editor.c (obj_updated_cb): - (obj_removed_cb): compare the updated object's uid with the one we - are editing, and just return if it doesn't match. - -2000-09-01 Damon Chaplin <damon@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_tag_calendar): added check to see - if the client has loaded successfully. Gets rid of a few warnings. - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-recur.c (generate_instances_for_year): The exdate - and rdate lists are a list of icaltimetypes, not CalComponentPeriods - - * gui/e-day-view.c (e_day_view_on_delete_occurrence): The exdate list - is a list of icaltimetypes, not CalComponentDateTimes - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view.c (e_day_view_on_delete_occurrence): Append - the exdate to the list AFTER we create the date value. - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-component.c (cal_component_free_recur_list): Free - the data, not the list element. - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-recur.c (cal_recur_generate_instances): Compute - the event duration using the event start/end times, not the - interval times. - -2000-09-05 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-recur.c (cal_recur_from_icalrecurrencetype): Check - to see if r->enddate is (time_t)-1 and set to 0 if so - -2000-09-02 Ettore Perazzoli <ettore@helixcode.com> - - * conduits/calendar/Makefile.am (INCLUDES): Add libical include - directories and `$(BONOBO_GNOME_CFLAGS)'. - * conduits/todo/Makefile.am (INCLUDES): Likewise. - -2000-09-02 Lauris Kaplinski <lauris@helixcode.com> - - * gui/event-editor.c: e_utf8 wrappers - - * gui/gncal-todo.c: e_utf8_wrappers - -2000-09-02 Christopher James Lahey <clahey@helixcode.com> - - * conduits/calendar/calendar-conduit.c, - conduits/todo/todo-conduit.c, gui/e-week-view.c, gui/gnome-cal.c: - Fixed some warnings. - -2000-09-01 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_new): Use - gnome_calendar_construct() so that we can check for proper - creation of the client. - (gnome_calendar_destroy): Check that the client exists before we - unref it. - (gnome_calendar_construct): Do the CalClient creation here. Bind - the views to it here as well instead of in setup_widgets(). - (gnome_calendar_init): Call setup_widgets() here. - - * gui/e-calendar-table.c (e_calendar_table_destroy): Unref the - model. - -2000-09-01 JP Rosevear <jpr@helixcode.com> - - * conduits/todo/todo-conduit.c: Update for new libical. - Conduits should atleast compile now. - - * conduits/calendar/calendar-conduit.c: ditto - - * Makefile.am: Build the conduits only when they've been - enabled. - -2000-09-01 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c: Make toolbar save and close button. - We should put a similar menu option in sometime. - -2000-08-31 JP Rosevear <jpr@helixcode.com> - - * cal-util/cal-recur.c (array_to_list): Use - ICAL_RECURRENCE_ARRAY_MAX instead of MAX_SHORT - -2000-08-31 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c (file_delete_cb): Implement delete option - (dialog_to_comp_object): Set the weekday start value and use - local not UTC time - -2000-08-31 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (file_delete_cb): No need to spit a warning - if removal fails. - (event_editor_destroy): Free the exception clist data. Unref the - calendar client here. - (close_dialog): Just call gtk_object_destroy() on the event - editor; the destroy handler will free everything else. - - * cal-client/cal-client.c (cal_client_object_exists): Removed - function; this is not useful because we operate asynchronously. - - * gui/e-day-view.c (e_day_view_on_delete_appointment): No need to - spit a warning if removal fails. - - * gui/e-week-view.c (e_week_view_on_delete_appointment): Likewise. - - * gui/calendar-model.c (calendar_model_delete_task): Likewise. - -2000-08-31 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c (file_delete_cb): Implement delete option - (recurrence_toggled): Make an ugly hack to get the recurrence - pages showing properly since we don't yet implement all of the - recurrence rule stuff. - - * cal-client/cal-client.c (cal_client_object_exists): New function - to see if an object exists and is obtainable from the backend - - * cal-client/cal-client.h: Add prototype - -2000-08-31 JP Rosevear <jpr@helixcode.com> - - * gui/gnome-cal.c (editor_closed_cb): Event editor destroyed - callback to do hash cleanup - (gnome_calendar_edit_object): Set event editor calendar client. - - * gui/event-editor.h: Add new prototype - - * gui/event-editor.c: Trash signal stuff. We will manipulate - the client directly. Make the toolbar save and menu save items - work identically. Add icons to the toolbar. - (save_event_object): Call cal_client_update_object - (close_dialog): Unref the client and disconnect signals - Actually destroy the event editor object. - (obj_updated_cb): New function. Doesn't really do anything - yet but it will inform the user the event has changed elsewhere - in the future. - (obj_removed_cb): ditto - (event_editor_set_cal_client): New function to set the calendar - client - - * gui/gnome-cal.c (gnome_calendar_new_appointment): Commit - the sequence to the cal component and use non UTC times. - -2000-08-30 Lauris Kaplinski <lauris@helixcode.com> - - * gui/print.c: Countless small changes for gnome-print 0.21+ - -2000-08-30 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.[hc]: - * gui/e-day-view-main-item.c: - * gui/e-week-view.[hc]: - * gui/e-week-view-main-item.c: - * gui/calendar-commands.c: - * gui/gnome-cal.[hc]: switched to using new ECalendar widget, - and a few other fixes. - -2000-08-30 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.h (GnomeCal): Removed unused field event_editor. - - * gui/e-day-view.c (e_day_view_key_press): Oops, set the - dtstart/dtend on the component before adding it. - (e_day_view_on_editing_stopped): No need to check for an UID. - Update the summary properly. - -2000-08-30 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view.c: Make sure the is_utc flag is always - FALSE for icaltime_from_timet - (e_week_view_on_unrecur_appointment): Use icaltimetype struct - from the stack and make sure tzid is always NULL - (e_week_view_key_press): ditto - -2000-08-30 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view.c: Make sure the is_utc flag is always - FALSE for icaltime_from_timet - (e_day_view_on_unrecur_appointment): Use icaltimetype struct - from the stack and make sure tzid is always NULL - (e_day_view_finish_long_event_resize): ditto - (e_day_view_finish_resize): ditto - (e_day_view_on_top_canvas_drag_data_received): ditto - (e_day_view_on_main_canvas_drag_data_received): ditto - -2000-08-30 JP Rosevear <jpr@helixcode.com> - - * cal-client/cal-client.c (add_instance): Actually add the - comp_instance struct to the instances list. We now appear - to able to keep events and todos between sessions. Yay! - -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. - -2000-08-29 Dan Winship <danw@helixcode.com> - - * cal-client/client-test.c: - * cal-client/cal-client.c: - * conduits/todo/todo-conduit.h: - * conduits/calendar/calendar-conduit.h: remove USING_OAF checks. - -2000-08-29 JP Rosevear <jpr@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_edit_object): Use - event_editor_set_event_object - - * gui/event-editor.c (event_editor_set_event_object): Rename - from event_editor_set_ical_object - - * gui/event-editor.h: Update prototype - - * gui/e-week-view.c (e_week_view_on_new_appointment): - Call cal_component_commit_sequence after event changes. Default - to these being all day events. - -2000-08-29 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c (dialog_to_comp_object): These are not UTC - times - -2000-08-28 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/cal-client.c (cal_client_is_loaded): New function. - We need this from code that dynamically updates from a client and - could not have connected to the "cal_loaded" signal right after - the client was created. - - * gui/calendar-model.c (load_objects): Do not try to load the - objects if the client has not been loaded yet. - (cal_loaded_cb): Check the status value. - - * gui/calendar-model.h (CalendarModel): Declare the private - structure here so that gdb will give me love. - - * pcs/cal-factory.h (CalFactory): Likewise. - - * pcs/cal.h (Cal): Likewise. - - * cal-client/cal-listener.h (CalListener): Likewise. - - * cal-client/cal-client.h (CalClient): Likewise. - - * pcs/cal-backend.h (CalBackend): This no longer has a private - structure, so remove it. - - * cal-util/Makefile.am (libcal_util_la_SOURCES): Removed the - vCalendar and old iCalendar cruft. - (libcal_utilinclude_HEADERS): Likewise. - Removed the obsolete iCalendar test program. - -2000-08-28 JP Rosevear <jpr@helixcode.com> - - * cal-util/timeutil.h: We no longer need time_from_icaltimetype - as libical has the API for this - - * cal-util/timeutil.c: ditto - - * cal-util/cal-recur.c: Replace time_from_icaltimetype with - icaltime_as_timet - - * gui/calendar-model.c: ditto - - * gui/event-editor.c: ditto - - * gui/gnome-cal.c: ditto - -2000-08-28 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend-file.c (remove_component): Remove the - icalcomponent from the toplevel calendar here. - (cal_backend_file_update_object): Do not remove it here. - (cal_backend_file_remove_object): Do not remove it here. - (add_component): Add the icalcomponent to the toplevel calendar if - asked to. - (cal_backend_file_update_object): Do not add it here. - -2000-08-28 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.c (dialog_to_comp_object): Initiliaze tzid to - null, only set recurrence rules and exception dates if there - are any - -2000-08-27 JP Rosevear <jpr@helixcode.com> - - * pcs/cal-backend-file.c (save): Write out the calendar object - (cal_backend_file_update_object): Remove/add the icalcomponent - from our master icalcomponent (the calendar) - (cal_backend_file_remove_object): Remove the icalcomponent - from our master icalcomponent - -2000-08-26 JP Rosevear <jpr@helixcode.com> - - * gui/Makefile.am: Remove gnorba stuff - - * gui/main.c: ditto - - * gui/component-factory.c: ditto - - * gui/control-factory.c: ditto - - * gui/*.gnorba: ditto - -2000-08-25 JP Rosevear <jpr@helixcode.com> - - * gui/e-calendar-table.c (e_calendar_table_init): Uncomment - debug code. - - * gui/calendar-model.c (set_complete): Set the completed - date to the current date - (calendar_model_set_value_at): Handle complete field - -2000-08-25 JP Rosevear <jpr@helixcode.com> - - * gui/calendar-model.c (get_is_complete): Don't attempt to - free this if its null - (calendar_model_duplicate_value): Implement for summary field - value - (calendar_model_initialize_value): Remove debug code - - * gui/e-calendar-table.c: Correct etable init xml - (create_column): Pass the id to e_table_header_add_column - rather than a hard coded one - (e_calendar_table_init): Make sure summary column isn't - added twice. Add an alarms column, else etable won't - work with columns who have an ID higher than that - -2000-08-24 JP Rosevear <jpr@helixcode.com> - - * gui/gncal-todo.c (ok_button): Properly append to list - - * gui/event-editor.c (dialog_to_comp_object): ditto - - * gui/e-day-view.c (e_day_view_on_new_appointment): The base - times are not UTC - - * gui/e-week-view.c (e_week_view_on_new_appointment): ditto - -2000-08-24 JP Rosevear <jpr@helixcode.com> - - * Update for libical 0.19 - -2000-08-24 Christopher James Lahey <clahey@helixcode.com> - - * gui/calendar-commands.c, gui/e-day-view.c, gui/e-week-view.c, - gui/event-editor.c, gui/gncal-todo.c, gui/gnome-cal.c, gui/prop.c: - Fixed some warnings. - -2000-08-24 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view.c (e_week_view_on_new_appointment): Do not alloc - the struct icaltimetype but point to one on the stack. More - importantly, set the date.tzid to NULL. - -2000-08-24 JP Rosevear <jpr@helixcode.com> - - * gui/gnome-cal.c (save_event_object_cb): Make signal - names saner - (released_event_object_cb): ditto - (gnome_calendar_edit_object): ditto - - * gui/event-editor.h: Make signal names saner - - * gui/event-editor.c (event_editor_class_init): Make signal - names saner now that we don't use ical object - (save_event_object): ditto with callback names - (file_save_cb): ditto - (tb_save_and_close_cb): ditto - (event_editor_set_ical_object): ditto - - * gui/e-day-view.c (e_day_view_update_event): Umm, - != CAL_COMPONENT_EVENT (I hope that wasn't me!) - -2000-08-24 Federico Mena Quintero <federico@helixcode.com> - - * gui/e-day-view.c (e_day_view_on_new_appointment): Do not alloc - the struct icaltimetype but point to one on the stack. More - importantly, set the date.tzid to NULL. - -2000-08-24 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor-dialog.glade: Remove owner field - - * gui/event-editor.c (clear_widgets): Forget about owner field - (get_widgets): ditto - (fill_widgets): ditto - -2000-08-24 JP Rosevear <jpr@helixcode.com> - - * gui/calendar-model.c (calendar_model_initialize_value): Handle - summary field - (calendar_model_value_is_empty): ditto - (calendar_model_free_value): ditto - -2000-08-23 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor-dialog.glade: Remove status bar - - * cal-util/cal-component.c (cal_component_set_rrule_list): Allow - a null list - (cal_component_set_rdate_list): Allow a null list - - * gui/e-day-view.c (e_day_view_on_new_appointment): Commit - the CalComponent sequence - -2000-08-23 Federico Mena Quintero <federico@helixcode.com> - - * gui/main.c: #include <e-util/e-cursors.h> - - * gui/e-day-view-time-item.c (e_day_view_time_item_draw): - Initialize time_min_x1 and hour_r to keep gcc happy. - - * gui/e-day-view.c (e_day_view_update_event_label): Warning fix. - (e_day_view_update_main_canvas_drag): Initialize start_row. - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): - Initialize time_y_small_min, icon_x. - - * Makefile.am (SUBDIRS): Re-enable the gui directory. - - * gui/prop.c (prop_store_alarm_default_values): Temporarily #if 0 - out. - -2000-08-23 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view.c (e_week_view_key_press): Set vtype of new - CalComponent - (e_week_view_on_new_appointment): ditto - - * gui/e-day-view.c (e_day_view_on_new_appointment): ditto - -2000-08-23 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view-time-item.c: Include gnome.h for gettext purposes - - * gui/gnome-cal.c: ditto - - * gui/prop.c: #if out some alarm stuff - -2000-08-23 Federico Mena Quintero <federico@helixcode.com> - - * gui/e-calendar-table.c (e_calendar_table_init): Updated - function. - (e_calendar_table_open_task): Updated function. - -2000-08-21 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (calendar_model_duplicate_value): Updated - function. - (calendar_model_free_value): Updated function. - (calendar_model_initialize_value): Updated function. - (calendar_model_value_is_empty): Updated function. - (remove_object): Updated function. - (obj_updated_cb): Updated function. - (calendar_model_get_cal_client): Added inline docs. - (calendar_model_delete_task): Updated. - (calendar_model_mark_task_complete): Updated. - (calendar_model_get_cal_object): Updated. - -2000-08-21 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (set_categories): New function. - (parse_time): Moved over from the old set_time_t(). This just - parses the time and leaves the warning dialog for the caller. - (set_datetime): New function. - (set_geo): Updated old function. - (set_percent): Updated old function. - (set_priority): Updated old function. - (set_summary): New function. - (set_url): New function. - (calendar_model_set_value_at): Updated function. - (calendar_model_is_cell_editable): Updated function. - (calendar_model_append_row): Updated. Added an ugly hack to - accomodate ETable's lack of a real API for adding new items. - Also, don't try to set columns that are not editable. - -2000-08-21 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view.c (e_week_view_reload_events): - Use CalObjType - - * gui/e-day-view.c (e_day_view_reload_events): ditto - -2000-08-21 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): - Use CalComponent instead of iCalObject. #if some alarm stuff - -2000-08-21 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view-top-item.c (e_day_view_top_draw_long_event): - Use CalComponent instead of iCalObject. #if some alarm stuff - -2000-08-21 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view.h: Update prototypes - - * gui/e-day-view.c (e_day_view_on_unrecur_appointment): - Remove commented out portions. - - * gui/e-week-view.c (e_week_view_on_unrecur_appointment): - Tidy. - -2000-08-21 JP Rosevear <jpr@helixcode.com> - - * gui/e-day-view.c - (e_day_view_update_event): Use CalComponent - instead of iCalObject. Work around not having a compare - dates routine for two CalComponents. - (e_day_view_reshape_long_event): Use CalComponent instead - of iCalObject, #if some alarm stuff - (e_day_view_reshape_day_event): ditto - (e_day_view_reload_events): Use revamped CalClient - (e_day_view_update_event_cb): Use CalComponent - instead of iCalObject - (e_day_view_foreach_event_with_uid): ditto - (e_day_view_remove_event_cb): ditto - (e_day_view_update_event_label): ditto - (e_day_view_find_event_from_uid): ditto - (e_day_view_on_event_click): ditto - (e_day_view_on_event_right_click): ditto - (e_day_view_on_new_appointment): ditto - (e_day_view_on_edit_appointment): ditto - (e_day_view_on_delete_occurrence): ditto - (e_day_view_on_delete_appointment): ditto - (e_day_view_on_unrecur_appointment): ditto - (e_day_view_on_top_canvas_motion): ditto - (e_day_view_on_main_canvas_motion): ditto - (e_day_view_finish_long_event_resize): ditto - (e_day_view_finish_resize): ditto - (e_day_view_free_event_array): ditto - (e_day_view_add_event): ditto - (e_day_view_key_press): ditto - (e_day_view_on_editing_stopped): ditto - (e_day_view_update_top_canvas_drag): ditto - (e_day_view_update_main_canvas_drag): ditto - (e_day_view_on_drag_data_get): ditto - (e_day_view_on_top_canvas_drag_data_received): ditto - (e_day_view_on_main_canvas_drag_data_received): ditto - -2000-08-20 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): - Use CalComponent instead of iCalObject. #if some alarm stuff - -2000-08-20 JP Rosevear <jpr@helixcode.com> - - * gui/e-week-view.c (e_week_view_update_event): Use CalComponent - instead of iCalObject. Work around not having a compare - dates routine for two CalComponents. - (e_week_view_reload_events): Use revamped CalClient - (e_week_view_reshape_event_span): Use CalComponent instead - of iCalObject, #if some alarm stuff - (e_week_view_update_event_cb): Use CalComponent instead of - iCalObject - (e_week_view_foreach_event_with_uid): ditto - (e_week_view_remove_event_cb): ditto - (e_week_view_free_events): ditto - (e_week_view_add_event): ditto - (e_week_view_on_editing_stopped): ditto - (e_week_view_find_event_from_uid): ditto - (e_week_view_key_press): ditto - (e_week_view_show_popup_menu): ditto - (e_week_view_on_new_appointment): ditto - (e_week_view_on_edit_appointment): ditto - (e_week_view_on_delete_occurrence): ditto - (e_week_view_on_delete_appointment): ditto - (e_week_view_on_unrecur_appointment): ditto - - * gui/e-week-view.h: Update prototypes. - -2000-08-18 JP Rosevear <jpr@helixcode.com> - - * gui/event-editor.h: Update prototypes. - - * gui/event-editor.c: Need to come back here later to fix the - alarm stuff. The gui also needs to be completely redone to - support the fancier CalComponent settings (exrules, rdates, etc) - There are some warnings that I put in to mark some of these - spots - (event_editor_destroy): Use Calcomponent instead - of iCalObject - (make_title_from_comp): ditto - (clear_widgets): ditto - (fill_widgets): ditto - (classification_get): ditto - (dialog_to_comp_object): ditto - (save_ical_object): ditto - (close_dialog): ditto - (event_editor_set_ical_object): ditto - -2000-08-17 JP Rosevear <jpr@helixcode.com> - - * gui/gncal-todo.c (ok_button): Use CalComponent instead of - iCalObject - (cancel_button): ditto - (gncal_todo_edit): ditto - (add_todo): ditto - (edit_todo): ditto - (delete_todo): ditto - (insert_in_clist): ditto - (gncal_todo_update): ditto - - * gui/gncal-todo.h: Update prototypes - -2000-08-16 JP Rosevear <jpr@helixcode.com> - - Rework gnome-cal.c - alarms are a tad broken ATM so this - will need more cleaning later. - - * gui/gnome-cal.c (snooze): Use CalComponent instead of - iCalObject - (edit): ditto - (audio_notification): ditto - (display_notification_cb): Use CalComponent member of - alarm_notify_closure rather than iCalObject - (display_notification): ditto - (trigger_alarm_cb): ditto. Use CalComponent alarm types - (gnome_calendar_tag_calendar_cb): New - cal_client_generate_instances callback to - mark_gtk_calendar_day's - (gnome_calendar_tag_calendar): Use above callback - (save_ical_object_cb): Use CalComponent instead of - iCalObject - (gnome_calendar_edit_object): ditto - (gnome_calendar_new_appointment): ditto - -2000-08-15 JP Rosevear <jpr@helixcode.com> - - * gui/mark.c (mark_month_item_cb): Callback used to mark every - event in a month. - (mark_month_item): Use cal_client_generate_instances with - above callback - -2000-08-15 JP Rosevear <jpr@helixcode.com> - - * gui/print.c (print_month_small): Use - cal_client_get_objects_in_range - (print_day_details_cb): Callback used to create columns and fill - events into a day view. Code should be shared with e-day-view - in reality. Maybe need to go back to layout.[hc] a bit later - (print_day_details): Use cal_client_generate_instances with - above callback. Iterate over results to expand events to fit. - (print_day_summary_cb): Callback to build list of event info - for a day - (print_day_summary): Use cal_client_generate_instances with - above callback to generate the required event info for printing - (print_todo_details_cb): Callback used create list of todo info - (print_todo_details): Use cal_client_generate_instances with - above callback to generate required todo info for printing. - - * gui/layout.[hc]: No longer used. - -2000-08-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (get_is_overdue): Finished implementing. - (calendar_model_value_at): Handle the color field. - -2000-08-11 Seth Alves <alves@hungry.com> - - * cal-util/cal-component.c (cal_component_get_pilot_id): - (cal_component_set_pilot_id): stubs for pilot id accessors - (cal_component_get_pilot_status): - (cal_component_set_pilot_status): stubs for pilot status accessors - - * conduits/calendar/calendar-conduit.c (transmit): start to - convert to cal-component interface - - * conduits/todo/todo-conduit.c (transmit): same - -2000-08-11 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (get_geo): Generate a prettier string for - the geographical position. - (get_classification): New function. - (get_categories): New function. - (get_completed): New function. - (get_dtend): New function. - (get_dtstart): New function. - (get_due): New function. - (get_percent): New function. - (get_priority): New function. - (get_summary): New function. - (get_transparency): New function. - (get_url): New function. - (get_has_alarms): New function. - (get_has_recurrences): New function. - (get_is_complete): New function. - (get_is_overdue): New function. - - * cal-util/cal-component.c (scan_property): Handle the GEO - property. - (free_icalcomponent): Likewise. - (cal_component_get_geo): Likewise. - (cal_component_set_geo): Likewise. - (cal_component_free_geo): Likewise. - (cal_component_set_exdate_list): Removed incorrect assertion. - (cal_component_set_exrule_list): Removed incorrect assertion. - (cal_component_get_next_alarm): Oops, this had not been - implemented at all. - (cal_component_has_rdates): New function. - (cal_component_has_rrules): New function. - - * cal-util/cal-component.h (CalComponentField): Added the GEO - property. - -2000-08-11 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (scan_property): Handle the - PERCENT-COMPLETE property. - (free_icalcomponent): Likewise. - (cal_component_get_percent): Likewise. - (cal_component_set_percent): Likewise. - (cal_component_free_percent): Likewise. - (scan_property): Handle the PRIORITY property. - (free_icalcomponent): Likewise. - (cal_component_get_priority): Likewise. - (cal_component_set_priority): Likewise. - (cal_component_free_priority): Likewise. - - * cal-util/cal-component.h (CalComponentField): New enumeration - with the list of fields we support for ETable. - -2000-08-10 Dan Winship <danw@helixcode.com> - - * gui/component-factory.c (owner_set_cb): Update prototype. - -2000-08-10 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_new_appointment): New function. - Mostly moved over from calendar-commands.c:display_objedit(). - - * gui/calendar-commands.c (calendar_iterate): Removed. Wheee! - (display_objedit): Removed. - (new_appointment_cb): New function. Just call - gnome_calendar_new_appointment(). - (display_objedit_today): Removed. - (calendar_control_activate): Removed the "New appointment for - today" option, since it is pretty useless. - -2000-08-10 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/cal-client.c (cal_client_generate_instances): There. - A pretty function to generate recurrence instances atomically so - that clients don't have to jump through hoops. Now we can get rid - of the ugly calendar_iterate() function. - -2000-08-09 Cody Russell <bratsche@gnome.org> - - * gui/calendar-commands.c: Make the toolbar honor the user's - gnomecc settings for detachable toolbars. - -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. - -2000-08-09 Christopher James Lahey <clahey@helixcode.com> - - * cal-client/cal-client.c: Fixed a warning. - -2000-08-09 Christopher James Lahey <clahey@helixcode.com> - - * cal-client/cal-client.c, gui/e-calendar-table.c, pcs/cal.c: - Fixed some warnings. - -2000-08-08 Federico Mena Quintero <federico@helixcode.com> - - * idl/evolution-calendar.idl (Cal): Added a get_objects_in_range() - method. Takes in a time range and the type of component we are - interested in; returns a list of UIDs. The idea is that - ocurrences get computed in the client; we can have multiple - recurrences in iCalendar and we cannot identify them trivially - across the wire. - (Cal): Removed the get_events_in_range() method. - - * pcs/cal-backend.c (cal_backend_free_uid_list): New function. - (cal_backend_get_objects_in_range): New function. - (cal_backend_get_events_in_range): Removed. - - * pcs/cal-backend-file.c (cal_backend_file_get_objects_in_range): - Implemented new method. - (cal_backend_file_get_events_in_range): Removed. - - * pcs/cal.c (Cal_get_events_in_range): Removed. - (uncorba_obj_type): New function. - (Cal_get_uids): Use uncorba_obj_type(). - (Cal_get_n_objects): Likewise. - (Cal_get_objects_in_range): Implemented new method. - - * cal-client/cal-client.c (cal_client_get_events_in_range): Removed. - (cal_client_get_objects_in_range): Implemented. - (corba_obj_type): New function. - (cal_client_get_n_objects): Use corba_obj_type(). - (cal_client_get_uids): Likewise. - -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. - -2000-08-07 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_get_as_string): Doh, - libical owns the string's memory, so do not free it. - - * cal-client/client-test.c (create_client): Connect to the destroy - signal of the client here. - - * cal-client/test.ics: New test file, modified from Eric Busboom's - test file from RFC 2445. - -2000-08-05 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/client-test.c (dump_component): This was gone for - some reason. - (main): Load a new test file. - -2000-08-04 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_commit_sequence): New - function to commit changes to the SEQUENCE property. - (cal_component_get_as_string): Ensure that the sequence has been - committed. - - * cal-client/cal-client.c (cal_client_get_object): Use - CalComponent instead of the old iCalObject. - (cal_client_update_object): Use iCalObject. Commit the SEQUENCE - property before stringifying the object and piping it over to the - Wombat. - -2000-08-04 Seth Alves <alves@hungry.com> - - * conduits/todo/todo-conduit.c (conduit_get_gpilot_conduit): if - oaf isn't initialized by the time the conduit starts, start it - up. we do this because we need to start wombat with oaf, and - gpilotd doesn't currently start oaf. - -2000-08-04 Michael Meeks <michael@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): unref. - -2000-08-02 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend-file.c (cal_backend_file_get_uid_by_pilot_id): - Added stub for now. - (cal_backend_file_update_pilot_id): Likewise. - - * pcs/Makefile.am (libpcs_a_SOURCES): Removed cal-backend-imc.[ch] - from the list of sources. The idea is to move vCalendar importing - to the GUI as a convenience function. - -2000-08-02 Seth Alves <alves@hungry.com> - - * pcs/cal-backend-imc.c (cal_backend_imc_update_pilot_id): call - save (cbimc) after setting the pilot id and status. - -2000-08-02 Joe Shaw <joe@helixcode.com> - - * pcs/cal-backend-file.c (cal_backend_file_update_pilot_id): - Fixed a g_return_if_fail that had two parameters and thus - wouldn't build. - -2000-08-03 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-model.c (calendar_model_append_row): updated to match - the new ETableModel append_row. This meant we could also get rid of - the row_being_added and idle_id hack. - -2000-08-02 Christopher James Lahey <clahey@helixcode.com> - - * gui/calendar-model.c: Emit "model_pre_change" signals as - appropriate. - -2000-08-02 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend-file.[ch]: New files for the iCalendar file - backend. - - * pcs/Makefile.am (libpcs_a_SOURCES): Added cal-backend-file.[ch]. - - * cal-util/cal-component.c (cal_component_set_icalcomponent): - Return an operation success code for if we are passed a component - of a type we don't support. - -2000-07-31 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-recur.c (*): Use CalComponent and the new property - types instead of the old iCalObject stuff. - (cal_recur_generate_instances): Renamed from - cal_object_generate_events(). Ensure that the component has the - DTSTART property. - (generate_instances_for_year): Renamed from - cal_object_generate_events_for_year(). - (cal_obj_expand_recurrence): Made static. - (cal_recur_from_icalrecurrencetype): New function. We should - really convert this whole file to use struct icalrecurrencetype - instead. - (cal_recur_free): New function. - - * cal-util/cal-recur.h (CalRecurType): Renamed from CalObjRecurType. - (CalRecurrence): Renamed from CalObjRecurrence. - - * cal-util/timeutil.c (time_from_icaltimetype): New function. - - * cal-util/Makefile.am: Commented out the test-recur program. - -2000-08-01 Damon Chaplin <damon@helixcode.com> - - * Removed doc directory, since it is the old gnome-pim docs which - aren't used any more. - - * Makefile.am (SUBDIRS): removed doc. - -2000-07-26 Peter Williams <peterw@helixcode.com> - - * gui/calendar-model.c: compile fix for Solaris - (works under Linux, too; don't know about others) - - * this is a test of whether CVS merge does what I - think it will do. - -2000-07-26 Federico Mena Quintero <federico@helixcode.com> - - OK, it seems that we have all the interesting properties for - single-user calendars now. RFC 2445 can bite me. - - * cal-util/cal-component.c (scan_property): Handle the RRULE - property. Yay!. - (scan_recur): Likewise, yow! - (get_recur_list): Likewise, yeehaw! - (get_recur_list): Likewise, honk honk! - (set_recur_list): Likewise, booooga booooga! - (cal_component_get_rrule_list): Likewise, squeek squeek! - (cal_component_set_rrule_list): That's it, I ran out of sounds. - (cal_component_free_recur_list): Likewise. - (scan_property): Handle the EXRULE property. - (free_icalcomponent): Likewise. - (cal_component_get_exrule_list): Likewise. - (cal_component_set_exrule_list): Likewise. - (set_period_list): Oops, free the old properties as well as - removing them. - (set_text_list): Ditto. - (cal_component_set_exdate_list): Ditto. - - * cal-util/cal-component.c: Put all the functions used to free - returned values all together. - (cal_component_set_rdate_list): Oops, mark SEQUENCE property to be - incremented since the RFC requires it. - (scan_property): Handle the EXDATE property. - (scan_exdate): Likewise. - (free_icalcomponent): Likewise. - (cal_component_get_exdate_list): Likewise. - (cal_component_set_exdate_list): Likewise. - (cal_component_free_exdate_list): Likewise. - -2000-07-26 Jeffrey Stedfast <fejj@helixcode.com> - - * gui/Makefile.am: Fixed a typo - -2000-07-26 Jeffrey Stedfast <fejj@helixcode.com> - - * gui/Makefile.am: Added a few xpm files to the EXTRA DIST section - -2000-07-25 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_free_period_list): New function. - (scan_property): Handle the RDATE property. - (scan_period): Likewise. - (free_icalcomponent): Likewise. - (get_period_list): Likewise. - (set_period_list): Likewise. - (cal_component_get_rdate_list): Likewise. - (cal_component_set_rdate_list): Likewise. - (scan_text): Simplify a bit since we only handle the ALTREP - parameter; there is no need to iterate over all parameters. - (scan_datetime): Simplify; just handle the TZID parameter. - (scan_summary): Simplify; just handle the ALTREP parameter. - (cal_component_get_as_string): New function. - - * idl/evolution-calendar.idl (CalObjType): Removed the TYPE_OTHER; - now we only expose the types of objects we know about. - - * cal-util/cal-util.h (CalObjType): Likewise. - - * cal-client/cal-client.c (cal_client_get_n_objects): Likewise. - (cal_client_get_uids): Likewise. - - * conduits/calendar/calendar-conduit.c (get_calendar_objects): Likewise. - (check_for_slow_setting): Likewise. - - * pcs/cal-backend-imc.c (count_objects): Likewise. - (build_uids_list): Likewise. - - * pcs/cal.c (Cal_get_uids): Likewise. - (Cal_get_n_objects): Likewise. - -2000-07-25 Damon Chaplin <damon@helixcode.com> - - * gui/e-calendar-table.[hc]: new ECalendarTable to show an ETable view - for Todo/Event items. - - * gui/task-assigned-to.xpm: - * gui/task-recurring.xpm: - * gui/task-assigned.xpm: - * gui/task.xpm: new pixmaps (all the same at present) to go in the - icon column of the ETable. - - * gui/event-editor.c: hid the silly 'Calendar' labels on the - GnomeDateEdits and hid the times when you select 'All day event'. - Also adjusted the time_t's so that when an all day event finishes on - say midnight 13th May, we show 12th May in the dialog, since it - implicitly includes all of that day up to midnight. - - * gui/dialogs/task-editor-dialog.glade: - * gui/dialogs/task-editor.[hc]: unfinished dialog to edit tasks. - - * gui/gncal-todo.c: temporary hack so that we can use the simple dialog - with our new ETable. - -2000-07-23 Damon Chaplin <damon@helixcode.com> - - * cal-util/calobj.h: added a few more fields. - - * cal-util/calobj.c (ical_object_create_from_vobject): check for a - NULL return from vObjectUStringZValue for URL property to avoid SEGV. - For some reason an empty 'URL:' property appears and causes trouble. - -2000-07-20 Ettore Perazzoli <ettore@helixcode.com> - - * gui/component-factory.c (factory_fn): Update for the new - `evolution_shell_component_new()' arg. - -2000-07-19 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_alarm_set_trigger): - Finish filling the trigger. What a pain, again. - (cal_component_alarm_free_trigger): Implemented. - -2000-07-19 Fatih Demir <kabalak@gmx.net> - - * conduits/calendar/calendar-conduit-control-applet.desktop: - - * conduits/todo/todo-conduit-control-applet.desktop: - Added the Turkish desktop entries. - -2000-07-18 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_alarm_free): Free the - icalcomponent if this is an unattached alarm. - (scan_alarm_property): Handle the TRIGGER property. - (cal_component_alarm_get_trigger): Ditto. Royal pain. - (cal_component_alarm_set_trigger): Ditto. Less pain. - -2000-07-17 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/cal-client.c (cal_client_get_object): Fixed inline - docs. - (cal_client_new): Ditto. - (cal_client_get_n_objects): Added inline docs. - -2000-07-14 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (CalComponentAlarm): New internal - represntation for alarm components. We really don't map them to a - CalComponent because it is more convenient to handle them as - "child" structures. - (make_alarm): New function to create a CalComponentAlarm from an - icalcomponent representing a VALARM. - (scan_alarm_property): New function to scan a property from an - alarm component. We support ACTION. - (cal_component_get_first_alarm): New function to start an iterator - over the alarms in a calendar component. - (cal_component_alarm_get_action): New function. - (cal_component_alarm_set_action): New function. - -2000-07-13 Seth Alves <alves@hungry.com> - - * conduits/todo/todo-conduit.c: conduit based on the calendar conduit. - this conduit syncs a pilot's ToDoDB database to wombat's list of "todo" - events. - - * gui/gncal-todo.c (simple_todo_editor): set todo's priority control - based on value from ical object during edit. - -2000-07-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/print.c: Revert Michael's GnomeFont patch until the - gnome-print API stabilizes. - -2000-07-12 Michael Meeks <michael@helixcode.com> - - * gui/print.c (titled_box, print_text, print_month_small), - (bound_text): GnomeFont update. - -2000-07-12 Seth Alves <alves@hungry.com> - - * conduits/calendar/calendar-conduit.c: fixed various problems - - * cal-client/Makefile.am: build a static version of the library - to link with the conduits - - * cal-util/Makefile.am: same - -2000-07-11 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (scan_property): Handle the COMPLETED - property. - (free_icalcomponent): Ditto. - (cal_component_get_completed): Ditto. - (cal_component_set_completed): Ditto. - (scan_property): Handle the TRANSPARENCY property. - (free_icalcomponent): Ditto. - (cal_component_get_transparency): Ditto. - (cal_component_set_transparency): Ditto. - (scan_property): Handle the URL property. - (free_icalcomponent): Ditto. - (cal_component_get_url): Ditto. - (cal_component_set_url): Ditto. - - * pcs/cal-factory.c (queue_load_create_job): Removed unneeded - check for the URI. - (load_fn): Be more paranoid about the URI and notify the listener - if we got passed a bad URI. Simplify the termination code a bit. - (create_fn): Likewise. - (queue_load_create_job): Be more paranoid about the URI. - -2000-07-10 Ettore Perazzoli <ettore@helixcode.com> - - * gui/Makefile.am: Remove pilot stuff for now. - - * Makefile.am (SUBDIRS): Remove `conduits'. - -2000-07-10 Dan Winship <danw@helixcode.com> - - * gui/Makefile.am (EXTRA_DIST): remove gnomecal.conduit - - * conduits/calendar/Makefile.am (EXTRA_DIST): We want - calendar.conduit.in, not calendar.conduit. - -2000-07-10 Seth Alves <alves@hungry.com> - - * gui/Makefile.am (SUBDIRS): - * conduits/calendar/Makefile.am: moved calendar-conduit stuff from - the gui directory to here. - - * Makefile.am (SUBDIRS): added conduits to SIBDIRS - -2000-07-08 Ettore Perazzoli <ettore@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): Remove - "close calendar" command. - -2000-07-08 Anders Carlsson <andersca@gnu.org> - - * gui/e-week-view.c (e_week_view_on_button_press): Handle mouse wheel scrolling. - - * gui/e-day-view.c (e_day_view_on_time_canvas_button_press): New function to handle - mouse wheel scrolling. - (e_day_view_on_main_canvas_button_press): Handle mouse wheel scrolling. - -2000-07-07 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (scan_property): Handle the SEQUENCE - property. - (free_icalcomponent): Ditto. - (cal_component_get_sequence): Ditto. - (cal_component_set_sequence): Ditto. - (cal_component_free_sequence): Ditto. - (cal_component_set_last_modified): Removed incorrect assertion. - (CalComponentPrivate): New need_sequence_inc flag. The sequence - number must be incremented when certain properties change, so we - store a flag that says if we need to bump it when piping the - object over the wire. - (free_icalcomponent): Reset need_sequence_inc. - (cal_component_set_dtstart): Set need_sequence_inc. - (cal_component_set_dtend): Ditto. - (cal_component_set_due): Ditto. - -2000-07-06 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (scan_property): Handle the - LAST-MODIFIED property. - (free_icalcomponent): Ditto. - (cal_component_get_last_modified): Ditto. - (cal_component_set_last_modified): Ditto. - (get_icaltimetype): New function to get struct icaltimetype - values. - (cal_component_get_created): Use get_icaltimetype(). - (set_icaltimetype): New function to set struct icaltimetype - values. - (cal_component_set_created): Use set_icaltimetype(). - - * cal-util/cal-component.c (scan_property): Handle the CREATED - property. - (free_icalcomponent): Ditto. - (cal_component_free_icaltimetype): Ditto. - (cal_component_get_created): Ditto. - (cal_component_set_created): Ditto. - (cal_component_init): Do not create an UID here. - (ensure_mandatory_properties): New function to ensure that the - mandatory RFC properties are indeed in the component. If they are - not, we create them on the fly. - (cal_component_set_new_vtype): Use ensure_mandatory_properties(). - (cal_component_set_icalcomponent): Ditto. - (cal_component_get_uid): Return the UID in a parameter, not as a - function return value, for consistency's sake. - (scan_property): Handle the DTSTAMP property. - (free_icalcomponent): Ditto. - (cal_component_get_dtstamp): Ditto. - (cal_component_set_dtstamp): Ditto. - -2000-07-04 Damon Chaplin <damon@helixcode.com> - - * gui/gncal-todo.c (gncal_todo_update): Use &obj instead of &ico in - the call to cal_client_get_object(). The ToDo list should work now. - - * gui/event-editor-dialog.glade: set the toplevel GnomeApp to invisible - so it doesn't appear and then resize. - -2000-07-03 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_get_summary): Use - CalComponentText instead of CalComponentPropSummary. Removed the - latter typedef. - (cal_component_set_summary): Likewise. - (scan_property): Handle the CLASSIFICATION property. - (cal_component_get_classification): Ditto. - (cal_component_set_classification): Ditto. - - * cal-util/cal-component.c (cal_component_free_text_list): Renamed - from cal_component_free_description_list(). We can share this - function since both comments and descriptions have the same form. - (scan_text): Ditto. - (get_text_list): New function. - (set_text_list): New function. - (cal_component_get_description_list): Use get_text_list(). - (cal_component_set_description_list): Use set_text_list(). - (cal_component_set_uid): Add sanity check. - (cal_component_get_summary): Ditto. - (cal_component_get_description_list): Ditto. - (cal_component_get_dtstart): Ditto. - (cal_component_get_dtend): Ditto. - (cal_component_get_due): Ditto. - (scan_property): Handle the COMMENT property. - (cal_component_get_comment_list): Ditto. - (cal_component_set_comment_list): Ditto. - -2000-07-02 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (scan_categories): Handle CATEGORIES. - This can appear multiple times, so we maintain a list. We - compress them later to a single property with multiple values. - (cal_component_get_categories_list): Ditto. - (cal_component_set_categories_list): Ditto. - (cal_component_free_categories_list): Ditto. - (free_icalcomponent): Properly free the mappings. - -2000-07-02 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (scan_datetime): Handle date/time and - timezone pairs. - (scan_property): Handle DTSTART and DTEND. - (cal_component_free_datetime): Ditto. - (get_datetime): Ditto. - (cal_component_get_dtstart): Ditto. - (set_datetime): Ditto. - (cal_component_set_dtstart): Ditto. - (cal_component_get_dtend): Ditto. - (cal_component_set_dtend): Ditto. - (scan_property): Handle DUE date. - (cal_component_get_due): Ditto. - (cal_component_set_due): Ditto. - -2000-07-01 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_get_description_list): - Handle the DESCRIPTION property. There can be multiple - descriptions with parameters each, so we deal with a list instead - of a single structure. - (cal_component_set_description_list): Ditto. - (cal_component_free_description_list): Ditto. - (scan_property): Ditto. - (scan_description): Ditto. - -2000-06-30 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c (cal_component_get_summary): To avoid - passing a million parameters to setters/getters for properties - that support parameters, we now pass client-side structures - instead. Here we use CalComponentPropSummary. - (cal_component_set_summary): Ditto. - -2000-06-29 Christopher James Lahey <clahey@helixcode.com> - - * gui/component-factory.c: Make calendar die when evolution quits. - -2000-06-30 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.c: Change of plans. We use an - icalcomponent from libical as our core representation so that we - can preserve extension fields and fields that we don't (yet) - support. CalComponent is just a wrapper with a nice API that - provides non-iterative, random access to the ical's fields. - (cal_component_destroy): Free the thing correctly. - (cal_component_get_vtype): Re-implement in terms of icalcomponent. - (cal_component_set_icalcomponent): New function to set the - CalComponent's data from an existing icalcomponent. - (cal_component_get_icalcomponent): New function. - (cal_component_set_new_vtype): New convenience function to create - an empty component. - (scan_icalcomponent): Core scanning function. - (scan_property): Another core scanning function. - (cal_component_get_uid): Use the property directly. - (cal_component_get_summary): Ditto. Handle the altrep parameter - as well. - (cal_component_set_summary): Ditto. Feel the pain, motherfucker. - It is ridiculous how much code this involves. - (scan_summary): Ditto. - -2000-06-29 Ettore Perazzoli <ettore@helixcode.com> - - * gui/component-factory.c (owner_set_cb): Get an - EvolutionShellClient instead of an Evolution_Shell to match the - changes in libeshell. - -2000-06-29 Federico Mena Quintero <federico@helixcode.com> - - * gui/Makefile.am: Do not link and include the pilot stuff for the - calendar component, just for the Pilot conduit. Commented out the - Pilot part so that Evolution can build. Sigh, we'll have to - modify gnome-pilot to use OAF. - -2000-06-29 Peter Williams <peterw@helixcode.com> - - * gui/Makefile.am (LINK_FLAGS): Make the calendar-pilot-sync - program conditional on HAVE_GNOME_PILOT, and add - GNOME_PILOT_CFLAGS, GNOME_PILOT_LIBS, and PISOCK_LIBS in the - appropriate places. - -2000-06-29 Seth Alves <alves@hungry.com> - - * pcs/cal.c (Cal_get_uid_by_pilot_id): - (Cal_update_pilot_id): - * pcs/cal-backend-imc.c (cal_backend_imc_update_pilot_id): - (cal_backend_imc_get_uid_by_pilot_id): - * pcs/cal-backend.c (cal_backend_get_uid_by_pilot_id): - (cal_backend_update_pilot_id): server code to service these: - - * gui/calendar-pilot-sync.c: updated to make use of cal-client. - also uses dirty bits on both sides to aid in syncing. - - * cal-client/cal-client.c (cal_client_get_uid_by_pilot_id): new - function -- ask the cal server to return uid given an object's - pilot id. - (cal_client_update_pilot_id): new function -- inform the - cal server of an objects pilot id and pilot dirty-flag. - -2000-06-28 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/cal-component.[ch]: New files for the new iCalendar - component object. Today's properties: basic component type, UID, - SUMMARY. - - * cal-util/Makefile.am: Added cal-component.[ch] to the list of - sources. - -2000-06-27 Michael Meeks <michael@helixcode.com> - - * pcs/Makefile.am (INCLUDES): use BONOBO_VFS_GNOME_CFLAGS. - -2000-06-26 Christopher James Lahey <clahey@helixcode.com> - - * gui/calendar-model.c: Added an #ifdefed value_to_string handler - assignment. - -2000-06-26 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (calendar_model_duplicate_value): - Implement. - (calendar_model_initialize_value): Implement. - (calendar_model_value_is_empty): Implement. - -2000-06-21 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c (e_day_view_reshape_long_event): set event before - using it! - (e_day_view_init): used new colors from tigert. - -2000-06-21 Christopher James Lahey <clahey@helixcode.com> - - * gui/e-day-view.c, gui/e-week-view.c: Remove the usage of the "x" - and "y" arguments. - -2000-06-21 Damon Chaplin <damon@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_direction): changed so it keeps the - selection range. It just moves it on one day/week etc. This makes - it very handy for the keyboard shortcut code. - - * gui/calendar-commands.c (calendar_control_activate): fixed bug - setting the radio button active. - - * gui/e-day-view.[hc]: added support for keyboard navigation and - selection of the time range. - -2000-06-20 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (calendar_model_set_value_at): Implemented. - (calendar_model_is_cell_editable): Implemented. - - * cal-client/cal-client.c (cal_client_update_object): Take in an - iCalObject instead of a stringified version. - - * gui/gnome-cal.c (gnome_calendar_update_object): Removed. - (gnome_calendar_remove_object): Removed. - (save_ical_object_cb): Use the CalClient function. - - * gui/e-day-view.c (e_day_view_on_delete_occurrence): Likewise. - (e_day_view_on_unrecur_appointment): Likewise. - (e_day_view_finish_long_event_resize): Likewise. - (e_day_view_finish_resize): Likewise. - (e_day_view_key_press): Likewise. - (e_day_view_on_editing_stopped): Likewise. - (e_day_view_on_top_canvas_drag_data_received): Likewise. - (e_day_view_on_main_canvas_drag_data_received): Likewise. - (e_day_view_on_delete_appointment): Likewise. - - * gui/e-week-view.c (e_week_view_on_editing_stopped): Likewise. - (e_week_view_key_press): Likewise. - (e_week_view_on_delete_occurrence): Likewise. - (e_week_view_on_unrecur_appointment): Likewise. - (e_week_view_on_delete_appointment): Likewise. - - * gui/gncal-todo.c (ok_button): Likewise. - (delete_todo): Likewise. - -2000-06-19 Damon Chaplin <damon@helixcode.com> - - * gui/event-editor-dialog.glade: tidied up dialog a bit, adding - space etc. - - * gui/e-week-view.c (e_week_view_reshape_events): removed debug msg. - -2000-06-18 Ettore Perazzoli <ettore@helixcode.com> - - * cal-util/Makefile.am (INCLUDES): Include from - `$(top_builddir)/libical/src/libical' too. [For the generated - libical `icalversion.h' header.] - * cal-client/Makefile.am (INCLUDES): Likewise. - -2000-06-18 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c (e_day_view_on_top_canvas_drag_data_received): - fixed a DnD bug. - -2000-06-17 Dan Winship <danw@helixcode.com> - - * cal-client/Makefile.am (INCLUDES): Fix to not depend on - installed ical.h - -2000-06-17 Damon Chaplin <damon@helixcode.com> - - * gui/e-week-view.c: added little buttons which are shown when there - are more events than will fit in a day. Clicking on the button takes - the user to the 1-Day view and shows the full day. - - * gui/e-day-view.c: - * gui/e-week-view.c: set the "use_ellipsis" arg to TRUE for the EText - items so we get tooltips automatically. Though we may want to use our - own code to show tooltips so we can show the tips when the mouse is - around the edges of the event box, and we may want to show the start - and end times of the event in full. - - * gui/calendar-commands.c (calendar_control_activate): - * gui/gnome-cal.h: added view_toolbar_buttons[] so we can access the - radio buttons in the code easily. We need this if we want to jump to - another view programmatically. - -2000-06-16 Damon Chaplin <damon@helixcode.com> - - * gui/jump.xpm: new icon for the EWeekView to jump to the day. - - * gui/Makefile.am (EXTRA_DIST): added jump.xpm - -2000-06-16 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-model.c (calendar_model_class_init): #ifdef'ed out - references to functions which don't exist yet, so evolution still - compiles. - -2000-06-16 Damon Chaplin <damon@helixcode.com> - - * cal-util/test-recur.c: updated. - - * cal-util/cal-recur.[hc]: mostly finished, though it depends on the - iCalObject struct being updated to support more of iCalendar. - -2000-06-16 Damon Chaplin <damon@helixcode.com> - - * pcs/.cvsignore: added icalendar-test. - -2000-06-15 Damon Chaplin <damon@helixcode.com> - - * cal-util/Makefile.am (test_recur_LDADD): use libical.a - -2000-06-15 Dan Winship <danw@helixcode.com> - - * cal-util/Makefile.am (noinst_PROGRAMS): merge the two separate - noinst_PROGRAMS declarations into one so automake accepts it. - (INCLUDES): include libical src dir so we don't depend on having - ical.h already installed - -2000-06-14 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c: GPtrArray cannot insert stuff in the - middle of the array (!), so use plain GArray everywhere. Sigh. - -2000-06-13 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/cal-client.c (cal_client_get_object): Use vCalendar - again. - - * cal-util/calobj.c (ical_object_find_in_string): From Seth, make - it use vCalendar again. - -2000-06-13 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (obj_updated_cb): Juggle some eggs in - asynchronous fashion. Finished implementing. - (obj_removed_cb): Implemented. This one needs no juggling. - (calendar_model_set_cal_client): Only load the objects if we have - a client. - (calendar_model_destroy): Disconnect from the client's signals. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added - calendar-model.[ch] to the list of sources. - - * pcs/cal-backend-imc.c (cal_backend_imc_get_n_objects): Doh, - return the computed value. - -2000-06-13 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-model.c (CalendarModelPrivate): Added the array of - objects and the hash table of UID->array index. - (calendar_model_row_count): Return the length directly from the - array instead of asking the Wombat. - (calendar_model_value_at): Implemented. - (calendar_model_new): Create an empty model. We provide a new - setter function now. - (calendar_model_construct): Removed function. - (calendar_model_set_cal_client): New function to set the calendar - client and object type at any time. This lets us reuse a calendar - model object. - - * cal-util/calobj.h (iCalObjectField): Just report whether the - object has alarms; not every single alarm. - -2000-06-13 Ettore Perazzoli <ettore@helixcode.com> - - * gui/Makefile.am (SHELL_OBJS): Removed. - (evolution_calendar_LDADD): Link with - `$(top_builddir)/shell/libeshell.a'. - -2000-06-09 Ettore Perazzoli <ettore@helixcode.com> - - * gui/component-factory.c (factory_fn): Pass NULL for the new args - @create_folder_fn and @remove_folder_fn. - (create_view): Updated to match the new - `EvolutionShellComponentCreateViewFn'. Return - `EVOLUTION_SHELL_COMPONENT_UNSUPPORTEDTYPE' if type is not - "calendar". - -2000-06-09 Federico Mena Quintero <federico@helixcode.com> - - * idl/evolution-calendar.idl (Cal): Added a get_n_objects() - method. - - * pcs/cal-backend.c (cal_backend_get_n_objects): New function. - - * pcs/cal-backend-imc.c (cal_backend_imc_get_n_objects): - Implemented. - - * pcs/cal.c (Cal_get_n_objects): Implemented. - - * cal-client/cal-client.c (cal_client_get_uids): Free the ev. - (cal_client_get_n_objects): Implemented. - - * cal-util/calobj.h (iCalObjectField): New enumeration to identify - the fields in an iCalObject. - -2000-06-08 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (event_editor_destroy): Free the private - structure. - -2000-06-08 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/calobj.c (ical_object_to_vobject): Allow for NULL - summaries. - -2000-06-07 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (toolbar): Added missing tooltips. We still - need icons, though. - -2000-06-07 Seth Alves <alves@hungry.com> - - * cal-util/calobj.c (ical_object_find_in_string): put this back in, - it's still used in cal-backend-imc.c:cal_backend_imc_update_object - - * cal-client/cal-client.c (cal_client_get_object): instead of - returning a text representation, decode the text and return an - iCalObject. Also added CalClientGetStatus which indicates - success or type of failure. - - * cal-util/calobj.c (ical_object_find_in_string): #ifed out - ical_object_find_in_string since it is unused now. - - * cal-client/client-test.c (list_uids): track get_object change - * gui/calendar-commands.c (calendar_iterate): same - * gui/e-day-view.c (e_day_view_update_event): same - * gui/e-week-view.c (e_week_view_update_event): same - * gui/print.c (print_day_details): same - (print_day_summary): same - (print_todo_details): same - * gui/gnome-cal.c (trigger_alarm_cb): same - * gui/gncal-todo.c (gncal_todo_update): same - -2000-06-06 Seth Alves <alves@hungry.com> - - * cal-util/icalendar.c, icalendar-save.c: fixed a bunch of problems - * cal-util/calobj.c (ical_object_find_in_string): use libical - instead of libversit - (ical_object_to_string): same - (dump_icalobject): prints the contents of an icalobject for debugging - - * gui/Makefile.am (LINK_FLAGS): link libical.a instead of libical.la - so we don't have to modify the build system of the released libical - * cal-client/Makefile.am (client_test_LDADD): same - * cal-util/Makefile.am (icalendar_test_LDADD): same - -2000-06-06 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/calobj.c (ical_object_destroy): Removed from the public - header; made static. Now everyone should use refcounting. - - * pcs/cal-backend-imc.c (free_ical_object): Use - ical_object_unref(). - (remove_object): Likewise. - -2000-06-02 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-commands.c (print): New function to call the print - engine. - (calendar_toolbar): Added the Print button. - (calendar_control_activate): Added the File/Print item. - - * gui/e-day-view.c (e_day_view_get_selected_time_range): Allow - start_time and end_time to be NULL. - - * gui/e-week-view.c (e_week_view_get_selected_time_range): - Likewise. - - * gui/print.c (range_selector_new): Show the range selector - widgets. Use the correct radio group for all of them! - (print_calendar): Do the dialog box here. We may want to split - this function later into smaller chunks. - -2000-06-05 Damon Chaplin <damon@helixcode.com> - - * gui/e-week-view-event-item.c (e_week_view_event_item_button_press): - allow the right button to popup the menu, even when the event is - being edited. - - * gui/e-week-view.c: - * gui/e-day-view.c: Set the keyboard focus to the EDayView/EWeekView - when the right button is clicked, so that any event being edited is - saved before any action (e.g. opening the Event Editor dialog) is - started. Note that this won't work if we switch to asynchronous - notification. - -2000-06-02 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (tb_save_and_close_cb): Implemented. - (toolbar): Added an icon for the Save and Close command. - (save_ical_object): Recompute the title of the window here. Maybe - it would be better to do it when we actually get the - "object_changed" signal from the CalClient. - (file_close_cb): Implemented. - -2000-06-02 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (save_ical_object_cb): Implemented. - (gnome_calendar_add_object): Removed function, since it was - identical to gnome_calendar_update_object(). Modified the rest - of the code to use only the latter. - (gnome_calendar_remove_object): Be more paranoid about the UID. - (gnome_calendar_update_object): Ditto. Also, renamed this - function from gnome_calendar_object_changed(), for consistency - with the lower-level CalClient interface. - - * gui/event-editor.c (event_editor_class_init): New - "save_ical_object" signal to ask that our parent store the - calendar object to the backend. - (save_ical_object): New function to save the calendar object, - actually if just emits the signal. - (file_save_cb): Implemented. - (dialog_to_ical_object): We want priv-> - alarm_program_run_program_entry (i.e. the entry inside the - GnomeFileEntry), not the file entry itself. - (dialog_to_ical_object): Only insert the recurrence ending date if - the event is recurrent! - -2000-06-02 Christopher James Lahey <clahey@helixcode.com> - - * gui/Makefile.am: Fixed EXTRA_DIST. - -2000-06-01 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (editor_closed_cb): Handler for the - "editor_closed" signal of the event editor; we just destroy it - then. - - * gui/event-editor.c (app_delete_event_cb): Callback used when the - dialog is closed. Release the iCalObject here instead of the - event editor's destroy handler, and emit the new "editor_closed" - signal. - -2000-06-01 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor-dialog.glade: Change of plans. The toplevel - GnomeApp is now generated with Glade instead of being created in - the program code. Otherwise we can't migrate the accelerators to - the new toplevel and they won't work. - - * gui/event-editor.[ch]: EventEditor now derives from GtkObject. - This lets us use the GnomeApp created by libglade and still have - signals and stuff. - - * gui/event-editor.c (create_menu): Tell the UI handler that the - menubar is the GnomeApp's existing one, not to create a new one. - (create_toolbar): Tell the UI handler to use the GnomeApp's - existing toolbar. - (event_editor_focus): New function to raise/focus an event editor. - - * gui/gnome-cal.c (gnome_calendar_edit_object): Use - event_editor_focus(). - -2000-06-01 Ettore Perazzoli <ettore@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): Put the - toolbar into a frame to make it look like standard GNOME toolbars. - Also, set `GNOME_DOCK_ITEM_BEH_NEVER_VERTICAL' so that it does not - do evil things when its moved to the left or the right of the - window. - -2000-05-31 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.h (GnomeCalendar): Added a hash table to map - calendar objects to their respective event editors. - - * gui/gnome-cal.c (gnome_calendar_init): Create the - object_editor_hash. - (gnome_calendar_destroy): Free the object_editor_hash. - (gnome_calendar_edit_object): New function to centralize the - launching of event editors; if one already exists for a particular - calendar object, we just raise its window. - (edit): Use gnome_calendar_edit_object(). - - * gui/calendar-commands.c (display_objedit): Use - gnome_calendar_edit_object(). - (display_objedit_today): Likewise. - - * gui/e-day-view.c (e_day_view_on_new_appointment): Likewise. - (e_day_view_on_edit_appointment): Likewise. - - * gui/e-week-view.c (e_week_view_on_new_appointment): Likewise. - (e_week_view_on_edit_appointment): Likewise. - - * gui/event-editor.c (event_editor_new): Do not take in an - iCalObject; rather provide an event_editor_set_ical_object() - function. We need this because a single editor may be switched - between different calendar objects. Also, do not show the event - editor; leave it up to the client code. - (event_editor_construct): Likewise. - (clear_widgets): New function to clear the widgets to default - values. - (fill_widgets): New function to fill in the widgets from the - iCalObject. We don't do this in init_widgets() anymore. - (free_exception_clist_data): New function to free the exceptions - clist data. We were leaking the row data. - (init_widgets): Hook to the destroy signal of the exceptions - clist. - (event_editor_set_ical_object): New function. Now it also makes a - copy of the calendar object for the event editor; clients do not - need to copy it anymore. - (event_editor_destroy): Unref the UI handler as well. - (event_editor_class_init): New "ical_object_released" signal to - notify the parent that we are no longer editing the calendar - object. - (make_title_from_ico): Handle NULL objects. - - * gui/event-editor.h (EventEditor): Removed fields that are no - longer used. - -2000-05-31 Damon Chaplin <damon@helixcode.com> - - * cal-util/Makefile.am: added test-recur test program. - - * cal-util/test-recur.c: new file to test the recurrence code. - - * cal-util/.cvsignore: added test-recur. - - * cal-util/cal-recur.c: updated. - -2000-05-30 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor.c (event_editor_construct): Create the UI - handler after we have constructed the parent GnomeApp. - (main_menu): Menu template is now in place. - (toolbar): Tollbar template is now in place. - (create_toolbar): Turn off labels in the toolbar since it sucks; - it should support non-homogeneous buttons with horizontal icons - and text. - -2000-05-29 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (gnome_calendar_object_changed): Removed the - flags argument, since now we just proxy the calendar object to the - calendar client. - - * gui/event-editor.c (alarm_unit_get): Moved over from - event-editor-utils.c. - - * gui/event-editor-utils.[ch]: Removed files, since the two - functions that were left there (i.e. the ones not present in - e-dialog-widgets) can simply be moved to event-editor.c. - - * gui/Makefile.am (evolution_calendar_SOURCES): Removed - event-editor-utils.[ch] from the list of sources. - -2000-05-27 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor-utils.c: Moved many functions to - e-util/e-dialog-widgets.c. - -2000-05-25 Federico Mena Quintero <federico@helixcode.com> - - * gui/event-editor-dialog.glade: Put the main notebook directly - under a simple GtkWindow. We are going to pull out the notebook - and slap it into our custom-built GnomeApp, anwyays. - - * gui/event-editor.c: Made the EventEditor derive from GnomeApp. - Added a BonoboUIHandler for its menu and toolbar. - (make_title_from_ico): Create a nice title for the window. - (get_widgets): Fetch the Glade widgets here instead of all over - the place. - (event_editor_new): Temporary hack to show the dialog here, just - so that I can test it. - - * gui/Makefile.am (EXTRA_DIST): Added the Glade messages file. - -2000-05-25 Federico Mena Quintero <federico@helixcode.com> - - * gui/main.c (init_bonobo): Do not initialize libglade twice. - - * gui/component-factory.c (create_view): Set the folder_uri - property, otherwise the calendar will not get loaded into the - view. - -2000-05-25 Christopher James Lahey <clahey@helixcode.com> - - * gui/main.c: Make it so that warnings don't crash calendar. - -2000-05-25 Ettore Perazzoli <ettore@helixcode.com> - - * gui/evolution-calendar-control.c: Removed. - - * gui/main.c: New. - - * gui/control-factory.c: New. - * gui/control-factory.h: New. - - * gui/calendar-component-factory.c: New. - * gui/calendar-component-factory.c: New. - - * gui/evolution-calendar-control.c (calendar_control_factory): - Renamed from `calendar_factory'. - (calendar_control_factory_init): Renamed from - `calendar_factory_init'. - - * gui/Makefile.am: Link with the files from `$(builddir)/shell'. - - * gui/evolution-calendar.gnorba: New. - * gui/evolution-calendar.oafinfo: New. - -2000-05-24 Federico Mena Quintero <federico@helixcode.com> - - * gui/print.c (range_selector_new): New function to create the - custom range selector. - (print_dialog): New function to show the print dialog. - (print_calendar): Use the print dialog. - -2000-05-24 Christopher James Lahey <clahey@helixcode.com> - - * gui/Makefile.am: Added libepaned.a. - - * gui/gnome-cal.c: Switched from GtkPaned to EPaned. - -2000-05-22 Federico Mena Quintero <federico@helixcode.com> - - * gui/calendar-commands.c (calendar_get_events_in_range): Removed - function. - - * gui/mark.c (mark_month_item): Use - cal_client_get_events_in_range(). - - * gui/calendar-commands.c (show_year_view_clicked): Comment out, - since we don't have a year view. - - * gui/gnome-cal.c (setup_widgets): Removed the year view stuff. - (gnome_calendar_get_current_view_name): Likewise. - (gnome_calendar_update_view_times): Likewise. - (gnome_calendar_direction): Likewise. - (gnome_calendar_set_view): Likewise. - (gnome_calendar_update_all): Likewise. - (gnome_calendar_object_updated_cb): Likewise. - (gnome_calendar_object_removed_cb): Likewise. - (gnome_calendar_time_format_changed): Likewise. - (gnome_calendar_get_current_time_range): Likewise. - - * gui/gnome-cal.h (GnomeCalendar): Removed the year view stuff. - - * gui/Makefile.am (evolution_calendar_SOURCES): Added layout.[ch], - print.[ch]. Removed quick-view.[ch], year-view.[ch] since they - are no longer used. Removed all the old Pilot crap. - -2000-05-20 Damon Chaplin <damon@helixcode.com> - - * cal-util/cal-recur.[hc]: new files to implement iCalendar recurrence - rules. These are only part finished, but people may like to check that - the architecture seems OK. - -2000-05-17 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c (e_day_view_on_delete_occurrence): - * gui/e-week-view.c (e_week_view_on_delete_occurrence): use a copy of - the iCalObject so we detect the change in the "update_event" callback. - Maybe we should just update the view ourselves and then we wouldn't - need to detect any change in the callback. - - * cal-util/calobj.c (ical_object_reset_recurrence): new function to - get rid of any recurrence rules. Used when we 'unrecur' an event. - - * gui/e-day-view.c (e_day_view_key_press): don't add a new event if it - won't fit, or we end up adding a new event for each key press. - (e_day_view_update_event_label): don't update it if it doesn't have - an EText item (i.e. it isn't visible). - - * gui/e-day-view-time-item.c: allow selection of times using this - column. - -2000-05-19 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/timeutil.c (time_add_minutes): Fixed warning message. - (time_add_day): Likewise. - (time_add_month): Likewise. - (time_add_year): Likewise. - (time_from_day): Of all functions, *this* one had to have a bug. - Set the tm.tm_isdst to -1 to specify that we don't know whether - the time is in DST or not. This fixes *many* bugs upstream. - (time_week_begin): Likewise. We never noticed this since the week - functions are never used. - (time_week_end): Likewise. - -2000-05-17 Seth Alves <alves@hungry.com> - - * gui/event-editor.c: hooked up more widget signals to callbacks - to the gladified dialog acts more like the original one. - -2000-05-16 Seth Alves <alves@hungry.com> - - * gui/event-editor.c (recurrence_toggled): hook the radio buttons - to the pages of the notebook. - (append_exception): - (recurrence_exception_added): - (recurrence_exception_deleted): - (recurrence_exception_changed): code to deal with the recurrence - exception list. - -2000-05-15 Seth Alves <alves@hungry.com> - - * gui/event-editor.[ch]: gladeified replacement for eventedit.c - - * gui/event-editor-utils.[ch]: utilities used by event-editor.c - - * gui/event-editor-dialog.glade: glade file used by event-editor.c - -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. - -2000-05-13 Ettore Perazzoli <ettore@helixcode.com> - - * pcs/Makefile.am (INCLUDES): Add - `-I$(top_builddir)/libical/src/libical'. - -2000-05-12 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/calobj.c (generate): Use a (dtend - dtstart) offset to - compute the ending time of the occurrence. This takes care of - recurring events that span multiple days. Also, removed the DST - condition since it did not look right at all: if you have a daily - appointment at 18:00, it still should happen at 18:00 even during - daylight savings. - - * gui/gnome-cal.c (gnome_calendar_tag_calendar): Use the timeutil - functions instead of calculating the month's times by hand. Use - cal_obj_instance_list_free() instead of freeing the list by hand. - Clip the range we pass to mark_gtk_calendar_day(). - (mark_gtk_calendar_day): Fixed off-by-one error at the end of the - month by adding real day offsets. - -2000-05-11 Federico Mena Quintero <federico@helixcode.com> - - * gui/gnome-cal.c (add_alarms_for_object): New function to add - today's alarms for a single object. - (gnome_calendar_object_updated_cb): Update the object's alarms. - - * idl/evolution-calendar.idl (Cal): Added a - get_alarms_for_object() method. - - * pcs/cal.c (Cal_get_alarms_for_object): Implemented method. - - * pcs/cal-backend.c (cal_backend_get_alarms_for_object): New - function. - - * pcs/cal-backend-imc.c (cal_backend_imc_get_alarms_for_object): - Implemented. - - * cal-client/cal-client.c (cal_client_get_alarms_for_object): New - function. - -2000-05-11 Dan Winship <danw@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): Now that we - depend on current gnome-libs we can make the toolbar detachable - again. - - * pcs/icalendar-save.c (timet_to_icaltime): remove unused timezone - variable to make this compile on BSD systems (where timezone is - the name of a function) - -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. - -2000-05-10 Matt Loper <matt@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): Move - "about" menuitem to the help menu. - -2000-05-10 Christopher James Lahey <clahey@helixcode.com> - - * gui/Makefile.am: Added main.h. Combined the two EXTRA_DIST - sections. - -2000-05-09 Christopher James Lahey <clahey@helixcode.com> - - * pcs/cal-backend-imc.c: Set the format when creating a new - calendar. - -2000-05-09 Christopher James Lahey <clahey@helixcode.com> - - * pcs/cal-factory.c: Removed double free of method_string in - uri->method_string. - -2000-05-08 Ettore Perazzoli <ettore@helixcode.com> - - * pcs/cal.h: Include "calendar/pcs/evolution-calendar.h" instead - of "evolution-calendar.h". - - * pcs/cal-backend.h: Include "calendar/pcs/evolution-calendar.h" - instead of "evolution-calendar.h". - -2000-05-08 Seth Alves <alves@hungry.com> - - * gui/e-day-view.c (e_day_view_on_delete_appointment): call - e_day_view_stop_editing_event here to avoid a divide by zero - a bit further on. i'm not sure if this is the best fix for this. - -2000-05-08 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend.h (CalBackendClass): CalBackendClass now is just - an interface for calendar backends; this is an abstract class. - Put in the vtable for the backend methods. - - * pcs/cal-backend.c (cal_backend_new): Removed function, since - CalBackend is not just an abstract class. - Removed implementation-specific functions and made public - functions call the virtual methods instead. - - * pcs/cal-backend-imc.[ch]: New files with the CalBackendIMC - implementation; this implements a backend for iCalendar and - vCalendar files. Moved the implementation-specific stuff from - cal-backend.[ch] to here. - - * pcs/cal-backend-imc.c (CalendarFormat): Moved enumeration to - here. Added a CAL_UNKNOWN value for when the backend is not - loaded yet. - (cal_backend_imc_init): Initialize priv->format as CAL_UNKNOWN. - (save_to_vcal): Use the same VCProdIdProp value as in - cal-util/calobj.c. Use "1.0" as the VCVersionProp as per the - vCalendar spec. - (ensure_uid): Return nothing, since the result value need not be - used anymore. - (add_object): Since we mark the calendar as dirty anyways, we do - not need to check the result value of ensure_uid() anymore. - (remove_object): Asssert that we know how to handle the object's - type. We do this in add_object() anyways. - - * pcs/Makefile.am (libpcs_a_SOURCES): Added cal-backend-imc.[ch]. - - * gui/gnome-cal.c: Replaced debugging printf()s with g_message() - so that we can see the line number where they occur. - - * gui/gnome-cal.c (gnome_calendar_load_cb): Sort of handle the - LOAD_METHOD_NOT_SUPPORTED result code, and added a default for the - switch. - - * cal-client/cal-listener.h (CalListenerLoadStatus): Removed - enumeration; it is stupid to translate all values for the - CalClient when it is going to translate them again. - (CalListenerClass::cal_loaded): This signal now passes the - LoadStatus directly from the CORBA side. - - * cal-client/cal-listener.c (Listener_cal_loaded): Do not - translate the status value. - - * cal-client/cal-client.h (CalClientLoadStatus): Added the - CAL_CLIENT_LOAD_METHOD_NOT_SUPPORTED error code. - - * cal-client/cal-client.c (cal_loaded_cb): Translate the CORBA - version of the LoadStatus result code. - - * pcs/cal-factory.c (CalFactoryPrivate): New methods field for the - hash table from method strings to the GtkTypes for backend class - types. - (cal_factory_init): Create the priv->methods hash table. - (cal_factory_destroy): Free the priv->methods hash table. - (cal_factory_register_method): New function to register a backend - class for a particular URI method. - (launch_backend_for_uri): New function to launch a backend for a - particular URI's method. - (load_backend): Use launch_backend_for_uri(). Move the error - notification code from load_fn() to here. - (create_backend): Use launch_backend_for_uri(). Move the error - notification code form create_fn() to here; it is #ifdefed out - since currently cal_backend_create() does not have any error - reporting capabilities. - - * idl/evolution-calendar.idl (Listener::LoadStatus): Added a - PROTOCOL_NOT_SUPPORTED error code. - - * pcs/cal-factory.c (cal_factory_load cal_factory_create): Removed - functions, since they were supposed to be internal only. - (CalFactory_load): Call queue_load_create_job() directly. - (CalFactory_create): Likewise. - -2000-05-08 Damon Chaplin <damon@helixcode.com> - - * gui/e-week-view.c (e_week_view_remove_event_cb): - * gui/e-day-view.c (e_day_view_remove_event_cb): don't set the ico->uid - to NULL or we won't find any other occurrences of the event. Set the - editing_event_day/num to -1 instead. - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): fixed the - positioning of the icons for long events. - - * cal-util/calobj.c (ical_object_normalize_summary): forgot to - terminate the string. - -2000-05-07 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received): - (e_day_view_on_top_canvas_drag_data_received): show the EText item, - just in case it hasn't moved, otherwise it won't appear. - - * gui/e-day-view.h (E_DAY_VIEW_BAR_WIDTH): increased from 6 to 8 to - make it easier to drag an event. Also increased E_DAY_VIEW_GAP_WIDTH - since it must be >= the BAR_WIDTH. - -2000-05-07 Matt Loper <matt@helixcode.com> - - * gui/evolution-calendar-control.c (PROPERTY_CALENDAR_URI): - Changed to "folder_uri" from "calendar_uri". - (set_prop): The uri given to us is a directory, so we append a - filename onto the end before we use it. - -2000-05-06 Damon Chaplin <damon@helixcode.com> - - * cal-util/timeutil.c (time_day_begin): - (time_day_end): changed these so they just do a simple localtime(), - update the struct tm, then do a mktime(). I don't know why it used to - look at the tm_isdst flags etc. From a little test program I wrote - which steps through testing every hour for a year it wasn't working - correctly, and the new code does. - (time_add_day): also got rid of the stuff that looked at tm_isdst here. - My test program now works better. - -2000-05-06 Chris Toshok <toshok@helixcode.com> - * gui/.cvsignore: ignore evolution-calendar.pure - - * gui/Makefile.am: add support for building evolution-calendar.pure - -2000-05-06 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c: - * gui/e-week-view.c: finish editing event when user hits Return key. - (e_week_view_on_text_item_event): stop event signals after doing any - other calls, since otherwise it will also stop any other resulting - event signals. - - * gui/e-week-view-event-item.c (e_week_view_event_item_draw): don't - draw the start/end times while editing. - - * gui/eventedit.c: changed the Summary field to a GtkEntry, since we - now only want a single line of text. - - * cal-util/calobj.c (ical_object_normalize_summary): new function to - convert the summary field to a single line of text, by converting any - sequence of CR & LF characters to a single space. - (ical_object_create_from_vobject): call the above function. I think - all functions that load iCalObjects go through this. - (ical_new): called it here as well just in case. - -2000-05-06 Damon Chaplin <damon@helixcode.com> - - * gui/week-view.[hc]: removed. - -2000-05-06 Damon Chaplin <damon@helixcode.com> - - * gui/gncal-day-panel.[hc]: - * gui/gncal-day-view.[hc]: - * gui/gncal-full-day.[hc]: - * gui/gncal-week-view.[hc]: - * gui/layout.[hc]: - * gui/view-utils.[hc]: removed old calendar view files. - -2000-05-06 Damon Chaplin <damon@helixcode.com> - - * cal-util/calobj.[hc]: added guint ref_count to iCalObject struct, - and ical_object_ref/unref() functions. I've updated all the gui/ - stuff to use ref_counts but I haven't touched the pcs/ stuff. Maybe - just using ical_object_destroy() is OK there. - - * gui/gncal-todo.c: - * gui/calendar-commands.c: - * gui/eventedit.c: - * gui/e-week-view.c: - * gui/e-day-view.c: use refcounting for iCalObjects. - - * gui/e-day-view-main-item.c: - * gui/e-day-view-top-item.c: - * gui/e-day-view.c: try not to ever draw outside the event, even when - the event is very small. - -2000-05-05 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c: don't allow recurring events to be resized or - dragged, and don't show the resize/drag cursors. Actually it may be - better to let the user do the resize/drag and then ask them what they - want to do - change the single occurrence or the entire series. - - * gui/e-day-view-time-item.c (e_day_view_time_item_show_popup_menu): - use e_auto_kill_popup_menu_on_hide() to destroy the popup menu. - - * gui/popup-menu.c: include e-gui-utils.h - -2000-05-04 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view.c (e_day_view_foreach_event_with_uid): for the long - events pass E_DAY_VIEW_LONG_EVENT as the day. Fixes SEGV. - - * gui/calendar-commands.c: when we switch views, grab the focus. - - * gui/gnome-cal.c (gnome_calendar_tag_calendar): - (gnome_calendar_mark_gtk_calendar_day): changed this so it uses - cal_client_get_events_in_range(), and doesn't load any objects. - Also just return if it isn't visible. - - * gui/calendar-commands.c (calendar_get_events_in_range): call - g_list_sort() to sort the list rather than g_list_insert_sorted() for - each element. It is much more efficient. - Also changed it so that the co->ev_start/end fields are copied from - the CalObjInstance rather than the parameters to the function - (that is right, isn't it?) - Also freed the list elements, and finally the list. - (calendar_iterate): changed this to use cal_client_get_events_in_range - since that is more efficient than getting all the uids and then loading - and parsing all the events. - - * pcs/cal-backend.c (save): output the '... saved' message before - freeing the string! - - * gui/gncal-todo.c (gncal_todo_update): - * gui/e-week-view.c (e_week_view_update_event): - * gui/e-day-view.c (e_day_view_update_event): - * gui/calendar-commands.c (calendar_get_events_in_range): - (calendar_iterate): free obj_string after it is parsed. - -2000-05-02 Damon Chaplin <damon@helixcode.com> - - * gui/calendar-commands.c (calendar_control_activate): set the active - radio button here. Oops - it wasn't a Bonobo problem after all. - - * gui/popup-menu.c (popup_menu): added call to - e_auto_kill_popup_menu_on_hide() to destroy the menu. - - * gui/e-week-view.c (e_week_view_show_popup_menu): - * gui/e-day-view.c (e_day_view_on_event_right_click): ico->user_data - isn't useful any more, since the event editor keeps its own iCalObject. - So for now we make the menu commands available even when the event is - being edited in the event editor. - Also corrected misspellings of 'occurance' -> 'occurrence'. - - * gui/eventedit.c (event_editor_destroy): destroy the iCalObject. - The event editor now uses its own independent iCalObject. - - * gui/e-week-view.c (e_week_view_on_unrecur_appointment): - * gui/e-day-view.c (e_day_view_on_unrecur_appointment): create a new - uid for the new single instance. I'm not sure what we should do about - the creation/last modification times of the objects. - - * gui/e-week-view.c (e_week_view_on_edit_appointment): - * gui/e-day-view.c (e_day_view_on_edit_appointment): duplicate the - iCalObject before passing it to the event editor, since it will change - the fields. If we don't duplicate it we won't know what has changed - when we get the "update_event" callback. - - * gui/e-week-view.c (e_week_view_key_press): - * gui/e-day-view.c (e_day_view_key_press): set the created and last_mod - times of the new iCalObject. We may want to set the default alarm as - well. - - * cal-util/calobj.c (ical_gen_uid): made this function public so we - can generate new uids if necessary. - -2000-05-01 Damon Chaplin <damon@helixcode.com> - - * gui/gnome-cal.[hc] (gnome_calendar_get_current_time_range): new - function to get the currently seleted time range form the current view. - - * gui/calendar-commands.c (display_objedit): use the above function - to get the time for the new appointment. - - * gui/e-week-view.c: - * gui/e-day-view.c: use a shallow copy of the ico when we update the - times (when resizing/dragging). Otherwise we won't detect that the - time has changed in the "update_event" callback. - - Also added functions to get the currently selected time range. - -2000-04-30 Seth Alves <alves@hungry.com> - - * pcs/icalendar-save.c (icalcomponent_create_from_ical_object): set - attendee and contact address correctly. - - * pcs/cal-backend.c (icalendar_calendar_load): init priv->object_hash - when loading. - (cal_get_type_from_filename): if file extension is .ical, consider - the file an ical file. - -2000-05-01 Damon Chaplin <damon@helixcode.com> - - * cal-util/calobj.c (ical_object_compare_dates): new function to see - if the event dates have changed (including any recurrence rules). - It is used for optimization when we get the "object_changed" signal. - We have to do far less work if the dates are unchanged. - - * gui/e-week-view.c: - * gui/e-day-view.c: only draw the selection when we have the keyboard - focus, since the user expects to be able to type in a new event when - the selection is shown. Also keep the selection when we lose focus, - but just don't show it. - - Also quite a few changes to cope with the new client/server - architecture. - - * gui/e-day-view-top-item.c (e_day_view_top_item_draw): - * gui/e-day-view-main-item.c (e_day_view_main_item_draw): - * gui/e-week-view-main-item.c (e_week_view_main_item_draw_day): - only draw the selection if the widget has the keyboard focus. - - * gui/gnome-cal.c (mark_gtk_calendar_day): fixed so it works with - events longer than one day. And changed the code for updating events - in the new views. - -2000-04-27 Ettore Perazzoli <ettore@helixcode.com> - - * gui/evolution-calendar-control.c - (init_bonobo): OAFized. - - * gui/main.c (main): Initialize with OAF if `USING_OAF'. - - * gui/evolution-calendar-control.c: New #define - `CONTROL_FACTORY_ID', varying according to whether we are - `USING_OAF'. - (calendar_factory_init): Use `CONTROL_FACTORY_ID'. - - * gui/Makefile.am: Updated for OAF. - - * pcs/cal-factory.h: Explicitly #include - "calendar/pcs/evolution-calendar.h" instead of just - "evolution-calendar.h". - - * cal-client/cal-client.c (cal_client_construct) [USING_OAF]: Use - OAF. - - * cal-client/client-test.c (init_corba): New function, implemented - differently depending on `USING_OAF'. - -2000-04-27 <alves@hungry.com> - - * pcs/cal-backend.c (cal_backend_load): fix memory leak - (save_to_vcal): same - (save): same - (cal_backend_load): same - -2000-04-26 Christopher James Lahey <clahey@helixcode.com> - - * cal-util/.cvsignore: Replaced libcal-util.la with *.la - - * pcs/.cvsignore: Added *.la and *.lo. - -2000-04-25 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-factory.c (backend_last_client_gone_cb): Renamed from - backend_destroy_cb. Now we use it for the "last_client_gone" - signal from the backend. Also, unref the backend to destroy it. - (add_backend): Connect to the "last_client_gone" signal of the - backend. - (cal_factory_get_n_backends): New function to query the number of - running backends. - - * pcs/cal-backend.c (cal_backend_class_init): Register the new - "last_client_gone" signal. It is emitted when the last Cal client - goes away. It is used to notify the factory when a backend may be - safely destroyed. - (cal_destroy_cb): Emit the "last_client_gone" signal when the last - client disconnects from the backend. - -2000-04-25 Seth Alves <alves@hungry.com> - - * gui/e-day-view.c (e_day_view_find_event_from_ico): compare - iCalObjects by their UIDs instead of by their pointers. - - * pcs/cal-backend.c (cal_backend_destroy): don't save on destroy. - -2000-04-25 Ettore Perazzoli <ettore@helixcode.com> - - * cal-client/Makefile.am: Add `$(datadir)/idl'. - - * pcs/Makefile.am (idl_flags): Add `$(datadir)/idl'. - (INCLUDES): Use `$(BONOBO_GNOME_CFLAGS)'. - -2000-04-25 Seth Alves <alves@hungry.com> - - * gui/gnome-cal.c (gnome_calendar_destroy): hook for widget - destroy -- used to unref the CalClient so wombat knows we are gone. - (gnome_calendar_class_init): added a class init for this widget. - - * gui/e-day-view.c (e_day_view_update_event): allow for null ico - - * gui/e-week-view.c (e_week_view_update_event): allow for null ico - -2000-04-24 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/client-test.c (main): The path to the test calendar - changed when we moved stuff around. Users will have to tweak this - for their CVS setup, anyways. - (create_client): Create or load the calendar as appropriate. - (client_destroy_cb): Exit the main loop if both clients are gone. - (main): Connect to the "destroy" signal of the clients so that we - can terminate the test program. - -2000-04-24 Seth Alves <alves@hungry.com> - - * pcs/icalendar.c (parse_person): allow for null CN - (parse_person): allow for null sent_by - - * pcs/Makefile.am: build icalendar-test - - * pcs/icalendar-test.c: a test which loads an ical file and - converts it to our internal format, and then saves it back out. - -2000-04-24 Damon Chaplin <damon@helixcode.com> - - * gui/Makefile.am: added new source files and pixmaps, and removed - old source files, which can be deleted. - - * gui/e-week-view-titles-item.[hc]: - * gui/e-week-view-main-item.[hc]: - * gui/e-week-view-event-item.[hc]: - * gui/e-week-view.[hc]: new files implementing the week/month views. - - * gui/yearview.xpm: - * gui/monthview.xpm: - * gui/weekview.xpm: - * gui/workweekview.xpm: - * gui/dayview.xpm: new pixmaps for the toolbar buttons. These aren't - intended to be the final pixmaps. - - * gui/calendar-commands.c: added radio buttons to the toolbar to - switch between the calendar views, and moved the am_pm_flag here so we - can get rid of view-utils.c. - - * gui/gnome-cal.[hc]: made it a subclass of GtkVBox, rearranged the - widgets into 2 notebooks, and added the selection_start_time and - selection_end_time fields. - - * gui/goto.c: updated to use new selection time range. - - * gui/quick-view.c: added '#include <gtk/gtkwindow.h>' so it compiles. - - * gui/e-day-view.[hc]: changed the interface to support the new - selection time range, got rid of a few debugging messages and changed - a few bits. - -2000-04-21 Seth Alves <alves@hungry.com> - - * pcs/icalendar-save.c: start on code to do the opposite of - icalendar.c (convert from iCalObjects to libical's icalcomponents). - - * gui/calendar-commands.c (calendar_control_activate): moved - "About Calendar" into the View menu so it shows up. - -2000-04-20 Seth Alves <alves@hungry.com> - - * gui/gnome-cal.c (gnome_calendar_changed_cb): new function: callback - for listener's object updated signal. - (gnome_calendar_object_removed_cb): new function: callback for - listener's object removed signal. - (gnome_calendar_new): hook up listener's "obj_updated" and - "obj_removed" signals so if evolution is running twice, - they will both see changes right away. - (gnome_calendar_object_changed): don't call update_all, since - it will be called by the listener. - (gnome_calendar_remove_object): don't call update_all - (gnome_calendar_add_object): don't call update_all - - * gui/gncal-full-day.c (child_realize): create fullday's gcs - even if pixmap_bell has already been created. this was - causing crashes if the calendar was run twice. - -2000-04-19 Seth Alves <alves@hungry.com> - - * gui/eventedit.c (ee_rp_init_rule): changed the order around - a bit to avoid a Gtk-CRITICAL crash - - * gui/gncal-todo.c (gncal_todo_update): fixed code to populate - the todo clist - - * cal-client/cal-client.c (cal_client_get_uids): don't check - type against CALOBJ_TYPE_ANY since it will always match. - (cal_client_get_uids): same (re: CALOBJ_TYPE_ANY) - - * pcs/cal-backend.c (build_uids_list): same (re: CALOBJ_TYPE_ANY) - - * pcs/cal.c (Cal_get_uids): same (re: CALOBJ_TYPE_ANY) - - * pcs/cal-backend.c (remove_object): don't call save from here - because in all cases the caller of remove_object calls save - - * gui/calendar-commands.c (calendar_set_uri): calls gnome_calendar_open - instead of checking on disk and calling load or create. - - * gui/gnome-cal.c (gnome_calendar_object_changed): fixed to use - cal_client_update_object -- editing and dragging events works again - (gnome_calendar_open): collapsed gnome_calendar_load and - gnome_calendar_create into this function. added new type - GnomeCalendarOpenMode which has the value CALENDAR_OPEN or - CALENDAR_OPEN_OR_CREATE. - - * gui/evolution-calendar-control.c (calendar_properties_init): create - a property bag for this control - (set_prop): callback for property sets - (get_prop): callback for proprety gets - - * gui/calendar-commands.c (calendar_set_uri): new function, - called when the "calendar_uri" property is set on the calendar- - control's property bag. - -2000-04-18 Federico Mena Quintero <federico@helixcode.com> - - * cal-util/Makefile.am (INCLUDES): Fix include path. - -2000-04-16 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-factory.h (CalFactoryClass): We have a new - "last_calendar_gone" signal that Wombat can use to terminate - itself properly. - - * pcs/cal-factory.c (cal_factory_class_init): Register the - "last_calendar_gone" signal. - (backend_destroy_cb): Emit the "last_calendar_gone" signal instead - of killing the factory. - - * pcs/Makefile.am: Added $(CORBA_GENERATED) to BUILT_SOURCES. - (INCLUDES): Make the log domain be "wombat-pcs". - -2000-04-17 Seth Alves <alves@hungry.com> - - * pcs/cal-backend.c (add_object): removed implicit save, since - we don't want to save as we load from disk. - (cal_backend_update_object): added a call to save, since it - isn't done by add_object now. - -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. - -2000-04-11 Chris Toshok <toshok@helixcode.com> - - * pcs/icalendar.c (icaltime_to_timet): use HAVE_TIMEZONE to switch - between linux's timezone variable and *bsd's method of getting the - gmt offset. - -2000-04-10 Seth Alves <alves@hungry.com> - - * pcs/cal-backend.c (save_to_vcal): create and save an actual - vcalendar instead of a list of vcal objects. - -2000-04-10 Damon Chaplin <damon@helixcode.com> - - * gui/Makefile.am (INCLUDES): moved srcdir directories to the top so - we search headers in the evolution tree before installed headers. - (Otherwise when you do 'make install' lots of files in gui/ get - rebuilt, since they depend on the installed cal-client.h which has just - been updated.) - -2000-04-09 Seth Alves <alves@hungry.com> - - * gui/gnome-cal.c (gnome_calendar_load): catch cal_loaded signal - on the cal client. - (gnome_calendar_load_cb): callback for cal_loaded signal. moved - gnome_calendar_update_all from gnome_calendar_load to here. - - * gui/calendar-commands.c: minor cleanups - - * pcs/cal-backend.c (save_to_vcal): copied code from gnome-pim - to write vcal to a file - (save): filled it with more gnome-pim code - (add_object): call save () after changing - (remove_object): same - (cal_backend_create): same - (cal_backend_remove_object): same - -2000-04-08 Christopher James Lahey <clahey@helixcode.com> - - * gui/Makefile.am: Removed linking with libetable and libeminicard - since they weren't being used. - -2000-04-08 Seth Alves <alves@hungry.com> - - * gui/gnome-cal.c (gnome_calendar_create): new function: - friendly wrapper for cal_client_create_calendar - - * gui/calendar-commands.c (new_calendar): call gnome_calendar_create - if no filename is provided - - * gui/prop.c (properties): calendar is a frame - - * gui/calendar-commands.c (calendar_control_activate): sort out the - menus a bit, more of them show up now. - - * gui/Makefile.am: don't build library or test, just the bonobo control - - * gui/gncal-todo.c (simple_todo_editor): calendar is a frame instead - of a window, now. - - * gui/gnome-cal.c (gnome_calendar_new): same - - * gui/goto.c (goto_dialog): same - -2000-04-06 Seth Alves <alves@hungry.com> - - * gui/calendar-commands.c (calendar_control_activate): removed - uih from the argument list, added cal. use cal as user_data - in callbacks rather than the control. - (calendar_control_deactivate): removed uih from argument list - -2000-04-05 Seth Alves <alves@hungry.com> - - * gui/calendar-commands.c (setup_menu): removed - (setup_appbar): removed - (calendar_control_activate): new function -- does the work - that setup_appbar and setup_menu used to do. - (calendar_control_deactivate): undoes what calendar_control_activate - does by removing the toolbar items and menu items. - - * gui/Makefile.am: build test-calendar-widget and evolution-calendar, - common stuff is in a library - - * gui/gnome-cal.c (gnome_calendar_get_type): made the calendar widget - based on a gtk_frame rather than a gnome_app - - * gui/calendar-commands.c: split out some of main.c - - * gui/evolution-calendar-control.c: bonobo bung so evolution - can use the calendar widget - -2000-04-01 Matt Loper <matt@helixcode.com> - - * pcs/.cvsignore: Added *.lo. - -2000-03-30 Seth Alves <alves@hungry.com> - - * gui/main.c (calendar_get_events_in_range): - cal_client_get_events_in_range returns a list of CalObjInstance *, not - a list of (char *) uid. - - * Makefile.am (SUBDIRS): readded the gui directory - - * gui/main.c: temporarily added alarm_defaults back in, - since the calendar doesn't link without it - -2000-03-29 Matt Loper <matt@helixcode.com> - - * Makefile.am: remove the gui directory, which doesn't compile. - -2000-03-28 Matt Loper <matt@helixcode.com> - - * pcs/Makefile.am: create a libpcs.la library, for use in the - wombat. - -2000-03-28 Seth Alves <alves@hungry.com> - - * gui/Makefile.am (LINK_FLAGS): added libeutil.la and libetext.a - - * gui/main.c (calendar_iterate): switch from string_to_ical_object to - ical_object_find_in_string - (calendar_get_events_in_range): same - (session_save_state): commented out references - to gcal->client->filename - -2000-03-27 Federico Mena Quintero <federico@helixcode.com> - - * pcs/cal-backend.c (cal_backend_get_object): Use - ical_object_to_string(). - - * cal-util/calobj.c (ical_object_to_string): Moved over from - pcs/cal-backend.c (was string_from_ical_object). - (get_calendar_base_vobject): Likewise, moved over from - pcs/cal-backend.c. - - * cal-util/cal-util.c: Removed string_to_ical_object(); the - correct function is in calobj.[ch], called - ical_object_find_in_string(). Removed ical_object_to_string, - since we now implement it in calobj.c. - - * cal-util/calobj.c: Removed ical_object_new_from_string(); see - above. - - * idl/evolution-calendar.idl (CalObjInstance): Calendar object - instances now contain only the UID for the object, not the whole - string representation of the object. This allows clients to - implement caching of objects if they wish. - - * pcs/cal.c (Cal_get_events_in_range): Likewise. - - * pcs/cal-backend.c (build_event_list): Likewise. - - * cal-client/cal-client.c (cal_client_get_events_in_range): - Likewise. - - * cal-util/cal-util.h (CalObjInstance): Likewise. - - * cal-util/cal-util.c (cal_obj_instance_list_free): Likewise. - (cal_obj_uid_list_free): Assert that the UIDs in the list are not - NULL. - - * pcs/tlacuache.gnorba (repo_id): The calendar factory also - supports the Unknown interface. - -2000-03-17 Federico Mena Quintero <federico@helixcode.com> - - * gui/e-day-view.c: Fix includes. - (e_day_view_on_delete_occurance): Do not call save_default_calendar(). - (e_day_view_on_delete_appointment): Likewise. - (e_day_view_on_unrecur_appointment): Likewise. - (e_day_view_finish_long_event_resize): Likewise. - (e_day_view_finish_resize): Likewise. - (e_day_view_key_press): Likewise. - (e_day_view_on_editing_stopped): Likewise. - (e_day_view_on_top_canvas_drag_data_received): Likewise. - (e_day_view_on_main_canvas_drag_data_received): Likewise. - -2000-03-13 Damon Chaplin <damon@helixcode.com> - - * gui/e-day-view*.[hc]: new files for the Day/Work-Week views. - -2000-03-12 Federico Mena Quintero <federico@helixcode.com> - - * gui/main.c (gnome_calendar_locate): Removed function now that it - is no CORBA server in the GUI. - (save_default_calendar): Removed function. Now the personal - calendar server will take care of saving modified calendars when - appropriate. - (close_cmd): Do not call unregister_calendar_services(). - - * gui/eventedit.c (ee_ok): Do not save the calendar. - - * gui/gncal-day-panel.c (day_view_range_activated): Likewise. - - * gui/gncal-todo.c (ok_button): Likewise. - (delete_todo): Likewise. - - * gui/gncal-full-day.c (delete_occurance): Likewise. - (delete_appointment): Likewise. - (unrecur_appointment): Likewise. - (child_focus_out): Likewise. - (update_from_drag_info): Likewise. - - * gui/gnome-cal.c (gnome_calendar_new): Removed obsolete call to - create the CORBA server. - - * gui/gnome-cal.h (GnomeCalendar): Renamed `calc' field to - `client'. - - * cal-client/cal-client.h (CalClient): Removed filename and - corba_server fields. - -2000-03-10 Federico Mena Quintero <federico@helixcode.com> - - * gui/main.c (main): Do not pass the INIT_SERVER flag to - gnome_CORBA_init_with_popt_table(). Check for exceptions - properly. - (main): Initialize Bonobo. - (main): Call process_dates() to parse the dates from the command - line before we dump the events or the TODOs. - (main): Use bonobo_main() instead of gtk_main(). - - * cal-util/calobj.c (ical_new): Initialize the alarm types here. - Do not call default_alarm() anymore, since that is a GUI issue. - (default_alarm): Removed function. - (alarm_defaults): Removed defaults data. - - * pcs/tlacuache.c (calendar_notify): Removed stubs for - alarm_defaults, calendar_notify(), debug_alarms. - -2000-03-09 Federico Mena Quintero <federico@helixcode.com> - - * gui/Makefile.am: Removed the corba-cal stuff. Commented out the - Pilot conduit stuff for now. - - * gui/calendar.c: Random #ifdefs to make it build, although this - file is going away. - - * gui/Makefile.am: Removed referenes to calobj.[ch] and timeutil.[ch]. - - * gui/calendar-conduit.c: Fixup includes. - - * gui/calendar-conduit.h: Fixup includes. - -2000-03-09 Seth Alves <alves@hungry.com> - - * gui/gnome-cal.h: replaced "Calendar *cal" with "CalClient *calc" - in the GnomeCalendar struct. - - * gui/*.c: tracked change from Calendar * to CalClient - - * gui/main.c: moved alarm_defaults from here to cal-util/calobj.c - (calendar_get_events_in_range): pulled this out of calendar.c and - fixed it up to use cal-client stuff. i'm not sure where to put it yet. - - * gui/main.c (calendar_iterate): pulled this one out of calendar.c also - -2000-03-07 Federico Mena Quintero <federico@helixcode.com> - - * cal-client/Makefile.am: Removed cal-client-alarm.[ch] from the - list of sources. This was a miscommunication on our part. - -2000-03-05 Seth Alves <alves@hungry.com> - - * 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 - -2000-03-03 Seth Alves <alves@hungry.com> - - * 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. - -2000-03-02 Federico Mena Quintero <federico@helixcode.com> - - At this point the calendar client and personal calendar server - files were moved to the idl/, cal-client/, and pcs/ directories. - - * idl/Makefile.am: New file. - - * cal-client/Makefile.am: New file. Moved the libcal-client stuff - from calendar/Makefile.am to here. - - * pcs/Makefile.am: New file. Moved the tlacuache stuff from - calendar/Makefile.am to here. - - * Makefile.am (SUBDIRS): Added the idl and cal-client directories. - - * calendar.h: Removed the references to cal-backend.h and its - stuff. This file is going away soon! - - * icalendar.c: #include <config.h>. Also, we don't need to - include cal-backend.h or gnome.h. - - * icalendar.h: Protect from multiple inclusions. - -2000-03-01 Federico Mena Quintero <federico@helixcode.com> - - * Makefile.am: Use the gnome-config flags for orbit-idl. - Create a libcal-client library with the calendar client object. - -2000-02-29 Federico Mena Quintero <federico@helixcode.com> - - * Makefile.am: Removed stale rule for the conduit. - -2000-02-21 Matt Loper <matt@helixcode.com> - - * .cvsignore: Added *.lo. - -2000-02-19 Matt Loper <matt@helixcode.com> - - * .cvsignore: Added tlacuache and tl-test. - -2000-02-18 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * Makefile.am (INCLUDES): Use BONOBO_VFS_GNOME_CFLAGS instead of - GNOMEUI_INCLUDES, as we use Bonobo and VFS. - -2000-02-17 Seth Alves <alves@hungry.com> - - * cal-backend.h: moved CalendarFormat type def here - - * cal-backend.c (cal_backend_load): if extension suggests - an ical file, attempt to load an iCal file. - (cal_get_type_from_filename): returns CAL_ICAL if file - extension is 'ics' or 'ifb', else returns CAL_VCAL - (icalendar_calendar_load): moved this here from - icalendar.c because it needs to call the static function - add_object. - -2000-02-17 Federico Mena Quintero <federico@helixcode.com> - - * cal-client.c (cal_client_remove_object): Implemented. - - * cal.c (cal_notify_remove): Implemented. - (Cal_remove_object): Implemented. - (cal_get_epv): Fill in the remove_object field in the epv. - - * cal-backend.c (cal_backend_remove_object): Implemented. - (notify_remove): New function to notify clients that an object was - removed. - -2000-02-16 Russell Steinthal <rms39@columbia.edu> - - * calobj.[ch], eventedit.c, main.c: Change iCalObject.organizer - from char* to iCalPerson* - - * calobj.[ch]: Change iCalObject.related from list of char* to - list of iCalRelation*; assorted related fixes - - * icalendar.c: interface between libical and the gnomecal - internal representation - -2000-02-11 Federico Mena Quintero <federico@helixcode.com> - - * 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. - -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. - -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. - -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. - -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. - -2000-02-04 Federico Mena Quintero <federico@helixcode.com> - - * cal-backend.c (CalBackendPrivate): Renamed the event_hash field - to object_hash. Now we hash all the calendar's objects here based - on their UIDs. - (ensure_uid): New function to create UIDs for calendar objects - that don't have them. - (add_object): Ensure the object has an UID before inserting it in - the calendar. - (cal_backend_get_object): New function. - -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. - -2000-02-02 Federico Mena Quintero <federico@helixcode.com> - - * Makefile.am (gnomecal_SOURCES): Added the CORBA generated - sources. - -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. - -2000-01-30 Federico Mena Quintero <federico@helixcode.com> - - * Makefile.am (gnomecal_SOURCES): Added cal-client.[ch] and - cal-listener.[ch]. - -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. - -2000-01-25 Federico Mena Quintero <federico@helixcode.com> - - * cal-client.c cal-client.h: New files with the calendar client - object. - -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. - -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(). - -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. - -2000-01-22 Federico Mena Quintero <federico@helixcode.com> - - * cal-factory.c (lookup_backend): Renamed from lookup_calendar(). - Also, return a backend instead of a Cal client object. - - * 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. - -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. - -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. - - * 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. - -2000-01-09 Eskil Heyn Olsen <deity@eskil.dk> - - * Makefile.am: Changes to remove todo capplet stuff from distro. - -2000-01-08 Vadim Strizhevsky <vadim@optonline.net> - - * calendar-conduit-control-applet.c: Added pilotID argument to - gpilotd_conduit_mgmt_new. - - -2000-01-05 Eskil Heyn Olsen <deity@eskil.dk> - - * GnomeCal.idl: Added an argument to get_number_of_objects, so you - can choose which state the object should have - (any/new/modified/...). Will also add one to choose type - (event/journal etc). - - * corba-cal.c (cal_repo_get_number_of_objects): Implemented the - new version of get_number_of_objects. - - * calendar-conduit.c (pre_sync): Calls various - gnome_pilot_conduit_standard_abs_set_num_yadayda to get progress bars. - -2000-01-04 Eskil Heyn Olsen <deity@eskil.dk> - - * calendar-conduit.c (start_calendar_server): Let's not call - g_error, but g_warning instead. - (pre_sync): Get record numbers info, total, new, deleted etc, and - tell gpilotd. - -1999-12-31 Eskil Heyn Olsen <deity@eskil.dk> - - * eventedit.c (ee_store_recur_end_to_ical): Adds 86400 secs (1 - day) to the date chooses by the user. This ensures the recurrence - also occurs on that date. - (ee_rp_init_ending_date): And subtracts 86400 secs when about to - redisplay the box. - - * calendar.h: Added an argument to calendar_new, to enable certain - features, such as initing alarms or nor. - - * calendar.c (calendar_new): Implemented support for the - CALENDAR_INIT_ALARMS option to calendar_new. - - * corba-cal.c (cal_repo_get_updated_objects): Added - CALENDAR_INIT_ALARMS to calendar_new calls. - - * main.c: Added CALENDAR_INIT_ALARMS to calendar_new calls. This - should probably be CALENDAR_INIT_NIL, but I'm not sure, guess - steintr should check it. - - * gnome-cal.c: Added CALENDAR_INIT_ALARMS to calendar_new calls. - - * calendar-pilot-sync.c: Added CALENDAR_INIT_NIL to calendar_new calls. - -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) - -1999-12-08 Eskil Heyn Olsen <deity@eskil.dk> - - * 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. - -1999-12-07 Eskil Heyn Olsen <deity@eskil.dk> - - * 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. - -1999-12-05 Eskil Heyn Olsen <deity@eskil.dk> - - * Makefile.am (Conduits_second_DATA): Also install .desktop files - for conduit capplets in the gnome/apps menu dir. - -1999-12-04 Eskil Heyn Olsen <deity@eskil.dk> - - * Makefile.am (EXTRA_DIST): Added .desktop files to EXTRA_DIST. - -1999-10-12 Clifford R. Conover <rusty@zootweb.com> - - * gncal-todo.c Todo List improvements. - - Cleaned up todo item highlighting, added support for highlighting - events due today, and events not due yet. Colors are configurable - on the Colors Tab of the properties window. - - Renamed Frame in Properties window to Colors rather then Month - Colors since we are now asking for Todo item colors. - - Added ability to display time until todo item is due in list, it - automatically selects the best denomination of time (up to weeks) - and down to seconds to display. This should be made configurable - in a future version. - - Changed Todo dialog to ask for time that event is due. This - allows more accurate tracking of then the item is due, before the - dialog was only asking for the date of the todo item. - -1999-12-03 Eskil Heyn Olsen <deity@eskil.dk> - - * calendar-conduit.c: undef DEBUG_CALCONDUT, suppresses debug output. - -1999-12-02 Russell Steinthal <rms39@columbia.edu> - - * alarm.c: Enhanced debug support: can be toggled on and off by - SIGUSR1, reports alarms which could not be added - - * gnome-cal.c, main.[ch], prop.c: Add snooze capability for audio - and display alarms. Snooze interval can be configured in the - Properties box. - -1999-11-30 Eskil Heyn Olsen <deity@eskil.dk> - - * calendar-conduit.c (compare): Fixed compare bug. Also neated up - some of the if's in set_status. - -1999-11-22 Russell Steinthal <rms39@columbia.edu> - - * Merged todo list coloring patch from stable - * Added myself to AUTHORS, about box (per Miguel) - -1999-11-22 Eskil Heyn Olsen <deity@eskil.dk> - - * calendar-conduit.c (pre_sync): Writes some warning - messages when pre_sync fails. - -1999-11-14 Eskil Heyn Olsen <deity@eskil.dk> - - * Makefile.am: Stupid misplaced endif cause gncal to depend on an - install gnome-pilot... fixed... sorry. - -1999-11-12 Eskil Heyn Olsen <deity@eskil.dk> - - * Makefile.am (extra_pilot_bins): Fixed the if then else problem, - using solution suggested by James Henstridge, appears to be caused - by a (by now fixed) bug in my automake. - -1999-11-12 Russell Steinthal <rms39@columbia.edu> - - * prop.c: Config code for timeout, make Alarms property page use a - vbox instead of an hbox so that the propbox stays a reasonable width. - - * gnome-cal.c, main.[ch]: Add timeout for audio alarms, code to load - from config file - - * eventedit.c: Give some static functions external linkage so they - can be used elsewhere (make_spin_button); add some prototypes to - appease gcc. - -1999-11-11 Russell Steinthal <rms39@columbia.edu> - - * calendar.c (calendar_day_change): Add call to - calendar_init_alarms() to schedule another day change alarm. - -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 - -1999-11-05 Eskil Heyn Olsen <deity@eskil.dk> - - * calendar-conduit-control-applet.c (readStateCfg): Commented the - code out, thus the capplet works again. - -1999-11-04 Eskil Olsen <deity@eskil.dk> - - * Makefile.am: Uses the PISOCK_LIBDIR, for people with odd install - dirs for their pilot-link. Also install a pretty icon for the - calendar-conduit. - - * calendar-conduit-control-applet.c: Modfied the - try/revert/ok/cancel scheme to be more intuitive, also uses a - GtkOptionMenu for the possible sync methods. - - * calendar-conduit-control-applet.desktop: use the nice icon... - - * calendar-conduit.c: Ack, had to define debug_alarms and - alarm_default, otherwise they are undefined. Is gncal code messy - or is this considered a way of configuring the cal engine ? - Implemented delete_all syncabs methods. - - * calendar-pilot-sync.c: also had to declare debug_alarms and - alarm_defaults, just as ugly. - -1999-11-02 Russell Steinthal <rms39@columbia.edu> - - * prop.c: Add new alarm page to properties box - - * prop.c, calobj.c, main.[ch] eventedit.c: New support for default - alarms, configurable in the properties box. - - * gnome-cal.c, prop.c, main.[ch]: add option to beep on Display - alarms - -1999-10-23 Russell Steinthal <rms39@columbia.edu> - - * calendar.c (calendar_new): Correctly initialize calendar_day_end - and calendar_day_begin *before* installing day-change alarm. - -1999-10-21 Russell Steinthal <rms39@columbia.edu> - - * alarm.c, main.c: Added alarm debugging code - - * main.c (open_ok): Show an error box if the user tries to open a - non-existent file; fixes bug #1818 - -1999-10-19 Russell Steinthal <rms39@columbia.edu> - - * gnome-cal.c (calendar_notify): Fix typos which were causing - invalid times in audio notification dialogs; fixes Bug #2561 - -1999-10-18 Russell Steinthal <rms39@columbia.edu> - - * gncal-day-panel.c (gncal_day_panel_new): Placed the various - elements of the day view in paned windows so that the user can - adjust the relative sizes of the daily schedule, monthly calendar, - and to-do list. - -1999-10-18 Martin Norbäck <norpan@bigfoot.com> - - * gncal.desktop: Added swedish translation - -1999-10-13 Eskil Olsen <deity@eskil.dk> - - * Makefile.am: Hopefully the fixes the much-hated - gnome-pilot dependency. - -1999-10-07 Eskil Olsen <deity@eskil.dk> - - * calendar.c (calendar_object_changed): moved the pilot_status = - MOD up, so even a CHANGE_SUMMARY will set the modified flag. - - * calendar-conduit.c: more _free calls, vamped the noise on output. - -1999-10-06 Eskil Olsen <deity@eskil.dk> - - * *conduit*[ch]: checks return values from gpilotd_init/connect. - - * calender.c (vcalendar_create_from_calendar): removed a set - of cleanVObject cleanStrTbl, since the freed memory that the - function returned. - -1999-09-27 Timur Bakeyev <mc@bat.ru> - - * timeutil.c (time_from_isodate): Use tm.gmtoff or timezone to get - correct offset from UTC, according to HAVE_TM_GMTOFF or HAVE_TIMEZONE. - See also 1999-07-19 Matt Martin <matt@abacusnet.net> - -1999-09-27 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * month-view.c (add_event): ditto - (mark_current_day): ditto - (month_view_set): ditto - - * goto.c (goto_dialog): ditto. - - * gnome-month-item.c (gnome_month_item_init): ditto. - - * gncal-day-panel.c (gncal_day_panel_new): ditto. - - * getdate.c (RelativeDate): ditto. - - * eventedit.c (set_all_day): ditto. - (ee_rp_init_rule): ditto. - - * calendar.c (vcalendar_create_from_calendar): ditto. - - * calendar-conduit.c (update_record): ditto. - - * calobj.c (ical_object_generate_events): Get rid of pointers to - values returned from localtime, as it uses a static buffer. - -1999-09-26 Eskil Olsen <deity@eskil.dk> - - * corba-cal.c: the g_free that was commented out since glib said - was a duplicate free, was supposed to be a free. - - * GnomeCal.idl/corba-cal.c: added a get_object_id_list and a - get_objects_by_id_list. Latter is not done. - - * calendar-conduit.c: rewrote the way the conduit iterates over - records. It no longers fetches all entries (since that didn't work - with more then 285 entries. It now fetches the id list, and gets - each record. (will be using get_objects_by_id_list to get records - in amounts of 10 or so later, to reduce amount of corba calls). - - * calendar-conduit.c: now sets alarm parameters when transferring - from gnomecal to pilot. - -1999-09-23 Eskil Olsen <deity@eskil.dk> - - * calendar-conduit.c: better merge of summary/description - when doing ical_from_remote (update_record), also handles - import from gnomecal to pilot better, and on both ways, repeat - events are much better now. - -1999-09-22 Eskil Olsen <deity@eskil.dk> - - * corba-cal.c: commented out a g_free that glib reported - as being a duplicate free. - * calendar-conduit.c: got gnomecal->pilot up and runnning. - -1999-02-06 Lauris Kaplinski <lauris@ariman.ee> - - * gncal.desktop: Added Estonian translations. - -1999-09-14 Federico Mena Quintero <federico@redhat.com> - - * gncal-full-day.c (child_popup_menu): Set the data pointers for - all the items. - -1999-09-14 Kjartan Maraas <kmaraas@online.no> - - * doc/C/gnomecal.sgml: Merge from gnome-pim-1-0. Synced with newest - user-guide. - -1999-09-01 Miguel de Icaza <miguel@gnu.org> - - * eventedit.c (ee_create_buttons): Make the OK button the default - button per Russell's suggestion. - -1999-08-30 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calendar.c (calendar_object_changed): Modify the - object->last_mod field. - (calendar_add_object): Ditto. - - Closes bug #676 - - * main.c (save_calendar_cmd): Fix problem in which we warned the - user about the calendar being modified the first time the calendar - was used. - -1999-08-22 Tomas Ogren <stric@ing.umu.se> - - * gnomecal.gnorba: "GenericFactoy" is wrong... - -1999-08-15 Miguel de Icaza <miguel@gnu.org> - - * calobj.c (ical_gen_uid): Fix the hostname part. - -1999-08-07 Peter Teichman <pat4@acpub.duke.edu> - - * calendar-pilot-sync.c (sync_pilot): sync correctly for objects - created on the pilot, but not dirty (because they have been synced - with some other program in the past) - -1999-07-30 Miguel de Icaza <miguel@gnu.org> - - * month-view.c (month_view_init): Release points here. - -1999-08-02 Peter Teichman <pat4@acpub.duke.edu> - - * Makefile.am (libcalendar_conduit_la_LDFLAGS): - libcalendar_conduit now installs - - * calendar-pilot-sync.c (sync_pilot): do deletion of appointments - correctly, when they are deleted on the pilot - (conduit_free_Appointment): protect against double-freeing parts - of the Appointment structure - (update_record): all-day events from the pilot are handled a bit - more reasonably - -1999-08-01 Peter Teichman <pat4@acpub.duke.edu> - - * calendar-pilot-sync.c (sync_object_to_pilot): The multi-day - appointment corruption bug is dead. Whoo! - -1999-07-31 Peter Teichman <pat4@acpub.duke.edu> - - * Makefile.am: fixed this up slightly with respect to pilot conduits - -1999-07-30 Jonathan Blandford <jrb@redhat.com> - - * Makefile.am (libcalendar_conduit_la_LIBADD): More autoconf-stuff - -1999-07-29 Jonathan Blandford <jrb@redhat.com> - - * gnome-cal.c (setup_widgets): Add scrolling to the yearview. - -1999-07-28 Miguel de Icaza <miguel@gnu.org> - - * calendar-pilot-sync.c: (sync_object_to_pilot): If the enddate is - not set, set the repeatForever to 1. This fixes all of the - birthdays problems I had. - - Make the code not take arguments - (sync_cal_to_pilot): Nice event update information - - * calendar.c (calendar_new): Add Event UID hash table. - (calendar_add_object): Add events to the hash table here. - (calendar_remove_object): Remove events here. - (calendar_object_find_event): Use the hash table here. - - * main.c (save_calendar_cmd): The object is already destroyed by - gnome_dialog_run. - - * calendar-pilot-sync.c (sync_object_to_pilot): Do not turn - archived bit on. - - * calobj.c (ical_gen_uid): Use the hostname, not the domain name. - (ical_gen_uid): Add a serial number. Isodates can be small. - - * corba-cal.c (cal_repo_update_pilot_id): New method to update the - pilot status. - (cal_repo_get_updated_objects): New method. Returns a list of - modified and not-sycned objects - - * calendar-pilot-sync.c (sync_cal_to_pilot): New function to sync - from the GnomeCalendar to the pilot. - (sync_object_to_pilot): Sync a single event to the pilot. - (try_alarm): Alarm syncing code. - -1999-07-27 Miguel de Icaza <miguel@gnu.org> - - * calendar-pilot-sync.c: New file. Implements PalmPilot - syncronization with the Gnome Calendar. - - * calobj.c (ical_object_new_from_string): New function. Creates - an iCalObject from a vCalendar string that is supposed to contain - only one vEvent. - - * calendar.c: - (calendar_save): Split this routine in two. - - * gnome-cal.c (gnome_calendar_new): Create the corba server here. - - * main.c: Include gnorba.h, and corba-cal-factory.h here - (close_cmd): Kill the calendar server on shutdown. - - * calobj.c (load_recur_yearly_day): Added a fixme comment. WE - need to handle intervals in the years. - - * calendar.c (calendar_object_find_in_list, calendar_object_find, - calendar_object_find_todo, calendar_object_find_event): New - functions for looking up information. - - * main.c (gnome_calendar_locate): New function. - - * corba-cal.c (calendar_create_object): New file. Implements the - corba server. - - * calendar.c (calendar_object_changed): Flag pilot-status as changed. - - * calobj.c (ical_object_to_vobject): Save pilot information for syncing. - (ical_object_create_from_vobject): Load syncing information for - pilot. Do it in a way compatible with KOrganizer. - -1999-07-26 Miguel de Icaza <miguel@gnu.org> - - * calobj.c (ical_object_create_from_vobject): Generate unique IDs - on Vevents we load that lack it. WE need this for the old - gnome calendar generated files (ie, before now :-). - - Required to sync with the Palm - -1999-07-26 Miguel de Icaza <miguel@gnu.org> - - * calobj.c (ical_object_create_from_vobject): Generate unique IDs - on Vevents we load that lack it. WE need this for the old - gnome calendar generated files (ie, before now :-). - - Required to sync with the Palm - -1999-07-19 Matt Martin <matt@abacusnet.net> - - * timeutil.c (time_from_isodate): Handle the 'Z' parameter to the - ISO date format to convert from GMT time. - -1999-07-17 Nat Friedman <nat@gnome-support.com> - - * calendar.c (calendar_add_object): Copy the new UID into the - iCalObject structure. - -1999-07-16 Miguel de Icaza <miguel@gnu.org> - - * gnome-month-item.c (gnome_month_item_set_arg): Merge fix from - gnome-pim-1-0: Fixed cut&paste bug for day fontsets. - -1999-07-14 Miguel de Icaza <miguel@gnu.org> - - * calobj.c (ical_gen_uid): Returns a UID. - (ical_object_new): Use a UID when creating an event. Should get - syncing done easier. - -1999-07-14 Nicholas J Kreucher <nick@poetic.com> - - * calobj.c (skip_numbers): Actually skip over the numbers. - (ical_object_to_vobject): Test the proper variable for storing the - proper information. - -1999-07-14 Jean-Noel Guiheneuf <jean-noel.guiheneuf@wanadoo.fr> - - * timeutil.c (time_add_month): Fixed the problem with next month - going from a 31-day to a 30-day by adjusting the date to the - closest day at the end of the month. - -1999-06-07 Mike McEwan <mike@lotusland.demon.co.uk> - - * timeutil.c (time_add_month): Tell ktime' that we don't know - about daylight saving time so that it does *not* make adjustments - when we traverse a DST boundary. - (time_year_begin): ditto. - (time_year_end): ditto. - (time_month_begin): ditto. - (time_month_end): ditto. - -1999-06-16 Anders Carlsson <anders.carlsson@tordata.se> - - * main.c (new_calendar): Realize the toplevel widget when - --hidden is passed to gnomecal. This fixes a segfault. - -1999-06-04 Robert Brady <rwb197@ecs.soton.ac.uk> - - * gnome-cal.h, gnome-cal.c: Fix abort() problem with the year view. - (Bug #1367). Thanks to Owen Cliffe <oc197@ecs.soton.ac.uk> for - helping track it down. - -1999-06-03 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (daynumberlist): One line bug fix from Sergey I Panov. - -1999-06-02 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * view-utils.c (nicetime): Use %H instead of %k, as %k is a GNU - extension, not available in other systems. - -1999-06-01 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (daynumberlist): Work around broken software that - writes a broken month-of-day as "zero". Use the dtstart date for - this on this event. - -1999-05-28 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * Makefile.am (install-data-local): help files be gone. They are - now installed from the Docbook stuff. - -1999-05-26 Russell Steinthal <steintr@condor.penguinpowered.com> - - * gncal-todo.c main.c main.h prop.c: Added support for priorities - for todo items. Doesn't do much, but you can set them and sort by - them. (Use the properties box to enable them; should they be on - by default?) - -1999-05-25 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c (parse_an_arg): Added missing break here. It was causing - core dumps when invoked with --userfile. - - * gnome-cal.c (gnome_calendar_set_view): Add some assertions here, - to pin point the bug reported on gnome-list. - - * calobj.c (load_recurrence): Make intervals always exist. a 0 - interval is wrong. - -1999-05-25 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * year-view.c: Removed unused macro CALENDAR_HEIGHT. - -1999-05-25 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * year-view.c (idle_handler): Set the canvas scroll region here, - not in size_allocate(). Also, use the correct width and height - based on the allocation and the precomputed minimum width/height - values. - - * gnome-cal.c (setup_widgets): Set the scrollbar policy of the - scrolled window. - - * main.c (setup_appbar): Use the correct type for the appbar. - - * gncal-day-view.c: Removed unused function switch_to_day(). - - * gncal-day-panel.c (calendar_day_selected): Removed unused variable. - -1999-05-25 Nat Friedman <nat@nat.org> - - * doc/C/gnomecal.sgml: Fixed a typo. - - * gnome-cal.c (setup_widgets): Added a scrolled window widget into - which the year view is placed. - - * year-view.c (CALENDAR_HEIGHT): The height of the total year view - inside the scrolled window. - (idle_handler): Set the height of the year view to - CALENDAR_HEIGHT. - (year_view_size_allocate): Set the scroll region of the year view - canvas to allocation->width, CALENDAR_HEIGHT. - -1999-04-25 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c (dump_todo): Add --todo flag to dump the todo contents. - -1999-04-19 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-todo.c (add_activated): Use same hack used in edit_activated - -1999-04-16 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-todo.c (edit_activated): Kill all grabs from the CList - before running the new dialog box. - - This fixes the problem of button-3/Edit on the todo item blocking - the GUI (actually, the main window responds, but not the todo - window). - -1999-04-08 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-todo.c (gncal_todo_init): Make sure we can get events for - button3. The code for the nice popup menu was there but was not - getting invoked. - -1999-04-01 Steve Murphy <murf@e-tools.com> - - * calobj.c (weekdaynum): Added this routine so Monthly recurrences - use the weekday field as a simple integer for a single weekday. - - * calobj.c (load_recur_monthly_pos): Call weekdaynum instead of - weekdaylist. The interface only lets the user input a single value - anyway. - - * calobj.c (ical_object_to_vobject): instead of code to output day - names from a bit array, use instead the value as an int and output - a single dayname. - - * calobj.c (ical_object_generate_events): first_week_day gets the - day int instead of the first entry in the bit field. I inserted a - fair chunk of code to avoid calling generate if the day is out of - range for a month. It may be unneccessary, because mktime will - turn the extra days into a valid date the next month. But not all - mktimes are equal, I fear. - - * eventedit.c (ee_store_recur_rule_to_ical): For case 3, - (Monthly), I added code to set the interval slot of the recur - struct; without this value, selecting a monthly recursing, by - date, would lead to an infinite loop broken only by a failure to - alloc more memory. Also, in the "by position" case, both - u.month_pos and u.month_day were being assigned values. This is a - mistake, as they are both part of an union, and the same - thing. The weekday field should get the recur_rr_month_weekday - value. - - * eventedit.c (ee_rp_init_rule): set default day from the weekday - field instead of the u.month_day field, which is really the - month_pos value. - - * gnome-cal.c (gnome_calendar_tag_calendar): Month days start with - 1, not 0; thus, setting tm.tm_mday = 0, and then calling mktime - will generate a time corresponding to the end of the previous - month, which may have a mday anywhere from 28 to 31. The end time - just adds 1 to the month, so your end time may not cover the last - few days of this month, depending on what the biggest mday of last - month was. I changed it so tm_mday is set to 1 instead. - -1999-03-30 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-todo.c (convert_time_t_to_char): Made static. Make it use - the full year format for strftime(). - -1999-03-27 Nuno Ferreira <nmrf@rnl.ist.utl.pt> - - * calobj.c: Include <config.h> So that strings get translated. - -1999-03-26 Tomas Ogren <stric@ing.umu.se> - - * prop.c (build_hours_menu): Made it respect 12/24h settings.. - Doesn't show until next time you open the dialog.. yet.. - -1999-03-24 Tomas Ogren <stric@ing.umu.se> - - * gncal-week-view.c (gncal_week_view_set): Did some i18n work - * eventedit.c (get_exception_string): Did some i18n work - -1999-03-24 Tomas Ogren <stric@ing.umu.se> - - * gncal-todo.c (gncal_todo_init): Made clist titles i18n:able - * main.c (poptOption): Added which views that are possible for - --view in the --help text (closes #367) - * main.c (dump_events): Added (short) month to the strftime and made - the strings i18n:able - -1999-03-23 Tomas Ogren <stric@ing.umu.se> - - * gncal/calobj.c: Added 2 paranthesis.. - "foobar = d / 60*60" is _NOT_ the same as "foobar = d / (60*60)" - which caused heavy alarm-corruption with alarms between 2 hrs and - 2 days. - -1999-03-23 Nat Friedman <nat@nat.org> - - * eventedit.c (ee_store_recur_rule_to_ical): Set the - recur->interval to the value of the recur_rr_month_period spin - button if the event is being set "by day." This closes bug #675 - as reported by bagfors@hpc2n.umu.se. Thanks for the report! - -1999-03-10 Clifford R. Conover <rconover@montana.edu> - - * gncal-todo.c (simple_todo_editor): Add support for Due Date when - adding a TODO item here. - (column_resized): New function - (init_column_sorting): New function. - (todo_click_column): New function. - (convert_time_t_to_char, make_overdue_todo_style): New functions. - - * gnome-cal.c (gnome_calendar_todo_properties_changed): New - function used to update the TODO when the properties have been - chagned for it. - - * prop.c (prop_apply_todo): Apply TODO properties. - - * gncal-day-panel.c (todo_list_properties_changed): Update the - TODO display here. - - * eventedit.c (date_edit_new): Made public - -1999-03-10 Craig A Soules (soules+@andrew.cmu.edu) - - * timeutil.c, calendar.c, calobj.c, gncal-day-panel.c: Add support - for daylight time savings. - -1999-02-28 Martin Baulig <martin@home-of-linux.org> - - * gncal-full-day.c (recompute_motion): For DRAG_MOVE, DRAG_SIZE_TOP - and DRAG_SIZE_BOTTOM: call child_focus_out () if the child currently - has the focus. - -1999-02-27 Changwoo Ryu <cwryu@adam.kaist.ac.kr> - - * quick-view.c (QUICK_VIEW_FONTSET): Added Korean font to the - fontset string. - * mark.h (*_FONTSET): Likewise. - -1999-02-23 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (ical_object_to_vobject): Save the owner/organizer of - the event. - (ical_object_create_from_vobject): Load the owner/organizer of the event. - - * gncal-full-day.c (delete_occurance): Assign child to data (fixes - crash on "delete this occurrance"). - -1999-02-22 Timur Bakeyev <mc@bat.ru> - - * calendar.c: According to configured values, use either tm.tm_zone - or tzname. In last case, also declare it extern. - - * prop.c: langinfo.h not available everywhere. Wrapped. BTW, works - fine without it. - -1999-02-20 Tomas Ogren <stric@ing.umu.se> - - * main.c (init_username): Made use of g_get_{user,real}_name() instead - of our own home-brew... - -1999-02-17 Sergey Panov <sipan@mit.edu> - - * gnome-month-item.c,gnome-month-item.h,goto.c,mark.h, - month-view.c,prop.c,quick-view.c,year-view.c: will define - fonts via fontset. Friendlier to locales that use iso8859-[^1] - and koi8-r encodings. Does not solve problem for Asian languiges - --- better solution is needed (e.g. standart GNOME fontstyles - defined in gtkrc). - -1999-02-16 Sergey Panov <sipan@mit.edu> - - * main.c: Use N_() macro for color settings labels in - color_props structure. - -1999-02-15 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * goto.c (goto_dialog): Indentation fixes. - -1999-02-15 Tomas Ogren <stric@ing.umu.se> - - * goto.c: Made a private copy of what localtime() returns, to be able - to keep the data after more calls to localtime(). - -1999-02-11 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c (save_default_calendar): New function. Saves the - calendar if it is the user's default calendar - - * gncal-full-day.c (unrecur_appointment): - * gncal-day-panel.c (day_view_range_activated): - * eventedit.c (ee_ok): - * gncal-todo.c (ok_button): Added autosave for the default - calendar. - -1999-02-09 Tomas Ogren <stric@ing.umu.se> - - * main.c: Removed the gtk_widget_realize call. - -1999-02-06 Changwoo Ryu <cwryu@adam.kaist.ac.kr> - - * gncal.desktop: Added Korean translations. - -1999-02-04 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (date_edit_new): New convenience function to create - a properly-configured date editor widget. - -1999-02-03 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-week-view.c (gncal_week_view_new): Make the calendar start - weeks on Monday if appropriate. - (gncal_week_view_time_format_changed): New function to notify the - week view that the time format has changed. - - * gncal-day-panel.c (gncal_day_panel_new): Make the calendar start - weeks on Monday if appropriate. - (gncal_day_panel_time_format_changed): New function to notify the - day panel that the time format has changed. - - * gnome-cal.c (gnome_calendar_time_format_changed): Tell the day - and week views that the time format has changed. - -1999-02-01 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (event_editor_init): Set the title of the event - editor window. - -1999-01-31 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-day-view.c (gncal_day_view_expose): Do not remove the - clipping rectangle here. - - * view-utils.c (view_utils_draw_events): Remove the clipping - rectangle here, since the user of this function should not know - about it. - -1999-01-30 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * view-utils.c (view_utils_draw_events): Improve this draw - routine. Now it can split the text in lines and fit as many - events as possible. - (nicetime): Return strings without spaces at the beginning. - - * gncal-day-view.c (gncal_day_view_expose): Move clip-clear - operation here. - -1999-01-29 Jason Tackaberry <tack@dok.org> - - * gncal-full-day.c (child_popup_menu): if the user clicks on an - event that is an occurance, the menu will allow the user to delete - all occurances of this event, or just the selected occurance. - (delete_occurance): added. - - * eventedit.c (append_exception): force the clist to select the - new exception. (fixes segfault) - (delete_exception): if the last exception in the clist is deleted, - move the selection index up. (fixes segfault) - -1999-01-28 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c (parse_an_arg): Add --hidden key to hide the calendar at - startup. Only works with GNOME window managers though :-( - - * calendar.c (calendar_day_change): Reschedule alarms for the new day. - - (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. - -1999-01-28 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (child_new): Insert the summary text here. - (child_focus_in): No need to raise the window, since we have - Spiffo(tm) layout code. Boy, this is old code. - (gncal_full_day_focus_child): Now that GtkText works better, we - can avoid synthesizing a click which was causing grief, anyway. - (child_button_press): Grab the focus before popping up the menu. - - * layout.c (find_index): Added a sanity check. - - * gncal-full-day.c (child_destroy): Unmap and unrealize the child - before unparenting/destroying it. - (child_unrealize): Unrealize the widget. What was I thinking? - (child_new): Save the focus_out_event signal connection id in - Child structure (in a new field). - (child_destroy): Disconnect from the focus_out_event signal, since - we don't want to get such an event when the widget is destroyed. - (gncal_full_day_destroy): Destroy the children properly; it was - leaking memory. - -1999-01-27 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c (save_calendar_cmd): Warn if the calendar file has - changed. - - * calendar.c (calendar_load, calendar_save): Keep track of the - modification time for the calendar file. - -1999-01-20 Nat Friedman <nat@nat.org> - - * gncal-full-day.c (gncal_full_day_key_press): Only trap printable - characters such that hotkeys work. - (UNSELECT_TIMEOUT): Changed to 0. Much saner behavior. - - * prop.c (properties): Connect gnome_help_pbox_display to the - GnomePropertyBox help button. - -1999-01-19 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * quick-view.c (quick_view_do_popup): Do not grab the mouse here - (it was being grabbed incorrectly, anyways). - (quick_view_map_event): Grab the mouse when the window is mapped. - This avoids the ugly "while (xGrabPointer () != Success)" hack. - (quick_view_button_release): Handle button releases here. - -1999-01-19 Tomas Ogren <stric@ing.umu.se> - - * main.c: do gtk_widget_realize on the toplevel window.. - -1999-01-13 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-day-panel.c (gncal_day_panel_new): Make the little - calendar start up with the correct date. - - * gncal-week-view.c (gncal_week_view_set): Add the month to the - date range display label. - -1999-01-08 Nat Friedman <nat@nat.org> - - * main.c: Converted some more stuff to use the standards. - -1999-01-08 Nat Friedman <nat@nat.org> - - * main.c (setup_appbar): New function to create the status bar. - (setup_menu): Install menu hints. - - Menu items updated to match the standards. New Settings menu - created. - -1998-12-30 Jeff Garzik <jgarzik@pobox.com> - - * gncal/calendar.c, gncal/gnome-cal.c, gncal/main.c, - gncal/quick-view.c: - s/g_copy_strings/g_strconcat/ - -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. - -1998-12-14 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * year-view.c (idle_handler): Use the allocation size instead of - the old fields in the canvas structure. - - * goto.c (create_days): Use gtk_widget_set_usize() instead of - gnome_canvas_set_size(). - * quick-view.c (setup_event_list): Likewise. - -1998-12-09 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-todo.c (simple_todo_editor): Use gnome_dialog_set_parent. - * goto.c (goto_dialog): ditto - * prop.c (properties): ditto. - -1998-11-23 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * eventedit.c (ee_rp_init_exceptions): Update GtkClist usage. - -1998-11-23 Andrew T. Veliath <andrewtv@usa.net> - - * gncal-day-panel.c (gncal_day_panel_new): Use - gtk_scrolled_window_add_with_viewport instead of - gtk_container_add (gtk changes). - -1998-11-23 Herbert V. Riedel <hvr@hvrlab.ml.org> - - * eventedit.c: use GPOINTER_TO_INT - - * gncal-todo.c: same. - -1998-11-22 Matthew Wilson <msw@redhat.com> - - * main.c: Fixed the popt event parsing callback to have the - correct number of arguments. This stops it from segfaulting. - -1998-11-16 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (ee_classification_widgets): Doh. Fixed stupid bug - where the classification buttons were not being set correctly. - (ee_store_general_values_to_ical): Take into account the fact that - radio group lists are stored in reverse order of insertion. - - * gncal-todo.c (gncal_todo_init): Use a scrolled window to put the - clist into. - -1998-11-11 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calendar.c (calendar_save): Backup the old file before saving - the caledar. - -1998-11-06 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c: Add ctype.h - -1998-10-31 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gnome-cal.c (gnome_calendar_direction): Add the offset from the - beginning of the current time unit (day/month/etc), otherwise it - does not work right, for example, you are on the 31st day of a - month and the next month is a 30-day one and you jump to the next - month. - -1998-10-16 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * month-view.c: Changed a lot of stuff not to use the layout code - -- the month view's days are too small to display layout - usefully. Now they display a little list of the events in each - day. We also have a popup menu for the days in the month view. - - * calendar.c (calendar_get_objects_in_range): Reverse the list so - that it is returned in increasing order. - - * eventedit.c (event_editor_new_whole_day): New public function to - create an event for the complete span of day_begin to day_end. - - * year-view.c (new_appointment): Use event_editor_new_whole_day(). - - * year-view.c (yv_popup_menu): Mark strings for i18n. - -1998-10-12 Ji Lee <g@ucsd.edu> - - * eventedit.c (ee_store_recur_rule_to_ical): The interval was - never being loaded from the spin button. - -1998-10-09 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * month-view.c (month_view_update): Create a list of children and - lay them out nicely. Lots of functions added for this purpose. - (adjust_segment): Main event segment adjustment routine. - (adjust_children): Adjusts all the children in the month view. - (child_create_segments): Creates the segments for a particular event. - (layout_children): Uses the generic layout engine to organize the children. - -1998-10-08 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-todo.c (clist_row_selected): Set the sensitivity of the - edit/delete buttons. - (gncal_todo_update): Likewise. Thanks to Dirk Luetjens for the - bug report. - - * layout.c: Do some cleanup; now we pass a struct with the layout - algorithm's state instead of passing a trillion parameters around. - - * gncal-full-day.c (layout_children): Use the new generic layout - engine. - (child_compare): Sort keys are start time then end time, not just - start time. This produces somewhat nicer results for the layout - algorithm. - - The new layout code uses a partition of the time range occupied by - the events, rather than using a fixed time granularity. This is - better since the different parts of the program that use the - layout module will have different semantics regarding snapping the - event bounds to a fixed "time grid". - -1998-10-07 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * layout.[ch]: New files that abstract the event layout code from - gncal-full-day.c into something useful for other parts of the - program. Now all event layout is done here. - - * Makefile.am (gnomecal_SOURCES): Added layout.[ch] to the list of - sources. - -1998-10-07 Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de> - - * main.c (main): Replaced the 'gnome_client_new_default' call with - 'gnome_master_client'. - -1998-10-02 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * timeutil.c (time_day_begin): Changed name from - time_start_of_day() to be consistent with the other begin/end functions. - (time_day_end): Likewise. - - * calobj.c (ical_object_get_first_weekday): New public function to - get the first toggled day in a weekday mask. Since we do not - support multiple weekdays in a monthly-by-pos rule, we just fetch - the first toggled one. - (ical_object_generate_events): Added a missing break statement. - - * timeutil.c (time_month_end): Made it consistent with the rest of - the time begin/end functions -- now it returns the first second of - the *next* month. - (time_week_end): Actually implemented this function. It will be - used when the week view is rewritten. - - * calobj.c (time_in_range): Fix off-by-one in the comparison of - the time against the end time. - - * gncal-full-day.c (expand_space): Fixed bug where the columns not - were being expanded due to a missing "slot + j". - -1998-10-01 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * month-view.c (month_view_init): Use the font #defines. - (month_view_new): Set the colors of the month view upon creation. - (mark_current_day): New function to mark the current day in the - month view. - (month_view_set): Mark the current day. - (month_view_colors_changed): Mark the current day and colorify the - month item appropriately. - - * month-view.h: Added year and month fields to the MonthView - structure. - - * main.c: Renamed the Appointments color property, since it will - be used by the month view as well. - - * goto.c (update): Set the current day's font and color. - - * year-view.c (year_view_init): Set the fonts of the month items - when creating them. - - * mark.h: Added new #defines for HEADING_FONT and TITLE_FONT. - - * year-view.c (year_view_init): Use the new font #defines. - - * prop.c (prop_apply_colors): Fixed to work with the - I-am-paranoid-and-I-need-to-size-my-ints changes to - GnomeColorPicker. - (color_spec_from_picker): Likewise. - -1998-09-30 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * goto.c (create_days): Colorify the month item and prepare it for - prelighting here. - - * main.c (color_props): Changed the default colors to something - not dull. - - * year-view.c (compute_min_size): New function to compute the - minimum size of the year view properly. - (year_view_size_request): Added two new fields to the year view - structure that contain the minimum size. Return this in the - size_request method. - (year_view_new): Call compute_min_size to save the minimum size - for later use. - (idle_handler): Make it resize the items correctly. - - * gnome-month-item.c (gnome_month_item_set_arg): Reshape when - necessary. This is needed becaues we now actually calculate a - minimum size for the month item based on the font sizes and paddings. - (check_heading_sizes): New function to calculate a minimum size - based on the headings' dimensions. - (check_day_sizes): New function to calculate a minimum size based - on the day number labels' dimensions. - (check_sizes): New function that computes a minimum size for the - month item. - (reshape): Now calls check_sizes() to ensure a minimum size for - the month item. - - * year-view.c (mark_current_day): New function to mark the current - day in the year view. - - * mark.c: Removed mark_current_day from here. - -1998-09-29 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * prop.c (fetch_color_spec): Changed name from fetch_prelight_spec - and made it conform to the new prelighting mechanism. - (fake_mark_days): Set the proper day attributes. - (reconfigure_month): Use colorify_month_item(). - (fake_mark_days): Use mark_month_item_index(). - - * mark.c (colorify_month_item): New public function to reset the - colors in a month item. - (get_attributes): New internal function that creates an array of - attributes for the days in a month item. This is the basis of all - the new optimizations to month item marking. - (unmark_month_item): Now it uses the attributes array to unmark - only the days that need unmarking. - (mark_event_in_month): Update the day attributes array. - (month_item_prepare_prelight): Changed the definition of the - prelight color query function. Use the new function. - (day_event): Do color changes based on the day attributes array. - (mark_month_item_index): New public function to mark a single day - by index. - (mark_event_in_month): Use mark_month_item_index(). - - * gnome-month-item.c (gnome_month_item_num2child): Now takes an - int, not a GnomeMonthItemChild. - (gnome_month_item_child2num): Now returns an int, not a - GnomeMonthItemChild. - (gnome_month_item_num2day): Now takes an int, not a - GnomeMonthItemChild. - - * goto.c (goto_dialog): Create the days before the year spin - button, because the year_changed callback expects the month item - to be created. The new semantics of the spin button cause it to - emit a value_changed signal on the adjustment upon creation -- is - this the behavior we want from it? - (goto_dialog): Use gtk_window_set_modal() instead of the - deprectaed gnome_dialog_set_modal(). - - * quick-view.c (quick_view_new): Make it look not as crappy by - putting the title inside the frame. - (quick_view_do_popup): Fixed the pointer grab and added a cursor. - (create_items_for_event): Query the text width/height from the - text item using the new object arguments, so that the size of the - popup window can be set properly. - - * year-view.c (do_quick_view_popup): Calculate a nice date string - for the popup window. - -1998-09-28 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * quick-view.[ch]: New file that presents a quick view of the - events in a particular day when the mouse is clicked on the year - view. Work in progress. - - * year-view.c (do_quick_view_popup): New function that creates a - quick view for the events in a day. - - * Makefile.am (gnomecal_SOURCES): Added quick-view.[ch] to the - list of sources. - -1998-09-27 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * main.c: Hotkey for File/Exit should be C-q, not C-x. - -1998-09-24 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * year-view.c (do_popup_menu): New function to execute the popup - menu in the year view. - (day_event): Invoke the popup menu with the context set to days. - (new_appointment): New function to create a new appointment from - the year view. - (do_jump): New function to do the appropriate view/date jumping - from the popup menu. - - * main.c: Fixed two icons in the File menu. - -1998-09-21 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * main.c: Added underlined shortcuts and accelerators to the main menu. - -1998-09-16 Raja R Harinath <harinath@cs.umn.edu> - - * gncal-week-view.c (<gtk/gtklabel.h>): Include. - * gncal-week-view.h (<gtk/gtkvbox.h>): Include. - -1998-09-06 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gnome-cal.c (mail_notify): Fixed the bug reported about the mail - notification not beint sent until the program was terminated. - -1998-09-03 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (gncal_full_day_forall): Updated foreach -> - forall from Gtk changes, bleah. - - * year-view.c (day_event): New function to handle events from - days. Jumps to the day that is clicked. - - * main.c: Use a watch cursor while the previous/today/next - functions are doing their job. - - * mark.c (month_item_prepare_prelight): New public utility - function to prepare a month item for prelighting. It will store - the proper prelight information and attach the appropriate signals. - (mark_current_day): Make the current day bold as well (useful for - color-blind people, I guess). - - * prop.c (set_current_day): Reset the date in the sample calendar - and mark the current day. - (fake_mark_days): Mark fake events in the sample calendar. - - * year-view.c (year_view_set): Use the general prelighting engine. - - * goto.c (day_event): Just process button presses, as prelighting - is done behind the scenes now. - (update): Use the general prelighting engine. - - * prop.c (create_colors_page): We can now configure the colors of - the monthly calendars! Wheeeeee! There are still some nits to be - fixed, which are listed in the TODO file. - (build_color_spec): New function to build color specifications. - (parse_color_spec): New function to parse color specifications. - - * mark.c: Modified all functions to use the configured colors. - * goto.c: Likewise. - - * main.c (colors_changed): New function that notifies all - calendars that colors have changed. - - * gnome-cal.c (gnome_calendar_colors_changed): New function that - notifies all the views that the colors have changed. - - * month-view.c (month_view_colors_changed): New function that - notifies the month view that colors have changed. - - * year-view.c (year_view_colors_changed): New function that - notifies the year view that colors have changed. - - * gnome-month-item.h (struct _GnomeMonthItem): Added fields for - outline and day box colors. - - * gnome-month-item.c (gnome_month_item_set_arg): Added - outline_color, outline_color_gdk, day_box_color, and - day_box_color_gdk arguments to month items. These are convenient - to quickly set the colors of the month item. - (gnome_month_item_get_arg): Likewise. - - * main.[ch]: Added a global array of structures for color preferences. - -1998-08-31 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * goto.c: Small code cleanup. - (day_event): Upon receiving a LeaveNotify event, Reset the day's - background to the correct color. - -1998-08-29 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * mark.[ch]: New files with utility functions to mark calendars - with their events. - - * mark.c (mark_month_item): New public function to mark a month - item with events. - (unmark_month_item): New public function to unmark all the days in - a month item to their default appearance. - - * year-view.c (year_view_set): Use the new unmark_month_item() and - mark_month_item() to mark the months with events. - - * goto.c (update): New function that updates the calendar in the - Go-to dialog by marking the days. - - * timeutil.c (time_year_begin): Modified to take a time_t value. - (time_year_end): Likewise. - (time_month_begin): Actually implemented this function, which was - in the header file but not here. - (time_days_in_month): New public function that returns the number - of days in a month. - - * Makefile.am (gnomecal_SOURCES): Added mark.[ch] to the sources. - - * year-view.c (unmark_days): Use unmark_month_item(). - - * gncal-full-day.c (gncal_full_day_destroy): Fixed crash when - destroying the full day view. The full day's destroy method is - unusual in that it destroys the list of child widgets itself, as - it does not have a remove method, so it needs to reset the list to - NULL. - -1998-08-27 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gnome-month-item.c (build_month): Now does the correct thing - when the user wants weeks to start on Monday. Now all the Monday - special casing, as far as day numbering is concerned, is only in - this function. - - * year-view.c (mark_days): This function marks the days that have - events in them. It also fixes a memory leak in the old - implementation (it was leaking the whole list). - (unmark_days): New function used to unmark all the days in the - year view. - (mark_event): New function that marks all the days that are - spanned by a time range. It also fixes the bug in the old - implementation where it could possibly mark days past the ends of - the year (if the event crosses year boundaries, for example). - - * timeutil.c (time_year_begin): Take the year parameter since year - 1, not 1900. - (time_year_end): Likewise. - - * year-view.c (year_view_size_allocate): Now changing the size of - the calendars is done in the idle loop. - (idle_handler): This function actually does the resizing of the items. - - * year-view.h (struct _YearView): Added idle_id and need_resize - fields. - -1998-08-26 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * year-view.c: Beginning of the new year view. Sizing and event - marking needs to be finished. - - * gnome-cal.c: Updated for year-view. - (gnome_calendar_time_format_changed): Use year_view_time_format_changed(). - - * year-view.[ch]: Renamed the gncal-year-view.[ch] files to - year-view.[ch]. - - * Makefile.am (gnomecal_SOURCES): Updated year-view.[ch] in the - list of source files. - -1998-08-25 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * goto.c (create_days): Set the heading color of the month item. - - * main.c: Use GNOME_STOCK_PIXMAP_JUMP_TO, now that it exists, - instead of goto.xpm. Also, removed goto.xpm from cvs. - - * gnome-month-item.h (struct _GnomeMonthItem): Added fields for - the heading and day number fonts. Added fields for heading and - day number label colors. - - * gnome-month-item.c (gnome_month_item_class_init): ARG_DAY_NAMES - should be write-only. Also, added arguments for heading and day - number fonts. Added arguments for heading and day number colors. - -1998-08-24 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * prop.c (build_two_radio_group): Doh. Set the state of the radio - buttons properly. - - * month-view.c (month_view_time_format_changed): New public - function that notifies the month view of a time format change. - - * gnome-cal.c (gnome_calendar_time_format_changed): New public - function that notifies the calendar of a time format change. - - * main.c (time_format_changed): Use gnome_calendar_time_format_changed(). - - * month-view.c (month_view_update): New public function to update - the month view when an event changes. This is still unfinished. - (month_view_set): New public function to set the month in the - month view. - - * gnome-cal.c (gnome_calendar_direction): Add case for month view. - (gnome_calendar_set_view): Likewise. - (gnome_calendar_update_all): Likewise. - - * timeutil.c (time_add_week): Implemented the time_add_week() - function, which was on the header file. - (time_add_month): Added public month-adding routine. - - * gnome-cal.c (gnome_calendar_get_current_view_name): Add case for - month view. - (gnome_calendar_goto): Likewise, and set the time on the month view. - - * month-view.c (month_view_new): Now it takes the calendar plus - the time_t representing the month. - - * gnome-month-item.h: Added documentation on the object arguments - for the month item. - - * month-view.c (month_view_init): Added a month/year heading to - the month view. - - * TODO: Updated the TODO list a bit. - - * main.c (gnome_cal_file_menu): The preferences menu option should - go in the File menu. - (gnome_cal_edit_menu): Added stock pixmaps to the menu items. - (gnome_cal_menu): Renamed the Calendar menu to Edit. - (gnome_cal_help_menu): Use "About Gnomecal", not just "About". - - * prop.c (hour_activated): Notify the property box that it has changed. - - * main.c: Changed the Properties menu item to Preferences. These - are global application preferences, not a single calendar's - properties. - - * prop.c (prop_apply): Save the week_starts_on_monday flag to the - configuration file. - (properties): Added a check button for weeks starting on Monday. - (properties): Beautified the Preferences dialog. - - * month-view.c (month_view_init): - * goto.c (create_days): Set the month item to start weeks on - Monday if appropriate. - - * main.c (init_calendar): A boolean is not an hour, so don't - range_check_hour() on it. - (init_calendar): Added a global week_starts_on_monday flag. - - * main.h: Added global week_starts_on_monday flag. - -1998-08-21 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (ical_object_create_from_vobject): If mail alarm or - program alarm are missing the action, then set an empty default. - -1998-08-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gnome-month-item.c (gnome_month_item_day2index): New public - function to get the displayed day index of the specified date. - - * gnome-cal.c (gnome_calendar_goto_today): New public function to - jump to the current day. - - * goto.c (day_event): Jump to the selected day when the user - clicks the mouse, and prelight days as appropriate. - - * timeutil.c (time_from_day): New public function to build a - time_t from a year/month/day triplet. - - * gnome-month-item.c (gnome_month_item_num2child): - (gnome_month_item_child2num): New public functions to convert an - index into a child and vice-versa, respectively. - (gnome_month_item_num2day): New public function to convert a child - number into a displayed day number. - - * goto.c (goto_dialog): Doh, use gnome-dialog properly :-) - - * gnome-month-item.c (create_items): Use g_strdup()ed day names - from the start. - -1998-08-17 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * main.c (gnome_toolbar): Made it use goto.xpm. - - * Makefile.am (EXTRA_DIST): Added goto.xpm to the list of files. - -1998-08-13 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gnome-month-item.c (gnome_month_item_set_arg): Doh. Actually - recalculate the days using the month and year. - - * main.c: Added "Go to" button to quickly jump to a specific date. - - * goto.c: New file that defines the quick go-to date dialog. - - * Makefile.am (gnomecal_SOURCES): Added goto.c to the sources. - -1998-08-11 Nuno Ferreira <nmrf@rnl.ist.utl.pt> - - * main.c (new_calendar): Made title i18n friendly. This was bug - #215. - - * eventedit.c (ee_store_recur_end_to_ical): Set recur->enddate to - recur->_enddate, not to itself, when adding recurring event and - supplying an end date. This fixes (at least part of) bug #99. - -1998-08-10 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * month-view.[ch]: Start of the month view widget. This will use - the generic month item and extend it to have the semantics desired - for the gnomecal month view. - - * gnome-month-item.[ch]: New generic canvas item for the month - view and the "small calendars". This is intended to be a - high-level display engine for monthly calendars. This is a work - in progress. - - * gnome-cal.h (GnomeCalendar): Added a month_view field. - - * gnome-cal.c (setup_widgets): Create the month view and insert it - into the notebook. - - * Makefile.am: Added month-view.[ch] and gnome-month-item.[ch] to - the sources. - -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. - -1998-07-07 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c: Add support for --view flag. - (session_save_state): Save the view mode; - (new_calendar): Now takes a view mode flag. - - * gnome-cal.c (gnome_calendar_get_current_view_name): New - function for enhancing the session management support for - gnomecal. - (gnome_calendar_set_view): New function that makes a given page - active. - -1998-07-01 Nuno Ferreira <nmrf@rnl.ist.utl.pt> - - * gncal.desktop: Added Portuguese translation. - -Mon Jun 22 13:01:16 1998 Havoc Pennington <hp@pobox.com> - - * main.c (session_save_state): Use gnome_geometry_string to get - the geometry string. - -1998-06-04 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (ee_rp_init_rule): Do not subtract 1 from - tm->tm_mday for the default_day. - - * gnome-cal.c (gnome_calendar_new): - (gnome_calendar_goto): Use the start of the day -- things expect - it to be that way. - -1998-05-27 Nuno Ferreira <nmrf@rnl.ist.utl.pt> - - * eventedit.c (ee_store_recur_rule_to_ical): Fill in - ical->recur->interval from value in spin_button. This ixed an - infinnite loop. - -1998-05-30 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (child_draw): Paint the decorations correctly. - (child_draw_decor): Paint the recurrence/bell icons correctly. - -1998-05-25 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * eventedit.c (ee_rp_init_rule): Use the contents of - ee->ical->dtstart for computing the predefined values of the recurrence. - - * gncal-full-day.c (gncal_full_day_unrealize): Fix the gc - destruction in the unrealization code and fix the pixmap unrefing. - - * main.c (close_cmd): Remove a bad hack that disabled calendar - widget destruction. - - * calobj.c (ical_object_generate_events): Fix for the weekly event - generation. Was reported on the bug tracking system. - -1998-05-18 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-full-day.c (layout_children): Implemented ultra-cool - layout for the events that share the same time range. Gals and - guys you can now drop Outlook on the recycle bin. - - Which reminds me. We do not have a recycle bin. How could that - happen in a project as cool as this one? Someone explain this to - me. - -1998-05-18 Federico Mena <federico@nuclecu.unam.mx> - - * gncal-full-day.c (paint_back): Eliminated unnecessary border repainting. - -Sun May 17 17:55:03 1998 Havoc Pennington <hp@pobox.com> - - * gncal-todo.c (simple_todo_editor): Close dialog when return is pressed. - -1998-05-15 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gnome-cal.c (mark_gtk_calendar_day): Bug free version of the - range computation in place. - - * gncal-year-view.c (year_view_mark_day): Use the same new version - of the range computation here. - - * calobj.c (ical_object_generate_events): Fix the begin/end - condition. - -1998-05-14 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * timeutil.c (isodate_from_time_t): Do not add the spurious - padding. - - * calobj.c (store_date_list): Bug fix: I was using the wrong - pointer when saving the exception date list. - (set_date_list): Bug fix: load correctly the complete exception - date list. - (set_date_list): Use ',' for the exception date separator as the - versit people can not get their standard right. - - * gncal-full-day.c (unrecur_appointment): Support for making an - existing recurrent event `movable' for a day. - - * calobj.c (ical_object_add_exdate): New routine, used to add - exception dates. - (ical_object_duplicate): New routine: used to do the magic - recur->no-recur event. - -1998-05-08 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-full-day.c (new_appointment): Use gtk_calendar freeze/thaw - - * gncal-year-view.c (gncal_year_view_set_year): Use gtkcalendar freeze/thaw. - - * eventedit.c (event_editor_init): Use gnome_dialog_set_close to - avoid the ugly warning. - - * main.c (display_objedit): Default to the day the user is looking - at. - -1998-05-05 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-day-panel.c (full_day_size_allocated): Do not emit a value - changed signal if the value is the same. - -1998-05-04 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * prop.c (prop_apply): Only run the apply code once. - -1998-05-03 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-day-panel.c (update): Draw the day at startup. - (gncal_day_panel_set): Fix selected-day display. - (gncal_day_panel_new): Switch day on double clicks, not on single - clicks. - - * calobj.c (ical_object_compute_end): Removed debug messages. - -1998-04-30 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * prop.c (prop_apply): Do not call prop_cancel, ths is now using - GnomePropertyDialog. - -1998-04-29 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-week-view.c (sync_week): Use gnome_calendar_tag_calendar. - - * gnome-cal.c (gnome_calendar_tag_calendar): New routine used to - fill a gtk_calendar with the events on a GnomeCalendar object. - - * gncal-week-view.c (gncal_week_view_new): Set the week to the day - we double clicked. - -1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gnome-cal.c (calendar_notify): Apply black magic to get mail - notifications to work. - - * gncal-full-day.c (child_focus_out): Temporary optimization, the - child_focus_out is constantly calling the - gnome_calendar_object_changed when the property editor has been - invoked. This happens every time the mouse moves crosses the main - window. - - * calendar.c (calendar_object_changed): Reschedule alarms when a - calendar object has changed its times. - -Sat Apr 25 22:20:45 1998 Havoc Pennington <hp@pobox.com> - - * eventedit.c, eventedit.h: Descend from GnomeDialog. Took vbox - out of class structure; use GnomeDialog vbox - instead. gnome_dialog_set_destroy instead of destroying in button - callbacks. Don't create buttons, separator, or vbox manually. - #include <libgnomeui/gnome-dialog.h>. - -1998-04-24 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (ical_object_create_from_vobject): Fixed alarm loading; - Load snooze time and snooze count - -1998-04-23 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * calendar.c (calendar_save): Actually save the to-do entries. - - * gncal-todo.c (simple_todo_editor): Now you can add and edit - to-do entries. - -1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c: Made it use popup_menu(). - - * popup-menu.c: New file with utility functions for creating popup - menus. Maybe such a thing would be useful in libgnomeui, a la - gnome-app-helper? - - * Makefile.am (gnomecal_SOURCES): Added popup-menu.[ch] to the sources. - -1998-04-22 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * prop.c (properties): Added Calendar properties editor. - (properties): Make the code use a propery box. - - * main.c: Save/load properties (fix to old commit). - -1998-04-21 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-todo.c: New widget for editing TODO lists. This will be - worked on a lot. - - * Makefile.am (gnomecal_SOURCES): Added gncal-todo.[ch] to the sources. - - * gncal-day-panel.c: Make it use the new TODO widget. - -1998-04-21 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * timeutil.c (isodate_from_time_t): Do not save with the global - time flag (Z at the end of the isodate). When we figure out a way - to load times in GMT time, we will add this back - - * view-utils.c (popup_menu): Moved this routine here as there are - more users of this code. - - * gncal-day-view.c (gncal_day_view_class_init): Add button press - handler. - (new_appointment): New routine for creating appointments on a day. - - - - * main.c (save_ok): Added call to gtk_window_set_wmclass. - - * gncal-day-panel.c (calendar_day_selected): Fix, years for mktime - should substract 1900 and gtk_calendar stores years relative to - year 0. - - * gncal-week-view.c (gncal_week_view_new): Make the week view - descend from VBox so that we can add a label to it. - (gncal_week_view_set): Display the ending day of the week - correctly. - - Added a label that displays the week range. - -1998-04-21 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gnome-cal.c: Made it use GncalDayPanel. - - * gncal-day-panel.c: New widget for the day view in the main - calendar toplevel. It basically takes care of everything - gnome-cal did by hand with respect to the day view. - - * Makefile.am (gnomecal_SOURCES): Added gncal-day-panel.[ch] to - the rules. - - * main.c: Added a separator between the About menu item and the - help topics. - -1998-04-20 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * eventedit.c (ee_ok): Mark the event as non-new after accepting changes. - -1998-04-20 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (gncal_full_day_get_day_start_yoffset): New - public function that returns the y offset for the row - corresponding to the "day begin" time. - - * gncal-full-day.c (gncal_full_day_key_press): Now any printable - keystroke (not just Return) will activate the selected range. - - * gncal-full-day.c (paint_back): Made it use the new paint_row - function instead of painting everything directly. We calculate - areas in a smarter way so there is even less flicker than before, - especially when selecting regions. - - * eventedit.c: Sensitize recurrence widgets properly. - - * calobj.c (duration_callback): Pass the correct pointer type to - is_date_in_list(). - -1998-04-20 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (duration_callback): Take exception dates into - account. - - * gncal-full-day.c (new_appointment): Setup the event editor dates - to those of the currently displayed day. - (gncal_full_day_selection_range): Use sensible values in the case - no range is selected. - (new_appointment): Events now use the current day for event creation. - - * view-utils.c: Pretty up the time display. - - * calobj.c (ical_object_compute_end): Initialize - ico->recur->enddate, otherwise we loop forever during final date computation. - - * eventedit.c: Now recurrence is toggled by a radio button in the - recurrence page, as the checkbox is confusing. - - * calobj.c (is_date_in_list): Add support for the exclussion - dates. - -1998-04-18 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-year-view.c (double_click): Fix this routine as well. - - * gncal-week-view.c (jump_to_day): Bind the gtkcalendar signals to - the week. - - * gncal-year-view.c (gncal_year_view_set_year): Put things in the - proper range. Now the year view actually matches this year. - - * gnome-cal.html: Added small documentation. - - * main.c: Add more icons to the menus; Rename some menubar - entries; Add `new' icon to the toolbar. - (dump_events): Added argument handling and dumping of events from - the command line. Extremely cool. - - * getdate.y: Taken from the CVS source code. Used for date - parsing in the command line. - - Internationalized getdate.y. Wee! It even works with spanish. - - * calobj.c (ical_object_to_vobject): Add Quoted printable property - to items containing new lines. - (duration): Use unsigned integers, to work around buggy calendar - files generated by korganizer. - - * main.c (save_calendar_cmd): Do not ask for file name if we are - saving. - (save_as_calendar_cmd): New command. - - -1998-04-17 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * alarm.c (alarm_kill, alarm_init, alarm_add): Implement the alarm - management framework. - -1998-04-17 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * calobj.c (ical_new): Added mandatory status property. - (ical_object_to_vobject): Only store "related" list if it exists. - (store_list): Add terminating null char and free the correct data. - - * main.c (save_calendar_cmd): Implemented calendar saving. - (open_calendar_cmd): Implemented calendar loading. - (new_calendar_cmd): Implemented calendar creation. - (new_calendar): Don't load our test calendar by default. - - * gncal-full-day.c (delete_appointment): Delete appointment implemented. - - * eventedit.c (ee_store_recur_values_to_ical): Free/create - ical's recurrence appropriately. - (ee_rp_init_rule): Initialize all missing parameters from ical. - (ee_rp_init_ending_date): Initialize missing fields from ical. - -1998-04-17 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gnome-cal.c (gnome_calendar_remove_object): Add support for - removing objects. - -1998-04-17 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (ee_init_recurrence_page): New function that creates - the recurrence page in the toplevel notebook. - (ee_store_recur_values_to_ical): Now we can also store the recurrences. - -1998-04-17 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (ical_object_generate_events): Implement - RECUR_MONTHLY_BY_POS implemented. - (ical_object_create_from_vobject): Fix the alarm - initialization code. - (save_alarm): Save alarms. - (ical_object_generate_events): Fixed the recurrent code to take - into account the recur->endate field (if at all specified). - - (ical_object_to_vobject): Implement recurrence rule saving. - -1998-04-16 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (ee_store_alarm): Use menu_shell->children, not - menu->children. Why does GtkMenu have a children field in the - object structure? - (check_dates): New function that insures that start_date < end_date. - (check_times): In addition to checking whether the event spans the - whole day, now it insures that start_time < end_time. - - * gncal-full-day.c (child_set_size): Now children get bigger - temporarily while they are focused. This allows the handles not - to "overlap" the rows used by the child and thus allow editing of - very thin events. - (recompute_motion): Fix for new child coordinates. - (gncal_full_day_expose): Make it use find_child_by_window() - instead of looking for it by hand. - - * bell.xpm recur.xpm: XPM files for events with alarm and - recurrence, respectively. - -1998-04-15 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (button_1): Preserve the up/down cursor while dragging. - - * gncal-full-day.c (child_draw): Now children have a vertical - handle as well. This can be used to move the child anytime, not - only when it is focused. - (recompute_motion): Modified for new drag behavior. - - * eventedit.c (ee_init_general_page): The general_owner may be - null. Do the proper thing when creating the label. - (ee_ok): Update the gnome calendar appropriately. - - * timeutil.h: - * gncal-year-view.h: Add some missing prototypes. - - * gncal-full-day.c (child_popup_menu): Set the sensitivity of menu - items according to whether the ical object is being edited or not. - - * eventedit.c (event_editor_new): Set the "being edited" flag on - the ical object (stored as the ical object's user data). - (event_editor_destroy): Release the flag. - - * calobj.h: The iCalObject structure now has a generic user_data pointer. - * calobj.c (ical_object_set_user_data ical_object_get_user_data): - Functions to set this data. - - * gncal-full-day.c (child_button_press): Do child popup menu correctly. - - * main.c (about_calendar_cmd): Fixed my address and added Arturo - to the authors in the about box. - - * gncal-full-day.c (find_child_by_window): Compare child's widget - windows by user_data (which will be the parent widget, that is, - the text widget). We cannot assume that child->widget->window - will be *the* window we are interested on because there may be - child widgets with multiple windows. - -1998-04-15 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * calobj.c (ical_foreach): Define iterator routine. - -1998-04-15 Arturo Espinosa Aldama <arturo@nuclecu.unam.mx> - - * gncal-year-view.[hc]: Now using time_t for new and set. - Random fixes, as well. - -1998-04-15 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (button_3): New popup menus activated with - mouse button 3. - (create_appointment): Create a new appointment from the popup - menus. See the FIXME. - -1998-04-15 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-full-day.c (layout_kill_rows): Routine to destory rows - array properly. - - * gncal-year-view.c (gncal_year_view_new): Add missing year in - call to strftime. - - * calobj.c (ical_object_create_from_vobject): Fixed memory leaks - from the return values of versit's fakeCString. - -1998-04-14 Arturo Espinosa Aldama <arturo@nuclecu.unam.mx> - - * gncal-year-view.[hc]: New widget for the year view. - * Makefile.am: added required compilation of the new files. - -1998-04-14 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (event_editor_setup_time_frame): Fixed some table - expansions to make the dialog look nicer when resized. - - * calobj.c (ignore_space): Fixed compiler warning about unused - computed value. - (ocurrencelist): Replace str by p confusion. Removed unused - variables value and q. - (daynumber): Fixed a couple of warnings about unused values. - (load_recurrence): Removed unused variable c. Added a default - clause to the switch(type). - - * eventedit.c (ee_rp_init_frequency): Removed unused variable content. - Fixed a compiler warning by adding a missing cast. - - * calobj.c (ical_object_create_from_vobject): Make the - load_recurrence() part work correctly. Eliminated use of - syntax_error variable. - -1998-04-13 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (child_key_press): Unfocus the child and focus - the parent fullday widget when the user presses Esc. - - * gncal-week-view.c (gncal_week_view_update): Now takes object and - flags parameters. - * gncal-day-view.c (gncal_day_view_update): Likewise. - * gncal-full-day.c (gncal_full_day_update): Likewise. - (child_focus_in): New function. In conjunction with - child_focus_out(), these only display the handles in the child - when it is focused. The result is that the user can see more of - the child's text when nothing is focused, and we can also display - fatter and nicer drag handles. - - * gnome-cal.c (gnome_calendar_object_changed): Now takes an - additional flags parameter - (gnome_calendar_update_all): Made function static. Now takes - changed object and flags parameters as well. - (gnome_calendar_object_changed): Now takes additional flags - parameter to indicate what changed in the specified object. - - * calobj.h (CalObjectChange): New enum with flags to describe what - has been changed in an object. - - * gncal-full-day.h: - * gncal-full-day.c (gncal_full_day_focus_child): New function to - let the outside world decide which child to focus. - (gncal_full_day_focus_child): Bleah. We have to synthesize a - click because GtkText will not set the cursor when you focus it. - - * gnome-cal.c (day_view_range_activated): Focus the new child in - the full day widget. - - * eventedit.c (event_editor_setup_time_frame): Re-aligned some - widgets to make it look prettier. - (ee_alarm_widgets): Likewise. - (ee_init_general_page): Likewise. - (ee_classification_widgets): Likewise. - (event_editor_init_widgets): Likewise. - - * gnome-cal.c (day_view_range_activated): Create new object and - add it to the calendar. You can now select a range in the - full-day view, hit Return, and a new event will be added at the - selected range. I still have to figure out how to focus this new child. - - * gncal-full-day.c (paint_back): Rewrote function to avoid - painting an area more than once -- eliminate flicker. - (paint_back_rows): New function that calls paint_back() only for - the area of the specified rows. - (gncal_full_day_button_press): - (gncal_full_day_button_release): - (gncal_full_day_motion): Made these functions use - paint_back_rows() instead of paint_back(), to eliminate flicker. Wheee! - -1998-04-12 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gnome-cal.c (setup_day_view): We now connect to the - range_activated signal of the fullday widget instead of catching - key presses ourselves. - (day_view_range_activated): New function that creates a new - iCalObject and inserts it into the calendar, not finished yet. - -1998-04-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (get_time_from_rows): New function, calculates - a pair of time_t values from the specified start and number of rows. - - * gncal-full-day.h (GncalFullDayClass): New signal - "range_activated". It is emitted when a range is selected and the - user hits Return. - (gncal_full_day_selection_range): New function, returns the - selected range. - - * gncal-full-day.c (struct drag_info): Moved selection information - to their own fields instead of sharing the child's drag fields. - This allows us to keep the selection when a child is moved. - (recompute_motion): Made the case when (row < di->sel_click_row) - work correctly. - -1998-04-11 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gnome-cal.c (gnome_calendar_goto): Add support for navigating - on the day view. - - * timeutil.c (time_start_of_day, time_end_of_day, time_day_hour): - New time manipulation functions. - - * eventedit.c (ee_rp_init_frequency): Add the different frequency - editors to a notebook. Make the notebook startup on the entry - selected recurrence type; - -1998-04-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c (recompute_motion): Now we support selecting a - range in the main window (by clicking+dragging). It flickers - horribly and is not perfect, but it is a start. - -1998-04-09 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c: #include <string.h> - - * gncal-full-day.c (child_map): Show instead of just map the child - widget (otherwise the text widget gets confused and will not focus). - - * calobj.c (ical_object_to_vobject): Quote chars as 'x', not "x". - - * calobj.h: Added prototype for ical_object_to_vobject(). - - * gnome-cal.c (gnome_calendar_object_changed): New function. This - should be called when a calendar object is changed. - - * gncal-full-day.c (update_from_drag_info): Call - gnome_calendar_object_changed() instead of updating manually. - - * calendar.c (calendar_add_object): - (calendar_remove_object): Set the modified flag to true. - - * gncal-full-day.c (gncal_full_day_draw): Finished implementing - this function. - -1998-04-08 Raja R Harinath <harinath@cs.umn.edu> - - * gncal.c (update_calendar): Say `#if 0', not `#ifdef 0'. - -1998-04-07 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c: Removed unused global variable parent_class. - - * eventedit.h: Renamed gtk_window field to window. - Made the parent_class field in the EventEditorClass structure be a - GtkWindowClass, not a gnome property box class. - Added prototype for event_editor_get_type(). - -1998-04-06 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-week-view.c (gncal_week_view_new): Use the new - gtk_table_set_homogeneous() instead of setting the variable directly. - -1998-04-03 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * eventedit.c (ee_create_ae): Make it return void. - (ee_alarm_widgets): Remove some unused variables. - (ee_store_alarm): Make it return void. - #include <string.h> - - * eventedit.h: #include "gnome-cal.h" - - * calobj.c (list_free): Don't use g_free in the g_list_foreach. - - * calendar.h: Add prototype for calendar_load(). - - * timeutil.h: Add prototypes for time_add_*(). - - * calendar.c: - * calobj.c: - * eventedit.c: - * gnome-cal.c: #include "timeutil.h" - - * gncal-day-view.c (gncal_day_view_size_request): Make the minimum - width equal or larger to the title width. - - * main.c: #include "eventedit.h" - (main): Add a return statement. - (new_calendar): Show stuff *after* the calendar has been loaded. - - * gnome-cal.c (gnome_calendar_load): Update the day view. - (setup_widgets): Hackish setup of a day view widget - will fix later. - (gnome_calendar_init): Initialize all fields. - - * gnome-cal.h: Added day_view field. Maybe this should be changed - when the a complete day view panel is complete. - - * gncal-day-view.c (gncal_day_view_update): Draw after update, not - before. - -1998-04-06 Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de> - - * versit/.cvsignore: New file. - -Fri Apr 3 22:31:54 1998 Tom Tromey <tromey@cygnus.com> - - * calendar.c: Include <config.h>. - -1998-04-03 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * timeutil.c (time_add_year, time_add_year, time_add_week): - Routines for time manipulation. - - * calobj.c (ical_object_destroy): Full destruction of the object. - - * eventedit.c: Finished the main event editor form; It still - lacks the details and the recurrence bits. It now adds events - and cancels. - -1998-04-03 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * view-utils.c (view_utils_draw_events): The "better" format - string for strftime() wasn't better, after all :-( - -1998-04-02 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-full-day.c: New full-day widget. It is still a work in - progress. It will be similar to M$ Schedule's nifty full day view - widget, but with Gtk's elegance :-) - - * Makefile.am (gnomecal_SOURCES): Added gncal-full-day.[ch] to the sources. - -1998-04-02 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * eventedit.c: Object editor widget. We dropped ObjEdit. - - * timeutil.c (time_from_isodate): Fix. - - * view-utils.c (view_utils_draw_events): Changed the display - formats. - -1998-04-02 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * view-utils.c (view_utils_draw_events): Use better format - specifier for strftime(). - (view_utils_draw_textured_frame): Ultra-nifty function to draw - textured "metal" frames, like Netscape's handles. - -1998-04-02 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * gncal-day-view.c (gncal_day_view_update): Day events are now - cached inside the widget. They get initialized at this time. - - * view-utils.c (view_utils_draw_events): Use the list of events. - -1998-04-02 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-day-view.c (gncal_day_view_set_shadow): New customization - function. We can't decide on a stupid border type :-) - (gncal_day_view_init): Made GTK_SHADOW_ETCHED_IN be the default - shadow type. Looks good. - -1998-04-02 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * main.c: New main program that uses our new datatypes and - objects. - - * calendar.c (calendar_load_from_vobject, calendar_load): - Implement loading of vCalendar objects and vCalendar files. - - * calobj.c (ical_object_create_from_vobject): Implement loading of - vCalendar event and todo objects. - - * timeutil.c (isodate_from_time_t): New function. - - * gnome-cal.c, gnome-cal.h: Implement a toplevel widget, derived - from GnomeApp. It holds all of the day views and arbitrates the - display. - -1998-04-02 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-week-view.[ch]: New week view composite widget. This - provides a full week view (7 day views plus busy time display -- - the latter is currently unimplemented). - -1998-04-01 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal-day-view.c: New day view widget. It is intended to be a - child widget of the week view composite widget. - - * calendar.c (calendar_get_objects_in_range): - (calendar_get_events_in_range): - (calendar_get_journal_in_range): - (calendar_get_journal_in_range): These functions now take a - sort_func parameter, which is of type GCompareFunc. If the - specified value is non-NULL, it will return a sorted list. - Otherwise, it will return an unordered list. - (calendar_compare_by_dtstart): Provide a generic sorting routine - for calendar objects. - -1998-04-01 Miguel de Icaza <miguel@kernel.org> - - * Start from scratch - -Tue Mar 31 23:46:50 1998 Tom Tromey <tromey@cygnus.com> - - * timeutil.c (format_simple_hour): `buf' now static. - -1998-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal.c: Removed #include "gtkcalendar.h", because it now comes - from libgnomeui. - - * Makefile.am (gncal_SOURCES): Added new source files to the rules. - - * timeutil.c (format_simple_hour): New function, formats an - hour/am_pm pair into a string of the form "3am", "12pm", "05h", - "19h", etc. It is used by the day view widget for its labels. - -1998-03-31 Craig Small <csmall@small.dropbear.id.au> - - * Now has (non working) session maangement - * Uses a clist for the dailylist like gtt - -Sat Mar 21 15:43:20 1998 Tom Tromey <tromey@cygnus.com> - - * gncal.c: Use gnome_message_box_*, not gnome_messagebox_*. - -1998-03-12 Craig Small <csmall@small.dropbear.id.au> - - * Now linked (in some horrible way) to the gtkcalendar widget. - -Sun Mar 8 16:38:10 1998 Tom Tromey <tromey@cygnus.com> - - * Makefile.am (INCLUDES): Added GNOME_INCLUDEDIR. - (gncal_LDADD): Don't include libsupport.a. - - * gncal.c (main): Use new gnome_init. - -1998-02-19 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gncal.c (main): Added app_id "gncal". - -1998-02-19 Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de> - - * Makefile.am (gncal_LDADD): Added '$(INTLLIBS)' - -1998-02-18 Raja R Harinath <harinath@cs.umn.edu> - - * Makefile.am (gncal_LDADD): Include `libsupport.a'. - - * calcs.c (month_atoi): Replace buggy explicit loop string compare - with strcasecmp. - (day_atoi): Likewise. - -Sun Jan 25 23:38:30 1998 Miguel de Icaza <miguel@nuclecu.unam.mx> - - * menus.c: Replace "Quit" with "Exit". |