aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui
Commit message (Collapse)AuthorAgeFilesLines
* use libical-evolution.laDamon Chaplin2001-10-307-30/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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/+31
| | | | | | | | | | 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-4/+4
| | | | | | | | | | 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
* Fix bug #12163.Federico Mena Quintero2001-10-302-21/+2
| | | | | | | | | | | | | | | | 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
* get the management object by idJP Rosevear2001-10-301-1/+0
| | | | | | | | | | | | 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-303-9/+85
| | | | | | | | | | | | | | | | | | | | 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
* 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
* get the tasks directly from the CalendarModel, so we get the filtering &Damon Chaplin2001-10-297-84/+96
| | | | | | | | | | | | | | | | | | | | | 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-285-49/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-282-0/+66
| | | | | | | | | | | | | 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
* More fixing of the license texts.Ettore Perazzoli2001-10-282-18/+18
| | | | svn path=/trunk/; revision=14242
* Delete appointments with empty summaries. Fixes Ximian bug #780.Federico Mena Quintero2001-10-2811-14/+283
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fixing the license text.Ettore Perazzoli2001-10-2880-320/+240
| | | | svn path=/trunk/; revision=14214
* Fixing the license text.Ettore Perazzoli2001-10-2859-59/+0
| | | | svn path=/trunk/; revision=14211
* Update the licensing information to require version 2 of the GPLEttore Perazzoli2001-10-2759-118/+118
| | | | | | (instead of version 2 or any later version). svn path=/trunk/; revision=14190
* convert the formatted date to UTF-8.Damon Chaplin2001-10-2717-83/+261
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* added status bar messagesRodrigo Moya2001-10-273-0/+24
| | | | | | | | | | | | | | | 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-352/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* used functions to get PUBLISH_OPTIONS etc., so we can translate them.Damon Chaplin2001-10-261-23/+120
| | | | | | | | | 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
* subtract 1 from any positive BYSETPOS value, since our array is 0-based.Damon Chaplin2001-10-2612-44/+187
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+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/+4
| | | | | | | | 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-2/+0
| | | | | | | | | | | 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-252-4/+28
| | | | | | | | | 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/+31
| | | | | | | | | 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-99/+88
| | | | | | | * 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-99/+88
| | | | | | | * 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-252-41/+43
| | | | | | | | | | | | | | | | | | | | 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-254-15/+85
| | | | | | | | | | | | | | | | | | | | | | | 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-2511-78/+261
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+4
| | | | | | | | | | | | 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-2/+19
| | | | | | | | | | | 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-242-5/+3
| | | | | | | | | | | | | | | | 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
* added setDefaultTimezone() method.Damon Chaplin2001-10-2316-494/+956
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-6/+7
| | | | | | | | | | 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-2/+2
| | | | | | | | | | | | | | | | | 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-223-17/+18
| | | | | | | | | | | | | | | | 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-224-84/+241
| | | | | | | | | | | | | | | | | | | | | | | | 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-204-12/+29
| | | | | | | | | | | | | | | | | 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-204-6/+24
| | | | | | | | | | | | | | | 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/+80
| | | | | | | | | | | | | 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-197-25/+139
| | | | | | | | | | | | | | | | | | | | | 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-1911-193/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-193-57/+154
| | | | | | | | | | | | | | | | | | | 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-1911-256/+550
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* gui/e-meeting-time-sel.cJP Rosevear2001-10-193-9/+25
| | | | | | | | | | | | | | | | | 2001-10-18 JP Rosevear <jpr@ximian.com> * gui/e-meeting-time-sel.c * gui/e-meeting-time-sel-item.c (e_meeting_time_selector_item_paint_day_top): use 12 or 24 hour settings * gui/e-meeting-time-sel.c: strings for 12 hour setting (e_meeting_time_selector_construct): increase width slightly * gui/e-meeting-time-sel.h: extern the new char array svn path=/trunk/; revision=13759
* util routine to handle calling back (async_close): use aboveJP Rosevear2001-10-181-12/+29
| | | | | | | | | | | 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
* removed Help button. Do we have any others?Damon Chaplin2001-10-161-8/+0
| | | | | | | | | 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-2/+2
| | | | | | | | 2001-10-15 Larry Ewing <lewing@ximian.com> * gui/dialogs/comp-editor.c (set_icon_from_comp): remove warnings. svn path=/trunk/; revision=13686
* call set_icon_from_comp. (set_icon_from_comp): set the window icon fromLarry Ewing2001-10-142-0/+37
| | | | | | | | | | | | | 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/+27
| | | | | | | | | 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-1314-176/+205
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-88/+70
| | | | | | | | | | 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
* Silence warning I missed.Larry Ewing2001-10-111-1/+1
| | | | | | --Larry svn path=/trunk/; revision=13577
* set the default character set to utf-8.Larry Ewing2001-10-111-0/+6
| | | | | | | | | 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
* fix logic checksJP Rosevear2001-10-103-9/+31
| | | | | | | | | | | | | | | | | | | | | 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-105-17/+217
| | | | | | | | | | | | | | | | | | | | | | 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-105-85/+371
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* moved to a common place (cal_backend_file_open): check if "uristr != NULL"Rodrigo Moya2001-10-101-0/+1
| | | | | | | | | | | | | | 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-1/+1
| | | | | | | * 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-043-161/+210
| | | | | | | | | | | | | | | | | | 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-044-39/+28
| | | | | | | | | | | | | | | | | | | | | | | 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-13/+13
| | | | | | | | | 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-032-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | 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-1/+1
| | | | | | | | | | | | | | | | | | | | * 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
* unref the page objects here, instead of in close_dialog(). (This was fixedDamon Chaplin2001-10-021-4/+7
| | | | | | | | | | 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
* don't use gnome_vfs_uri_is_local on URIs created withRodrigo Moya2001-10-021-1/+1
| | | | | | | | | | 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-293-29/+39
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Update pixmap menu paths; /menu/ComponentToolsPlaceholder/Tools ->Ettore Perazzoli2001-09-282-16/+16
| | | | | | | | | * 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 comparison functions for these special cell types. But the date andDamon Chaplin2001-09-2718-176/+396
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-272-39/+87
| | | | | | | | | | | | | | | | 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-2/+2
| | | | | | | | | 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-1/+1
| | | | | | | * gui/Makefile.am (evolution_calendar_LDFLAGS): Add -export-dynamic to make glade custom widgets work on non-Linux. svn path=/trunk/; revision=13150
* new protoJP Rosevear2001-09-261-10/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-266-162/+161
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Rebuge demugging printf() - FedericoFederico Mena Quintero2001-09-261-2/+0
| | | | svn path=/trunk/; revision=13118
* Check that the timeout is not set up before we create a new one; theFederico Mena Quintero2001-09-261-4/+10
| | | | | | | | | | | | 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-267-43/+357
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-7/+38
| | | | | | | | | 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-212-14/+12
| | | | | | | | | 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-212-0/+4
| | | | | | | | | 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-212-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | 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-202-0/+10
| | | | | | | | | | | | 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-204-30/+52
| | | | | | | | | | | | | | | | | | | | | | | | 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-208-106/+222
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* remove silly debug #if 0JP Rosevear2001-09-193-4/+5
| | | | | | | | | | | | | | | 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-1923-789/+7482
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-192-142/+166
| | | | | | | | | | | | 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-195-28/+90
| | | | | | | | | | | | | | | | | | | | | | | 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-194-277/+434
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-187-18/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-183-6/+2
| | | | | | | | | | | 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-7/+15
| | | | | | | | | | | 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-183-188/+95
| | | | | | | | | | | | | | | | | | | | | 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-12/+52
| | | | | | | | | | | 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-172-20/+95
| | | | | | | | | | | | | | | | | | | 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-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+1
| | | | | | | | | <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-152-2/+2
| | | | | | | | | <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-1/+1
| | | | | | | | | 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
* use ical partstat, role, cutypes directlyJP Rosevear2001-09-142-86/+228
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-132-19/+106
| | | | | | | | | | | | | | | | 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-122-17/+143
| | | | | | | | | | | | | | | | | | | | 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-5/+4
| | | | | | | | | | | 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-9/+23
| | | | | | | | | | | | | * 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-112-427/+19
| | | | | | | | | | | | | | | 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-063-38/+23
| | | | | | | | | | | | | | | | 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-057-46/+765
| | | | | | | | | | | | | | | | | | | | 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-0417-163/+403
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-3/+3
| | | | | | | | 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-012-6/+7
| | | | | | | | | | * 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-2/+2
| | | | | | | | | | 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
* Fixes bug #7879, a query may receive an update notification from theFederico Mena Quintero2001-08-292-11/+87
| | | | | | | | | | | | | | | | | | | | 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/+2
| | | | | | | | | | 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-232-69/+144
| | | | | | | | | | | | | | | 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-1/+28
| | | | | | | | | | 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/+1
| | | | | | | * 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-7/+41
| | | | | | | | | | | | | 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-5/+16
| | | | | | | | | 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-1/+1
| | | | | | | | | 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-2210-26/+205
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* use Delete icon in menu, and change to bigger Save icon in toolbar.Damon Chaplin2001-08-201-1/+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-202-3/+4
| | | | | | | | | | 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/+2
| | | | | | | | | 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-1/+3
| | | | | | | | 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/+2
| | | | | | | | 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-202-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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/+1
| | | | | | | | 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-2/+2
| | | | | | | | 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-193-2/+79
| | | | | | | | | | | | | | | | | 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-193-3/+14
| | | | | | | | | | | | 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-1/+1
| | | | | | | | | | 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-1/+11
| | | | | | | | | | | 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-183-0/+53
| | | | | | | | | | | | | | | | | 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
* destroy the addresses (clean_up): don't free the addresses, we need themJP Rosevear2001-08-181-3/+3
| | | | | | | | | 2001-08-17 JP Rosevear <jpr@ximian.com> * gui/e-itip-control.c (destroy): destroy the addresses (clean_up): don't free the addresses, we need them svn path=/trunk/; revision=12164
* Startup assistant stuffIain Holmes2001-08-177-1006/+3
| | | | svn path=/trunk/; revision=12145
* hide the timezone fields for all-day events. We will use DATE values forDamon Chaplin2001-08-1711-20/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+3
| | | | | | | | | | 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-1/+1
| | | | | | | | | | 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-41/+48
| | | | | | | | | | 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-174-4/+84
| | | | | | | | | | | | | | | 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-172-12/+4
| | | | | | | | | | | | | | 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-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-2/+8
| | | | | | | | | | | 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/+101
| | | | | | | | | 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-153-23/+124
| | | | | | | | | | | | | | 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-1511-69/+642
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* *** empty log message ***Federico Mena Quintero2001-08-152-2/+2
| | | | svn path=/trunk/; revision=12030
* Added Tigert's new icons for Prev and Next.Federico Mena Quintero2001-08-151-0/+2
| | | | | | | | | 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-6/+9
| | | | | | | | | | 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-153-141/+144
| | | | | | | | | | | | | | | | | 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-15/+30
| | | | | | | | | | | 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
* rewrite the gui to use gtkhtmlJP Rosevear2001-08-142-348/+376
| | | | | | | | | | 2001-08-13 JP Rosevear <jpr@ximian.com> * gui/e-itip-control.c: rewrite the gui to use gtkhtml * gui/Makefile.am: define the icon dir svn path=/trunk/; revision=11986
* Remove #include <config.h> from here. Same here.Kjartan Maraas2001-08-122-5/+0
| | | | | | | | | 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-122-18/+18
| | | | | | | | | | * 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-122-1/+8
| | | | | | | | | | 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-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-107-27/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-103-1/+12
| | | | | | | | | | | | 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-107-939/+560
| | | | | | | | | | | | | | | | | | | | | | 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-093-0/+39
| | | | | | | | | | | | | | | 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-1/+1
| | | | | | | | | | | 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/+2
| | | | | | | | | 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-1/+1
| | | | | | | | | | 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-095-42/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-093-3/+6
| | | | | | | | | | | | | 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
* Only unref the FIELD_COMPONENT if it is non-NULL. We return a NULL forFederico Mena Quintero2001-08-082-5/+9
| | | | | | | | | | 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-1/+1
| | | | | | | | | 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-0721-188/+497
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-236/+161
| | | | | | | | | | | 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-19/+13
| | | | | | | | | | 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-0413-165/+531
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-120/+0
| | | | | | | | | | | 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-042-1/+5
| | | | | | | | | | | * 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/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-023-3/+20
| | | | | | | | | | | | | | | | | | 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
* The calendar search bar widget now includes a drop-down menu of availableFederico Mena Quintero2001-08-028-339/+412
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Sync from OLS - FedericoFederico Mena Quintero2001-08-015-12/+63
| | | | svn path=/trunk/; revision=11514
* yes, set the end date, but correctly calculated, not by using theRodrigo Moya2001-07-312-1/+25
| | | | | | | | | | | 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-312-18/+1
| | | | | | | | | | | | 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-3114-113/+275
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-312-0/+11
| | | | | | | | | 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
* Mark strings for translationJP Rosevear2001-07-311-67/+64
| | | | | | | | 2001-07-30 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: Mark strings for translation svn path=/trunk/; revision=11480
* initialize to NULL some pointersRodrigo Moya2001-07-284-20/+66
| | | | | | | | | | | | | | | | 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-282-2/+10
| | | | | | | | | 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
* Shut up CVS - FedericoFederico Mena Quintero2001-07-281-0/+4
| | | | svn path=/trunk/; revision=11456
* New files with a derivative of ESearchBar that generates sexps forFederico Mena Quintero2001-07-2814-635/+944
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-175/+248
| | | | | | | | | | | 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
* send the empty string as subject if there is no summaryJP Rosevear2001-07-271-1/+4
| | | | | | | | | 2001-07-26 JP Rosevear <jpr@ximian.com> * gui/itip-utils.c (itip_send_comp): send the empty string as subject if there is no summary svn path=/trunk/; revision=11441
* free a list of attendees (meeting_page_fill_widgets): clean up attendeeJP Rosevear2001-07-277-68/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/+6
| | | | | | | | | | | | | | | | | 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/+2
| | | | | | | | | 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-263-13/+133
| | | | | | | | | | | | | | | | 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-262-5/+5
| | | | | | | | | | | | 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-16/+57
| | | | | | | | | | | | | | | 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/+5
| | | | | | | | | | 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-256-39/+646
| | | | | | | | | | | | | | | | | | | | 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-3/+3
| | | | | | | | | 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-232-2/+74
| | | | | | | | 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-222-4/+4
| | | | | | | 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-202-2/+0
| | | | | | | | | | | | 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-4/+60
| | | | | | | | | | | | | | 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-202-1/+2
| | | | | | | | | 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/+1
| | | | | | | | | | | | | 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-182-2/+2
| | | | | | | | | | | | 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-3/+43
| | | | | | | | | | | | | 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
* Remove leftover ifdefs - FedericoFederico Mena Quintero2001-07-182-12/+1
| | | | svn path=/trunk/; revision=11183
* Really fixes #4380. The previous fix was necessary but not sufficient; itFederico Mena Quintero2001-07-183-5/+15
| | | | | | | | | | | | | | | | | | | | | | | 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-2/+11
| | | | | | | | | | | | | 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
* try to use builtin timezones before getting them from the server. WhenDamon Chaplin2001-07-175-26/+59
| | | | | | | | | | | | | | | | | | | | | | 2001-07-16 Damon Chaplin <damon@ximian.com> * gui/dialogs/task-page.c (task_page_fill_widgets): * gui/dialogs/event-page.c (event_page_fill_widgets): try to use builtin timezones before getting them from the server. When creating new events/tasks the timezones may not be on the server. * gui/dialogs/event-page.c (event_page_fill_widgets): for all-day events we subtract a day from the end date rather than add it. * gui/dialogs/e-timezone-dialog.c (on_map_leave): ignore the event if it isn't a GDK_CROSSING_NORMAL event. For some reason we are getting leave events when the button is pressed, which meant that selecting timezones in the map didn't work. * gui/dialogs/comp-editor-util.c (comp_editor_dates): * gui/print.c (print_date_label): only free icaltimetype if not NULL. svn path=/trunk/; revision=11144
* Removed unused headers - FedericoFederico Mena Quintero2001-07-171-8/+0
| | | | svn path=/trunk/; revision=11139
* Added missing underlined shortcuts.Taylor Hayward2001-07-136-15/+21
| | | | | | | | | | | | | | 2001-07-12 Taylor Hayward <taylorhayward@yahoo.com> * gui/goto-dialog.glade: * gui/meeting-mockup.glade: * gui/alarm-notifyålarm-notify.glade: * gui/dialogs/alarm-page.glade: * gui/dialogs/meeting-page.glade: * gui/dialogs/recurrence-page.glade: Added missing underlined shortcuts. svn path=/trunk/; revision=11067
* new protoJP Rosevear2001-07-132-12/+2
| | | | | | | | | | | | | | | | | 2001-07-12 JP Rosevear <jpr@ximian.com> * cal-util/cal-util.h: new proto * cal-util/cal-util.c (cal_util_new_top_level): standard place to get your top level calendar component * pcs/cal-backend-file.c (create_cal): use it * gui/itip-utils.c (itip_send_comp): ditto * gui/e-calendar-table.c (e_calendar_table_copy_clipboard): ditto svn path=/trunk/; revision=11053
* fix typo breaking compilationJP Rosevear2001-07-136-15/+30
| | | | | | | | | | | | | | | 2001-07-12 JP Rosevear <jpr@ximian.com> * gui/e-calendar-table.c (e_calendar_table_copy_clipboard): fix typo breaking compilation * gui/dialogs/meeting-page.c: fix include * gui/dialogs/Makefile.am: build select names idl here * gui/Makefile.am: remove select names compilation from here svn path=/trunk/; revision=11050
* guard against infinite loops with the updating boolean, fixes 4270JP Rosevear2001-07-131-0/+7
| | | | | | | | | 2001-07-12 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-details-page.c (task_details_page_set_dates): guard against infinite loops with the updating boolean, fixes 4270 svn path=/trunk/; revision=11045
* added support for multiple selections in cut/copy/paste. Also, it's nowRodrigo Moya2001-07-132-21/+39
| | | | | | | | | | 2001-07-12 Rodrigo Moya <rodrigo@ximian.com> * gui/e-calendar-table.c: added support for multiple selections in cut/copy/paste. Also, it's now ready for the s/update_object/update_objects change (I think) svn path=/trunk/; revision=11043
* renamed updateObject to updateObjects and removed the UID argument, sinceDamon Chaplin2001-07-124-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-11 Damon Chaplin <damon@ximian.com> * idl/evolution-calendar.idl: renamed updateObject to updateObjects and removed the UID argument, since it can add/update multiple objects at once. (It can't yet, but it will!) * pcs/cal.c: * pcs/cal-backend.[hc]: * pcs/cal-backend-file.c: renamed update_object to update_objects and got rid of the UID arg. * cal-client/cal-client.c (cal_client_update_objects): new function to add/update multiple objects in one go, i.e for iTIP and for importing calendars. * gui/print.c (print_date_label): fixed type bug. * gui/e-week-view.[hc]: * gui/e-week-view-event-item.c: draw the timezone icons if the event's DTSTART or DTEND is in a different timezone to the current one. Note that we may want to change this so it compares the UTC offsets rather than the TZIDs, since currently it will draw the icons for all events coming from iTIP requests from other clients. svn path=/trunk/; revision=11027
* Fixes bug #4380 as well as some leftovers from the days of struct tm andFederico Mena Quintero2001-07-129-34/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-11 Federico Mena Quintero <federico@ximian.com> Fixes bug #4380 as well as some leftovers from the days of struct tm and some uninitialized values. * gui/gnome-cal.c (gnome_calendar_on_date_navigator_selection_changed): Initialize the icaltimetype structures completely. (gnome_calendar_init): Do not reset priv->zone to NULL here, since it was set by gnome_calendar_update_config_settings() from setup_widgets(). * gui/calendar-model.c (set_completed): Do not set is_daylight. * gui/e-day-view.c (e_day_view_convert_grid_position_to_time): Likewise. * gui/e-week-view.c (e_week_view_set_timezone): Likewise. * cal-util/cal-recur.c (generate_instances_for_chunk): Likewise, and initialize start_tt and end_tt completely. * cal-util/timeutil.c (time_year_begin_with_zone): Likewise. (time_month_begin_with_zone): Likewise. (time_week_begin_with_zone): Likewise. (time_day_begin_with_zone): Likewise. (time_day_end_with_zone): Likewise. (time_from_isodate): Likewise. * gui/dialogs/task-page.c (task_page_fill_component): Initialize icaltime before using it. * gui/dialogs/event-page.c (event_page_fill_component): Likewise. * gui/dialogs/recurrence-page.c (simple_recur_to_comp): Removed an unused icaltimetype. * gui/dialogs/task-details-page.c (task_details_page_fill_component): Initialize icaltime before using it. svn path=/trunk/; revision=11024
* fix the calendar not exiting with a gross hack because i don't have timeJP Rosevear2001-07-122-0/+36
| | | | | | | | | | 2001-07-11 JP Rosevear <jpr@ximian.com> * gui/component-factory.c: fix the calendar not exiting with a gross hack because i don't have time to fix the ref counting right now svn path=/trunk/; revision=11022
* be careful about adding and stripping MAILTO:'s properlyJP Rosevear2001-07-1210-77/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-11 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: be careful about adding and stripping MAILTO:'s properly * gui/dialogs/meeting-page.etspec: add missing columns * gui/itip-utils.c (itip_strip_mailto): point to the real start of the email address * gui/itip-utils.h: add proto * gui/itip-control-factory.c: get rid of the my address property * gui/e-itip-control.c: use the users real identity to figure out which attendee they are (find_my_address): figure out who the user is among the attendees * gui/e-itip-control.h: remove protos * gui/dialogs/Makefile.am: extra dist etspecs * gui/Makefile.am: ditto svn path=/trunk/; revision=11020
* Added a hack to get the last string translated since xml-i18n-toolsKjartan Maraas2001-07-111-0/+9
| | | | | | | | | 2001-07-11 Kjartan Maraas <kmaraas@gnome.org> * gui/e-calendar-table.c: Added a hack to get the last string translated since xml-i18n-tools doesn't recognize svn path=/trunk/; revision=11000
* Move this higher so that Makefile properly depends on us. Fixes distcheck.Peter Williams2001-07-111-1/+2
| | | | | | | | | 2001-07-10 Peter Williams <peterw@ximian.com> * gui/Makefile.am (BUILT_SOURCES): Move this higher so that Makefile properly depends on us. Fixes distcheck. svn path=/trunk/; revision=10998
* [Fix bug #4389: ETableSpecification still in .c file]Jason Leach2001-07-115-93/+36
| | | | | | | | | | | | | | | | | | | | | | 2001-07-11 Jason Leach <jleach@ximian.com> [Fix bug #4389: ETableSpecification still in .c file] * gui/e-calendar-table.etspec: New file containing the spec that was in e-calendar-table.c as a big string. * gui/e-calendar-table.c (e_calendar_table_init): Use the spec file instead of a string. (e_calendar_table_get_spec): Removed this function, we don't need it anymore. * gui/e-tasks.c (e_tasks_setup_menus): Don't load from string, from file instead. * gui/Makefile.am: Necessary changes to get the new .etspec file installed. svn path=/trunk/; revision=10986
* [Fix bug #4388: ETableSpecification still in .c file]Jason Leach2001-07-113-46/+27
| | | | | | | | | | | | | | | | | 2001-07-10 Jason Leach <jleach@ximian.com> [Fix bug #4388: ETableSpecification still in .c file] * gui/dialogs/meeting-page.etspec: New file containing the spec that was previously in meeting-page.c as a string. * gui/dialogs/meeting-page.c: One line change to get it to use this spec file instead of a string. * gui/dialogs/Makefile.am: Necessary changes to get the new meeting-page.etspec installed. svn path=/trunk/; revision=10985
* more timezone updates. I'm pretty much done with the calendar code now,Damon Chaplin2001-07-1112-309/+285
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-10 Damon Chaplin <damon@ximian.com> * gui/calendar-model.c: * gui/e-calendar-table.c: * gui/e-day-view-main-item.c: * gui/e-day-view-top-item.c: * gui/e-day-view.[hc]: * gui/e-week-view.c: * gui/gnome-cal.c: * gui/print.c: * gui/dialogs/cal-prefs-dialog.c: * gui/dialogs/comp-editor-util.c: * gui/dialogs/event-page.c: * pcs/cal-backend-file.c: * pcs/query.c: * cal-util/cal-component.[hc]: * cal-util/cal-recur.c: * cal-util/timeutil.[hc]: * cal-client/cal-client.[hc]: more timezone updates. I'm pretty much done with the calendar code now, except for alarms and conduits, which Federico and JP know more about. And there are a couple of other minor things to fix. But it is still pretty buggy. svn path=/trunk/; revision=10984
* Add popup support so you can delete users from the listJP Rosevear2001-07-112-8/+133
| | | | | | | | | | | 2001-07-10 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: Add popup support so you can delete users from the list * gui/dialogs/comp-editor.c (setup_widgets): fix typo svn path=/trunk/; revision=10982
* Handle the different alarm actions. (display_notification): Do the alarmFederico Mena Quintero2001-07-114-95/+131
| | | | | | | | | | | | | | | 2001-07-10 Federico Mena Quintero <federico@ximian.com> * gui/alarm-notify/alarm-queue.c (alarm_trigger_cb): Handle the different alarm actions. (display_notification): Do the alarm notification dialog here. * gui/alarm-notify/alarm-notify-dialog.c (make_heading): Take in a CalComponentVType, not a whole component. (alarm_notify_dialog): Take in a CalComponentVType and the final message instead of generating it ourselves. svn path=/trunk/; revision=10978
* Pass the parent vCalendar component as the timezone closure ofFederico Mena Quintero2001-07-112-5/+14
| | | | | | | | | | | | | | | 2001-07-09 Federico Mena Quintero <federico@ximian.com> * pcs/cal-backend-file.c (generate_alarms_for_comp): Pass the parent vCalendar component as the timezone closure of cal_recur_generate_instances(). * gui/dialogs/alarm-page.c (get_alarm_string): Make the string consistent with the option menu text. (get_alarm_string): Removed extra spaces from the last part of the alarm string. svn path=/trunk/; revision=10961
* Use e_utf8_from_gtk_event_key() so that we can input utf8 text properly.Federico Mena Quintero2001-07-103-13/+19
| | | | | | | | | | | | | | | | | | | | | | | | 2001-07-09 Federico Mena Quintero <federico@ximian.com> * gui/e-day-view.c (e_day_view_key_press): Use e_utf8_from_gtk_event_key() so that we can input utf8 text properly. (e_day_view_cut_clipboard): Constify. (e_day_view_on_cut): Constify. (e_day_view_reshape_long_event): Remove unused variable. * gui/e-week-view.c (e_week_view_key_press): Use e_utf8_from_gtk_event_key() so that we can input utf8 text properly. (e_week_view_cut_clipboard): Constify. (e_week_view_on_cut): Constify. * cal-client/cal-client.c (cal_client_resolve_tzid_cb): Fix the prototype so that this matches CalRecurResolveTimezoneFn. Also renamed it so that it is clear that it is supposed to be a callback. svn path=/trunk/; revision=10942
* connect to the entry not the comboJP Rosevear2001-07-074-9/+58
| | | | | | | | | | | | | | | | | | | | 2001-07-06 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (init_widgets): connect to the entry not the combo * gui/dialogs/event-editor.c (set_menu_sens): set menu sensitivities based on whether or not the meeting page is shown (event_editor_init): call above (event_editor_edit_comp): ditto (schedule_meeting_cmd): ditto * gui/dialogs/comp-editor.h: new proto * gui/dialogs/comp-editor.c (comp_editor_set_ui_prop): new function to allow for set of ui props (esp. "sensitive") svn path=/trunk/; revision=10861
* actually clear some widgets and hide/show widgets in the default setupJP Rosevear2001-07-076-119/+484
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-06 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (clear_widgets): actually clear some widgets and hide/show widgets in the default setup (meeting_page_destroy): destroy the address lists (meeting_page_fill_widgets): allow the user to select among their identities as a new organizer, or show the existing organizer as label (meeting_page_fill_component): set the "MAILTO:" bit of the organizer to match spec, set CN properly if we know it (get_widgets): load new widgets (other_clicked_cb): handle "Other Organizer" click (change_clicked_cb): handle "Change Organizer" click (init_widgets): listen for clicks on new buttons * gui/dialogs/comp-editor.c (comp_editor_remove_page): remove the page from our internal list and unref it * gui/itip-utils.c (itip_addresses_get): get the configure mail identities (itip_addresses_free): free a list of identities returned by itip_addresses_get * gui/itip-utils.h: remove obsolete protos, and new protos * gui/gnome-cal.html: Remove ancient file svn path=/trunk/; revision=10856
* Fixes bug #4018 and what would be the analogous bugs for the otherFederico Mena Quintero2001-07-059-1/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-04 Federico Mena Quintero <federico@ximian.com> Fixes bug #4018 and what would be the analogous bugs for the other component editors. * gui/dialogs/comp-editor-page.h (CompEditorPageClass): New virtual method "::focus_main_widget()". * gui/dialogs/comp-editor-page.c (comp_editor_page_focus_main_widget): New function. * gui/dialogs/comp-editor.c (comp_editor_append_page): If we are inserting the main page, ask it to focus its main widget. * gui/dialogs/alarm-page.c (alarm_page_focus_main_widget): Implemented. * gui/dialogs/event-page.c (event_page_focus_main_widget): Implemented. #include "e-util/e-categories-config.h". * gui/dialogs/meeting-page.c (meeting_page_focus_main_widget): Implemented. * gui/dialogs/recurrence-page.c (recurrence_page_focus_main_widget): Implemented. * gui/dialogs/task-details-page.c (task_details_page_focus_main_widget): Implemented. * gui/dialogs/task-page.c (task_page_focus_main_widget): Implemented. svn path=/trunk/; revision=10784
* New function. (calendar_control_activate): Clear the folder bar label; weFederico Mena Quintero2001-07-051-0/+51
| | | | | | | | | | 2001-07-04 Federico Mena Quintero <federico@ximian.com> * gui/calendar-commands.c (clear_folder_bar_label): New function. (calendar_control_activate): Clear the folder bar label; we really don't have anything interesting to display. svn path=/trunk/; revision=10782
* Add new columns for information specification (meeting_page_destroy): saveJP Rosevear2001-07-045-16/+64
| | | | | | | | | | | | | | | | | | | 2001-07-03 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: Add new columns for information specification (meeting_page_destroy): save the table state (build_etable): load new table state * gui/dialogs/task-editor.c (task_editor_destroy): unref pages * gui/dialogs/event-editor.c (event_editor_destroy): unref pages * gui/dialogs/comp-editor.c (setup_widgets): kill warning (comp_editor_append_page): ref page passed in (close_dialog): unref pages svn path=/trunk/; revision=10777
* use bonobo-conf everywhereDietmar Maurer2001-07-041-100/+143
| | | | | | | | 2001-07-03 Dietmar Maurer <dietmar@ximian.com> * *: use bonobo-conf everywhere svn path=/trunk/; revision=10760
* fix warning, and added some debug messages.Damon Chaplin2001-07-033-2/+14
| | | | | | | | | | | | | 2001-07-03 Damon Chaplin <damon@ximian.com> * gui/e-day-view.c (query_obj_updated_cb): fix warning, and added some debug messages. * gui/dialogs/comp-editor-util.c (write_label_piece): * gui/e-day-view-top-item.c (e_day_view_top_item_draw): call mktime() to set the weekday, though this is a temporary fix. svn path=/trunk/; revision=10737
* added virtual method to get a VTIMEZONE component given a TZID. We needDamon Chaplin2001-07-032-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-03 Damon Chaplin <damon@ximian.com> * pcs/cal-backend.[hc]: added virtual method to get a VTIMEZONE component given a TZID. We need this to resolve TZIDs when expanding an event using cal_recur_generate_instances() in query.c. * pcs/cal-backend-file.c (cal_backend_file_get_timezone): implemented virtual method. (cal_backend_file_update_object): fixed bug, kind -> child_kind. * pcs/query.c (func_occur_in_time_range): use the virtual method for resolving TZIDs. The other way didn't work anyway, as we didn't have the entire VCALENDAR with VTIMEZONEs in it. * gui/dialogs/recurrence-page.c (init_widgets): (make_ending_until_special): moved the call to e_date_edit_set_get_time_callback() from init_widgets to make_ending_until_special(), since that is where the widget gets created. * gui/e-timezone-entry.c (e_timezone_entry_set_timezone): handle zone being NULL. svn path=/trunk/; revision=10732
* New files with the alarm options dialog; this configures theFederico Mena Quintero2001-07-036-4/+1051
| | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-options.[ch]: New files with the alarm options dialog; this configures the repeat/duration properties and the options specific to each alarm action type. * gui/dialogs/alarm-page.c (AlarmPagePrivate): Added the alarm options button. Also, keep an alarm structure which we are editing and an alarm options dialog. (init_widgets): Connect to the options button. (add_clicked_cb): Clone the component we are editing instead of creating a new one so that we preserve the data from the alarm options dialog. (button_options_clicked_cb): Pop up the alarm options dialog. * cal-util/cal-component.c (cal_component_alarm_new): Doh, initialize the other fields in the new alarm. svn path=/trunk/; revision=10731
* cal-client/cal-client.[hc] cal-util/cal-component.cDamon Chaplin2001-07-0334-494/+1422
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-03 Damon Chaplin <damon@ximian.com> * cal-client/cal-client.[hc] * cal-util/cal-component.c * cal-util/cal-recur.[hc] * cal-util/test-recur.c * cal-util/timeutil.c * gui/calendar-config.c * gui/calendar-model.[hc] * gui/comp-util.[hc] * gui/e-calendar-table.c * gui/e-day-view-main-item.c * gui/e-day-view-top-item.c * gui/e-day-view.[hc] * gui/e-itip-control.c * gui/e-timezone-entry.[hc] * gui/e-week-view.[hc] * gui/gnome-cal.[hc] * gui/goto.c * gui/tag-calendar.[hc] * gui/dialogs/cal-prefs-dialog.c * gui/dialogs/comp-editor-page.[hc] * gui/dialogs/comp-editor-util.[hc] * gui/dialogs/comp-editor.c * gui/dialogs/e-timezone-dialog.[hc] * gui/dialogs/event-page.c * gui/dialogs/meeting-page.c * gui/dialogs/recurrence-page.c * gui/dialogs/task-details-page.c * gui/dialogs/task-details-page.glade * gui/dialogs/task-page.c * idl/evolution-calendar.idl * pcs/cal-backend-file.c * pcs/cal-backend.c * pcs/cal-backend.h * pcs/cal.c * pcs/query.c: timezone changes everywhere. There's still quite a few things to update, and its not working well at present. svn path=/trunk/; revision=10729
* publish free/busy information for the currently viewed time rangeJP Rosevear2001-07-032-8/+113
| | | | | | | | | 2001-07-02 JP Rosevear <jpr@ximian.com> * gui/calendar-commands.c (publish_freebusy_cmd): publish free/busy information for the currently viewed time range svn path=/trunk/; revision=10723
* Made evolution depend on bonobo-conf 0.2.Christopher James Lahey2001-07-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Christopher James Lahey <clahey@ximian.com> * configure.in: Made evolution depend on bonobo-conf 0.2. From calendar/ChangeLog: 2001-07-02 Christopher James Lahey <clahey@ximian.com> * gui/Makefile.am (INCLUDES): Added $(BONOBO_CONF_CFLAGS). (evolution_calendar_LDADD): Added $(BONOBO_CONF_LIBS). From composer/ChangeLog: 2001-07-02 Christopher James Lahey <clahey@ximian.com> * Makefile.am (INCLUDES): Added $(BONOBO_CONF_CFLAGS). From shell/ChangeLog: 2001-07-02 Christopher James Lahey <clahey@ximian.com> * Makefile.am (INCLUDES): Added $(BONOBO_CONF_CFLAGS). (evolution_LDADD): Added $(BONOBO_CONF_LIBS). svn path=/trunk/; revision=10718
* Support for repeat/duration properties in alarm components.Federico Mena Quintero2001-07-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Federico Mena Quintero <federico@ximian.com> Support for repeat/duration properties in alarm components. * cal-util/cal-component.h (CalAlarmRepeat): New structure that pairs the repeat/duration values of an alarm component, which must be set both together or not set at all. * cal-util/cal-component.c (CalComponentAlarm): Added fields for the repeat and duration properties. (scan_alarm_property): Scan the DURATION and REPEAT properties. (make_alarm): Nullify/initialize all the fields in the alarm. (cal_component_alarm_get_repeat): New function. (cal_component_alarm_set_repeat): New function. * gui/dialogs/alarm-page.glade: Changed the label of display alarms from "Show a dialog" to "Display a message". svn path=/trunk/; revision=10706
* fill in delegated from fieldJP Rosevear2001-07-032-5/+6
| | | | | | | | | 2001-07-02 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-details-page.c (task_details_page_fill_widgets): fill in delegated from field svn path=/trunk/; revision=10701
* use the new self-contained e_categories_config_open_dialog_for_entry()Rodrigo Moya2001-07-036-47/+16
| | | | | | | | | | | | | | | | | 2001-07-02 Rodrigo Moya <rodrigo@ximian.com> * gui/dialogs/task-page.c (categories_clicked_cb): * gui/dialogs/event-page.c (categories_clicked_cb): use the new self-contained e_categories_config_open_dialog_for_entry() function * gui/e-week-view-event-item.c (e_week_view_item_draw_icons): * gui/e-day-view-top-item.c (e_day_view_reshape_long_event): (e_day_view_reshape_day_event): ditto * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): use e_categories_config_get_icon_for() to retrieve the icon associated with each category svn path=/trunk/; revision=10699
* implementJP Rosevear2001-07-038-33/+373
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-02 JP Rosevear <jpr@ximian.com> * gui/e-itip-control.c (send_freebusy): implement * cal-util/cal-component.c (set_attendee_list): add the delto property rather than the delfrom property twice * gui/dialogs/task-editor.c (task_editor_edit_comp): show delegation info if appropriate (delegate_task_cmd): delegate command (cancel_task_cmd): cancel command (refresh_task_cmd): refresh command * gui/dialogs/task-details-page.c: Load new widgets (task_details_page_show_delegation): show/hide delegation info widgets * gui/dialogs/task-details-page.h: new proto * gui/dialogs/event-editor.c (event_editor_edit_comp): free attendee list when finished * gui/dialogs/comp-editor.c (setup_widgets): explicitly show the widgets, update pixmaps after the verbs have been added (comp_editor_focus): don't do a show all svn path=/trunk/; revision=10697
* Fixes bug #1406.Federico Mena Quintero2001-07-016-444/+290
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-30 Federico Mena Quintero <federico@ximian.com> Fixes bug #1406. * gui/calendar-config.c (config_read): Handle the options for the task list colors. (calendar_config_write): Ditto. (calendar_config_get_tasks_due_today_color): New function. (calendar_config_set_tasks_due_today_color): New function. (calendar_config_get_tasks_overdue_color): New function. (calendar_config_set_tasks_overdue_color): New function. (calendar_config_configure_e_calendar_table): Use e_table_model_changed() for the colors. * gui/dialogs/cal-prefs-dialog.glade: Updated the options for the task list and alarms. * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): Update the task list settings. (cal_prefs_dialog_update_config): Ditto. * gui/calendar-model.c (get_color): Deal with tasks for today as well as overdue tasks. Make it cleaner, even though we have to duplicate a chunk of is_overdue(). * gui/calendar-commands.c (preferences_cmd): Renamed from properties_cmd(). svn path=/trunk/; revision=10648
* draw icons per categoryRodrigo Moya2001-07-015-0/+117
| | | | | | | | | | | | | | | | | | | | | | 2001-07-01 Rodrigo Moya <rodrigo@ximian.com> * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): draw icons per category * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): draw icons per category * gui/e-day-view.c (e_day_view_reshape_long_event): (e_day_view_reshape_day_event): calculate space for category icons * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): draw icons per category * gui/e-week-view.c (e_week_view_reshape_event_span): calculate space for category icons svn path=/trunk/; revision=10646
* fixed clibpoard command activation from the menu entries. CTRL-C andRodrigo Moya2001-07-012-9/+84
| | | | | | | | | | | | | 2001-07-01 Rodrigo Moya <rodrigo@ximian.com> * gui/e-day-view.c (e_day_view_*_clipboard): fixed clibpoard command activation from the menu entries. CTRL-C and CTRL-X don't work though, since it seems the key presses are being captured by the text item gui/e-week-view.c (e_week_view_*_clipboard): ditto svn path=/trunk/; revision=10641