aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/comp-util.c
Commit message (Collapse)AuthorAgeFilesLines
* Bug #611165 - Use memo start date from a calendar view, if activeMilan Crha2010-06-241-0/+53
|
* Giant leap towards GSEAL compliance.Matthew Barnes2010-04-081-5/+12
|
* Make authentication functionality availableGustavo Noronha Silva2010-01-271-1/+1
| | | | | | | This involves renaming the calendar auth-related functions to have a prefix, and shipping the headers. Part of https://bugzilla.gnome.org/show_bug.cgi?id=608175
* Bug #499322 - Use extension for "Save as" suggested file nameMilan Crha2009-12-101-0/+19
|
* Bug #300567 - Calendar drawing optimizationsMilan Crha2009-07-301-9/+17
|
* Fix excessive whitespace.Matthew Barnes2009-07-131-2/+0
|
* Bug #252296 - Do not preset alarm for all day eventsMilan Crha2009-07-031-4/+4
|
* Whitespace cleanup.Matthew Barnes2009-05-291-1/+1
|
* Prefer GLib basic types over C types.Matthew Barnes2009-05-291-22/+22
|
* Remove trailing whitespace, again.Matthew Barnes2009-05-291-4/+4
|
* Bug #579779 - No crash when updating repeating eventMilan Crha2009-05-211-2/+1
|
* Fixes #561312Chenthill Palanisamy2009-04-131-0/+59
| | | | | | | | | | | | | | | | | 2009-04-13 Chenthill Palanisamy <pchenthill@novell.com> Fixes #561312 * calendar/gui/comp-util.c: * calendar/gui/comp-util.h: Added a new function to sanitize master recurrence event before modifying all instances. * calendar/gui/dialogs/comp-editor.c: * calendar/gui/e-day-view.c: * calendar/gui/e-week-view.c: Used the new util api. Do not invoke recurrence dialog while modifying detached instances. svn path=/trunk/; revision=37518
* ** Fix for bug #318003Milan Crha2009-01-271-0/+189
| | | | | | | | | | | | | | | | | | | | | | | | | | 2009-01-27 Milan Crha <mcrha@redhat.com> ** Fix for bug #318003 * gui/memos-component.c: (selector_tree_data_dropped): * gui/tasks-component.c: (selector_tree_data_dropped): * gui/calendar-component.c: (selector_tree_data_dropped), (create_component_view): * gui/comp-util.h: (cal_comp_process_source_list_drop): * gui/comp-util.c: (update_single_object), (update_objects), (cal_comp_process_source_list_drop): Support move of the event in day view when dropped over the source list. Use the same function for events/tasks/memos. * gui/e-day-view.c: (e_day_view_on_drag_data_get): Encode string data same as memos and tasks do, with a source UID. * gui/e-calendar-table.c: (e_calendar_table_copy_clipboard): * gui/e-memo-table.c: (e_memo_table_copy_clipboard): Removed inappropriate comments. svn path=/trunk/; revision=37140
* ** Fix for bug #245156Milan Crha2009-01-151-0/+77
| | | | | | | | | | | | | | | | | | | | | | 2009-01-15 Milan Crha <mcrha@redhat.com> ** Fix for bug #245156 * gui/e-day-view.c: (e_day_view_finish_long_event_resize), (e_day_view_finish_resize), (e_day_view_change_event_time), (e_day_view_on_top_canvas_drag_data_received), (e_day_view_on_main_canvas_drag_data_received): * gui/e-week-view.c: (e_week_view_change_event_time): * gui/e-calendar-view.c: (on_unrecur_appointment): Keep old timezone for dtstart/dtend when changing it. * gui/comp-util.h: (cal_comp_set_dtstart_with_oldzone), (cal_comp_set_dtend_with_oldzone): * gui/comp-util.c: (cal_comp_set_dtstart_with_oldzone), (cal_comp_set_dtend_with_oldzone), (datetime_to_zone): Helper functions to make it easier. svn path=/trunk/; revision=37079
* Change License from GPL to LGPLSankarasivasubramanian Pasupathilingam2008-09-241-13/+16
| | | | svn path=/trunk/; revision=36443
* updated novell copyright notices (left others alone)Jeffrey Stedfast2008-06-211-2/+2
| | | | svn path=/trunk/; revision=35665
* ** Fix for bug #536813Milan Crha2008-06-091-0/+23
| | | | | | | | | | | | | | | | | | 2008-06-09 Milan Crha <mcrha@redhat.com> ** Fix for bug #536813 * gui/comp-util.h: (is_icalcomp_on_the_server): * gui/comp-util.c: (is_icalcomp_on_the_server): Similar helper function as cal_comp_is_on_server only the parameter is icalcomponent. * gui/e-week-view-event-item.c: (e_week_view_event_item_double_click): * gui/e-week-view.c: (e_week_view_on_text_item_event): Do not start to edit the event on the double click if the event is not on the server yet. Storing the event can cause the renumbering events so the result can be that the edited event would be different. svn path=/trunk/; revision=35618
* Fixes #516498Chenthill Palanisamy2008-02-251-1/+4
| | | | | | | | | | | | | | | 2008-02-25 Chenthill Palanisamy <pchenthill@novell.com> Fixes #516498 * gui/comp-util.c: (cal_comp_is_on_server): * gui/e-calendar-view.c: (e_calendar_view_cut_clipboard), (delete_event), (e_calendar_view_delete_selected_occurrence): * gui/e-day-view.c: (process_component): * gui/e-week-view.c: (process_component): Free memory returned by e_cal_component_get_recurid_as_string. svn path=/trunk/; revision=35086
* ** Remove trailing whitespace from source code.Matthew Barnes2007-11-151-19/+19
| | | | | | | | | 2007-11-14 Matthew Barnes <mbarnes@redhat.com> ** Remove trailing whitespace from source code. svn path=/trunk/; revision=34537
* ** Fix for bug #315101Milan Crha2007-11-051-0/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-11-05 Milan Crha <mcrha@redhat.com> ** Fix for bug #315101 * drag and drop to other source for multiselect * gui/comp-util.h: * gui/comp-util.c: (cal_comp_selection_set_string_list), (cal_comp_selection_get_string_list): Two new helper functions to set and get list of strings into GtkSelectionData. * gui/e-tasks.c: (get_selected_components_cb), (do_for_selected_components), (obtain_list_of_components), (table_drag_data_get): * gui/e-memos.c: (get_selected_components_cb), (do_for_selected_components), (obtain_list_of_components), (table_drag_data_get): Pass list of selected components as data for drag and drop instead of focused component from the list. * gui/e-tasks.c: (table_drag_data_delete): * gui/e-memos.c: (table_drag_data_delete): Obsolete now. * gui/tasks-component.c: (selector_tree_drag_data_received): * gui/memos-component.c: (selector_tree_drag_data_received): Receiving list of components, so made changes here to reflect it. svn path=/trunk/; revision=34496
* ** Fix for bug #455862 Plugged memory leaks.Hiroyuki Ikezoe2007-10-071-0/+38
| | | | | | | | | | | | | | | | | | | 2007-10-07 Hiroyuki Ikezoe <poincare@ikezoe.net> ** Fix for bug #455862 Plugged memory leaks. * gui/comp-util.c: * gui/comp-util.h:(cal_comp_util_get_n_icons): A new function to get the number of icons owned by ECalComponent. * gui/e-day-view-main-item.c: * gui/e-day-view.c: * gui/e-week-view-event-item.c: * gui/e-week-view.c: Use cal_comp_util_get_n_icons. svn path=/trunk/; revision=34359
* ** Fix for bug #471791 (Move away from asserts to g_ret*)Srinivasa Ragavan2007-09-031-1/+1
| | | | svn path=/trunk/; revision=34156
* Update FSF address in header comments (#469886). Patch from TobiasMatthew Barnes2007-09-021-1/+1
| | | | | | | | | | 2007-09-02 Matthew Barnes <mbarnes@redhat.com> * Update FSF address in header comments (#469886). Patch from Tobias Mueller. svn path=/trunk/; revision=34151
* Added a small comment.Chenthill Palanisamy2006-08-231-1/+1
| | | | svn path=/trunk/; revision=32644
* Fixes #341691Chenthill Palanisamy2006-08-231-2/+7
| | | | svn path=/trunk/; revision=32643
* Fixes #162005Chenthill Palanisamy2006-04-061-2/+3
| | | | svn path=/trunk/; revision=31776
* Memo Component - submitted by Nathan Owens <pianocomp81@yahoo.com>Harish Krishnaswamy2005-10-191-0/+19
| | | | | | | | 2005-10-19 Harish Krishnaswamy <kharish@novell.com> Memo Component - submitted by Nathan Owens <pianocomp81@yahoo.com> svn path=/trunk/; revision=30537
* Fixes #69272JP Rosevear2005-03-241-14/+6
| | | | | | | | | | | | | | 2005-03-24 JP Rosevear <jpr@novell.com> Fixes #69272 * gui/comp-util.c (cal_comp_event_new_with_defaults): ensure we always return a valid comp * gui/comp-util.c (cal_comp_task_new_with_defaults): ditto; fix obvious pasto that would cause a leak svn path=/trunk/; revision=29107
* Fixes #57142Rodrigo Moya2004-07-161-2/+0
| | | | | | | | | | | | | | | | | | | 2004-07-15 Rodrigo Moya <rodrigo@novell.com> Fixes #57142 * gui/e-day-view.c (e_day_view_on_editing_stopped): commit the sequence on the object before sending it to the backend. (e_day_view_add_event): s/abort_sequence/commit_sequence. * gui/e-week-view.c (e_week_view_on_editing_stopped): commit the sequence here also. (e_week_view_add_event): s/abort_sequence/commit_sequence. * gui/comp-util.c (cal_comp_event_new_with_current_time): don't commit the sequence here. svn path=/trunk/; revision=26665
* Rename e-cal-view to e-calendar-view and fix includesJP Rosevear2004-03-161-1/+0
| | | | | | | | | | | | | | | 2004-03-15 JP Rosevear <jpr@ximian.com> * Rename e-cal-view to e-calendar-view and fix includes * gui/dialogs/comp-editor-page.c (comp_editor_page_fill_widgets): pre-conditions should return FALS * gui/e-cal-model.c (copy_ecdv): return the new struct * gui/Makefile.am: build renamed files svn path=/trunk/; revision=25075
* Convert the calendar_config_get_timezone andJP Rosevear2004-02-061-4/+1
| | | | | | | | | | | 2004-02-05 JP Rosevear <jpr@ximian.com> * Convert the calendar_config_get_timezone and icaltimezone_get_builtin_timezone pair to just calendar_config_get_icaltimezone, this also guarantees we will have some timezone (even if its just UTC) svn path=/trunk/; revision=24642
* fixes #23281, some refactoring and list view get_selected_time_rangeRadek Doulik2004-01-151-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implementation 2004-01-15 Radek Doulik <rodo@ximian.com> * gui/calendar-component.c (impl_requestCreateItem): merge with JP's changes 2004-01-14 Radek Doulik <rodo@ximian.com> * gui/e-cal-list-view.c (e_cal_list_view_get_selected_time_range): new implementation, use time range from selected event * gui/e-cal-view.c (e_calendar_view_get_selected_time_range): return gboolean, TRUE if requested time was set, FALSE otherwise (e_calendar_view_new_appointment_full): use current time if time range is unavailable * gui/calendar-component.c (impl_requestCreateItem): use e_calendar_view_new_appointment_full instead of cal_comp_event_new_with_current_time * gui/e-cal-view.c (e_calendar_view_new_appointment_full): new helper function * gui/comp-editor-factory.c (edit_new): use cal_comp_event_new_with_current_time * gui/calendar-component.c (impl_requestCreateItem): use cal_comp_event_new_with_current_time * gui/comp-util.c (cal_comp_event_new_with_current_time): new function, cut'n'pasted from get_default_event (calendar-component.c and comp-editor-factory.c) svn path=/trunk/; revision=24238
* Various changes to merge in evolution-data-server reliance.JP Rosevear2003-11-071-49/+49
| | | | svn path=/trunk/; revision=23206
* guard against irrelevant args (ie if there was an error)JP Rosevear2003-10-231-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-10-23 JP Rosevear <jpr@ximian.com> * pcs/cal.c (cal_notify_object_modified): guard against irrelevant args (ie if there was an error) (cal_notify_object_removed): ditto (cal_notify_timezone_added): ditto * pcs/cal-backend-sync.c (_cal_backend_is_read_only): init value to something known (_cal_backend_get_cal_address): ditto (_cal_backend_get_alarm_email_address): ditto (_cal_backend_get_ldap_attribute): ditto (_cal_backend_get_static_capabilities): ditto (_cal_backend_modify_object): ditto (_cal_backend_remove_object): ditto (_cal_backend_get_object_list): ditto 2003-10-22 JP Rosevear <jpr@ximian.com> * gui/e-cal-list-view.c (e_cal_list_view_new): create a model and pass it as an arg during creation * gui/e-day-view.c (e_day_view_new): unref the model * gui/e-week-view.c (e_week_view_new): ditto 2003-10-22 JP Rosevear <jpr@ximian.com> * cal-client/cal-client.c (cal_client_get_object): only change to invalid object error code if we got the object but couldn't parse it, and only check for timezones if we had success * gui/comp-util.c (cal_comp_is_on_server): don't throw a warning if the object simply does not exist svn path=/trunk/; revision=23032
* Merge new-ui-branch to the trunk.Ettore Perazzoli2003-10-221-26/+20
| | | | svn path=/trunk/; revision=22965
* Merge new-calendar-branch into HEADRodrigo Moya2003-08-081-6/+21
| | | | svn path=/trunk/; revision=22129
* If only the pipe wouldn't break.JP Rosevear2003-03-051-5/+15
| | | | svn path=/trunk/; revision=20143
* Remove cruft. Rename ICONSDIR to IMAGESDIR. (gladedir, etspecdir,Dan Winship2003-02-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gui/Makefile.am (INCLUDES): Remove cruft. Rename ICONSDIR to IMAGESDIR. (gladedir, etspecdir, serverdir): Remove definitions (libevolution_calendar_la_LDFLAGS): Remove -export-dynamic, add -module. * gui/calendar-config.c: #include <string.h> * gui/calendar-component.c (add_creatable_item): s/ICONSDIR/IMAGESDIR/ * gui/comp-util.c: #include <string.h> * gui/e-alarm-list.c: #include e-time-utils.h (row_deleted): Remove unused variable. (e_alarm_list_append): Likewise. * gui/e-date-time-list.c: #include e-time-utils.h, timeutil.h, calendar-config.h (row_deleted): Remove unused variable (e_date_time_list_append): Likewise. * gui/e-day-view.c (e_day_view_unrealize): Remove unused var (e_day_view_style_set): Likewise. (e_day_view_set_event_font_cb): Likewise. * gui/e-day-view-time-item.c: #include <string.h> (e_day_view_time_item_get_column_width): Remove unused variable. * gui/e-itip-control.c: #include <unistd.h> (url_requested_cb): s/ICONSDIR/IMAGESDIR/ * gui/e-week-view.c (e_week_view_unrealize): Remove unused variable (e_week_view_style_set): Likewise * gui/e-week-view-titles-item.c: #include string.h * gui/itip-bonobo-control.c: Likewise * gui/print.c: Likewise svn path=/trunk/; revision=19794
* Use g_object_ref()/g_object_unref() instead ofEttore Perazzoli2002-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * calendar-commands.c: Use g_object_ref()/g_object_unref() instead of gtk_object_ref/gtk_object_unref(). * calendar-config.c: Likewise. * calendar-model.c: Likewise. * comp-editor-factory.c: Likewise. * comp-util.c: Likewise. * e-calendar-table.c: Likewise. * e-day-view.c: Likewise. * e-itip-control.c: Likewise. * e-meeting-model.c: Likewise. * e-meeting-time-sel.c: Likewise. * e-tasks.c: Likewise. * e-timezone-entry.c: Likewise. * e-week-view.c: Likewise. * gnome-cal.c: Likewise. * goto.c: Likewise. * itip-utils.c: Likewise. * print.c: Likewise. * tasks-control.c: Likewise. * tasks-migrate.c: Likewise. * gui/cal-search-bar.c: Use g_object_new() instead of gtk_type_new(). * gui/calendar-model.c: Likewise. * gui/calendar-view-factory.c: Likewise. * gui/calendar-view.c: Likewise. * gui/calendar-view.c: Likewise. * gui/comp-editor-factory.c: Likewise. * gui/e-calendar-table.c: Likewise. * gui/e-cell-date-edit-text.c: Likewise. * gui/e-comp-editor-registry.c: Likewise. * gui/e-day-view.c: Likewise. * gui/e-itip-control.c: Likewise. * gui/e-meeting-attendee.c: Likewise. * gui/e-meeting-attendee.c: Likewise. * gui/e-meeting-model.c: Likewise. * gui/e-meeting-time-sel.c: Likewise. * gui/e-tasks.c: Likewise. * gui/e-timezone-entry.c: Likewise. * gui/e-week-view.c: Likewise. * gui/gnome-cal.c: Likewise. * gui/weekday-picker.c: Likewise. * gui/e-itip-control.c (get_servers): g_object_unref the shell_client instead of using bonobo_object_unref(). * gui/component-factory.c (owner_set_cb): Use evolution_shell_client_corba_objref() instead of bonobo_object_corba_objref(). svn path=/trunk/; revision=18673
* check to see if the component is already on the server or notJP Rosevear2002-09-211-21/+11
| | | | | | | | | | | | | | | | | | | 2002-09-20 JP Rosevear <jpr@ximian.com> * gui/comp-util.c (cal_comp_is_on_server): check to see if the component is already on the server or not * gui/comp-util.h: change proto * gui/e-week-view.c (e_week_view_on_editing_stopped): only delete the event if the summary is empty and the component is not already on the server * gui/e-day-view.c (e_day_view_on_editing_stopped): same Fixes #14111 svn path=/trunk/; revision=18138
* Fixes #15710Rodrigo Moya2002-08-081-1/+8
| | | | | | | | | | | | | | | | | | | 2002-08-08 Rodrigo Moya <rodrigo@ximian.com> Fixes #15710 * cal-util/cal-component.[ch] (cal_component_alarm_get_icalcomponent): new function for getting the icalcomponent from a CalComponentAlarm. * gui/comp-util.c (cal_comp_event_new_with_defaults): added X-EVOLUTION-NEEDS-DESCRIPTION property to the default reminder alarm, so that we can identify it when saving the component. * gui/dialogs/alarm-page.c (alarm_page_fill_component): if the alarm has the X-EVOLUTION-NEEDS-DESCRIPTION property, set the description to be the same as of the component. svn path=/trunk/; revision=17744
* check if the CalComponentDateTime values are set before trying to useDamon Chaplin2002-02-091-15/+24
| | | | | | | | | | 2002-02-08 Damon Chaplin <damon@ximian.com> * gui/comp-util.c (cal_comp_util_compare_event_timezones): check if the CalComponentDateTime values are set before trying to use them. Possibly fixes bug #18529. svn path=/trunk/; revision=15630
* added vCalendar importer and intelligent GnomeCalendar importer code here,Damon Chaplin2002-02-091-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-08 Damon Chaplin <damon@ximian.com> * importers/icalendar-importer.c: added vCalendar importer and intelligent GnomeCalendar importer code here, as it shares a lot of code with the iCalendar importer. NOTE: check_folder_type() needs to be finished at some point. It needs a new shell Corba call so it can decide whether to import events or tasks into the folder. Currently it just imports both. * importers/main.c (importer_factory_fn): create vCalendar importer or GnomeCalendar importer if required. * importers/evolution-calendar-importer.h: added declarations for creating a vCalendar importer and intelligent Gnome Calendar importer. * importers/Makefile.am: added -DEVOLUTION_SOUNDDIR so the importer knows what filename to use for audio alarms in vCalendar files. Added libicalvcal-evolution to LDADD. * importers/GNOME_Evolution_Calendar_Importer.oaf.in: added vCalendar importer and intelligent Gnome Calendar importer. * gui/comp-util.c (cal_comp_util_compare_event_timezones): return TRUE if the event uses UTC. We don't want to flag all events from Outlook, which use UTC. svn path=/trunk/; revision=15628
* Use an EMessageBox instead of a gnome_dialog_question so that the labelFederico Mena Quintero2001-10-301-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-30 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/delete-comp.c (delete_component_dialog): Use an EMessageBox instead of a gnome_dialog_question so that the label gets line breaking. Fixes bug #11260. 2001-10-29 Federico Mena Quintero <federico@ximian.com> Fix bug #13649. * gui/calendar-config.c (calendar_config_get_use_default_reminder): New function. (calendar_config_set_use_default_reminder): New function. (calendar_config_get_default_reminder_interval): New function. (calendar_config_set_default_reminder_interval): New function. (calendar_config_get_default_reminder_units): New function. (calendar_config_set_default_reminder_units): New function. (config_read): Get the options for default reminders. (calendar_config_write): Set the options for default reminders. * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): Set the default reminder widgets from the config values. (cal_prefs_dialog_update_config): Set the config values from the widgets. * gui/comp-util.c (cal_comp_event_new_with_defaults): New function; creates a VEVENT component with the default alarm. * gui/e-day-view.c (e_day_view_key_press): Use cal_comp_event_new_with_defaults (); * gui/e-week-view.c (e_week_view_key_press): Likewise. * gui/calendar-model.c (calendar_model_append_row): Likewise. * gui/comp-editor-factory.c (get_default_component): Likewise. * gui/gnome-cal.c (gnome_calendar_new_appointment_for): Likewise. * cal-util/cal-component.c (ensure_alarm_properties_cb): Ensure we have a DESCRIPTION property. (cal_component_commit_sequence): Ensure we have the mandatory alarm properties. svn path=/trunk/; revision=14446
* Delete appointments with empty summaries. Fixes Ximian bug #780.Federico Mena Quintero2001-10-281-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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-281-4/+3
| | | | svn path=/trunk/; revision=14214
* added setDefaultTimezone() method.Damon Chaplin2001-10-231-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* save the EXDATE as a DATE-TIME value, since we know the exact time. FixesDamon Chaplin2001-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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
* added 'different_timezone' fields to EDayViewEvent and EWeekViewEvent, toDamon Chaplin2001-08-071-0/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* started some code to show the currently displayed dates in the folderDamon Chaplin2001-07-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* cal-client/cal-client.[hc] cal-util/cal-component.cDamon Chaplin2001-07-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-231-1/+1
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* Ximianified email addresses and copyrights.Federico Mena Quintero2001-01-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-17 Federico Mena Quintero <federico@ximian.com> * */*: Ximianified email addresses and copyrights. * idl/evolution-calendar.idl (CalFactory::open): Renamed from ::load(), and added an only_if_exists argument. (CalFactory::create): Removed method. (Listener::OpenStatus): Removed the IN_USE error and replaced it with a NOT_FOUND one; renamed the enum from LoadStatus. (Listener::notifyCalOpened): Renamed from notifyCalLoaded(). * pcs/cal-backend.h (CalBackend): Removed the uri field. (CalBackendOpenStatus): Renamed from CalBackendLoadStatus and added a NOT_FOUND value. (CalBackendClass::open): Put in a slot for the open method. * pcs/cal-backend.c (cal_backend_create): Removed function. * pcs/cal-backend-file.c (cal_backend_file_open): Return the appropriate value when only_if_exists is TRUE. (create_cal): We are Ximian now, so set the PRODID property to the appropriate foo. * pcs/cal-factory.c (CalFactory_open): implemented, replacing CalFactory_load() and CalFactory_create(). (CalFactory_open): Moved the queue_load_create_job() stuff to here, since we now only need to contemplate the open case instead of load/create ones. (open_backend): Do everything here; replaces load_backend() and create_backend(). * cal-client/cal-listener.h (CalListenerClass::cal_opened): Renamed from cal_loaded. (CalListenerClass): Replaced the silly signals, which are gratuitous abstraction, by a set of function pointers in the instance structure. * cal-client/cal-listener.c (cal_listener_get_calendar): Removed unused function. (cal_listener_construct): Added the listener notification functions. (cal_listener_new): Ditto. (Listener_notifyCalOpened): Renamed to our new naming convention for servant implementations. (Listener_notifyObjUpdated): Ditto. (Listener_notifyObjRemoved): Ditto. * cal-client/cal-client.h (CalClientOpenStatus): Renamed from CalClientLoadStatus. (CalClientClass::cal_opened): Renamed from ::cal_loaded(). (CalClientLoadState): New enum; basically make LoadState public so that users of this code do not have to maintain their own states. * cal-client/cal-client.c (cal_client_create_calendar): Removed function. (cal_client_open_calendar): Moved the functionality over from load_or_create(); now we do everything here. (*): Use the CalClientLoadState enum values instead of the old LoadState values. (cal_client_get_load_state): Renamed from cal_client_is_loaded(), and return the appropriate value. (CalClientPrivate): Added an uri field. (cal_client_init): Initialize priv->uri. (cal_client_destroy): Free the priv->uri. (cal_opened_cb): Maintain the priv->uri. (cal_client_open_calendar): Fill in the priv->uri. (cal_client_get_uri): New function. * gui/calendar-model.c (calendar_model_set_new_comp_vtype): New function to configure the type of calendar components to create when doing click-to-add. This makes the model usable for something other than task lists. (calendar_model_get_new_comp_vtype): New function. * gui/e-calendar-table.c (e_calendar_table_get_model): New function. (e_calendar_table_destroy): Unref the subset_model. * gui/gnome-cal.h (GnomeCalendarOpenMode): Removed enum. * gui/gnome-cal.c (LoadState): Removed enum; we now use the CalClientLoadState from the client objects. (GnomeCalendarPrivate): Removed the loading_uri and task_pad_loading_uri fields as well as the load_state and task_pad_load_state fields, as we can now query them directly from the CalClient. (open_error): Renamed from load_error(). (create_error): Removed function. (gnome_calendar_open): Do not take in the mode parameter. (cal_opened_cb): Get rid of our beautifully-crafted state machine and replace it with simple code; all the loading smarts are in the Wombat now. (setup_widgets): Set the new component vtype of the table model to CAL_COMPONENT_TODO. * gui/Makefile.am (evolution_calendar_SOURCES): Removed gnome-month-item.[ch] from the list of sources. * gui/calendar-summary.c (CalSummary): Removed unused cal_loaded field. (create_summary_view): Do not check if the file exists; this is the job of the Wombat. (generate_html_summary): Fixed prototype. (alarm_fn): Fixed prototype. (property_dialog): Fixed prototype. Wonder if/how this ever worked. (create_summary_view): Cast the component and view as appropriate. Removed unused html variable. [Iain dude, are you compiling with -Wall?] * gui/e-itip-control.c (cal_opened_cb): Sigh, this function signature was *very* wrong. It was using CalClientGetStatus instead of CalClientOpenStatus. * gui/e-tasks.h (ETasksOpenMode): Removed enum. * gui/e-tasks.c (setup_widgets): Set the new component vtype of the table model to CAL_COMPONENT_TODO. (LoadState): Removed the state machine foo. (e_tasks_open): Removed the mode parameter. (initial_load): Removed function. (create_error): Removed function. (ETasksPrivate): Removed folder_uri field. (cal_opened_cb): Remove the state machine. * gui/component-factory.c: #include "tasks-control.h" * conduits/calendar/calendar-conduit.h (ECalConduitContext): Removed calendar_load_tried field. * conduits/calendar/calendar-conduit.c (start_calendar_server_cb): Sigh, fixed function prototype. * conduits/todo/todo-conduit.h (EToDoConduitContext): Removed calendar_load_tried field. * conduits/todo/todo-conduit.c (start_calendar_server_cb): Fixed function prototype. svn path=/trunk/; revision=7571
* These changes fix bugzilla bugs #874 and #875.Federico Mena Quintero2000-11-091-0/+57
2000-11-08 Federico Mena Quintero <federico@helixcode.com> These changes fix bugzilla bugs #874 and #875. * cal-util/cal-component.c (cal_component_get_exdate_list): Return a list of CalComponentDateTime instead of simple struct icaltimetype objects. Exception date properties *can* contain a timezone parameter, so we need to include those if they are present. (cal_component_set_exdate_list): On the input, handle a list of CalComponentDateTime structures. On the internals, handle a list of struct datetime instead of plain properties. (cal_component_free_exdate_list): Handle a list of CalComponentDateTime structures. (scan_exdate): Create a list of struct datetime structures. (free_icalcomponent): Free the exdate_list properly. * cal-util/cal-recur.c (generate_instances_for_chunk): Use the proper types for exception dates. * gui/comp-util.h: * gui/comp-util.c: New files with utilities for manipulating calendar component objects. (cal_comp_util_add_exdate): New function. * gui/Makefile.am (evolution_calendar_SOURCES): Added comp-util.[ch] to the list of sources. * gui/e-day-view.c (add_exdate): New convenience function to add an exception date to a calendar component. (e_day_view_on_unrecur_appointment): Use cal_comp_util_add_exdate(). (e_day_view_on_delete_occurrence): Likewise. * gui/e-week-view.c (e_week_view_on_delete_occurrence): Likewise. (e_week_view_on_unrecur_appointment): Likewise. * gui/event-editor.c (nth_weekday): Be paranoid about valid position values. (fill_widgets): Use the proper types for exdates. (dialog_to_comp_object): Likewise. svn path=/trunk/; revision=6517