aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
* use libical-evolution.laDamon Chaplin2001-10-301-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=14397
* Launch the alarm daemon as soon as the calendar component is started.Federico Mena Quintero2001-10-301-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=14389
* Fix the verb names for the pixmaps in the Edit menu; they were out ofFederico Mena Quintero2001-10-301-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=14380
* new function. (dump_backend): new function.Chris Toshok2001-10-301-0/+9
| | | | | | | | | | | | | 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. svn path=/trunk/; revision=14374
* Fix bug #12163.Federico Mena Quintero2001-10-301-0/+12
| | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=14369
* include the header as a source so it gets dist'ed.JP Rosevear2001-10-301-0/+5
| | | | | | | | | 2001-10-29 JP Rosevear <jpr@ximian.com> * importers/Makefile.am: include the header as a source so it gets dist'ed. svn path=/trunk/; revision=14366
* s/BONOBO_CFLAGS/BONOBO_GNOME_CFLAGS/.Ettore Perazzoli2001-10-301-0/+5
| | | | | | | * importers/Makefile.am (INCLUDES): s/BONOBO_CFLAGS/BONOBO_GNOME_CFLAGS/. svn path=/trunk/; revision=14363
* fixed URI construction, which was preventing importing into the rootRodrigo Moya2001-10-301-0/+6
| | | | | | | | | | 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/) svn path=/trunk/; revision=14358
* handle date valuesJP Rosevear2001-10-301-0/+5
| | | | | | | | | 2001-10-29 JP Rosevear <jpr@ximian.com> * conduits/calendar/calendar-conduit.c (is_all_day): handle date values svn path=/trunk/; revision=14357
* added evolution-calendar-importer binary, starting with an iCalendar fileRodrigo Moya2001-10-301-0/+5
| | | | | | | | | 2001-10-29 Rodrigo Moya <rodrigo@ximian.com> * importers/: added evolution-calendar-importer binary, starting with an iCalendar file importer svn path=/trunk/; revision=14354
* get the management object by idJP Rosevear2001-10-301-0/+8
| | | | | | | | | | | | 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 svn path=/trunk/; revision=14353
* new functions for setting and retrieving the default calendar URIsRodrigo Moya2001-10-301-0/+16
| | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=14345
* unref the comp when finishedJP Rosevear2001-10-291-2/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=14316
* added break statements after each case, when setting the classification.Damon Chaplin2001-10-291-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=14307
* removed this function, as we don't need to unref at all the WombatClientRodrigo Moya2001-10-291-0/+8
| | | | | | | | | | | | 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 svn path=/trunk/; revision=14306
* get the tasks directly from the CalendarModel, so we get the filtering &Damon Chaplin2001-10-291-0/+17
| | | | | | | | | | | | | | | | | | | | | 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(). svn path=/trunk/; revision=14302
* when the week start day is set to Sunday, we have to be careful to makeDamon Chaplin2001-10-281-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=14266
* Cancel editing if the user presses Escape.Federico Mena Quintero2001-10-281-0/+9
| | | | | | | | | | | | | 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> svn path=/trunk/; revision=14245
* Delete appointments with empty summaries. Fixes Ximian bug #780.Federico Mena Quintero2001-10-281-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=14233
* touch on lookup (check_for_slow_setting): write touched only if slow syncJP Rosevear2001-10-271-4/+17
| | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=14210
* remove the merges as valid sync typesJP Rosevear2001-10-271-0/+17
| | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=14198
* convert the formatted date to UTF-8.Damon Chaplin2001-10-271-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=14187
* make debug output more accurateJP Rosevear2001-10-271-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=14156
* remove the uid from the map if was archived and is now deletedJP Rosevear2001-10-271-0/+7
| | | | | | | | | | | 001-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 svn path=/trunk/; revision=14151
* added status bar messagesRodrigo Moya2001-10-271-0/+11
| | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=14149
* modify fieldsJP Rosevear2001-10-261-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=14139
* Get a fresh CORBA_Environment for every CORBA call. Hopefully will fixFederico Mena Quintero2001-10-261-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=14126
* used functions to get PUBLISH_OPTIONS etc., so we can translate them.Damon Chaplin2001-10-261-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=14115
* added bug numberDamon Chaplin2001-10-261-1/+1
| | | | svn path=/trunk/; revision=14109
* subtract 1 from any positive BYSETPOS value, since our array is 0-based.Damon Chaplin2001-10-261-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 #????. 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. svn path=/trunk/; revision=14108
* show an error message when we can't update the object on the calendarRodrigo Moya2001-10-251-0/+5
| | | | | | | | | 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 svn path=/trunk/; revision=14090
* Ifdef-ed out the PersistFile bits.Federico Mena Quintero2001-10-251-0/+2
| | | | | | | | 2001-10-25 Federico Mena Quintero <federico@ximian.com> * gui/control-factory.c: Ifdef-ed out the PersistFile bits. svn path=/trunk/; revision=14089
* The tasks folder does not support the PersistFile interface; removed it.Federico Mena Quintero2001-10-251-0/+7
| | | | | | | | | | | 2001-10-25 Federico Mena Quintero <federico@ximian.com> * 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. svn path=/trunk/; revision=14088
* Handle tasks folders as well; was always using "calendar.ics" as theFederico Mena Quintero2001-10-251-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=14087
* added sections for Tasks factory and control. I hope someone checks these!Damon Chaplin2001-10-251-0/+5
| | | | | | | | | 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! svn path=/trunk/; revision=14074
* Fixed to only copy the `calendar.ics' and `calendar.ics~' files.Ettore Perazzoli2001-10-251-1/+0
| | | | | | | * gui/component-factory.c (xfer_folder): Fixed to only copy the `calendar.ics' and `calendar.ics~' files. svn path=/trunk/; revision=14071
* Fixed to only copy the `calendar.ics' and `calendar.ics~' files.Ettore Perazzoli2001-10-251-0/+6
| | | | | | | * gui/component-factory.c (xfer_folder): Fixed to only copy the `calendar.ics' and `calendar.ics~' files. svn path=/trunk/; revision=14070
* when iterating over the subcomponents, use 'subcomp' rather thanDamon Chaplin2001-10-251-0/+16
| | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13992
* track the spacer vbox (e_meeting_time_selector_style_set): make sure theJP Rosevear2001-10-251-0/+19
| | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13989
* Fixes bug #5282.Federico Mena Quintero2001-10-251-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13986
* make sure we free all the CalComponentDateTime's when we are finished.Damon Chaplin2001-10-241-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=13957
* adjust the display canvas when the table scrollsJP Rosevear2001-10-241-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=13951
* no longer set the scrollbar policy hereJP Rosevear2001-10-241-0/+12
| | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13948
* convert an icaltimetype to a tm (tm_to_icaltimetype): vice versaJP Rosevear2001-10-241-0/+14
| | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13946
* cal-client/cal-query.c (cal_query_construct) set priv->corba_query toRodrigo Moya2001-10-231-0/+5
| | | | | | | | | 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 svn path=/trunk/; revision=13939
* added setDefaultTimezone() method.Damon Chaplin2001-10-231-0/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13920
* Put up a warning dialog box if we failed to create the tasks control.Federico Mena Quintero2001-10-231-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=13917
* write out the correct time in the controlJP Rosevear2001-10-231-0/+13
| | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13876
* we don't need to save the stateJP Rosevear2001-10-221-0/+12
| | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13872
* listen for changes in the date editors (schedule_page_set_dates): updateJP Rosevear2001-10-221-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13863
* Do not assert if we fail to load the URI list. This would of course haveFederico Mena Quintero2001-10-201-0/+13
| | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13797
* make it a public functionRodrigo Moya2001-10-201-0/+11
| | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13796
* new function (update_query): call set_status_messageRodrigo Moya2001-10-201-0/+9
| | | | | | | | | | | | | 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 svn path=/trunk/; revision=13794
* keep a reference to the EvolutionShellClient componentRodrigo Moya2001-10-191-0/+17
| | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13793
* call the invite others dialog in the modelJP Rosevear2001-10-191-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13775
* add html widget (url_requested_cb): add function to load images from fileLarry Ewing2001-10-191-0/+15
| | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13766
* Adds session management for the alarm daemon. Also makes it store a listFederico Mena Quintero2001-10-191-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13763
* Oops.JP Rosevear2001-10-191-1/+14
| | | | svn path=/trunk/; revision=13760
* new functionsRodrigo Moya2001-10-191-0/+5
| | | | | | | | | 2001-10-18 Rodrigo Moya <rodrigo@ximian.com> * cal-util/cal-component.[ch] (cal_component_get_location): (cal_component_set_location): new functions svn path=/trunk/; revision=13758
* util routine to handle calling back (async_close): use aboveJP Rosevear2001-10-181-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=13747
* translate 1-5 priorites to 1-9 priorities betterJP Rosevear2001-10-181-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=13736
* allow some decent exceptionsJP Rosevear2001-10-181-0/+4
| | | | | | | | 2001-10-17 JP Rosevear <jpr@ximian.com> * idl/evolution-calendar.idl: allow some decent exceptions svn path=/trunk/; revision=13726
* there may be cases when the backend will return an invalid component fromRodrigo Moya2001-10-181-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=13725
* removed Help button. Do we have any others?Damon Chaplin2001-10-161-0/+5
| | | | | | | | | 2001-10-15 Damon Chaplin <damon@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: removed Help button. Do we have any others? svn path=/trunk/; revision=13692
* remove warnings.Larry Ewing2001-10-161-0/+4
| | | | | | | | 2001-10-15 Larry Ewing <lewing@ximian.com> * gui/dialogs/comp-editor.c (set_icon_from_comp): remove warnings. svn path=/trunk/; revision=13686
* function to break up multi day events into single events for both evo andJP Rosevear2001-10-161-0/+8
| | | | | | | | | | | | 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 svn path=/trunk/; revision=13678
* util function to determine if event is all day (local_record_from_comp):JP Rosevear2001-10-151-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=13673
* call set_icon_from_comp. (set_icon_from_comp): set the window icon fromLarry Ewing2001-10-141-0/+9
| | | | | | | | | | | | | 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. svn path=/trunk/; revision=13666
* send cancellation comp if necessaryJP Rosevear2001-10-141-0/+5
| | | | | | | | | 2001-10-13 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-editor.c (task_editor_send_comp): send cancellation comp if necessary svn path=/trunk/; revision=13655
* return fill_component successJP Rosevear2001-10-131-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13635
* large reworking of i18n tagging and now uses gtk_html_stream write and U_Larry Ewing2001-10-121-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=13592
* set the default character set to utf-8.Larry Ewing2001-10-111-0/+5
| | | | | | | | | 2001-10-10 Larry Ewing <lewing@ximian.com> * gui/e-itip-control.c (init): set the default character set to utf-8. svn path=/trunk/; revision=13568
* Return the original key in the hash table if requested.Federico Mena Quintero2001-10-111-0/+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! svn path=/trunk/; revision=13557
* remove unneeded assertionsJP Rosevear2001-10-111-0/+5
| | | | | | | | | 2001-10-10 JP Rosevear <jpr@ximian.com> * cal-client/cal-client.c (cal_set_mode_cb): remove unneeded assertions svn path=/trunk/; revision=13556
* fix logic checksJP Rosevear2001-10-101-0/+17
| | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13552
* Fixes bug #884.Federico Mena Quintero2001-10-101-0/+18
| | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13538
* util function to get address (itip_addresses_get_default): get only theJP Rosevear2001-10-101-0/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13525
* deal correctly with URIs to be inserted into the hash table, so that weRodrigo Moya2001-10-101-0/+5
| | | | | | | | | | | 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) svn path=/trunk/; revision=13523
* moved to a common place (cal_backend_file_open): check if "uristr != NULL"Rodrigo Moya2001-10-101-0/+10
| | | | | | | | | | | | | | 2001-10-09 Rodrigo Moya <rodrigo@ximian.com> * 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 svn path=/trunk/; revision=13517
* Fix incorrect variable name check.Dan Winship2001-10-091-0/+5
| | | | | | | * gui/e-meeting-model.c (process_free_busy_comp): Fix incorrect variable name check. svn path=/trunk/; revision=13512
* refactor functionality into several function (comp_string): if we areJP Rosevear2001-10-041-0/+14
| | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13385
* replace use of gnome_vfs_uri with e_uriRodrigo Moya2001-10-041-0/+19
| | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13380
* Added priorities to a bunch of these columns. Fixes Ximian bug #7158.Christopher James Lahey2001-10-031-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=13371
* save the EXDATE as a DATE-TIME value, since we know the exact time. FixesDamon Chaplin2001-10-031-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13366
* Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'.Ettore Perazzoli2001-10-031-0/+6
| | | | | | | | | | | | | | | | | | | | * e-shell-view.c (e_shell_view_construct): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. * mail-account-gui.c (launch_signature_editor): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. * e-msg-composer.c (setup_ui): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. * gui/dialogs/comp-editor.c (setup_widgets): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. svn path=/trunk/; revision=13306
* use bonobo-exception to tidyJP Rosevear2001-10-021-0/+4
| | | | | | | | 2001-10-02 JP Rosevear <jpr@ximian.com> * cal-client/cal-query.c: use bonobo-exception to tidy svn path=/trunk/; revision=13302
* handle -1 as well (comp_from_remote_record): fix monthly by dayJP Rosevear2001-10-021-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=13300
* unref the page objects here, instead of in close_dialog(). (This was fixedDamon Chaplin2001-10-021-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=13278
* Set the window state to sticky. Thanks to Peter Teichman for theFederico Mena Quintero2001-10-021-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=13275
* Convert the comp exceptions to the pilot record (comp_from_remote_record):JP Rosevear2001-10-021-0/+7
| | | | | | | | | | | 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 in the comp and use time zone stuff on recurrence end date svn path=/trunk/; revision=13269
* strdup the uid to avoid double free, write out only after everything isJP Rosevear2001-10-021-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=13266
* don't use gnome_vfs_uri_is_local on URIs created withRodrigo Moya2001-10-021-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=13262
* use bound_text to print the summary, so it wraps instead of being clippedDamon Chaplin2001-09-291-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | 001-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. svn path=/trunk/; revision=13246
* Handle the fields and category we don't sync by making sure we don'tJP Rosevear2001-09-291-0/+18
| | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13235
* init the execption rather than freeing itJP Rosevear2001-09-291-0/+5
| | | | | | | | | 2001-09-28 JP Rosevear <jpr@ximian.com> * cal-client/cal-client.c (cal_client_open_calendar): init the execption rather than freeing it svn path=/trunk/; revision=13215
* use bonobo-exception for exceptions (cal_client_open_calendar): likewiseRodrigo Moya2001-09-281-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=13211
* Update pixmap menu paths; /menu/ComponentToolsPlaceholder/Tools ->Ettore Perazzoli2001-09-281-0/+7
| | | | | | | | | * gui/calendar-commands.c (pixmaps): Update pixmap menu paths; /menu/ComponentToolsPlaceholder/Tools -> /menu/Tools/ComponentPlaceholder . * gui/tasks-control.c: Likewise. svn path=/trunk/; revision=13204
* added InvalidURI and UnsupportedMethod exceptions to the CalFactoryRodrigo Moya2001-09-271-0/+16
| | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13189
* added comparison functions for these special cell types. But the date andDamon Chaplin2001-09-271-1/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13186
* Fixes the GUI part of bug #7892.Federico Mena Quintero2001-09-271-0/+12
| | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13182
* disconnect signals first thingJP Rosevear2001-09-271-0/+5
| | | | | | | | | 2001-09-26 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.c (comp_editor_destroy): disconnect signals first thing svn path=/trunk/; revision=13151
* Add -export-dynamic to make glade custom widgets work on non-Linux.Dan Winship2001-09-261-0/+5
| | | | | | | * gui/Makefile.am (evolution_calendar_LDFLAGS): Add -export-dynamic to make glade custom widgets work on non-Linux. svn path=/trunk/; revision=13150
* added CAL_MODE_INVALID to CalMode enumRodrigo Moya2001-09-261-0/+4
| | | | | | | | 2001-09-26 Rodrigo Moya <rodrigo@ximian.com> * cal-util/cal-util.h: added CAL_MODE_INVALID to CalMode enum svn path=/trunk/; revision=13148
* new protoJP Rosevear2001-09-261-0/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13142
* Warning fixes courtesy of Chris Lahey <clahey@ximian.com>.Federico Mena Quintero2001-09-261-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | 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" svn path=/trunk/; revision=13120
* Check that the timeout is not set up before we create a new one; theFederico Mena Quintero2001-09-261-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=13117
* use bonobo-exception stuff to clean codeJP Rosevear2001-09-261-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13110
* base text on component typeJP Rosevear2001-09-241-0/+5
| | | | | | | | | 2001-09-23 JP Rosevear <jpr@ximian.com> * gui/e-itip-control.c (set_date_label): base text on component type svn path=/trunk/; revision=13092
* don't use gnome_vfs_uri_new_private (fixes Ximian #10544)Rodrigo Moya2001-09-211-0/+5
| | | | | | | | | 2001-09-20 Rodrigo Moya <rodrigo@ximian.com> * gui/component-factory.c: don't use gnome_vfs_uri_new_private (fixes Ximian #10544) svn path=/trunk/; revision=13048
* #include a few files we were missing from libgnomevfs.Federico Mena Quintero2001-09-211-0/+5
| | | | | | | | | 2001-09-20 Federico Mena Quintero <federico@ximian.com> * gui/component-factory.c: #include a few files we were missing from libgnomevfs. svn path=/trunk/; revision=13031
* gets a config db (cal_backend_file_destroy): release config dbJP Rosevear2001-09-211-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=13015
* make sure to release the ref on priv->comp.Larry Ewing2001-09-201-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=13008
* Display a notification message always, in addition to playing the sound.Federico Mena Quintero2001-09-201-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=13004
* listen for model changes (task_editor_edit_comp): add the attendees to theJP Rosevear2001-09-201-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12983
* add a new parameter (const char *iid) to specify the OAFIID of the factoryRodrigo Moya2001-09-191-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=12977
* remove silly debug #if 0JP Rosevear2001-09-191-0/+11
| | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12972
* A page that shows the meeting time selector and free/busy data forJP Rosevear2001-09-191-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12968
* Fixes bug #6350.Federico Mena Quintero2001-09-191-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=12966
* Fixes bug #2830.Federico Mena Quintero2001-09-191-0/+19
| | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12953
* new class for managing multiple calendars, with an API very similar to theRodrigo Moya2001-09-191-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12951
* added a timeout to refresh the list every 10 minutes. Not ideal, as theDamon Chaplin2001-09-181-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12925
* Do not call calendar_config_init() here.Federico Mena Quintero2001-09-181-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=12916
* Duh, only setup the timeout if the list was empty. (alarm_ready_cb):Federico Mena Quintero2001-09-181-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=12912
* Switch the alarm system from using SIGALRM to normal glib timers. Also,Federico Mena Quintero2001-09-181-0/+17
| | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12904
* get itip addresses (calendar_model_destroy): destroy sameJP Rosevear2001-09-181-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=12899
* for each call back, removes the alarms (cal_component_remove_all_alarms):JP Rosevear2001-09-171-0/+15
| | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12897
* Updated required version of gal to 0.11.99.4.Christopher James Lahey2001-09-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-16 Christopher James Lahey <clahey@ximian.com> * configure.in: Updated required version of gal to 0.11.99.4. From calendar/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * gui/dialogs/meeting-page.c (build_etable): Updated this to match the new ETableSimple interface. From mail/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * message-list.c (ml_get_node_by_id): Made save_id const here. From shell/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (etree_get_node_by_id): Made save_id const here. svn path=/trunk/; revision=12870
* [Automake 1.5 fixes pointed out by Richard BoultonEttore Perazzoli2001-09-151-0/+1
| | | | | | | | | <richard@tartarus.org>, as per #9258.] * pcs/Makefile.am: Set CLEANFILES directly instead of using `+='. svn path=/trunk/; revision=12843
* [Automake 1.5 fixes pointed out by Richard BoultonEttore Perazzoli2001-09-151-0/+2
| | | | | | | | | <richard@tartarus.org>, as per #9258.] * gui/alarm-notify/Makefile.am: Set CLEANFILES directly instead of using `+='. svn path=/trunk/; revision=12842
* [Automake 1.5 fixes pointed out by Richard BoultonEttore Perazzoli2001-09-151-0/+8
| | | | | | | | | <richard@tartarus.org>, as per #9258.] * cal-client/Makefile.am: Set CLEANFILES directly instead of using `+='. svn path=/trunk/; revision=12841
* added space after 'identities' in the message. Fixes bug #9896.Damon Chaplin2001-09-151-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=12837
* remove translation marker for nowJP Rosevear2001-09-151-0/+5
| | | | | | | | | 2001-09-14 JP Rosevear <jpr@ximian.com> * conduits/calendar/e-calendar.conduit.in: remove translation marker for now svn path=/trunk/; revision=12831
* use ical partstat, role, cutypes directlyJP Rosevear2001-09-141-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12806
* send 6 weeks of free busy info starting with the UTC start of dayJP Rosevear2001-09-131-0/+12
| | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12775
* Added an use_description argument so that other alarms can fall back toFederico Mena Quintero2001-09-121-0/+16
| | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12772
* free the destination vector when we finish with it, if we actually addJP Rosevear2001-09-121-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=12771
* Convert string generated by strftime to UTF-8.Chyla Zbigniew2001-09-111-0/+11
| | | | | | | | | | | | | * 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. svn path=/trunk/; revision=12751
* Handle the new icalattach type instead of struct icalattachtype.Federico Mena Quintero2001-09-111-0/+11
| | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12749
* [Fix #958, ShellComponents should not be created by factories, forEttore Perazzoli2001-09-061-0/+15
| | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12645
* Implemented.Federico Mena Quintero2001-09-051-0/+16
| | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12619
* don't call calendar_config_check_timezone_set() now, since the startupDamon Chaplin2001-09-041-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12575
* changed 3 occurrences of 'Replyed' to 'replied'Damon Chaplin2001-09-011-0/+4
| | | | | | | | 2001-08-31 Damon Chaplin <damon@ximian.com> * gui/e-itip-control.c: changed 3 occurrences of 'Replyed' to 'replied' svn path=/trunk/; revision=12552
* Marked strings for translation (with U_).Chyla Zbigniew2001-09-011-0/+8
| | | | | | | | | | * gui/e-itip-control.c (write_html): Marked strings for translation (with U_). * gui/itip-utils.c (itip_send_comp): Ditto. svn path=/trunk/; revision=12543
* fix debugging messages so they use "" rather than NULL. Fixes bug #8559.Damon Chaplin2001-09-011-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=12539
* See if the set of categories changed by using the removed_categories hashFederico Mena Quintero2001-08-301-0/+14
| | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12522
* Fixes bug #7879, a query may receive an update notification from theFederico Mena Quintero2001-08-291-0/+21
| | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12509
* Unset the priv->updating flag before returning in the case the componentFederico Mena Quintero2001-08-231-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=12413
* Added a snooze flag to differentiate snoozed alarms from real occurrences.Federico Mena Quintero2001-08-231-0/+11
| | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12412
* call back to add timezones to the top level (itip_send_comp): callJP Rosevear2001-08-231-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=12396
* #include <libgnomevfs/gnome-vfs-types.h> so this will compile againstDan Winship2001-08-221-0/+5
| | | | | | | * gui/gnome-cal.c: #include <libgnomevfs/gnome-vfs-types.h> so this will compile against gnome-vfs 1.0.1. svn path=/trunk/; revision=12383
* open the tasks folder associated with the calendar being opened, and notRodrigo Moya2001-08-221-0/+9
| | | | | | | | | | | | | 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 svn path=/trunk/; revision=12379
* Handle the case where there is no attachment. Fixes bug #7257.Federico Mena Quintero2001-08-221-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=12368
* strip the mailto bit for the email address if we display itJP Rosevear2001-08-221-0/+5
| | | | | | | | | 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 svn path=/trunk/; revision=12355
* added new e-sexp operator. We don't currently use it though.Damon Chaplin2001-08-221-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12347
* new files to contain utility functions for calendar backendsRodrigo Moya2001-08-211-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12339
* new functions moved from the CalBackendFile, to allow its use outside ofRodrigo Moya2001-08-211-0/+16
| | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=12338
* missing changelog entryJP Rosevear2001-08-201-0/+5
| | | | svn path=/trunk/; revision=12286
* use Delete icon in menu, and change to bigger Save icon in toolbar.Damon Chaplin2001-08-201-0/+3
| | | | | | | | | 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. svn path=/trunk/; revision=12280
* used new_task-16.png and goto-16.png.Damon Chaplin2001-08-201-0/+6
| | | | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/tasks-control.c: * gui/calendar-commands.c (pixmaps): used new_task-16.png and goto-16.png. svn path=/trunk/; revision=12275
* added delete icons for menu and toolbar.Damon Chaplin2001-08-201-0/+5
| | | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/calendar-commands.c (pixmaps): added delete icons for menu and toolbar. svn path=/trunk/; revision=12263
* added Cut/Copy/Paste icons for toolbar.Damon Chaplin2001-08-201-0/+4
| | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/tasks-control.c: added Cut/Copy/Paste icons for toolbar. svn path=/trunk/; revision=12254
* uses new delete icons in menu & toolbar.Damon Chaplin2001-08-201-0/+4
| | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/tasks-control.c: uses new delete icons in menu & toolbar. svn path=/trunk/; revision=12251
* Added display_name and description to the type.Ettore Perazzoli2001-08-201-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * evolution-test-component.c: Added display_name and description to the type. * evolution-shell-component.c (impl__get_supported_types): Pass `display_name' and `description' here. (evolution_shell_component_construct): Likewise. * evolution-shell-component.h: New members `display_name', `description' in `EvolutionShellComponentFolderType'. * e-component-registry.c (register_type): New args @description and @display_name. Pass to `e_folder_type_registry_register_type()'. (register_component): Pass the values returned in the sequence from __get_supported_types. * e-folder-type-registry.c: New members `display_name' and `description' in `struct _FolderType'. (folder_type_new): New args @description and @display_name. Initialize the respective fields in the `FolderType' accordingly. (folder_type_free): Free `display_name' and `description'. (register_folder_type): New args @display_name, @description. (e_folder_type_registry_register_type): New args @display_name, @description. (e_folder_type_registry_get_description_for_type): New. (e_folder_type_registry_get_display_name_for_type): New. * Evolution-ShellComponent.idl: Added `display_name' and `description' fields to the `FolderType' struct. svn path=/trunk/; revision=12245
* use new delete icon for toolbar.Damon Chaplin2001-08-201-0/+4
| | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (pixmaps): use new delete icon for toolbar. svn path=/trunk/; revision=12244
* fixed typo, 'send' -> 'sent'. Bug #7621.Damon Chaplin2001-08-201-0/+4
| | | | | | | | 2001-08-19 Damon Chaplin <damon@ximian.com> * gui/e-itip-control.c: fixed typo, 'send' -> 'sent'. Bug #7621. svn path=/trunk/; revision=12235
* added option to hide completed tasks after a given number ofDamon Chaplin2001-08-191-0/+13
| | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12215
* used new Save/Save As icons.Damon Chaplin2001-08-191-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=12214
* Use e_dialog_editable_get instead of gtk_editable_get_chars (we need UTF-8Zbigniew Chyla2001-08-191-0/+6
| | | | | | | | | | 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). svn path=/trunk/; revision=12209
* New. (config_read): Use locale's setting as default forZbigniew Chyla2001-08-181-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=12200
* new function to open the task editor to add a new task.Damon Chaplin2001-08-181-0/+13
| | | | | | | | | | | | | | | | | 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). svn path=/trunk/; revision=12195
* Startup assistant stuffIain Holmes2001-08-171-0/+10
| | | | svn path=/trunk/; revision=12145
* hide the timezone fields for all-day events. We will use DATE values forDamon Chaplin2001-08-171-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12137
* If the component has no alarms remember to set the priv->updating flag toFederico Mena Quintero2001-08-171-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=12128
* get the destinations property, not the text propertyJP Rosevear2001-08-171-0/+6
| | | | | | | | | | 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 svn path=/trunk/; revision=12126
* Set the default-to-add notification to be display a message 15 minutesFederico Mena Quintero2001-08-171-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=12123
* New function to strip surrounding whitespace from a string of categoriesFederico Mena Quintero2001-08-171-0/+11
| | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12122
* Do not set the time popup range. We also want to be able to createFederico Mena Quintero2001-08-171-0/+10
| | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12109
* Boost scoring on an exact nickname match. Manually addressify match.Jon Trowbridge2001-08-161-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-16 Jon Trowbridge <trow@ximian.com> * gui/component/select-names/e-select-names-completion.c (match_nickname): Boost scoring on an exact nickname match. Manually addressify match. (match_name): Manually addressify matches. (book_query_score): Remove automatic addressification. * gui/component/addressbook.c (addressbook_query_changed): Minor tweak to avoid a crash if we have a negative subid with id ESB_CATEGORY. This should never happen. (addressbook_menu_activated): Reset the entry/option when we select "Clear". Some changes to reflect renaming in ESearchBar. * gui/component/select-names/e-select-names-bonobo.c (entry_set_property_fn): Cardify after importing destinations. This might fix a problem that Damon is having. 2001-08-16 Jon Trowbridge <trow@ximian.com> * e-filter-bar.c (option_changed): Adjusted for renamed ESearchBar functions. (menubar_activated): Adjusted for renamed ESearchBar functions. * e-search-bar.c: Renames some of the horrible function names: s/option_choice/item_id/, s/suboption_choice/subitem_id/. 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. svn path=/trunk/; revision=12081
* only fill the component and save it if something has changedJP Rosevear2001-08-151-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=12052
* OK, re-added the default alarm options. Way too many people are asking forFederico Mena Quintero2001-08-151-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=12050
* Add the user creatable items. The callback is not actually implementedFederico Mena Quintero2001-08-151-0/+10
| | | | | | | | | | | | | | 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). svn path=/trunk/; revision=12047
* added support for the Contacts field. Note that I'm not sure what weDamon Chaplin2001-08-151-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12039
* Made the click-to-add message shorter. Fixes bug #7177.Federico Mena Quintero2001-08-151-0/+5
| | | | | | | | | 2001-08-14 Federico Mena Quintero <federico@ximian.com> * gui/e-calendar-table.etspec: Made the click-to-add message shorter. Fixes bug #7177. svn path=/trunk/; revision=12031
* Added Tigert's new icons for Prev and Next.Federico Mena Quintero2001-08-151-0/+5
| | | | | | | | | 2001-08-14 Federico Mena Quintero <federico@ximian.com> * gui/calendar-commands.c (pixmaps): Added Tigert's new icons for Prev and Next. svn path=/trunk/; revision=12027
* Make the "Any Category" item consistent with the one in the addressbook.Federico Mena Quintero2001-08-151-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=12020
* Handle an array of categories in the CalSearchBar instead of our own menuFederico Mena Quintero2001-08-151-0/+13
| | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=12016
* add dialog for feedback (remove_item): ditto (send_item): dittoJP Rosevear2001-08-141-0/+13
| | | | | | | | | | | 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 svn path=/trunk/; revision=11987
* Remove #include <config.h> from here. Same here.Kjartan Maraas2001-08-121-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=11930
* Update the paths of the Tools menu according to the changes in the XMLEttore Perazzoli2001-08-121-0/+8
| | | | | | | | | | * 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. svn path=/trunk/; revision=11923
* turn on word-wrap for the description fields. Fixes bug #6821.Damon Chaplin2001-08-121-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=11922
* Removed comment about the need to resolve nicknames properly, because weJon Trowbridge2001-08-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-10 Jon Trowbridge <trow@ximian.com> * e-msg-composer-hdrs.c (set_recipients): Removed comment about the need to resolve nicknames properly, because we now do that. 2001-08-10 Jon Trowbridge <trow@ximian.com> * e-filter-bar.h: Set the subitems to NULL in the pre-defined ESearchBarItems. * e-filter-bar.c (rule_editor_clicked): Set the ESearchBarItem's subitems to NULL. (build_items): Set the ESearchBarItem's subitems to NULL. (e_filter_bar_new): Set the ESearchBarItem's subitems to NULL. * e-search-bar.c: Added support for subitems, so that a search option can key off of another option menu rather than just an entry. 2001-08-10 Jon Trowbridge <trow@ximian.com> * gui/component/addressbook.c: Set the ESearchBarItem subitems explicitly to NULL. 2001-08-10 Jon Trowbridge <trow@ximian.com> * gui/cal-search-bar.c: Where we have ESearchBarItems, set their subitems to NULL. 2001-08-10 Jon Trowbridge <trow@ximian.com> * folder-browser.c: Set our ESearchBarItems subitems to NULL. svn path=/trunk/; revision=11904
* added new backend method to get the component given a UID.Damon Chaplin2001-08-101-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11866
* unref the GdkPixmap and GdkBitmap returned by the functionRodrigo Moya2001-08-101-0/+8
| | | | | | | | | | | | 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 () svn path=/trunk/; revision=11859
* Remove progress frameJP Rosevear2001-08-101-0/+18
| | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11846
* Chain to the destroy handler in the parent class!Federico Mena Quintero2001-08-091-0/+11
| | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11820
* removed underlined accelerator key from "_Go To Today" button. GnomeDialogDamon Chaplin2001-08-091-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=11809
* Stop editing any event. Fixes bug #5949.Federico Mena Quintero2001-08-091-0/+5
| | | | | | | | | 2001-08-08 Federico Mena Quintero <federico@ximian.com> * gui/e-day-view.c (update_query): Stop editing any event. Fixes bug #5949. svn path=/trunk/; revision=11807
* Duuuh, set the alarm_copy on the component, not the original alarm. FixesFederico Mena Quintero2001-08-091-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=11806
* set the attendees of a component (meeting_page_fill_component): use aboveJP Rosevear2001-08-091-4/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11803
* don't use a NULL mask in the call to gdk_gc_set_clip_maskRodrigo Moya2001-08-091-0/+9
| | | | | | | | | | | | | 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 svn path=/trunk/; revision=11801
* fix pre-processor macrosJP Rosevear2001-08-091-1/+12
| | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11793
* New function to stop further notification from happening.Federico Mena Quintero2001-08-081-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11758
* Only unref the FIELD_COMPONENT if it is non-NULL. We return a NULL forFederico Mena Quintero2001-08-081-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=11745
* Make calendar.ics the suggested name when attaching the ical objectJP Rosevear2001-08-081-0/+5
| | | | | | | | | 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 svn path=/trunk/; revision=11744
* added 'different_timezone' fields to EDayViewEvent and EWeekViewEvent, toDamon Chaplin2001-08-071-0/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11717
* In process of fixing bug #6005. The "Calendar" page is now "Display", andFederico Mena Quintero2001-08-071-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=11707
* added check for NULL pointers. Maybe fixes #5203 (I can't reproduce it, soRodrigo Moya2001-08-071-0/+6
| | | | | | | | | | 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) svn path=/trunk/; revision=11702
* New function; stops further notification from happening. This is neededFederico Mena Quintero2001-08-041-0/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11646
* Fixes bug #1407.Federico Mena Quintero2001-08-041-0/+7
| | | | | | | | | | | 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. svn path=/trunk/; revision=11621
* I18n fixes.Chyla Zbigniew2001-08-041-0/+11
| | | | | | | | | | | * 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> svn path=/trunk/; revision=11619
* Add camel dependency.Jon Trowbridge2001-08-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-02 Jon Trowbridge <trow@ximian.com> * printing/Makefile.am (ecpsdir): Add camel dependency. * gui/component/Makefile.am: Add camel dependency. * backend/ebook/Makefile.am: Add camel dependency. * gui/component/addressbook-factory.c (main): Properly init camel. * backend/ebook/e-destination.c (e_destination_clear_strings): Clear ->raw. (e_destination_is_empty): We aren't empty if ->raw is set.. (e_destination_set_raw): Replaces e_destination_set_string. (e_destination_get_name): Use camel's parser to extract the name from ->raw. (e_destination_get_email): Use camel's parser to extract the email address from ->raw. (e_destination_get_address): Use camel to produce properly quoted, RFC-compliant addresses. Thanks camel! (Bug #5860) * gui/component/select-names/e-select-names-completion.c (emailify_match): Always append an e-mail address, as long as it doesn't have one already at it's beginning or end. Don't limit self to just emailifying entries tied to cards with multiple addresses. (I didn't really want to do this, but people seem to like keeping multiple cards for the same person, and other solutions (like scanning all matches for duplicate names, and only emailifying those) just seemed like way too much work for such a limited payoff.) * gui/component/select-names/e-select-names-text-model.c: s/e_destination_set_string/e_destination_set_raw/. * gui/component/select-names/e-select-names-popup.c (popup_menu_card): Quote _'s in our popup menus, so that "foo_bar" doesn't get displayed as "foobar" w/ the 'b' underlined. (Bug #5558) (popup_menu_nocard): Ditto. 2001-08-02 Jon Trowbridge <trow@ximian.com> * Makefile.am: Added camel dependency (now needed by ebook). 2001-08-02 Jon Trowbridge <trow@ximian.com> * gui/Makefile.am: Added camel dependency (now needed by ebook). 2001-08-02 Jon Trowbridge <trow@ximian.com> * Makefile.am: Added camel dependency (now needed by ebook). svn path=/trunk/; revision=11602
* If the default category is the same as the value passed in to thisFederico Mena Quintero2001-08-021-0/+14
| | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11565
* removed debugging messages.Damon Chaplin2001-08-021-0/+4
| | | | | | | | 2001-08-01 Damon Chaplin <damon@ximian.com> * cal-client/cal-client.c: removed debugging messages. svn path=/trunk/; revision=11563
* The calendar search bar widget now includes a drop-down menu of availableFederico Mena Quintero2001-08-021-0/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11559
* The Wombat now keeps track of which categories are present in the objectsFederico Mena Quintero2001-08-011-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11536
* Sync from OLS - FedericoFederico Mena Quintero2001-08-011-0/+18
| | | | svn path=/trunk/; revision=11514
* yes, set the end date, but correctly calculated, not by using theRodrigo Moya2001-07-311-0/+7
| | | | | | | | | | | 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 svn path=/trunk/; revision=11510
* don't set the end date for the pasted components, since it will beRodrigo Moya2001-07-311-0/+8
| | | | | | | | | | | | 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 svn path=/trunk/; revision=11509
* started some code to show the currently displayed dates in the folderDamon Chaplin2001-07-311-1/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11494
* added Help button. Though of course it doesn't do anything yet.Damon Chaplin2001-07-311-0/+6
| | | | | | | | | 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. svn path=/trunk/; revision=11489
* OopsJP Rosevear2001-07-311-2/+6
| | | | svn path=/trunk/; revision=11481
* call cal_client_get_free_busy for testing the new methodRodrigo Moya2001-07-301-0/+3
| | | | | | | | | 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 svn path=/trunk/; revision=11474
* implementedRodrigo Moya2001-07-301-0/+4
| | | | | | | | 2001-07-30 Rodrigo Moya <rodrigo@ximian.com> * pcs/cal-backend-file.c (cal_backend_file_get_free_busy): implemented svn path=/trunk/; revision=11472
* recur is always in UTCJP Rosevear2001-07-281-0/+5
| | | | | | | | | 2001-07-27 JP Rosevear <jpr@ximian.com> * conduits/calendar/calendar-conduit.c (local_record_from_comp): recur is always in UTC svn path=/trunk/; revision=11463
* handle timezones everywhere (get_timezone): new function to get a timezoneJP Rosevear2001-07-281-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11461
* initialize to NULL some pointersRodrigo Moya2001-07-281-0/+12
| | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11459
* Constify and set the query sexp on the task pad's model as well.Federico Mena Quintero2001-07-281-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=11457
* New files with a derivative of ESearchBar that generates sexps forFederico Mena Quintero2001-07-281-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=11455
* when an entry has changed, iterate over the elements of the entry and addJP Rosevear2001-07-271-0/+13
| | | | | | | | | | | 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 svn path=/trunk/; revision=11443
* free a list of attendees (meeting_page_fill_widgets): clean up attendeeJP Rosevear2001-07-271-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-26 JP Rosevear <jpr@ximian.com> * 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 svn path=/trunk/; revision=11440
* check that the row passed in is valid. Sometimes we get the "row-selected"Damon Chaplin2001-07-271-0/+12
| | | | | | | | | | | | | | | | | 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. Though there are probably several other similar problems around. svn path=/trunk/; revision=11433
* gracefully handle the lack of a methodJP Rosevear2001-07-261-0/+5
| | | | | | | | | 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 svn path=/trunk/; revision=11419
* check type of component before actually pasting. Deal with VCALENDARRodrigo Moya2001-07-261-0/+12
| | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11418
* used the new print preview icon.Damon Chaplin2001-07-261-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=11416
* see if the address is already in the list of attendees (duplicate_error):JP Rosevear2001-07-261-0/+11
| | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11406
* calculate tmp_tm.tm_wday ourselves. strftime has a habit of crashing ifDamon Chaplin2001-07-251-0/+6
| | | | | | | | | | 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. svn path=/trunk/; revision=11369
* stip the delto and delfrom (popup_delegate_cb): show a delegate dialog andJP Rosevear2001-07-251-0/+16
| | | | | | | | | | | | | | | | | | | | 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 svn path=/trunk/; revision=11364
* fixed the test to see whether we should draw the icons.Damon Chaplin2001-07-241-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=11330
* Add an extra @type arg to the xferFolder and removeFolder methods inEttore Perazzoli2001-07-231-0/+10
| | | | | | | | the ShellComponent interface. Updated the EvolutionShellComponent GTK+ wrapper and all the component accordingly. Get the calendar to use this so it can delete both tasks and calendar folders. svn path=/trunk/; revision=11300
* Add a `user_creatable' property to folder types and make componentsEttore Perazzoli2001-07-221-0/+6
| | | | | | | use it, so that e.g. you cannot create a folder of type "mailstorage" or "vtrash". svn path=/trunk/; revision=11298
* Removed unused prototype.Federico Mena Quintero2001-07-201-0/+8
| | | | | | | | | | | | 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. svn path=/trunk/; revision=11251
* free various data related settings (destroy): use cleanup and unref theJP Rosevear2001-07-201-1/+10
| | | | | | | | | | | | | | 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) svn path=/trunk/; revision=11246
* updated to use new print icon.Damon Chaplin2001-07-201-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=11244
* don't show the time in the EDateEdit widget for adding EXDATEs.Damon Chaplin2001-07-181-0/+9
| | | | | | | | | | | | | 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. svn path=/trunk/; revision=11193
* do not discard drawing icon if mask is NULLRodrigo Moya2001-07-181-0/+8
| | | | | | | | | | | | 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 svn path=/trunk/; revision=11190
* find the next displayable component (get_prev): find the previousJP Rosevear2001-07-181-0/+9
| | | | | | | | | | | | | 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 svn path=/trunk/; revision=11184
* oops, save ChangeLog before committing - FedericoFederico Mena Quintero2001-07-181-1/+2
| | | | svn path=/trunk/; revision=11171
* Really fixes #4380. The previous fix was necessary but not sufficient; itFederico Mena Quintero2001-07-181-0/+18
| | | | | | | | | | | | | | | | | | | | | | | 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. * 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> svn path=/trunk/; revision=11167
* Print a g_message when the list of invited people changes in theJon Trowbridge2001-07-171-0/+9
| | | | | | | | | | | | | 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. svn path=/trunk/; revision=11151
* destroy the dialog widget here. Fixes bug #4198.Damon Chaplin2001-07-171-0/+5
| | | | | | | | | 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. svn path=/trunk/; revision=11149