aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/comp-editor-factory.c
Commit message (Collapse)AuthorAgeFilesLines
* use libedataserver's e-url.Rodrigo Moya2005-01-171-1/+1
| | | | | | | | | | | | | | 2005-01-17 Rodrigo Moya <rodrigo@novell.com> * gui/calendar-component.c: * gui/calendar-offline-handler.c: * gui/comp-editor-factory.c: * gui/e-tasks.c: * gui/gnome-cal.c: * gui/misc.c: * gui/alarm-notify/alarm-notify.c: use libedataserver's e-url. svn path=/trunk/; revision=28422
* Fixes #61076JP Rosevear2004-12-221-1/+1
| | | | | | | | | | | | | | 2004-12-22 JP Rosevear <jpr@novell.com> Fixes #61076 * gui/comp-editor-factory.c (open_client): don't translate command line warnings * gui/calendar-offline-handler.c (backend_go_online): ditto (backend_go_offline): ditto svn path=/trunk/; revision=28173
* Add a boolean variable to denote assigned task and construct the meetingChenthill Palanisamy2004-12-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-12-02 Chenthill Palanisamy <pchenthill@novell.com> * gui/dialogs/task-editor.[ch] (task_editor_new), (task_editor_construct), (show_assignment): Add a boolean variable to denote assigned task and construct the meeting page only for the assigned task. Set it as a group item in component editor. (_TaskEditorPrivate): added the boolean variable (is_assigned). (task_editor_init): initialized the variable. * gui/dialogs/comp-editor.[ch]: Added functions to set and get whether comp is a group item or individual item. * gui/comp-editor.c (make_title_from_string), (make_title_from_comp): Set the Title for the appointment editor window as "Meeting" or "Assigned Task" if its a group calendar/task item. (_CompEditorPrivate): added a boolean variable (is_group_item). (comp_editor_init): initialized the same. * gui/dialogs/event-editor.c (event_editor_construct), (show_meeting): Set whether the component is a group item or not in comp editor. * gui/e-calendar-table.c (e_calendar_table_open_task), (e_calendar_table_open_selected), (open_task_by_row): Check whether the component being opened is an assigned task by checking for attendees and call open_task with proper value for boolean variable assign. * gui/comp-editor-factory.c (edit_existing): * gui/e-calendar-table.c (open_task): * gui/e-tasks.c (e_tasks_new_task): * gui/gnome-cal.c (gnome_calendar_new_task): * gui/tasks-component.c (create_new_todo): Called the function task_editor_new with a added argument. svn path=/trunk/; revision=28044
* Use e_cal_component_has_attendees to test if it is a meeting. By default,Harish Krishnaswamy2004-10-201-4/+1
| | | | | | | | | | | | | * gui/comp-editor-factory.c: (edit_existing): Use e_cal_component_has_attendees to test if it is a meeting. * gui/dialogs/event-editor.c: (event_editor_init): By default, the event is not a meeting. (event_editor_construct): Do not add the invitation, scheduling pages to the editor if it is not a meeting. * gui/e-day-view.c: (e_day_view_on_event_double_click): check the icalproperty to test if the event is a meeting. svn path=/trunk/; revision=27628
* gui/comp-editor-factory.c (edit_existing),Harish Krishnaswamy2004-10-191-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * gui/calendar-component.c (create_new_event): * gui/e-calendar-view.c: (e_calendar_view_edit_appointment): * gui/comp-editor-factory.c (edit_existing), * (edit_new): * gui/dialogs/event-editor.c * (event_editor_edit_comp), (event_editor_new): updated the calls to event_editor_new with additional argument. * gui/dialogs/event-editor.h: * add parameter * is_meeting to distinguish between events and meetings. * gui/dialogs/meeting-page.c: * (sensitize_widgets): use explicit GError variable so that BUSY_ERROR conditions do not lead us to think the calendar is readonly. * gui/e-meeting-store.c: * (refresh_queue_remove), * (ems_init), (e_meeting_store_remove_attendee), (freebusy_async), (refresh_busy_periods), (refresh_queue_add): Make free-busy calls to backends async. Fixed the problem of spurious attendees getting added to the refresh_data. svn path=/trunk/; revision=27614
* Fixes #65932Rodrigo Moya2004-10-071-7/+11
| | | | | | | | | | | | | | | | 2004-10-06 Rodrigo Moya <rodrigo@novell.com> Fixes #65932 * common/authentication.c: keep a hash table of all the source lists. (auth_new_cal_from_uri): do a search in the source list for the given URI, and use that ESource if we find it. Also, keep the hash table of source lists up to date. * gui/comp-editor-factory.c (cal_opened_cb): don't assert on error cases, just display an error dialog. svn path=/trunk/; revision=27498
* add argJP Rosevear2004-05-181-10/+29
| | | | | | | | | | | | | | | | | | | 2004-05-18 JP Rosevear <jpr@novell.com> * idl/evolution-calendar.idl: add arg * gui/alarm-notify/alarm-queue.c (edit_component): send a mode type * gui/alarm-notify/alarm-notify.c: add fixme note * gui/comp-editor-factory.c (impl_editExisting): take a editor mode and twist it into a source type (impl_editNew): ditto (open_client): take a source type for creating the client (lookup_open_client): ditto svn path=/trunk/; revision=25959
* Fixes #56373JP Rosevear2004-05-181-2/+2
| | | | | | | | | | | | 2004-05-17 JP Rosevear <jpr@ximian.com> Fixes #56373 * gui/comp-editor-factory.c (open_client): guess its an event for now svn path=/trunk/; revision=25932
* Convert the calendar_config_get_timezone andJP Rosevear2004-02-061-6/+4
| | | | | | | | | | | 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-44/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Revert William McCann's patch of 2003-12-19 until we can get consistentJP Rosevear2004-01-131-1/+0
| | | | | | | | | 2004-01-12 JP Rosevear <jpr@ximian.com> * Revert William McCann's patch of 2003-12-19 until we can get consistent across all of evolution svn path=/trunk/; revision=24177
* new files for managing interactive authentication with backends.Rodrigo Moya2003-12-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-12-22 Rodrigo Moya <rodrigo@ximian.com> * common/authentication.[ch]: new files for managing interactive authentication with backends. * common/Makefile.am: build new private library. * gui/alarm-notify/alarm-notify.c (alarm_notify_add_calendar): * gui/dialogs/event-page.c (source_changed_cb): * gui/dialogs/task-page.c (source_changed_cb): * gui/dialogs/copy-source-dialog.c (copy_source): * gui/calendar-component.c (setup_create_ecal): * gui/calendar-offline-handler.c (backend_go_offline, backend_go_online, calendar_offline_handler_init): * gui/comp-editor-factory.c (open_client): * gui/e-itip-control.c (start_calendar_server): * gui/e-tasks.c (e_tasks_add_todo_uri): * gui/gnome-cal.c (gnome_calendar_construct, gnome_calendar_add_event_uri): * gui/tasks-component.c (setup_create_ecal): * importers/icalendar-importer.c (load_file_fn, vcal_load_file_fn, gnome_calendar_import_data_fn): create the ECal's via the auth_new_cal_from* functions in the authentication module. * gui/alarm-notify/Makefile.am: * gui/Makefile.am: * importers/Makefile.am: link new private library. * Makefile.am: added new directory to the build. svn path=/trunk/; revision=23999
* rewrite for new ecal api, cache all ecal's by type and minimize loading.JP Rosevear2003-12-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-12-21 JP Rosevear <jpr@ximian.com> * gui/e-itip-control.[hc]: rewrite for new ecal api, cache all ecal's by type and minimize loading. Switch to using the source option menu * conduits/todo/todo-conduit.c (start_calendar_server): ditto * conduits/calendar/calendar-conduit.c (start_calendar_server): use ECalSourceType * importers/icalendar-importer.c (load_file_fn): ditto (vcal_load_file_fn): ditto (gnome_calendar_import_data_fn): ditto * gui/dialogs/task-page.c (source_changed_cb): ditto * gui/dialogs/event-page.c (source_changed_cb): ditto * gui/dialogs/copy-source-dialog.h: update proto * gui/dialogs/copy-source-dialog.c (copy_source_dialog): ditto * gui/alarm-notify/alarm-notify.c (alarm_notify_add_calendar): ditto * gui/tasks-component.c (copy_task_list_cb): ditto (setup_create_ecal): ditto * gui/gnome-cal.c (gnome_calendar_construct): ditto (gnome_calendar_add_event_uri): ditto * gui/e-tasks.c (e_tasks_add_todo_uri): ditto * gui/comp-editor-factory.c (open_client): ditto * gui/calendar-offline-handler.c (backend_go_offline): ditto (backend_go_online): ditto (calendar_offline_handler_init): ditto * gui/calendar-component.c (copy_calendar_cb): ditto (setup_create_ecal): ditto * gui/print.c (print_month_small): don't pass type to e_cal_generate_instances (print_day_details): ditto (print_week_summary): ditto * gui/tag-calendar.c (tag_calendar_by_client): ditto svn path=/trunk/; revision=23994
* Remove separators from dialogs. Use frame style recommended by the HIG.William Jon McCann2003-12-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-12-19 William Jon McCann <mccann@jhu.edu> * gui/dialogs/task-page.c (source_changed_cb): * gui/dialogs/send-comp.c (send_component_dialog): * gui/dialogs/save-comp.c (save_component_dialog): * gui/dialogs/recur-comp.c (recur_component_dialog): * gui/dialogs/event-page.c (source_changed_cb): * gui/dialogs/delete-error.c (delete_error_dialog): * gui/dialogs/delete-comp.c (delete_component_dialog): * gui/dialogs/changed-comp.c (changed_component_dialog): * gui/dialogs/cancel-comp.c (cancel_component_dialog): * gui/dialogs/alarm-options.glade: * gui/dialogs/alarm-page.glade: * gui/dialogs/cal-prefs-dialog.glade: * gui/dialogs/e-delegate-dialog.glade: * gui/dialogs/event-page.glade: * gui/dialogs/new-calendar.glade: * gui/dialogs/new-task-list.glade: * gui/dialogs/recurrence-page.glade: * gui/dialogs/task-details-page.glade: * gui/dialogs/task-page.glade: * gui/tasks-control.c (confirm_purge): * gui/tasks-component.c (delete_task_list_cb) (rename_task_list_cb, setup_create_ecal): * gui/goto-dialog.glade: * gui/e-cal-model-tasks.c (show_geo_warning): * gui/comp-editor-factory.c (cal_opened_cb): * gui/calendar-component.c (delete_calendar_cb) (rename_calendar_cb, setup_create_ecal, delete_calendar_cb): * gui/calendar-commands.c (purge_cmd): Remove separators from dialogs. Use frame style recommended by the HIG. svn path=/trunk/; revision=23989
* e_cal_new () -> e_cal_new_from_uri (). (backend_go_online): Ditto.Hans Petter Jansson2003-11-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-11-26 Hans Petter Jansson <hpj@ximian.com> * gui/calendar-offline-handler.c (backend_go_offline): e_cal_new () -> e_cal_new_from_uri (). (backend_go_online): Ditto. (calendar_offline_handler_init): Ditto. * gui/comp-editor-factory.c (open_client): Ditto. * gui/e-itip-control.c (start_calendar_server): Ditto. (object_requested_cb): Ditto. * gui/e-tasks.c (e_tasks_add_todo_uri): Ditto. * gui/gnome-cal.c (gnome_calendar_construct): Ditto. (gnome_calendar_add_event_uri): Ditto. * gui/alarm-notify/alarm-notify.c (alarm_notify_add_calendar): Ditto. * importers/icalendar-importer.c (load_file_fn): Ditto. (vcal_load_file_fn): Ditto. (gnome_calendar_import_data_fn): Ditto. * gui/dialogs/copy-source-dialog.c (copy_source): Pass sources to e_cal_new (). svn path=/trunk/; revision=23498
* use a standard calendar status (backend_cal_opened_online): dittoJP Rosevear2003-11-121-7/+7
| | | | | | | | | | | | | | | | | | | | | | 2003-11-11 JP Rosevear <jpr@ximian.com> * gui/calendar-offline-handler.c (backend_cal_opened_offline): use a standard calendar status (backend_cal_opened_online): ditto * gui/alarm-notify/alarm-queue.c (cal_opened_cb): ditto * gui/gnome-cal.c (client_cal_opened_cb): ditto * gui/e-tasks.c (cal_opened_cb): ditto * gui/e-itip-control.c (default_server_started_cb): ditto * gui/e-cal-model.c (cal_opened_cb): ditto * gui/comp-editor-factory.c (cal_opened_cb): ditto svn path=/trunk/; revision=23286
* Various changes to merge in evolution-data-server reliance.JP Rosevear2003-11-071-33/+33
| | | | svn path=/trunk/; revision=23206
* Merge new-ui-branch to the trunk.Ettore Perazzoli2003-10-221-27/+19
| | | | svn path=/trunk/; revision=22965
* Merged from calendar-views-with-model branchRodrigo Moya2003-08-201-2/+2
| | | | svn path=/trunk/; revision=22308
* Merge new-calendar-branch into HEADRodrigo Moya2003-08-081-2/+8
| | | | svn path=/trunk/; revision=22129
* Utility wrapper around icalparser.Dan Winship2003-03-251-2/+2
| | | | | | | | | | | | | | | | | * cal-util/cal-util.c (cal_util_parse_ics_file): Utility wrapper around icalparser. * cal-util/test-recur.c (main): Use it * pcs/cal-backend-file.c (open_cal): Likewise * gui/comp-editor-factory.c (open_client): Add the OpenClient to the hash before calling cal_client_open_calendar, since in some failure cases, that will call cal_opened_cb (which will free the oc) with a failure immediately, causing a crash if we then try to deref it. svn path=/trunk/; revision=20492
* If only the pipe wouldn't break.JP Rosevear2003-03-051-8/+7
| | | | svn path=/trunk/; revision=20143
* GObject, not GtkObject. (calendar_model_destroy): ->Hans Petter Jansson2003-02-221-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-02-21 Hans Petter Jansson <hpj@ximian.com> * gui/calendar-model.c (calendar_model_class_init): GObject, not GtkObject. (calendar_model_destroy): -> calendar_model_finalize (). * gui/calendar-view.c (calendar_view_class_init): GObject, not GtkObject. (calendar_view_destroy): -> calendar_view_finalize (). * gui/comp-editor-factory.c (comp_editor_factory_class_init): GObject, not GtkObject. (comp_editor_factory_destroy): -> comp_editor_factory_finalize (). * gui/e-day-view.c (e_day_view_long_event_button_press): gtk_signal_disconnect () -> g_signal_handler_disconnect (). (e_day_view_on_event_button_press): Ditto. (e_day_view_on_long_event_click): Ditto. (e_day_view_on_event_click): Ditto. (e_day_view_on_event_double_click): Ditto. (e_day_view_on_delete_appointment): Ditto. * gui/e-week-view.c (e_week_view_on_text_item_event): gtk_signal_disconnect () -> g_signal_handler_disconnect (). * gui/alarm-notify/alarm-notify.c (AlarmNotify_RemoveCalendar): Don't cast to GtkObject. svn path=/trunk/; revision=19995
* Fixes #37706Rodrigo Moya2003-02-081-2/+18
| | | | | | | | | | | 2003-02-07 Rodrigo Moya <rodrigo@ximian.com> Fixes #37706 * gui/comp-editor-factory.c (cal_opened_cb): added PERMISSION_DENIED case for not ending process on g_assert_not_reached. svn path=/trunk/; revision=19845
* s/BonoboXObject/BonoboObject/Dan Winship2003-02-061-6/+6
| | | | | | | | * gui/calendar-offline-handler.c: s/BonoboXObject/BonoboObject/ * gui/comp-editor-factory.c: Likewise svn path=/trunk/; revision=19764
* Use g_object_ref()/g_object_unref() instead ofEttore Perazzoli2002-11-091-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Use g_signal_connect() instead of gtk_signal_connect(). Likewise.Ettore Perazzoli2002-11-091-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * gui/calendar-commands.c: Use g_signal_connect() instead of gtk_signal_connect(). * calendar-commands.c: Likewise. * calendar-config.c: Likewise. * calendar-model.c: Likewise. * comp-editor-factory.c: Likewise. * component-factory.c: Likewise. * control-factory.c: Likewise. * e-calendar-table.c: Likewise. * e-comp-editor-registry.c: Likewise. * e-day-view-time-item.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. * tasks-control.c: Likewise. * tasks-migrate.c: Likewise. * weekday-picker.c: Likewise. svn path=/trunk/; revision=18672
* Non-Connector part of #29334 (meeting created by a delegate in theDan Winship2002-09-281-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | delegator's calendar should have the delegator as Organizer). * idl/evolution-calendar.idl: add Cal_getEmailAddress, to return the email address associated with a backend (if any). * pcs/cal-backend.c (cal_backend_get_email_address): New. * pcs/cal-backend-file.c (cal_backend_file_get_email_address): Return NULL (for now). * pcs/cal.c (impl_Cal_get_email_address): Implement this by calling cal_backend_get_email_address and returning a NotFound exception if it returns NULL. * cal-client/cal-client.c (cal_client_get_email_address): New. (cal_client_init, cal_client_destroy, etc): initialize/free email_address * gui/dialogs/event-editor.c (event_editor_construct): Split this out of event_editor_init. Take and set a CalClient. (event_editor_new): Take a CalClient. * gui/dialogs/task-editor.c (task_editor_construct, task_editor_new): Likewise. * gui/dialogs/meeting-page.c (meeting_page_new, meeting_page_construct): Take a CalClient and call cal_client_get_email_address to find the default organizer address. (Also fix a bug if the default account's name has non-ASCII characters.) * gui/itip-utils.c (comp_from): New. When sending a REQUEST or CANCEL, use the Organizer as the From address. (itip_send_comp): Call comp_from and pass the result to Composer_setHeaders. * gui/comp-editor-factory.c (edit_existing, edit_new): Pass the CalClient to event_editor_new/task_editor_new * gui/e-calendar-table.c (open_task): Likewise. * gui/e-tasks.c (e_tasks_new_task): Likewise. * gui/gnome-cal.c (gnome_calendar_edit_object, gnome_calendar_new_task): Likewise. svn path=/trunk/; revision=18253
* duh, don't blindly increment the hour without adjusting for the dayJP Rosevear2002-09-111-4/+2
| | | | | | | | | | | | 2002-09-10 JP Rosevear <jpr@ximian.com> * gui/comp-editor-factory.c (get_default_event): duh, don't blindly increment the hour without adjusting for the day boundaries Fixes #29983 svn path=/trunk/; revision=18034
* make sure to get the date in the current zone, not at UTCJP Rosevear2002-08-201-1/+1
| | | | | | | | | 002-08-20 JP Rosevear <jpr@ximian.com> * gui/comp-editor-factory.c (get_default_event): make sure to get the date in the current zone, not at UTC svn path=/trunk/; revision=17802
* focus the editor if it does exist, create a new one if it doesn't (notJP Rosevear2002-07-271-2/+1
| | | | | | | | | 2002-07-26 JP Rosevear <jpr@ximian.com> * gui/comp-editor-factory.c (impl_editExisting): focus the editor if it does exist, create a new one if it doesn't (not vice-versa) svn path=/trunk/; revision=17603
* a registry of comp editors so we can close them all centrallyJP Rosevear2002-05-271-84/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-05-26 JP Rosevear <jpr@ximian.com> * gui/e-comp-editor-registry.[hc]: a registry of comp editors so we can close them all centrally * gui/gnome-cal.c (gnome_calendar_init): there is no editor hash now (gnome_calendar_destroy): ditto (gnome_calendar_edit_object): look for the event editor in the registry, if it isn't there, create it and add it to the registry * gui/e-calendar-table.c (open_task): look for the task editor in the registry, if it isn't there, create it and add it to the registry * gui/component-factory.c (request_quit): close all open editors (create_object): add a request_quit function to the shell component * gui/comp-editor-factory.c (free_client): there is no uid_comp_hash to free any more (editor_destroy_cb): we get an OpenClient as callback data now, reduce the editor count and destroy it if it is 0 (edit_existing): don't create the Component, add the new editor to the registry, increase the editor count (edit_new): ditto (open_client): set the editor count to 0 (impl_editExisting): look in the registry for the editor * gui/Makefile.am: Build new sources * gui/main.c (main): create the registry * gui/dialogs/comp-editor.c (comp_editor_close): prompt to save and then close dialog * gui/dialogs/comp-editor.h: new proto * gui/GNOME_Evolution_Calendar.oaf.in: remove dead summary stuff svn path=/trunk/; revision=17018
* use bonobo exception macros to tidyJP Rosevear2002-03-151-7/+3
| | | | | | | | | | | | | | | | 2002-03-15 JP Rosevear <jpr@ximian.com> * gui/main.c: use bonobo exception macros to tidy * gui/itip-control-factory.c: ditto * gui/gnome-cal.c: ditto * gui/comp-editor-factory.c: ditto * gui/calendar-commands.c: ditto svn path=/trunk/; revision=16172
* add all day event editor modeJP Rosevear2002-03-151-20/+41
| | | | | | | | | | | | | | | | | | | 2002-03-14 JP Rosevear <jpr@ximian.com> * idl/evolution-calendar.idl: add all day event editor mode * gui/component-factory.c: clean up exception handling (sc_user_create_new_item_cb): support the all day event id (create_object): add a user creatable all day appointment item * gui/comp-editor-factory.c (get_default_event): get a default event either all day or starting at the top of the hour (get_default_task): get a default task (edit_new): support the all day event mode * gui/calendar-commands.c: remove unused functions/verbs svn path=/trunk/; revision=16157
* pass meeting boolean for gnome_calendar_edit_object andJP Rosevear2002-02-081-32/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-07 JP Rosevear <jpr@ximian.com> * gui/e-day-view.c: pass meeting boolean for gnome_calendar_edit_object and gnome_calendar_new_appointment_for * gui/e-week-view-event-item.c: ditto * gui/e-week-view.c: ditto * gui/tasks-control.c (confirm_expunge): kill warning * gui/calendar-commands.c (new_meeting_cb): show a new meeting dialog (new_event_cb): pass new param * gui/gnome-cal.c (gnome_calendar_edit_object): take meeting boolean and show meeting page if true (gnome_calendar_new_appointment_for): takeing meeting param and pass to above (gnome_calendar_new_appointment): add new param * gui/gnome-cal.h: update proto * gui/component-factory.c (create_component): take a comp editor mode, determine vtype (sc_user_create_new_item_cb): check for meeting user creatable item (create_object): add meeting as user creatable item * gui/comp-editor-factory.c (edit_new): get a comp editor mode now, determine vtype and show meeting page if required (queue_edit_new): get comp editor mode (impl_editNew): ditto, plus queue the mode directly instead of determining the vtype * gui/dialogs/event-editor.c (show_meeting): new internal util function to show meeting page (event_editor_show_meeting): show the meeting (schedule_meeting_cmd): use show_meeting * gui/dialogs/event-editor.h: new proto * idl/evolution-calendar.idl: editNew takes a mode rather than a type now * cal-util/Makefile.am: fix includes svn path=/trunk/; revision=15595
* use TZID from the builtin timezone, instead of using the location name.Damon Chaplin2001-11-051-1/+5
| | | | | | | | | 2001-11-04 Damon Chaplin <damon@ximian.com> * gui/comp-editor-factory.c (get_default_component): use TZID from the builtin timezone, instead of using the location name. svn path=/trunk/; revision=14584
* Use an EMessageBox instead of a gnome_dialog_question so that the labelFederico Mena Quintero2001-10-301-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* 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
* replace use of gnome_vfs_uri with e_uriRodrigo Moya2001-10-041-23/+16
| | | | | | | | | | | | | | | | | | | | | | | 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
* Implemented.Federico Mena Quintero2001-09-051-37/+437
| | | | | | | | | | | | | | | | | | | | 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
* Fixes bug #7879, a query may receive an update notification from theFederico Mena Quintero2001-08-291-11/+85
| | | | | | | | | | | | | | | | | | | | 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
* New files with a derivative of ESearchBar that generates sexps forFederico Mena Quintero2001-07-281-0/+228
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