2003-08-26 Jack Jia ** Fixes #47863. * gui/alarm-notify/alarm-notify.c (AlarmNotify_removeCalendar): set the initial value of lc_ptr and orig_str_ptr to NULL to avoid crash. 2003-08-22 Frederic Crozat * gui/alarm-notify/notify-main.c: (main): Ensure we get UTF-8 strings from gettext. 2003-08-22 Bolian Yin Fixes #47779 * gnome-cal.c (gnome_calendar_get_visible_time_range): fix the return value bug. 2003-08-21 Rodrigo Moya * cal-client/cal-client.[ch] (cal_client_send_object): use a 'char **' for the 'error_msg' argument, instead of a fixed size string. * gui/itip-utils.c (comp_server_send): pass the correct parameter to cal_client_send_object. 2002-08-20 Hans Petter Jansson * gui/e-itip-control.c (start_defalt_server): Rename to start_default_server_async () and don't run a nested main loop. Let the caller deal with the client object and signals. (default_server_started_cb): Implement. Async signal handler for 'cal_opened' signal, does the embedding. (object_requested_cb): Rewritten to work asynchronously, and finish the embedding when default_server_started_cb() is called. 2003-08-20 Rodrigo Moya * gui/e-calendar-table.c (setup_popup_icons): new function to set icons on the popup menu items. (e_calendar_table_show_popup_menu): call setup_popup_icons. * gui/e-cal-view.c (setup_popup_icons): set more icons for the popup menu. 2003-08-20 Bolian Yin * gui/Makefile.am : Add a11y dependency. * gui/calendar-commands.c (calendar_get_text_for_folder_bar_label) * gui/e-cal-view.c: Add two new events: "event_changed" and "event_added" * gui/e-day-view.c (e_day_view_class_init): init a11y. (e_day_view_find_event_from_item): make it public from private (e_day_view_update_event_cb): emit "event_changed" signal (e_day_view_reshape_day_event): emit "event_added" signal (e_day_view_reshape_long_event): emit "event_added" signal * gui/e-week-view.c (e_week_view_class_init): init a11y. (e_week_view_find_event_from_item): make it public from private (e_week_view_update_event_cb): emit "event_changed" signal (e_week_view_reshape_event_span): emit "event_added" signal * gui/gnome-cal.c (gnome_calendar_class_init): init a11y. (gnome_calendar_get_e_calendar_widget), (gnome_calendar_get_search_bar_widget), (gnome_calendar_get_view_notebook_widget): new functions 2003-08-19 Rodrigo Moya * gui/e-cal-model-tasks.c (ecmt_get_color_for_component): use "black" for normal tasks, since the light colors from the palette are too light. * gui/gnome-cal.c (gnome_calendar_purge): don't leak the client list. (gnome_calendar_destroy): disconnect from all callbacks on all loaded clients. 2003-08-18 Rodrigo Moya * gui/e-day-view.c: fixed the problem with a new event being created for each keystroke. (e_day_view_add_event): don't create a new default component, use the one we get as parameter. (e_day_view_do_key_press): get the UID from the icalcomponent. * gui/e-week-view.c (e_week_view_add_event, e_week_view_do_key_press): same as e-day-view.c 2003-08-15 Rodrigo Moya * gui/e-cal-model.c (ecm_get_color_for_component): use tigert's new color palette. (cal_removed_cb): when a client is removed, remove it from the model. (backend_died_cb): remove it also when the backend dies. (add_new_client): connect to new signals for CalClient's. 2003-08-15 Rodrigo Moya * gui/e-cal-model.c (e_cal_model_finalize): don't unref the 'accounts' field, since it is internal to itip-utils.c. * gui/alarm-notify/alarm-notify.c (alarm_notify_add_calendar): initialize all fields of the LoadedClient struct before calling cal_client_open_calendar(), since the "cal_opened_cb" signal is now emitted within it. 2003-08-14 Rodrigo Moya * gui/e-cal-model.c (e_cal_model_create_component_with_defaults): use the default client to call cal_comp_*_new_with_defaults, and if no client is available, just create an empty icalcomponent. * gui/e-cal-view.c (e_cal_view_init): create an empty model. * gui/e-week-view.c (e_week_view_add_event): use the event's client. 2003-08-14 Rodrigo Moya * gui/e-cal-model.[ch] (e_cal_model_free_component_data): new function. * gui/e-cal-view.h: added 'allocated_comp_data' field to the ECalViewEvent structure. * gui/e-day-view.c (e_day_view_add_event): allocate the event's ECalModelComponent if it hasn't been set. (e_day_view_update_event_cb, e_day_view_remove_event_cb, e_day_view_free_event_array): if the ECalModelComponent has been allocated by the view, free it here. * gui/e-week-event.c (e_week_view_add_event, e_week_view_update_event_cb, e_week_view_remove_event_cb, e_week_view_free_events): same as EDayView. 2003-08-13 Rodrigo Moya * gui/e-cal-model.c (ecm_get_color_for_component): assign the colors based on the URI, which is stored in a common place for all models. Thus different views will use the same color for the same calendar. * gui/e-week-view-event-item.c (e_week_view_event_item_draw): draw a filled rectangle and a black border around it for one-day events. * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): fill the rectangle for the item with its associated color. 2003-08-13 Rodrigo Moya * gui/gnome-cal.c (gnome_calendar_open): unref the client if there is an error. (update_query): set status bar messages for progress. (update_query_timeout): re-enabled. (client_cal_opened_cb): install timeout handler for the query updates. * gui/e-cal-view.c (e_cal_view_set_model): connect to all appropriate signals on the model, to be called for every change. (model_row_changed_cb, model_rows_changed_cb): new model callbacks. * gui/e-week-view-event-item.c (e_week_view_event_item_draw): colorize the background for multiple days events. 2003-08-12 Hans Petter Jansson * gui/calendar-offline-handler.c (impl_dispose): Chain. Prevent double unrefs. (impl_finalize): Chain. * gui/e-alarm-list.c (finalize): Chain. * gui/e-comp-editor-registry.c (destroy): Chain. Prevent double frees. (editor_destroy_cb): Don't crash if we get the destroy signal twice. * gui/e-date-time-list.c (e_date_time_list_finalize): Chain. * gui/e-meeting-attendee.c (finalize): Chain. * gui/e-meeting-model.c (finalize): Chain. 2003-08-12 Andrew Wu * gui/e-day-view.c (e_day_view_change_duration_to_start_of_work_day): In DayView, Shift+Home, Change the duration to the time that begins the current work day. (e_day_view_change_duration_to_end_of_work_day): In DayView, Shift+End, Change the duration to the time that ends the current work day 2003-08-12 Hans Petter Jansson * gui/e-itip-control.c (html_destroyed): (init): (write_html): Add destroy chaining. 2003-08-12 Andrew Wu * gui/e-week-view.c (e_week_view_on_key_up): (e_week_view_on_key_down): (e_week_view_on_key_left): (e_week_view_on_key_right): In the WeekView, Navigation through days with arrow keys. 2003-08-12 Harry Lu ** fixes #47464. * gui/dialogs/meeting-page.c: (get_widgets): The Organizer's value need not match one of the values in the list. 2003-08-12 Rodrigo Moya * gui/e-day-view.c (e_day_view_update_query): * gui/e-week-view.c (e_week_view_update_query): remove the status bar messages when the operation is finished. * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): draw a rectangle filled with the color associated with the event's calendar. 2003-08-12 Rodrigo Moya * cal-util/cal-util.[ch] (cal_util_component_has_alarms): new function. * gui/gnome-cal.[ch]: * gui/goto.c: * gui/itip-bonobo-control.c: * gui/print.c: * gui/e-week-view.[ch]: * gui/e-day-view.[ch]: lots of fixes to make all compile with no warnings. 2003-08-12 Rodrigo Moya * cal-util/cal-util.[ch] (cal_util_component_has_organizer): new function. * gui/e-day-view-main-item.c: * gui/e-day-view-top-item.c: * gui/e-week-view-event-item.c: * gui/e-week-view.c: adaptated to changes in ECalViewEvent. * gui/e-cal-model.[ch] (e_cal_model_get_client_list): new function. (ecm_append_row): fixed usage of icalcomponent variable. * gui/e-cal-view.c (e_cal_view_class_init): removed unused variable. (selection_received): use default client for pasting from clipboard. (e_cal_view_cut_clipboard): cut the appointment from its client. (e_cal_view_copy_clipboard, delete_event, on_save_as, om_print_event, e_cal_view_delete_selected_occurrence, on_meeting, on_forward, e_cal_view_create_popup_menu): adapted to changes in ECalViewEvent. (e_cal_view_delete_selected_event, e_cal_view_delete_selected_events): pass the ECalViewEvent to delete_event, so that it knows which CalClient to use. (on_edit_appointment): pass CalClient and icalcomponent to gnome_calendar_edit_object. (on_publish): publish F/B info for all the clients currently loaded in the view. (setup_popup_icons): added missing argument to gtk_image_new_from_stock. * gui/calendar-commands.c (publish_freebusy_cmd): publish F/B info for all the clients currently loaded in the view. (sensitize_calendar_commands): use icalcomponent functions. * gui/e-day-view.c: * gui/comp-editor-factory.c (impl_editExisting): * gui/calendar-offline-handler.c (backend_cal_opened_online): * gui/e-alarm-list.c (e_alarm_list_finalize): * gui/e-cal-model-tasks.c (ecmt_get_color_for_component): * gui/e-date-time-list.c (e_date_time_list_finalize): * gui/control-factory.c (get_prop): fixed warnings. 2003-08-11 Rodrigo Moya * cal-util/cal-util.[ch] (cal_util_component_is_instance, cal_util_component_has_recurrences, cal_util_component_has_rdates, cal_util_component_has_rrules, cal_util_event_dates_match): new functions needed for the CalComponent->icalcomponent transition. * gui/e-day-view.[ch]: * gui/e-week-view.[ch]: more adaptation to changes in ECalViewEvent. * gui/gnome-cal.c (gnome_calendar_edit_object): use icalcomponent's instead of CalComponent's. 2003-08-11 Rodrigo Moya * gui/e-day-view.c: more adaptation to changes in ECalViewEvent. (e_day_view_update_event_cb): use an ECalModelComponent, not a CalComponent. (process_component): pass an ECalModelComponent to e_day_view_update_event_cb(). * gui/e-week-view.c: more adaptation to changes in ECalViewEvent. (e_week_view_update_event_cb, e_week_view_reshape_event_span): set the background color on the event's summary text. 2003-08-11 Rodrigo Moya * gui/e-week-view.c (e_day_view_update_query): no more query management here. (query_obj_updated_cb, query_obj_removed_cb, query_query_done_cb, query_eval_error_cb): removed query signals' callbacks. (adjust_query_sexp): removed. (process_component): new function to draw all components from the model. * gui/e-day-view.c: adapted to changes in ECalViewEvent structure. (e_day_view_update_query): no more query management here. (query_obj_updated_cb, query_obj_removed_cb, query_query_done_cb, query_eval_error_cb): removed query signals' callbacks. (adjust_query_sexp): removed. (process_component): new function to draw all components from the model. 2003-08-11 Rodrigo Moya * gui/e-cal-view.c (e_cal_view_destroy): disconnect from signals on the model. (e_cal_view_set_model): disconnect from signals on the old model and connect on the new one. (model_changed_cb): tell the views to redraw when the model changes. * gui/gnome-cal.c (dn_query_obj_updated_cb, gnome_calendar_destroy, client_categories_changed_cb): removed the 'client' field from the private structure, so don't use it anymore (client_cal_opened_cb): if successful, add the CalClient to the views' model. (gnome_calendar_construct): don't add the client to the task model, add it in client_cal_opened_cb(). (gnome_calendar_get_cal_client): removed. (gnome_calendar_get_calendar_model): new function. (gnome_calendar_open): create the CalClient here, to be added to the views' model in client_cal_opened_cb(). 2003-08-09 Rodrigo Moya * gui/e-cal-view.[ch] (e_cal_view_get_cal_client, e_cal_view_set_cal_client, e_cal_view_get_query, e_cal_view_set_query): removed unneeded functions. (e_cal_view_get_model, e_cal_view_set_model): new functions. (e_cal_view_destroy): free the model. (e_cal_view_init): removed sexp initialization. * gui/gnome-cal.c (gnome_calendar_set_query): set the query on the view's model, not on the view. (gnome_calendar_construct): create the calendar model and associate it to all the views. 2003-08-08 Rodrigo Moya * gui/e-cal-model-calendar.c (ecmc_fill_component_from_model): implemented new virtual method. (ecmc_class_init): initialize new virtual method. 2003-08-08 Rodrigo Moya * cal-client/cal-client.c (cal_client_update_object_with_mod): cal_client_get_component_as_string_internal expects now a icalcomponent, not a CalComponent. * gui/e-cal-model.h: added fill_component_from_model virtual method. * gui/e-cal-model.c (e_cal_model_get_default_client): return the default URI as per the configuration if we've got that client loaded. If not, return the first client. (get_dtstart): retrieve the value from the icalproperty. (set_summary): implemented correctly. (set_categories, set_classification, set_description): changed to really get an ECalModelComponent. (ecm_append_row): pass the correct arguments to the set_ functions and call the class' fill_component_from_model method to fill in the created icalcomponent. * gui/e-cal-model-tasks.c (set_due): added missing function. (ecmt_set_value_at): implemented case for DUE field. (ecmt_fill_component_from_model): implemented new virtual method. (ecmt_append_row): removed. * gui/e-cal-model-calendar.c (ecmc_append_row): removed. * gui/e-calendar-table.c (e_calendar_table_init): initialize missing fields. Disabled call to g_object_unref on the 'extras' object, since it causes GLib warnings. Something is wrong here. 2003-08-08 Rodrigo Moya * gui/e-cal-model.c (cal_opened_cb): don't call remove_client, since the client, at this point, hasn't been added anywhere. (ecm_finalize): don't call e_cal_model_remove_all_clients, since that function triggers notifications on the model. (query_obj_updated_cb): free all the date fields. 2003-08-07 Rodrigo Moya * gui/e-cal-model.c (ecm_value_at): don't convert to an integer the return value from get_color. (ecm_get_color_for_component): use correct GTK 2.x color values. * gui/e-calendar-table.c: replace all CAL_COMPONENT_FIELD... with the correct E_CAL_MODEL_*_FIELD... 2003-08-07 Rodrigo Moya * gui/e-cal-model-tasks.c (get_completed, get_due): added missing implementation. (ecmt_class_init): initialize missing virtual method. * gui/gnome-cal.c (gnome_calendar_construct): fixed typo. 2003-08-07 Rodrigo Moya * cal-client/cal-client.[ch] (cal_client_get_component_as_string): * cal-util/cal-util.[ch] (cal_util_add_timezone_from_component): use icalcomponent's instead of CalComponent's. * gui/Makefile.am: * gui/calendar-model.[ch]: removed old model class. * gui/e-calendar-table.[ch]: use ECalModelTasks class instead of CalendarModel. (e_calendar_table_set_status_message): new function. (get_selected_comp): return an ECalModelComponent. (get_selected_objects): return a list of ECalModelComponent's. (delete_selected_components): use the CalClient associated with each component. (copy_row_cb): adapted to changes in get_selected_comp. * gui/e-tasks.c: * gui/print.c: * gui/dialogs/comp-editor.c (save_as_cmd): * gui/e-day-view.c (e_day_view_on_drag_data_get): * gui/e-cal-view.c (e_cal_view_copy_clipboard, on_save_as): pass an icalcomponent to cal_util_add_timezones_from_component and cal_client_get_component_as_string. * gui/e-cal-model.[ch] (e_cal_model_set_use_24_hour_format): (e_cal_model_get_default_client): (e_cal_model_set_default_category): new functions. * gui/e-cal-model-tasks.[ch] (e_cal_model_tasks_mark_task_complete): new function. (ecmt_get_color_for_component): chain the call to the parent class so that it assigns the per-client color to 'normal' tasks. * gui/calendar-config.c (calendar_config_configure_e_calendar_table): call e_cal_model_set_use_24_hour_format. 2003-08-07 Rodrigo Moya * gui/e-cal-model.c (ecm_get_color_for_component): use the color palette from Tuomas. 2003-08-06 Rodrigo Moya * gui/e-cal-model.[ch]: removed 'create_component_with_defaults' virtual method. (e_cal_component_create_component_with_defaults): (e_cal_component_get_color_for_component): new functions. 2003-08-06 Rodrigo Moya * gui/e-cal-model.[ch] (e_cal_model_set_query): new function. (e_cal_model_remove_all_clients): implemented. (remove_client): also remove all objects belonging to the client being removed. 2003-08-06 Rodrigo Moya * gui/e-cal-model.c (get_dtstart, set_dtstart): implemented. (ecm_value_at, ecm_set_value_at, ecm_duplicate_value, ecm_free_value, ecm_value_to_string): added case for DTSTART field. (free_comp_data): free also the other date values in the ECalModelComponent struct. (e_cal_model_date_value_to_string): new function. * gui/e-cal-model.h: added new prototypes. * gui/e-cal-model-calendar.[ch]: new ECalModel-based class for containing events. * gui/e-cal-model-tasks.c (ecmt_value_to_string): implemented the case for date fields. 2003-08-05 Rodrigo Moya * cal-client/cal-client.c (generate_instances_obj_updated_cb): fixed parameters in call to cal_client_get_object(). (get_objects_atomatically): same. * gui/e-cal-model.[ch]: added "get_color_for_component" virtual method. (get_color): new function to return the color. It calls the virtual method of the current class. (ecm_value_at): return a value for the color and icon columns. (e_cal_model_class_init): initialize virtual methods. * gui/e-cal-model-tasks.c (ecmt_get_color_for_component): implemented new class' virtual method. 2003-08-05 Rodrigo Moya * cal-client_/cal-client.c (cal_client_get_default_object): use correctly the pointer to pointer. * gui/e-week-view.c (query_obj_updated_cb): fixed the call to cal_client_get_object(). 2003-08-04 Rodrigo Moya * cal-client/cal-client.[ch] (cal_client_get_default_object): (cal_client_get_object): use icalcomponent instead of CalComponent. * gui/e-cal-model.c (get_dtstart): implemented. (query_obj_updated_cb): (query_obj_removed_cb): (query_done_cb): (query_eval_error_cb): implemented missing functions. * gui/calendar-model.c: * gui/comp-editor-factory.c: * gui/comp-util.c: * gui/e-day-view.c: * gui/e-itip-control.c: * gui/e-week-view.c: * gui/gnome-cal.c: * gui/dialogs/comp-editor.c: * conduits/todo/todo-conduit.c: * conduits/calendar/calendar-conduit.c: adapted to changes in CalClient API. 2003-08-04 Rodrigo Moya * cal-client/cal-query.[ch] (cal_query_new): added a 'CalClient' argument to this function. (cal_query_get_client): new function. * cal-client/cal-client.c (cal_client_get_query): added new parameter in call to cal_query_new (). 2003-08-01 Lorenzo Gil * gui/e-alarm-list.c: added the include line at the beginning to enable gettext. 2003-08-01 Rodrigo Moya * gui/e-cal-model.[ch] (e_cal_model_get_component_at): new function. (ecm_append_row): use the client from the source model. (e_cal_model_get_timezone, e_cal_model_set_timezone): new functions. * gui/e-cal-model-tasks.[ch]: new class for the tasks model. 2003-07-31 Rodrigo Moya * gui/e-cal-model.[ch]: new class, based on CalendarModel to be an abstract class for calendar models. * gui/Makefile.am: added new files to build. 2003-07-30 Rodrigo Moya * cal-client/cal-client-multi.[ch]: * cal-client/Makefile.am: removed obsolete code. 2003-07-29 Rodrigo Moya Fixes all "alarm daemon doesn't start with session" * gui/alarm-notify/notify-main.c (main): use LIBGNOMEUI_MODULE instead of LIBGNOME_MODULE so that the default session client is created in gnome_program_init. 2003-07-29 Harry Lu Fixes #46769 * gui/dialogs/task-page.c: (task_page_fill_component): Popup a error dialog if due date time is before start datetime when saving a task. 2003-07-29 Bolian Yin Fixes #46847 * gui/e-day-view.c (e_day_view_get_next_tab_event, e_day_view_focus): add day view widget in the tab loop of events. * gui/e-week-view.c (e_week_view_get_next_tab_event, e_week_view_focus): add week view widget in the tab loop of events. Also: add some comments in gui/e-day-view.c and gui/e-week-view.c remove two compile warnings in gui/e-day-view.c 2003-07-24 Rodrigo Moya * gui/e-cal-view.[ch] (e_cal_view_delete_selected_occurrence): new function. (e_cal_view_get_timezone, e_cal_view_set_timezone): new functions. (e_cal_view_class_init): added new class' signal. * gui/e-week-view.[ch] (e_week_view_delete_occurrence, e_week_view_delete_occurrence_internal): removed. (e_week_view_get_timezone): removed. (e_week_view_set_timezone): renamed to timezone_changed_cb, as the callback for timezone changes in the parent ECalView. (e_week_view_on_button_press): call gnome_calendar_new_appointment instead of the non-existant e_week_view_new_appointment. * gui/e-day-view.[ch] (e_day_view_delete_occurrence, e_day_view_delete_occurrence_internal): removed. (e_day_view_get_timezone): removed. (e_day_view_set_timezone): renamed to timezone_changed_cb, as the callback for timezone changes in the parent ECalView. * gui/gnome-cal.c (gnome_calendar_delete_selected_occurrence): made it call e_cal_view_delete_selected_occurrence. (gnome_calendar_update_config_settings): call the generic e_cal_view_set_timezone on all view widgets. * gui/e-day-view-top-item.c: * gui/e-week-view-main-item.c: * gui/e-day-view-main-item.c: removed mentions to non-existant structure fields. 2003-07-24 Rodrigo Moya * gui/e-cal-view.h: define ECalViewEvent as the base struct for the other views. * gui/e-day-view.[ch]: EDayViewEvent is now based on ECalViewEvent. (e_day_view_get_selected_events): made it return a list of ECalViewEvent's, not CalComponent's, so that we can get more information about the events. * gui/e-week-view.[ch]: EWeekViewEvent is now based on ECalViewEvent. (e_week_view_get_selected_events): same as e_day_view_get_selected_events. * gui/e-cal-view.c (e_cal_view_cut_clipboard, e_cal_view_copy_clipboard, e_cal_view_delete_selected_event, e_cal_view_delete_selected_events, on_edit_appointment, on_save_as, on_print_event, on_meeting, on_forward, e_cal_view_create_popup_menu): * gui/calendar-commands.c (sensitize_calendar_commands): updated to read ECalViewEvent's instead of CalComponent's as returned by e_cal_view_get_selected_events(). 2003-07-24 Rodrigo Moya * gui/e-cal-view.c (delete_event): check the uid before using it. 2003-07-24 Rodrigo Moya * gui/e-day-view.c (e_day_view_delete_event, e_day_view_delete_event_internal): * gui/e-week-view.c (e_week_view_delete_event, e_week_view_delete_event_internal): removed. * gui/e-cal-view.[ch] (e_cal_view_delete_selected_event): renamed from e_cal_view_delete_event_internal. (e_cal_view_delete_selected_events): new function. * gui/gnome-cal.c (gnome_calendar_delete_selection): call e_cal_view_delete_selected_events(). * gui/e-week-view-event-item.c (e_week_view_event_item_get_position, e_week_view_event_item_button_press): * 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): adapted to changes in E*ViewPosition. 2003-07-24 Rodrigo Moya * gui/e-cal-view.c (on_print): added missing cases. (setup_popup_icons): new function to set up icons for the popup menu. (e_cal_view_create_popup_menu): call setup_popup_icons. 2003-07-23 Rodrigo Moya * gui/e-cal-view.[ch]: moved the duplicated popup menu code here. (e_cal_view_create_popup_menu): new function to create the popup menu for all views. (on_new_appointment, on_new_event, on_new_meeting, on_new_task, on_goto_today, on_goto_date, on_edit_appointment, on_print, on_save_as, on_print_event, on_meeting, on_forward, on_publish, on_settings, on_delete_appointment, on_cut, on_copy, on_paste, on_unrecur_appointment): callbacks for the popup menu items. * gui/e-week-view.c (e_week_view_on_new_appointment, e_week_view_new_appointment, e_week_view_on_new_event, e_week_view_on_new_meeting, e_week_view_on_new_task, e_week_view_on_goto_today, e_week_view_on_goto_date, e_week_view_on_edit_appointment, e_week_view_on_print, e_week_view_on_save_as, e_week_view_on_print_event, e_week_view_on_meeting, e_week_view_on_forward, e_week_view_on_publish, e_week_view_on_settings, e_week_view_on_delete_appointment, e_week_view_delete_event_internal, e_week_view_on_cut, e_week_view_on_copy, e_week_view_on_paste): * gui/e-day-view.c (e_day_view_on_new_appointment, e_day_view_on_new_event, e_day_view_on_new_meeting, e_day_view_on_new_task, e_day_view_on_goto_today, e_day_view_on_goto_date, e_day_view_on_edit_appointment, e_day_view_on_print, e_day_view_on_save_as, e_day_view_on_print_event, e_day_view_on_meeting, e_day_view_on_forward, e_day_view_on_publish, e_day_view_on_settings, e_day_view_on_delete_appointment, e_day_view_delete_event_internal, e_day_view_on_cut, e_day_view_on_copy, e_day_view_on_paste): removed duplicated code. * gui/gnome-cal.[ch] (gnome_calendar_unrecur_selection): new function. 2003-07-23 Dan Winship * cal-util/Makefile.am: Use EVO_MARSHAL_RULE, and add MARSHAL_GENERATED to CLEANFILES * gui/alarm-notify/alarm-queue.c (on_dialog_obj_updated_cb): Fix an unused variable * gui/calendar-commands.c (purge_cmd): Fix warnings. * gui/calendar-config.h: s/confirm_expunge/confirm_purge/ to match the actual functions * gui/control-factory.c: add some missing #includes * gui/dialogs/delete-comp.c (delete_component_dialog): Fix a warning * gui/e-itip-control.c (write_label_piece): Remove unused variable. * gui/print.c (print_calendar): Remove unused variable (print_comp): Likewise. * gui/tasks-control.c (confirm_purge): Fix warnings. (print_tasks): Remove unused variable. 2003-07-23 Rodrigo Moya * gui/e-day-view.h: * gui/e-week-view.h: removed unneeded prototypes. * gui/e-cal-view.[ch] (e_cal_view_get_visible_time_range): new function. (selection_received): deal correctly with the selected time range. * gui/e-week-view.c (e_week_view_get_visible_time_range): made it private as the implementation of the 'get_visible_time_range' virtual method. * gui/e-day-view.c (e_day_view_get_visible_time_range): ditto. * gui/gnome-cal.c (gnome_calendar_direction): merged redundant 'case'. (focus_current_view): removed redundant code. 2003-07-22 Rodrigo Moya * gui/e-day-view.c (e_day_view_get_selected_events): * gui/e-week-view.c (e_week_view_get_selected_events): manage the case where the selected events are the popup menu ones. 2003-07-22 Rodrigo Moya * gui/gnome-cal.c (gnome_calendar_copy_clipboard, gnome_calendar_cut_clipboard, gnome_calendar_paste_clipboard): removed missing calls to e_day/week_view_*_clipboard. 2003-07-22 Rodrigo Moya * gui/e-cal-view.[ch]: added "get_selected_events", and "update_query" virtual methods. (e_cal_view_class_init): initialize new virtual methods. (e_cal_view_destroy): destroy new private members. (e_cal_view_get_selected_events, e_cal_view_set_cal_client, e_cal_view_get_cal_client): new functions. (e_cal_view_cut_clipboard, e_cal_view_copy_clipboard, e_cal_view_paste_clipboard): merged clipboard stuff. * gui/e-day-view.c (e_day_view_cut_clipboard, e_day_view_copy_clipboard, e_day_view_paste_clipboard): removed. (e_day_view_get_selected_events): made these private as the implementation of the 'get_selected_events' base class virtual method. * gui/e-week-view.c (e_week_view_get_selected_events): ditto. (e_week_view_cut_clipboard, e_week_view_copy_clipboard, e_week_view_paste_clipboard): removed. * gui/calendar-commands.c (sensitize_calendar_commands): call e_cal_view_get_selected_events. * gui/gnome-cal.c: removed a lot of redundant code thanks to the above changes. 2003-07-21 Rodrigo Moya * gui/e-day-view.[ch]: removed e_day_view_set_calendar prototype. (e_day_view_set_status_message): removed. * gui/e-week-view.[ch] (e_week_view_set_status_message): removed. * gui/e-cal-view.[ch] (e_cal_view_set_status_message): new functions. (e_cal_view_destroy): unref activity client. * gui/gnome-cal.c: updated to e_*_view/e_cal_view. 2003-07-18 Rodrigo Moya * gui/e-day-view.[ch]: * gui/e-week-view.[ch]: moved duplicated code to... * gui/e-cal-view.[ch]: ...here. (e_cal_view_get_calendar, e_cal_view_set_calendar): new functions. * gui/e-week-view-event-item.c (e_week_event_item_double_click): * gui/gnome-cal.c (setup_widgets): adapted to changes in views. 2003-07-17 Rodrigo Moya * gui/e-cal-view.[ch]: new base class for calendar views. * gui/e-day-view.[ch]: * gui/e-week-view.[ch]: base these classes on ECalView. * gui/Makefile.am: added new files. 2003-07-17 Rodrigo Moya * gui/calendar-config.[ch]: * gui/tasks-control.c: s/expunge/purge. 2003-07-16 Rodrigo Moya * gui/gnome-cal.[ch] (gnome_calendar_purge): new function, which uses a CalQuery to retrieve the objects older than a given date. (check_instance_cb): callback for cal_recur_generate_instances. (purging_obj_updated_cb): call check_instance_cb on each recurrence to double-check the event can be deleted. (purging_query_done_cb, purging_eval_error_cb): needed callbacks to finish the query. (gnome_calendar_destroy): free new members. * gui/calendar-commands.c (purge_cmd): added implementation for the 'Purge' menu item. 2003-07-16 Andrew Wu Fixes #45774 * gui/e-day-view.c (e_day_view_goto_start_of_work_day): implemented select the time that begins a work day. (e_day_view_goto_end_of_work_day): implemented select the time that ends a work day. 2003-07-16 Andrew Wu Fixes #45772 * gui/gnome-cal.c(gnome_calendar_goto_date): implemented Alt+Left/Right to go to the same day of the previous/next week. * gui/gnome-cal.h:add two element in GnomeCalendarGotoDateType. 2003-07-14 Rodrigo Moya Fixes #41676 * gui/dialogs/alarm-options.c (palarm_options_changed_cb, repeat_spin_button_changed_cb, repeat_unit_changed_cb): new callbacks for managing modifications in the 'Run a program' alarm case. (repeat_toggle_toggled_cb): if the alarm being edited has a procedure action, call palarm_options_changed_cb. (init_widgets): connect new callbacks. (alarm_to_dialog): disable 'OK' button if a procedure alarm. 2003-07-11 Federico Mena Quintero * gui/dialogs/task-details-page.glade: Changed the "URL:" label to "_Web Page:". Added a widget name to the URL label so that we can hook up its mnemonic by hand. Added underlines to the "% Complete:" and "Date Completed:" labels. Added a widget name to the date completed label, also so that we can hook up its mnemonic. * gui/dialogs/task-details-page.c (get_widgets): Get the url_label and date_completed_label as well. (init_widgets): Set the mnemonic widgets of the url_label and the date_completed_label by hand, as their respective widgets are not created by libglade. * gui/e-calendar-table.c (tasks_popup_menu): Added an item for "Open Web Page". (e_calendar_table_show_popup_menu): Disable the aforementioned menu item if the selected task doesn't have the URL property set. (open_url_cb): New callback. * gui/e-tasks.c (write_html): Make the HTML say "Web Page:" instead of "URL:". 2003-07-10 Harry Lu Fixes #46075. * gui/e-date-time-list.c (compare_datetime): new function to compare two CalComponentDateTime instances. (e_date_time_list_append): check whether the date already exists before adding it to the list. 2003-07-07 Rodrigo Moya Fixes #45910 * gui/dialogs/task-editor.c (task_editor_class_init): set up the handler for the set_cal_client virtual method. (task_editor_set_cal_client): added missing virtual method. 2003-07-07 Jack Jia * cal-client/cal-client.c (cal_client_get_static_capability): add g_return_val_if_fail to check the input param. 2003-07-03 Rodrigo Moya * gui/e-tasks.c (setup_widgets): added a paned widget to contain the task list and a HTML widget for displaying the task's details. Connect to "cursor_change" signal on the ETable. (table_cursor_change_cb): update the HTML view every time the selected task changes. (timet_to_str_with_zone): new function copied from alarm daemon. (url_requested_cb): callback for "url_requested" signal on the GtkHTML widget. (on_link_clicked_cb): respond to clicks linked on the HTML widget. (vpaned_resized_cb): set the configuration entry for the task vpane position. (e_tasks_destroy): free new member. (e_tasks_construct): connect to "obj_removed" signal on the CalClient. (client_obj_removed_cb): if the updated object is the one being displayed in the HTML widget, update it. * gui/calendar-config.[ch] (calendar_config_get_task_vpane_pos): (calendar_config_gset_task_vpane_pos): new functions. * gui/apps_evolution_calendar.schemas: added task vpane position. 2003-07-03 Antonio Xu Fixes #45767 * conduits/todo/Makefile.am: removed libwombat from the build. 2003-07-02 Harry Lu Fixes #44485 * gui/e-timezone-entry.c (e_timezone_entry_set_entry): pass a new allocated string to gtk_entry_set_text instead of the one that might come from gettext. 2003-07-02 Dan Winship * cal-client/cal-client.c (real_open_calendar): Don't leak exceptions (load_static_capabilities): free the capability string * gui/dialogs/task-page.c (task_page_fill_component): Free the description text if it *was* set, rather than if it wasn't. * gui/dialogs/task-editor.c (task_editor_finalize): Free the priv struct. 2003-07-02 Bolian Yin Fixes #45328, #45329 * gui/e-day-view.c (e_day_view_do_key_press): Do not process PageUp/PageDown, .. when the Alt key is pressed (give key binding set the chance). * gui/gnome-cal.h : define new enum type, GNOME_CAL_GOTO_DATE_TYPE. * gui/gnome-cal.c (gnome_calendar_class_init): define new signal "goto_date". Add key bindings for "Alt+PageUp/PageDown", "Alt+Home/End". (gnome_calendar_goto_date): Impl. signal handler for "goto_date". 2003-07-01 Rodrigo Moya Fixes #45524 * gui/calendar-commands.c: use stock icons where approppriate. * gui/tasks-control.c: removed EPixmaps structure, since we only use stock icons now. (tasks_control_activate): no need to call e_pixmaps_update. 2003-07-01 Bolian Yin Fixes #45274 * gui/e-week-view.c: implemented tabbing though events in week view. 2003-06-30 Rodrigo Moya * cal-client/cal-client.c: removed usage of WombatClient. (client_get_password_cb, client_forget_password_cb): removed. (real_open_calendar): don't create the WombatClient object. (cal_client_init, cal_client_finalize): removed WombatClient related code. (cal_client_finalize): re-enabled call to destroy_factories. * pcs/cal.c: removed usage of WombatClient interface. (cal_construct): don't get a reference to the WombatClient. (cal_get_password, cal_forget_password): removed unused functions. * conduits/calendar/Makefile.am: * cal-client/Makefile.am: removed references to libwombat. 2003-06-27 Rodrigo Moya * gui/dialogs/send-comp.[ch] (send_component_dialog): * gui/dialogs/cancel-comp.[ch] (cancel_component_dialog): added a GtkWindow argument for callers to specify the parent window. * gui/dialogs/changed-comp.[ch] (changed_component_dialog): added 'parent' argument and use GtkMessageDialog instead of gnome_question_dialog. * gui/e-calendar-table.c (e_calendar_table_delete_selected): * gui/e-day-view.c (e_day_view_delete_event_internal, e_day_view_on_cut, e_day_view_finish_long_event_resize, e_day_view_finish_resize, e_day_view_on_editting_stopped, e_day_view_on_top_canvas_drag_data_received, selection_received): * gui/e-week-view.c (e_week_view_delete_event_internal, e_week_view_on_cut, e_week_view_on_editing_stopped, selection_received): * gui/dialogs/event-editor.c (cancel_meeting_cmd): * gui/dialogs/task-editor.c (cancel_task_cmd): * gui/dialogs/comp-editor.c (delete_cmd, obj_removed_cb): pass the parent window to the *_component_dialog() functions. * gui/dialogs/delete-comp.c (delete_component_dialog): use the 'widget' argument to get the parent window for the dialog. 2003-06-26 Bolian Yin Fixes #45276 * gui/e-day-view.c (e_day_view_on_text_item_event): set focus to dayview when editing is canceled. * gui/e-week-view.c (e_week_view_on_text_item_event): set focus to weekview when editing is canceled 2003-06-25 Rodrigo Moya Fixes #44723 * gui/dialogs/alarm-page.c: added a new field to the private structure to keep track of the old summary. (alarm_page_init): initialize new field. (alarm_page_finalize): free new field. (alarm_page_set_summary): iterate over the list of alarms to change their description if it was the same as the event's summary. 2003-06-25 Rodrigo Moya Fixes #44719 * gui/alarm-notify/alarm-notify-dialog.c (alarm_notify_dialog): use gtk_window_set_icon_from_file to set the window's icon and implemented the code to make the window sticky with GTK 2.x API. 2003-06-25 Bolian Yin Fixes #45275 * gui/e-calendar-table.c (e_calendar_table_show_popup_menu): new function. (e_calendar_table_on_right_click_menu): call e_calendar_table_show_popup_menu. (e_calendar_table_on_popup_menu): callback for "popup_menu" signal. (e_calendar_table_init): connect to ETable's "popup_menu" signal. 2003-06-25 Bolian Yin Fixes #45273 * gui/e-day-view.c: implemented tabbing though events in day view. 2003-06-23 Rodrigo Moya * gui/dialogs/comp-editor.c (make_title_from_string, set_title_from_string): new functions. (page_summary_changed_cb): change the window title when the object's summary changes. 2003-06-22 Rodrigo Moya * cal-client/cal-client.c (get_factories): don't use a static GList, since the value returned is freed in destroy_factories, making several clients use a buggy GList if one of them happen to be destroyed. 2003-06-22 Hans Petter Jansson * gui/print.c (get_font_for_size): Remove debug output. * gui/tasks-control.c (print_tasks): Ref and sink the printable. Use fixed (5%) margins instead of what gnome-print gives us. 2003-06-19 Dan Winship * pcs/cal-backend.c (cal_backend_finalize): don't leak the CalBackendPrivate. 2003-06-18 Dan Winship * gui/calendar-config.c (calendar_config_get_hpane_pos) (calendar_config_get_vpane_pos) (calendar_config_get_month_hpane_pos) (calendar_config_get_month_vpane_pos): Plug in the defaults from the schemas file here, so that even if something goes wrong with the schemas, people will still get reasonable defaults instead of "I click on the calendar and it shows me tasks". 2003-06-16 Rodrigo Moya * gui/dialogs/comp-editor.c (make_title_from_comp): removed unused variable. 2003-06-12 Jack Jia * gui/e-itip-control.c (struct _EItipControlPrivate): switch the "view_only" arg to be an int. (init): ditto. (e_itip_control_set_view_only): ditto. (e_itip_control_get_view_only): ditto. * gui/itip-bonobo-control.c (get_prop): switch BONOBO_ARG_SET_BOOLEAN to BONOBO_ARG_SET_INT. (set_prop): switch BONOBO_ARG_GET_BOOLEAN to BONOBO_ARG_GET_INT. (itip_bonobo_control_new): switch BONOBO_ARG_BOOLEAN to BONOBO_ARG_INT. Function "bonobo_property_bag_client_set_value_gboolean" can not work on solaris. 2003-06-10 Bolian Yin Fixes #44682, Shift+F10 to active popup menu on day/week view * gui/e-day-view.c (e_day_view_key_press, e_day_view_do_key_press): When the key press is not handled, give keybindings the chance. (e_day_view_popup_menu, e_day_view_show_popup_menu, e_day_view_on_event_right_click ): popup menu will be activated from both keyboard and mouse. * gui/e-week-view.c (e_week_view_key_press, e_week_view_do_key_press): When the key press is not handled, give keybindings the chance. (e_week_view_popup_menu): popup menu can be activated from keyboard 2003-06-10 Rodrigo Moya Fixes #41582 * gui/gnome-cal.c (gnome_calendar_hpane_resized): killed warnings and added code to resize the EDayView's time column on the hpane's resizing. (gnome_calendar_vpane_resized): killed warnings. 2003-06-05 Not Zed ** For #42691. * gui/Makefile.am (%.server.in): implicit rule for .in file. (BUILT_SOURCES): added server_DATA. * gui/alarm-notify/Makefile.am (%.server.in): added implicit rule for .in file. (BUILT_SOURCES): added server_DATA. 2003-06-04 Rodrigo Moya * pcs/query.c (start_cached_query_cb): adapted to changes in EComponentListener API. (query_construct): ditto. * cal-client/cal-client.c (cal_opened_cb): ditto.