| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
svn path=/trunk/; revision=22965
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-08-21 Rodrigo Moya <rodrigo@ximian.com>
* 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.
svn path=/trunk/; revision=22326
|
|
|
|
| |
svn path=/trunk/; revision=22143
|
|
|
|
| |
svn path=/trunk/; revision=22129
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-04-24 Rodrigo Moya <rodrigo@ximian.com>
Fixes #41661
* idl/evolution-calendar.idl: added discardAlarm method to
GNOME:Evolution:Calendar:Cal interface.
* pcs/cal.c (cal_class_init): set new epv's method.
(impl_Cal_discardAlarm): implementation of new CORBA method.
* pcs/cal-backend.[ch]: added 'discard_alarm' virtual method, and
CAL_BACKEND_RESULT_NOT_IMPLEMENTED to CalBackendResult enum.
(cal_backend_class_init): initialize new class method.
(cal_backend_discard_alarm): new method.
(cal_backend_update_objects, cal_backend_remove_object): return
proper CalBackendResult values.
* pcs/cal-backend-file.c (cal_backend_file_class_init): initialize
new class method.
(cal_backend_file_discard_alarm): implementation of new method.
* pcs/cal-client.[ch] (cal_client_discard_alarm): new function.
* gui/alarm-notify/alarm-queue.c (remove_qeueud_alarm): don't remove
the alarm directly from the component, call cal_client_discard_alarm
and let the backend deal with it.
svn path=/trunk/; revision=20973
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-03-04 JP Rosevear <jpr@ximian.com>
* pcs/cal.c (impl_Cal_get_ldap_attribute): implement
* pcs/cal-backend.h: add virtual method
* pcs/cal-backend.c (cal_backend_get_ldap_attribute): call
get_ldap_attribute_method
* pcs/cal-backend-file.c (cal_backend_file_class_init): overrid
get_ldap_attribute method
* idl/evolution-calendar.idl: add getLdapAttribute method
* gui/e-meeting-model.c (process_section): take simple card list
as arg and try to use the ldap attribute (if any) as the attendee,
else use the email address
(select_names_ok_cb): get the simple card list
* cal-client/cal-client.h: add proto
* cal-client/cal-client.c (cal_client_init): init ldap_attribute
to NULL
(cal_client_destroy): free ldap_attribute
svn path=/trunk/; revision=20154
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-03-04 JP Rosevear <jpr@ximian.com>
* gui/itip-utils.c (itip_organizer_is_user): call
cal_client_get_cal_address instead of cal_client_get_email_address
* gui/dialogs/meeting-page.c (meeting_page_construct): ditto
* pcs/cal.c (impl_Cal_get_cal_address): implement updated method
name
(cal_class_init): set method implementation
* pcs/cal-backend.c (cal_backend_class_init): init get_cal_address
virtual function
(cal_backend_get_cal_address): call proper function
* pcs/cal-backend.h: update proto, rename get_email_address
virtual function to get_cal_address virtual function
* pcs/cal-backend-file.c (cal_backend_file_class_init): match
get_cal_address call
(cal_backend_file_get_cal_address): rename from
cal_backend_file_get_email_address
* cal-client/cal-client.c: rename email_address private member to
cal_address
(cal_client_init): init cal_address
(cal_client_destroy): free cal_address and properly free
alarm_email_address
(cal_client_get_cal_address): rename from
cal_client_get_email_address and call proper corba function
svn path=/trunk/; revision=20151
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-03-04 JP Rosevear <jpr@ximian.com>
Merging in 1.2 stuff
Fixes #35598
* gui/dialogs/task-details-page.c
(task_details_page_fill_widgets): count a status of needs action
as a status of none (not started)
(date_changed_cb): set the option menu to a status of none
(status_changed): no need to handle needs action status now
* gui/dialogs/task-details-page.glade: remove needs-action menu
item
Fixes #36763
* gui/dialogs/alarm-page.c (add_clicked_cb): if no address was set
for an email alarm, set the default
(button_options_clicked_cb): pass the default email address
* gui/dialogs/alarm-options.h (alarm_options_dialog_run): update
proto
* gui/dialogs/alarm-options.c (alarm_to_malarm_widgets): if there
are no email attendees, default to the passed in value
(alarm_options_dialog_run): take and track an email param
* pcs/cal.c (impl_Cal_get_alarm_email_address): implement by
calling backend method
(cal_class_init): set alarm email address method implementation
* pcs/cal-backend.h: add new virtual proto
* pcs/cal-backend.c (cal_backend_class_init): set alarm email
address virtual method to NULL
(cal_backend_get_alarm_email_address): call backend method
* pcs/cal-backend-file.c (cal_backend_file_class_init): set alarm
email address method
(cal_backend_file_get_alarm_email_address): implement by returning
NULL
* idl/evolution-calendar.idl: add getAlarmEmailAddress method
Fixes #37102
* gui/dialogs/task-editor.c (set_menu_sens): don't allow task
assignment if the backend says not to
* gui/dialogs/recurrence-page.c (fill_component): kill warning
(preview_recur): display the recurrences in the dtstart timezone
if possible
* gui/gnome-cal.c (dn_query_obj_updated_cb): pass NULL to use
default tag zone
* gui/tag-calendar.c (tag_calendar_by_comp): allow display zone
for the tagged calendar to be passed in
(prepare_tag): use the passed in timezone for display if non-null
* gui/tag-calendar.h (tag_calendar_by_comp): update proto
* gui/dialogs/recurrence-page.c (recurrence_page_set_dates): make
sure we always update the preview
* conduits/todo/todo-conduit.c (add_record): make sure to create a
unique uid for the record
* conduits/calendar/calendar-conduit.c (add_record): ditto
* conduits/todo/todo-conduit.c (e_todo_context_new): init default
comp and timezone to NULL
(e_todo_context_destroy): unref default comp
(pre_sync): et the default comp via the client and set the default
timezone
(add_record): pass the default comp as the base comp
* conduits/calendar/calendar-conduit.c (e_calendar_context_new):
init default comp to NULL
(e_calendar_context_destroy): unref default comp
(pre_sync): get the default comp via the client
(add_record): pass the default comp as the base comp
* conduits/calendar/calendar-conduit.c (local_record_from_comp):
only add the recurrence rule if its not an instance
* gui/itip-control-factory.c (set_data_idle_cb): idle call back to
set control data
(pstream_load): set the data in an idle callback to avoid deadlock
(get_prop): handle view_only
(set_prop): ditto
(itip_control_factory): add view_only
* gui/e-itip-control.h: add protos
* gui/e-itip-control.c (write_html): only write out the options if
we aren't in view_only mode
(e_itip_control_set_view_only): accessor
(e_itip_control_get_view_only): ditto
Fixes #36909
* gui/dialogs/alarm-page.c (button_options_clicked_cb): indicate
whether the options dialog should allow repeating
* gui/dialogs/alarm-options.h: update proto
* gui/dialogs/alarm-options.c (alarm_to_repeat_widgets): if
repeating is not allowed, sensitize the widgets appropriately
(alarm_options_dialog_run): store the repeat param
* gui/calendar-model.c (calendar_model_append_row): guard against
saving before the calendar is open
* gui/e-day-view.c (e_day_view_key_press): ditto
* gui/dialogs/comp-editor.c (page_changed_cb): change warning
dialog to not mention email
(page_summary_changed_cb): ditto
(page_dates_changed_cb): ditto
* gui/itip-utils.c (itip_organizer_is_user): make the compare case
insensitive
* gui/dialogs/meeting-page.c (meeting_page_fill_widgets): don't
allow the organizer to be changed if its not an email address
* gui/e-day-view.c, calendar-model.c, e-week-view.c,
task-editor.c, event-editor.c, comp-editor.c, meeting-page.c: pass
additional param
* gui/itip-utils.c (itip_organizer_is_user): take client as param,
and if organizer-not-email-address and email address and organizer
match, assume the user is the organizer
* gui/itip-utils.h: update proto
* pcs/cal.c (build_fb_seq): set the max
* gui/e-meeting-model.c
(e_meeting_model_add_attendee_with_defaults): correct typo and set
rsvp appropriately
* gui/dialogs/send-comp.c (send_component_dialog): if save
schedules, return FALSE for now
* gui/dialogs/recurrence-page.c (sensitize_recur_widgets):
de-sensitize the preview widget if we are viewing an instance
(preview_recur): return if the comp is an instance
* gui/dialogs/event-page.glade: name the show time frame
* gui/dialogs/event-page.c (event_page_fill_widgets)
(event_page_init): init show time frame
(event_page_fill_widgets): hide/show frame as needed
(get_widgets): get the frame
* gui/alarm-notify/alarm-queue.c (mail_notification): kill mail
notification code
* cal-client/cal-client.c (load_static_capabilities): grab static
capabilities string
(check_capability): see if a capability is in the string
(cal_client_get_one_alarm_only): accessor
(cal_client_get_organizer_must_attend): use check_capability
(cal_client_get_static_capability): ditto
* cal-client/cal-client.h: new, changed protos
* idl/evolution-calendar.idl: change over getSchedulingInformation
to a more general getStaticCapabilities call
* pcs/cal-backend-file.c
(cal_backend_file_get_static_capabilities): return
"no-email-alarms"
* pcs/cal-backend.c (cal_backend_get_static_capabilities): ditto
* pcs/cal-backend.h: ditto
* pcs/cal.c (impl_Cal_get_static_capabilities): ditto
* gui/alarm-notify/alarm-queue.c (get_default_address): utility
routine to snag address info
* gui/alarm-notify/Makefile.am: build composer idl
* *.c: pass client param for send an cancel params
* gui/dialogs/send-comp.c (send_component_dialog): take client as
a parm and if save schedules return true right away
* gui/dialogs/send-comp.h: update proto
* gui/dialogs/cancel-comp.c (cancel_component_dialog): take client
as a param and if we are deleting and schedule saves, return true
right away
* gui/dialogs/cancel-comp.h (cancel_component_dialog): update
proto
* gui/dialogs/alarm-options.glade: add Send To: button
* gui/dialogs/alarm-options.c (addressbook_clicked_cb): display
dialog
(setup_select_names): attach above to Send To: button clicked
signal
* gui/dialogs/alarm-options.c (get_widgets): get mail alarm
widgets
(setup_select_names): add the select names widget
(alarm_to_malarm_widgets): show the attendees and description
(alarm_to_dialog): set the title for mail alarms properly
(malarm_widgets_to_alarm): save attendees and descriptions in
alarm
(alarm_options_dialog_run): call setup_select_names
* gui/dialogs/alarm-page.c: add email to alarm types
* gui/dialogs/alarm-options.glade: add mail alarm widgets
* gui/dialogs/alarm-page.glade: add email to alarm types
* cal-util/cal-component.c (scan_attendee): kill unnecessary
CalComponent param
(scan_property): don't pass same
(set_attendee_list): take an icalcomp instead of a CalComponent
(cal_component_set_attendee_list): pass same
(scan_alarm_property): if its an attendee, scan it
(make_alarm): set attendee_list member to null
(cal_component_alarm_new): ditto
(cal_component_alarm_free): free attendee list
(cal_component_alarm_get_attendee_list): return attendee list
(cal_component_alarm_set_attendee_list): set attendee list
(cal_component_alarm_has_attendees): return true if alarm has
attendees
* cal-util/cal-component.h: new protos
* gui/calendar-model.c (calendar_model_append_row): use
cal_comp_task_new_with_defaults
* gui/comp-editor-factory.c (get_default_task): ditto
* gui/e-tasks.c (e_tasks_new_task): ditto
* gui/gnome-cal.c (gnome_calendar_new_task): ditto
* gui/comp-util.h (cal_comp_task_new_with_defaults): new proto
* gui/comp-util.c (cal_comp_task_new_with_defaults): new utility
routine
* cal-util/cal-util.c (generate_absolute_triggers): skip omitted
alarm types
(add_alarm_occurrences_cb): ditto
(cal_util_generate_alarms_for_list): take/pass omit param
(cal_util_generate_alarms_for_comp): ditto
* cal-util/cal-util.h: update protos
* pcs/cal-backend-file.c (cal_backend_file_get_alarms_for_object):
add omit param
(cal_backend_file_get_alarms_in_range): ditto
* pcs/cal-backend.c (cal_backend_get_scheduling_information):
remove dead param
* gui/dialogs/meeting-page.h: delete proto
* gui/dialogs/meeting-page.c: remove dead routine
* gui/dialogs/event-editor.c (event_editor_edit_comp): we don't
need to add the organizer as an attendee ourselves, just set the
edit level properly
* gui/dialogs/task-editor.c (task_editor_edit_comp): ditto
* gui/comp-util.c (cal_comp_event_new_with_defaults): take client
as arg so we can obtain the default from the backend
* gui/comp-editor-factory.c (get_default_event): pass
cal_comp_event_new_with_defaults the new param
* gui/gnome-cal.c (gnome_calendar_new_appointment_for): ditto
* gui/e-week-view.c (e_week_view_key_press): ditto
* gui/e-day-view.c (e_day_view_key_press): ditto
* gui/calendar-model.c (calendar_model_append_row): ditto
* gui/comp-util.h (cal_comp_event_new_with_defaults): update proto
* pcs/cal-backend-file.c (cal_backend_file_get_default_object):
return appropriate default object
* pcs/cal-backend.c (cal_backend_get_default_object): call
get_default_backend class method
* pcs/cal-backend.h: add proto
* pcs/cal.c (impl_Cal_get_default_object): implement
(cal_class_init): set handler for getDefaultObject call
* idl/evolution-calendar.idl: remove always schedule from
SchedulingInformation and add getDefaultObject call
* cal-client/cal-client.c (cal_client_get_default_object): gets a
default object from the server
(cal_client_init): remove always_schedule
(load_scheduling_info): ditto
* cal-client/cal-client.h: add a proto, delete a proto
* gui/dialogs/meeting-page.c (right_click_cb): if the attendee is
not fully editable, don't allow deletion
(meeting_page_construct): keep the default organizer as an itip
address
(meeting_page_get_default_organizer): return the default organizer
* gui/dialogs/meeting-page.h: new proto
* gui/dialogs/event-editor.c (event_editor_edit_comp): we set
appropriate edit levels now for users and if the backend always
schedules we always show the meeting pages and add the organizer
as an attendee
* gui/dialogs/task-editor.c (task_editor_edit_comp): same
* gui/e-meeting-model.c (is_cell_editable): use the edit level of
the attendee to determine if cell is editable
(init): we no longer keep the attendee list of restricted
* gui/e-meeting-attendee.c (e_meeting_attendee_get_edit_level):
accessor
(e_meeting_attendee_set_edit_level): ditto
* gui/e-meeting-attendee.h: new protos and edit level enum
* cal-client/cal-client.c (load_scheduling_info): load the
scheduling info
(cal_client_get_always_schedule): accessor
(cal_client_get_organizer_must_attend): ditto
(cal_client_get_save_schedules): ditto
(cal_client_init): init scheduling data members
* cal-client/cal-client.h: accessors for scheduling information
* pcs/cal-backend-file.c
(cal_backend_file_get_scheduling_information): implement the new
virtual method
* pcs/cal-backend.c (cal_backend_get_scheduling_information): call
the class specific method
* pcs/cal-backend.h: add virtual method
* idl/evolution-calendar.idl: add a getSchedulingInformation call
which describes how the backend does its scheduling
* pcs/cal.c (impl_Cal_get_scheduling_information): implement above
* gui/e-day-view.c: pass NULL as parent to recur dialog
* gui/e-week-view.c: ditto
* gui/dialogs/comp-editor.c (prompt_to_save_changes): show recur
dialog after prompting, not before
(save_cmd): ditto
(save_close_cmd): ditto
(real_edit_comp): don't show recur dialog before opening
* gui/dialogs/recur-comp.h (recur_component_dialog): update proto
* gui/dialogs/recur-comp.c (recur_component_dialog): take a parent
argument and set the dialog parent if non-null
* gui/e-week-view.c (e_day_view_on_editing_stopped): Don't update
appointment if both the old and the new summary texts are empty.
* gui/e-week-view.c (e_week_view_show_popup_menu): mask out "make
moveable" if its an instance
* gui/e-day-view.c (e_day_view_on_event_right_click): ditto
* gui/e-week-view.c (e_week_view_on_editing_stopped): if its
an instance, show the recur comp dialog and modify it based on the
response (or not if cancel is hit)
* gui/e-day-view.c (e_day_view_finish_long_event_resize): if its
an instance, show the recur comp dialog and modify it based on the
response (or not if cancel is hit)
(e_day_view_finish_resize): ditto
(e_day_view_on_editing_stopped): ditto
(e_day_view_on_top_canvas_drag_data_received): ditto
(e_day_view_on_main_canvas_drag_data_received): ditto
* gui/dialogs/comp-editor.c (real_edit_comp): reflect changes in
proto of recur_component_dialog
* gui/dialogs/recur-comp.c (recur_component_dialog): use ok/cancel
instead and radio buttons for the mod type
* gui/dialogs/recur-comp.h: update proto
* gui/e-day-view.c (e_day_view_on_long_event_click): allow
dragging if its an instance
(e_day_view_on_event_click): ditto
(e_day_view_on_top_canvas_motion): ditto
(e_day_view_on_main_canvas_motion): ditto
* gui/dialogs/comp-editor.c (save_comp): if its an instance,
update with the mod type
(real_edit_comp): ask the user what instances they want to change
* gui/dialogs/recur-comp.[hc]: new dialog to ask user what
recurrences to modify
* gui/dialogs/Makefile.am: Compile new files
* gui/e-day-view.c (e_day_view_on_delete_occurrence): if its an
instance, just remove with THIS mod
* gui/e-week-view.c (e_week_view_on_delete_occurrence): ditto
* cal-client/cal-client.c (cal_client_remove_object_with_mod):
send the mod parameter to the backend
(cal_client_remove_object): implement with above
(cal_client_update_object_with_mod): send the mod parameter to the
backend
(cal_client_update_object): implement with above
* cal-client/cal-client.h: new protos
* cal-client/cal-client.c (cal_client_is_read_only): return
booleans in the pre conditions
(cal_client_update_object): pass mod param
(cal_client_update_objects): ditto
(cal_client_remove_object): ditto
(cal_client_ensure_timezone_on_server): ditto
* pcs/cal.c (impl_Cal_update_objects): take mod param
(impl_Cal_remove_object): ditto
* pcs/cal-backend.h: fix protos
* pcs/cal-backend.c (cal_backend_update_objects): take mod param
(cal_backend_remove_object): ditto
* pcs/cal-backend-file.c (cal_backend_file_update_objects): take
mod param
(cal_backend_file_remove_object): ditto
* cal-util/cal-util.h: add mod enum
* cal-util/cal-recur.c (cal_recur_generate_instances_of_rule): if
its an instance, just report the instance
* cal-util/cal-component.h: new protos
* cal-util/cal-component.c (cal_component_is_instance): indicate
whether the component is an instance or not
(cal_component_free_range): free a range
* idl/evolution-calendar.idl: get remove and update to take mod
type
svn path=/trunk/; revision=20142
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-12-06 Hans Petter Jansson <hpj@ximian.com>
* cal-client/cal-client.c (cal_client_open_status_enum_get_type):
Create a non-abstract enumeration type derived from GEnum.
(cal_client_set_mode_status_enum_get_type): Ditto.
(cal_mode_enum_get_type): Ditto.
(cal_client_class_init): Use our enumerations and not the abstract
one.
(cal_client_finalize): Don't destroy factories, since the CalClient
doesn't own them anymore. They're shared between CalClients now.
(get_factories): Implement. Move the factory setup code here from
cal_client_construct (), and cache the factories. This is hopefully
temporary, until wombat goes away or is fixed.
(cal_client_construct): Most of the code moved to get_factories ().
* cal-client/cal-client.h: Add enumeration type macros and protos.
* gui/cal-search-bar.c (cal_search_bar_get_type): Removed in favour
of E_MAKE_TYPE, which uses GObject calls.
(cal_search_bar_class_init): Use g_type_class_peek_parent ().
* gui/calendar-model.c (calendar_model_get_type):
(calendar_model_class_init): Ditto, like above file.
* gui/calendar-view.c (calendar_view_get_type):
(calendar_view_class_init): Ditto.
* gui/e-calendar-table.c (e_calendar_table_get_type):
(e_calendar_table_class_init): Ditto.
* gui/e-comp-editor-registry.c (e_comp_editor_registry_get_type):
(class_init): Ditto.
* gui/e-day-view-main-item.c (e_day_view_main_item_get_type):
(e_day_view_main_item_class_init): Ditto.
* gui/e-day-view-time-item.c (e_day_view_time_item_get_type):
(e_day_view_time_item_class_init): Ditto.
* gui/e-day-view-top-item.c (e_day_view_top_item_get_type):
(e_day_view_top_item_class_init): Ditto.
* gui/e-day-view.c (e_day_view_get_type):
(e_day_view_class_init): Ditto.
* gui/e-itip-control.c (e_itip_control_get_type):
(class_init): Ditto.
* gui/e-meeting-attendee.c (e_meeting_attendee_get_type):
(class_init): Ditto.
* gui/e-meeting-model.c (e_meeting_model_get_type):
(class_init): Ditto.
* gui/e-meeting-time-sel-item.c
(e_meeting_time_selector_item_get_type):
(e_meeting_time_selector_item_class_init): Ditto.
* gui/e-meeting-time-sel.c
(e_meeting_time_selector_get_type):
(e_meeting_time_selector_class_init): Ditto.
* gui/e-timezone-entry.c (e_timezone_entry_get_type):
(e_timezone_entry_class_init): Ditto.
* gui/e-week-view-event-item.c (e_week_view_event_item_get_type):
(e_week_view_event_item_class_init): Ditto.
* gui/e-week-view-main-item.c (e_week_view_main_item_get_type):
(e_week_view_main_item_class_init): Ditto.
* gui/e-week-view-titles-item.c (e_week_view_titles_item_get_type):
(e_week_view_titles_item_class_init): Ditto.
* gui/gnome-cal.c (gnome_calendar_get_type):
(gnome_calendar_class_init): Ditto.
* gui/weekday-picker.c (weekday_picker_get_type):
(weekday_picker_class_init): Ditto.
* gui/e-week-view.c (e_week_view_get_type):
(e_week_view_class_init): Ditto, but parent_class init was moved
from get_type() to class_init().
* gui/calendar-view-factory.c (calendar_view_factory_get_type):
(calendar_view_factory_class_init): Ditto, and set up finalize
callback instead of destroy.
(calendar_view_factory_finalize): It's a GObject, so implement this.
(celendar_view_factory_destroy): Move code to _finalize() and remove.
* gui/main.c (init_bonobo): Remove extraneous bonobo_activation_init().
svn path=/trunk/; revision=19043
|
|
|
|
|
|
|
|
|
|
|
| |
2002-11-04 Rodrigo Moya <rodrigo@ximian.com>
* cal-util/Makefile.am:
* cal-util/cal-util-marshal.list: added marshallers.
* cal-client/cal-client.[ch]: ported to GObject.
svn path=/trunk/; revision=18532
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-31 Rodrigo Moya <rodrigo@ximian.com>
* cal-util/cal-component.[ch]:
* cal-util/cal-recur.h:
* cal-util/cal-util.[ch]:
* cal-client/cal-client.h:
* cal-client/cal-client-multi.h:
* cal-client/cal-client-types.[ch]:
* cal-client/cal-listener.h
* cal-client/cal-query.[ch]:
* cal-client/query-listener.h:
* pcs/cal.h:
* pcs/cal-backend.[ch]:
* pcs/cal-backend-file.h:
* pcs/cal-backend-util.h:
* pcs/cal-common.h:
* pcs/cal-factory.h:
* pcs/query.[ch]:
* pcs/query-backend.[ch]: started GNOME 2 porting.
cal-util, cal-client and pcs compiled ok.
* cal-client/cal-client.c (cal_client_construct):
* pcs/cal-factory.c: use b-a instead of OAF and bonobo-config
instead of bonobo-conf.
svn path=/trunk/; revision=18496
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-04 Rodrigo Moya <rodrigo@ximian.com>
Fixes #15892
* idl/evolution-calendar.idl: added notifyErrorOccurred method to
the Listener interface, so that backends can notify clients of errors
that can't be reported otherwise.
* pcs/cal.[ch] (cal_notify_error): new function.
* pcs/cal-backend-file.c (save): made to save to temporary file and
then moved to the correct file, so that we don't lose any data if
there's a problem while saving.
(notify_error): new function for notifying error messages to clients.
* cal-client/cal-listener.[ch]: added new callback function for getting
error messages from backends.
(impl_notifyErrorOccurred): new method implementation.
(cal_listener_class_init): initialize new epv member.
(cal_listener_init, cal_listener_destroy, cal_listener_construct,
cal_listener_new): initialize new function pointer.
* cal-client/cal-client.[ch]: adapted to changes in CalListener class.
(cal_client_class_init): added "backend_error" signal to CalClient class.
(backend_error_cb): callback for "error_occurred" signal on the CalListener,
which just emits the "backend_error" signal of CalClient.
* gui/gnome-cal.c (gnome_calendar_construct): connect to "backend_error"
signal on the CalClient's we create.
(backend_error_cb): display error message on error from backend.
* gui/e-tasks.c: likewise.
svn path=/trunk/; revision=18329
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-01 Rodrigo Moya <rodrigo@ximian.com>
* idl/evolution-calendar.idl: added isReadOnly method to Cal
interface.
* pcs/cal.c (impl_Cal_is_read_only): new method implementation.
* pcs/cal-backend.[ch]: added is_read_only method to CalBackend class.
(cal_backend_is_read_only): new function.
* pcs/cal-backend-file.c (cal_backend_file_is_read_only): new method.
(cal_backend_file_class_init): set new signal's virtual method.
* cal-client/cal-client.[ch] (cal_client_is_read_only): new function.
svn path=/trunk/; revision=18282
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-04 JP Rosevear <jpr@ximian.com>
* gui/itip-utils.c (comp_server_send): provide error message
param, give a dialog with the message if we get a busy result;
return TRUE if we succeed
(itip_send_comp): bail out if we had a problem sending via the
server
* cal-client/cal-client.c (cal_client_send_object): pass back
error message if we get the busy exception in the new param
* cal-client/cal-client.h: update proto
* pcs/cal.c (impl_Cal_send_object): dump backend error message
into Busy exception
* pcs/cal-backend.h: update proto
* pcs/cal-backend.c (cal_backend_send_object): take/pass new error
message parameter
* pcs/cal-backend-file.c (cal_backend_file_send_object): take new param
* idl/evolution-calendar.idl: add errorMsg to Busy exception
svn path=/trunk/; revision=17964
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-08-16 Rodrigo Moya <rodrigo@ximian.com>
* cal-client/cal-client.[ch]: added internal EComponentListener
object, to listen for the activated Cal.
(cal_client_class_init): added "backend_died" signal.
(cal_client_destroy): clean up component listener.
(backend_died_cb): new callback for getting signals from the
EComponentListener.
(cal_opened_cb): setup component listener.
* cal-client/Makefile.am: added libetuil to needed LIBS.
* gui/gnome-cal.c (backend_died_cb): new callback.
(gnome_calendar_construct): connect to "backend_died" signal
on all CalClient's we create.
svn path=/trunk/; revision=17787
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-08-07 JP Rosevear <jpr@ximian.com>
* pcs/cal-backend-file.c (cal_backend_file_send_object): just
return the object untouched since we don't send anything
* pcs/cal-backend.c (cal_backend_remove_object): call virtual method
* pcs/cal-backend.h: add send result codes, new proto
* pcs/cal.c (impl_Cal_send_object): implement sendObject corba call
(cal_class_init): add to epv
* gui/itip-utils.c (comp_toplevel_with_zones): utility function to
create icalcomponent with necessary timezone info
(comp_has_attendee): see if attendee is in the attendee list
(comp_server_send): use above and remove attendees if the server
sends them
* gui/e-itip-control.c (show_current_todo): remove unused var
* idl/evolution-calendar.idl: add Busy exception and
* cal-client/cal-client.c (cal_client_send_object): send object
via the server (if the server can)
* cal-client/cal-client.h: add send results and new proto
svn path=/trunk/; revision=17734
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-05-16 Rodrigo Moya <rodrigo@ximian.com>
* gui/gnome-cal.c (client_cal_opened_cb): added support for
CAL_CLIENT_OPEN_PERMISSION_DENIED error code.
(permission_error): new function to display 'Permission Denied'
error message when opening the calendar.
* gui/e-tasks.c: likewise.
* idl/evolution-calendar.idl: added PERMISSION_DENIED to Listener's
OpenStatus enumeration.
* cal-client/cal-client.c (cal_opened_cb): added code for retrieving
'Permission Denied' errors, and convert it to CalClientOpenStatus
values.
* pcs/cal-factory.c (open_backend): added code for informing of
'Permission Denied' errors.
svn path=/trunk/; revision=16933
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-05-16 Rodrigo Moya <rodrigo@ximian.com>
* idl/evolution-calendar.idl: added PermissionDenied exception and
make it be raised in open, updateObjects and removeObject.
* pcs/cal-backend.h: added CAL_BACKEND_OPEN_PERMISSION_DENIED to
CalBackendOpenStatus enumeration, added CalBackendResult enumeration.
* pcs/cal.c:
* pcs/cal-backend.c:
* pcs/cal-backend-file.c: adapted to changes in update_objects and
remove_object methods.
* cal-client/cal-client.[ch]: added CalClientResult enumeration.
(cal_client_update_object, cal_client_update_objects,
cal_client_remove_object): changed to return a CalClientResult.
* conduits/calendar/calendar-conduit.c:
* calendar/conduits/todo/todo-conduit.c:
* importers/icalendar-importer.c:
* gui/dialogs/comp-editor.c:
* gui/calendar-model.c:
* gui/e-calendar-table.c:
* gui/e-day-view.c:
* gui/e-itip-control.c:
* gui/e-week-view.c:
* gui/comp-util.c:
* gui/e-tasks.c:
* gui/tasks-migrate.c: adapted to changes in cal_client_update_object(s)
and cal_client_remove_object.
svn path=/trunk/; revision=16932
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-12-19 JP Rosevear <jpr@ximian.com>
* conduits/calendar/calendar-conduit.c (check_for_slow_setting):
go slow and clear the map if the last uri and the current uri do
not match
(post_sync): save the last uri
* conduits/calendar/calendar-conduit-config.h: handle a last uri
config option
* conduits/todo/todo-conduit-config.h: ditto
* conduits/calendar/calendar-conduit.c (start_calendar_server):
use the open_default_calendar method
* conduits/todo/todo-conduit.c (start_calendar_server): same as above
* cal-client/Makefile.am: link with bonobo conf
* cal-client/cal-client.h: new protos
* idl/evolution-calendar.idl: make sure open method raises
appropriate exceptions
* gui/e-itip-control.c (start_calendar_server): use
cal_client_open_default_* calls
* cal-client/cal-client.c (real_open_calendar): do the real work
of loading
(cal_client_open_calendar): use above
(get_fall_back_uri): get the basic local uri
(get_default_uri): get the default uri from the config db
(cal_client_open_default_calendar): open the default uri or the
fallback if the method is unsupported
(cal_client_open_default_tasks): same for tasks
svn path=/trunk/; revision=15179
|
|
|
|
| |
svn path=/trunk/; revision=14214
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-10-25 Damon Chaplin <damon@ximian.com>
* cal-util/cal-recur.c (cal_obj_bysetpos_filter): subtract 1 from
any positive BYSETPOS value, since our array is 0-based.
* gui/dialogs/recurrence-page.c (simple_recur_to_comp):
(recurrence_page_fill_widgets): Outlook (2000) will not accept monthly
recurrences like BYDAY=2TU. Instead it uses BYDAY=TU;BYSETPOS=2.
So to be compatable with it we now do the same, although we still
accept and convert the old format.
* cal-client/cal-client.c (cal_client_get_component_as_string): new
function to return a complete VCALENDAR string containing a VEVENT
or VTODO with all the VTIMEZONEs it uses.
* gui/dialogs/comp-editor.c (save_as_ok): use above function so we
save the VTIMEZONE data with the VEVENT/VTODO. Fixes bug #????.
Also made sure we output "METHOD:PUBLISH" since Outlook (2000) will
not import it otherwise.
* gui/dialogs/comp-editor.c (page_mapped_cb):
(page_unmapped_cb): install/uninstall the GtkAccelGroup for the page.
(comp_editor_append_page): connect to the map/unmap signals to
install/uninstall the accelerators. (This is all for bug #11609,
though of course it doesn't work too well in GTK+ 1.2 anyway.)
* gui/dialogs/task-page.c (get_widgets):
* gui/dialogs/task-details-page.c (get_widgets):
* gui/dialogs/schedule-page.c (get_widgets):
* gui/dialogs/recurrence-page.c (get_widgets):
* gui/dialogs/meeting-page.c (get_widgets):
* gui/dialogs/event-page.c (get_widgets):
* gui/dialogs/alarm-page.c (get_widgets): got the GtkAccelGroup from
the original window, ref'ed it and placed it in the CompEditorPage
struct.
* gui/dialogs/comp-editor-page.c (comp_editor_page_destroy): unref
any GtkAccelGroup for the page.
* gui/dialogs/task-page.glade: changed '_Confidential' to
'Con_fidential' as it clashed with '_Contacts'. It now matches the
event editor as well.
* gui/dialogs/event-page.glade:
* gui/dialogs/task-page.glade: Set CAN_FOCUS to TRUE for the custom
EDateEdit widgets, and set them as the accel targets of the labels.
svn path=/trunk/; revision=14108
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-26 JP Rosevear <jpr@ximian.com>
* pcs/cal.h: new proto
* pcs/cal.c (impl_Cal_set_mode): implement set mode method
(cal_class_init): set setMode function in epv
(cal_notify_mode): notify listener of mode change
* pcs/cal-factory.c (add_uri): deal with UriType renaming
* pcs/cal-backend.h: add new virtual methods and protos
* pcs/cal-backend.c (cal_backend_class_init): init new virtual
methods to null
(cal_backend_set_mode): sets mode
(cal_backend_get_mode): gets mode
* pcs/cal-backend-file.c (cal_backend_file_class_init): overide
get_mode and set_mode methods
(cal_backend_file_get_mode): return mode
(notify_mode): have listeners notified of the set mode call
(cal_backend_file_set_mode): set the mode by indicating not
supported
* cal-client/cal-listener.h: update proto
* cal-client/cal-listener.c (impl_notifyCalSetMode): implement set
mode callback
(cal_listener_construct): take set mode callback
(cal_listener_new): ditto
* cal-client/cal-client.h: update protos, add signal proto
* cal-client/cal-client.c (cal_client_class_init): add
cal_set_mode signal
(cal_set_mode_cb): handle set mode callback from listener
(cal_client_open_calendar): pass additional param to cal_listener_new
(cal_client_set_mode): wrapper to set the calendar mode
* idl/evolution-calendar.idl: make UriType into CalMode, add
SetModeStatus enum and notifyCalSetMode method to the listener
* gui/calendar-offline-handler.c (create_connection_list): fetch
the uri list ourselves
(impl_prepareForOffline): reflect param change of
create_connect_list
(update_offline): ditto
(backend_cal_set_mode): set mode call back
(backend_cal_opened): cal opened call back, set mode to local
(impl_goOffline): reflect UriType renaming
* cal-util/cal-util.h: rename UriType to CalMode
svn path=/trunk/; revision=13142
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-25 JP Rosevear <jpr@ximian.com>
* pcs/cal.c: use bonobo-exception stuff to clean code
* pcs/cal-factory.c (add_uri): add uri to the list if the type
matches
(impl_CalFactory_uriList): implement uriList method
* pcs/cal-backend.h: new virtual function member
* pcs/cal-backend.c (cal_backend_is_remote): call virtual function
* pcs/cal-backend-file.c (cal_backend_file_class_init): override
virtual function
(cal_backend_file_is_remote): new virtual function, always return
FALSE
* idl/evolution-calendar.idl: uriList factory call, with flags for
types to get
* gui/dialogs/comp-editor.c (comp_editor_destroy): cast to remove
warning
* gui/e-itip-control.c (write_label_piece): kill warnings by take
const char *
* gui/component-factory.c (create_object): aggregate offline
interface
* gui/Makefile.am: compile new files
* calobj.[hc]: Remove obsolete files
* cal-util/cal-util.h: enum URI types for uriList call
* cal-client/cal-client.c (build_uri_list): build list from string
sequence
(cal_client_uri_list): factory call to get uri list
* cal-client/cal-client.h: new proto
* cal-client/cal-client.c: use bonobo exception stuff to clean
code
* gui/calendar-offline-handler.[hc]: Start some skeleton routines
for online/offline handling
* pcs/cal-factory.c (launch_backend_for_uri): use accessor and
remove FIXME
svn path=/trunk/; revision=13110
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-18 Rodrigo Moya <rodrigo@ximian.com>
* cal-client/cal-client-multi.[ch]: new class for managing multiple
calendars, with an API very similar to the CalClient one,
for ease of transition from one to the other
* gui/component-factory.c (xfer_folder, remove_folder, create_folder):
reworked to be able to manage folders for any calendar backend, and
not only the file: one
2001-09-18 Rodrigo Moya <rodrigo@ximian.com>
* idl/evolution-calendar.idl: changed signature for the getFreeBusy
method, to return a sequence of CalObj's, and added sequence of users
as a new parameter to that method
* cal-client/cal-client.c (cal_client_get_free_busy): adapted to new
IDL method signature, by adding a new "GList *users" parameter, for
callers to be able to specify a list of users
* pcs/cal-backend.[ch] (cal_backend_get_free_busy):
* pcs/cal-backend-file.c (cal_backend_file_get_free_busy): add the
"GList *users" parameter. In cal_backend_file_get_free_busy, call
lookup_component to get the CalComponent for each uid, instead
of calling cal_backend_get_object, which meant converting the
component to a string and then parsing it again.
* cal-client/client-test.c (cal_opened_cb):
* gui/e-itip-control.c (send_freebusy):
* gui/calendar-commands.c (publish_freebusy_cmd): adapted to
new getFreeBusy method signature
svn path=/trunk/; revision=12951
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-31 Federico Mena Quintero <federico@ximian.com>
The Wombat now keeps track of which categories are present in the
objects of a calendar. It will notify the clients of changes in
this set. This is to make the category drop-down menus in the
calendar/tasks views be always up to date.
* idl/evolution-calendar.idl (Listener): Added a
notifyCategoriesChanged() method. The Wombat now keeps track of
the categories within a calendar.
* cal-client/cal-listener.[ch]: Switched it to use BonoboXObject.
Also added the notifyCategoriesChanged implementation.
* cal-client/cal-client.[ch]: Added a "categories_changed" signal.
* pcs/cal-backend-file.c: Maintain a list of the live categories.
(update_categories_from_comp): New function to maintain the set of
live categories.
(add_component): Update the set of categories.
(remove_component): Likewise.
(open_cal): Notify about changes in the set of categories.
(create_cal): Likewise.
(cal_backend_file_update_objects): Likewise.
(cal_backend_file_remove_object): Likewise.
(notify_categories_changed): New function to notify the clients
about the current set of categories.
* pcs/cal.c (cal_notify_categories_changed): New function.
svn path=/trunk/; revision=11536
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-10 Damon Chaplin <damon@ximian.com>
* gui/calendar-model.c:
* gui/e-calendar-table.c:
* gui/e-day-view-main-item.c:
* gui/e-day-view-top-item.c:
* gui/e-day-view.[hc]:
* gui/e-week-view.c:
* gui/gnome-cal.c:
* gui/print.c:
* gui/dialogs/cal-prefs-dialog.c:
* gui/dialogs/comp-editor-util.c:
* gui/dialogs/event-page.c:
* pcs/cal-backend-file.c:
* pcs/query.c:
* cal-util/cal-component.[hc]:
* cal-util/cal-recur.c:
* cal-util/timeutil.[hc]:
* cal-client/cal-client.[hc]: more timezone updates. I'm pretty much
done with the calendar code now, except for alarms and conduits,
which Federico and JP know more about. And there are a couple of
other minor things to fix. But it is still pretty buggy.
svn path=/trunk/; revision=10984
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-09 Federico Mena Quintero <federico@ximian.com>
* gui/e-day-view.c (e_day_view_key_press): Use
e_utf8_from_gtk_event_key() so that we can input utf8 text
properly.
(e_day_view_cut_clipboard): Constify.
(e_day_view_on_cut): Constify.
(e_day_view_reshape_long_event): Remove unused variable.
* gui/e-week-view.c (e_week_view_key_press): Use
e_utf8_from_gtk_event_key() so that we can input utf8 text
properly.
(e_week_view_cut_clipboard): Constify.
(e_week_view_on_cut): Constify.
* cal-client/cal-client.c (cal_client_resolve_tzid_cb): Fix the
prototype so that this matches CalRecurResolveTimezoneFn. Also
renamed it so that it is clear that it is supposed to be a
callback.
svn path=/trunk/; revision=10942
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-22 Rodrigo Moya <rodrigo@ximian.com>
* idl/evolution-calendar.idl: changed getFreeBusy method to return
a CalObj instead of a sequence
* cal-client/cal-client.[ch] (cal_client_get_free_busy): changed it to
work like the cal_client_get_object function, that is, it does not
return anymore a list of UIDs, but a CalClientGetStatus code, and
added a new parameter for the caller to get the component back when
this function returns
(cal_client_open): aggregate WombatClient interface to the CalListener
being used
* pcs/cal-backend-db.c, pcs/cal-backend-file.c (..get_free_busy): set
return value to "char *" as it will be returning a FreeBusy object,
and not a list of UIDs
* pcs/cal-backend.[ch] (cal_backend_get_free_busy): ditto
* pcs/cal.c (cal_construct): queryInterface on the listener to obtain
the WombatClient interface
svn path=/trunk/; revision=10393
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-21 Rodrigo Moya <rodrigo@ximian.com>
* cal-client/cal-client.[ch]:
(cal_client_init): create a WombatClient when creating a CalClient
object, so that we can receive authentication notifications from
the wombat
(cal_client_destroy): destroy the WombatClient object when dying
(cal_client_set_auth_func): new function to set the authentication
function to be called when a password is required by the calendar
server (through the WombatClient object)
(cal_client_get_free_busy): new function for calling the new IDL
method Cal::getFreeBusy
* gui/alarm-notify/Makefile.am: add libwombat to LDADD
* gui/Makefile.am: add libwombat to LDADD
svn path=/trunk/; revision=10366
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-19 Damon Chaplin <damon@ximian.com>
* pcs/cal.c:
* idl/evolution-calendar.idl:
* cal-client/cal-client.[hc]: removed stuff to get builtin timezone
info from the server.
svn path=/trunk/; revision=10322
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-14 Damon Chaplin <damon@ximian.com>
* gui/dialogs/e-timezone-dialog.[hc]:
* gui/dialogs/e-timezone-dialog.glade: new dialog for setting the
time zone.
* gui/dialogs/Makefile.am: added timezone dialog files.
* idl/evolution-calendar.idl: added CalTimezoneInfo struct and seq,
and getBuiltinTimezoneInfo method.
* pcs/cal.c (impl_Cal_get_builtin_timezone_info): implemented method.
(cal_class_init): added method to epv.
* cal-client/cal-client.c (struct CalClientPrivate): added
timezone_info array to contain cached info on builtin timezone city
names and coordinates.
(cal_client_get_builtin_timezone_info): new function to get the info
about builtin timezones.
* cal-client/cal-client.h: added CalTimezoneInfo struct, to contain
the city names and coords of the builtin timezones.
svn path=/trunk/; revision=10223
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-02 Federico Mena Quintero <federico@ximian.com>
* gui/e-tasks.c (e_tasks_setup_menus): Plug leak.
* gui/event-editor.c (obj_updated_cb): Do nothing for now until we
think of something sensible to do.
(obj_removed_cb): Likewise.
* gui/dialogs/task-editor.c (obj_updated_cb): Likewise.
(obj_removed_cb): Likewise.
* gui/event-editor.c (dialog_to_comp_object): Plug leak.
svn path=/trunk/; revision=9124
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-12-19 Federico Mena Quintero <federico@helixcode.com>
* pcs/cal-backend-file.c (compute_alarm_range): Fix confusion in
the way the range is expanded.
* cal-util/cal-component.c (cal_component_alarms_free): Doh,
alarms->alarms is a list, not a generic pointer. Free it properly.
(cal_component_free_pilot_id): Removed unused function.
(cal_component_free_pilot_status): Likewise.
* gui/main.c (init_bonobo): Use VERSION instead of a hardcoded
string. Pass argc by value, not by reference. Test the return
value of gnome_init_with_popt_table().
* cal-client/cal-client.c (cal_client_free_alarms): Oops, missed
implementing this function.
* cal-util/timeutil.c (print_time_t): Better printing format.
(isodiff_to_secs): Removed unused function.
(isodiff_from_secs): Removed unused function.
(time_day_end): Removed crufty part.
(time_day_begin): Removed crufty part.
(time_day_hour): Removed unused function.
(format_simple_hour): Removed unused function.
(get_time_t_hour): Removed unused function.
(time_from_start_duration): Removed unused function.
* cal-util/timeutil.h (parse_date): Removed unimplemented, unused
function prototype.
svn path=/trunk/; revision=7083
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-12-18 Federico Mena Quintero <federico@helixcode.com>
Alarm instance generation support for the Wombat.
* idl/evolution-calendar.idl (Cal::CalAlarmInstance): Changed to
have an alarm UID, the trigger time, and the actual occurrence
time.
(Cal::CalComponentAlarms): New structure to hold a pair of a
component and its alarms that trigger in a particular range of
time.
(Cal::getAlarmsInRange): Changed to return a CalComponentAlarmsSeq.
* cal-util/cal-component.h (CalAlarmInstance): New C-side
structure to match the one on the IDL.
(CalComponentAlarms): Ditto.
(CalAlarmAction): Renamed from CalComponentAlarmAction.
(CalAlarmTriggerType): Renamed from CalComponentAlarmTriggerType.
Encoded the START and END parameters for the RELATED parameter in
this enum, too. Added a NONE value for invalid or missing trigger
specifications.
(CalComponentAlarmTriggerRelated): Removed.
(CalAlarmTrigger): Renamed from CalComponentAlarmTrigger. Renamed
the duration/time fields to rel_duration/abs_time, respectively.
* cal-util/cal-component.c (cal_component_alarm_get_trigger):
Changed to use the new trigger structure.
(cal_component_alarm_set_trigger): Likewise.
(cal_component_alarm_free_trigger): Removed function.
(cal_component_has_alarms): Count the elements in the
alarm_uid_hash instead of trying to fetch the first alarm subcomponent.
(cal_component_alarms_free): New function to free a
CalComponentAlarms structure.
(CalComponentAlarmPrivate): Added an uid property pointer.
(scan_alarm_property): Scan for the our extension UID property.
(cal_component_alarm_get_uid): New function.
* pcs/cal-backend.h (CalBackendClass): Changed the signatures of
the ::get_alarms_in_range() and ::get_alarms_for_object() methods.
* pcs/cal-backend.c (cal_backend_get_alarms_in_range): Changed
signature; use the new method.
(cal_backend_get_alarms_for_object): Likewise.
* pcs/cal-backend-file.c (compute_alarm_range): New spiffy
function to compute a range of time for alarm occurrences.
(add_alarm_occurrences_cb): New function to add alarms for a
particular occurrence of the component.
(generate_absolute_triggers): New function to add the absolute
alarm triggers.
(generate_alarms_for_comp): New function to generate all the alarm
instances for a component.
(cal_backend_file_get_alarms_in_range): Implemented.
* pcs/cal.c (Cal_get_alarms_in_range): Use the new CalBackend API.
(Cal_get_alarms_for_object): Likewise.
(build_alarm_instance_seq): Removed old function.
* cal-util/cal-util.c (cal_alarm_instance_list_free): Removed
function.
* cal-client/cal-client.c (build_component_alarms_list): New
function to demarshal the component alarms sequence.
(build_alarm_instance_list): New function to demarshal the alarm
instances sequence.
(cal_client_get_alarms_in_range): Updated for the new API.
(cal_client_get_alarms_for_object): Updated for the new API.
* gui/gnome-cal.c: Temporary #ifdef-ing out of alarm-related stuff
to make it build.
svn path=/trunk/; revision=7076
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-12-06 JP Rosevear <jpr@helixcode.com>
* conduits/calendar/calendar-conduit.c (map_name): Update so as not to conflict
with calendar
(next_changed_item): update to use CalClientChange instead of CalObjChange
(compute_status): ditto
(pre_sync): ditto
(for_each_modified): since we now have the cal component we can call
local_record_from_comp directly
* conduits/todo/todo-conduit.c: same as above
* pcs/cal-backend.c: Remove much logging cruft
(cal_backend_compute_changes): Calculate the changes based on the
hashed database
(cal_backend_get_changes): call cal_backend_compute_changes
(cal_backend_compute_changes_foreach_key): hash callback for
calculating deletions
* pcs/cal-backend.h: update protype, remove logging cruft from
object
* pcs/cal.c (build_change_seq): dup the calobj rather than the uid
now
(Cal_get_changes): rename from Cal_get_changed_uids
(cal_get_epv): reflect name change in epv
* cal-util/cal-util.c (cal_obj_change_list_free): update assertion
* cal-util/cal-util.h: CalObjChange now returns the entire ical
component, update the change types. This should all go away shortly
* idl/evolution-calendar.idl: getChangedUIds -> getChanges.
CalObjChange now contains the calobj rather than the uid, update
the change types
* cal-client/cal-client.c (cal_client_get_changes): rename from
cal_client_get_changed_uids to make idl and addressbook
* cal-client/cal-client.h: Update prototype
* cal-client/cal-client.c (build_change_list): Build a list of
CalClientChange instead of CalObjChange
* cal-client/cal-client-types.c (cal_client_change_list_free): Free
a glist of CalClientChanges
* cal-client/cal-client-types.h: New file. Declarations for
CalClientChange.
* cal-client/Makefile.am: Build new files
svn path=/trunk/; revision=6822
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-10-16 JP Rosevear <jpr@helixcode.com>
* cal-client/cal-client.h: Remove pilot cruft. All pilot stuff
is in the conduits now and uses the logging facility.
* pcs/cal-backend-file.c: ditto
* pcs/cal-backend.h: ditto
* pcs/cal-backend.c: ditto
* pcs/cal.c: ditto
* pcs/cal.h: ditto
* idl/evolution-calendar.idl: ditto
* cal-util/cal-component.h: ditto
* cal-util/cal-component.c: ditto
* cal-client/cal-client.c: ditto
* conduits/calendar/calendar-conduit.c (local_record_from_comp):
Take a stab at storing recurrence stuff on the pilot properly
* pcs/cal-backend.c (cal_backend_update_object): Don't log the
event until after the update in case its a new item
svn path=/trunk/; revision=5940
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-09-19 JP Rosevear <jpr@helixcode.com>
* conduits/todo/todo-conduit.c (check_for_slow_setting): Add some
other cases where a slow sync is in order
(pre_sync): Pre load the uids, the map and the add/mod/del lists
(match_record): Use the map hash to match records
(iterate): Iterate using the pre-loaded uid list
(iterate_specific): Iterate using the add/mod/del lists
(purge): Delete all entries in the del list
(set_status): Set status by adding to an appropriate list
(set_pilot_id): Set pilot_id by updating map hash
* conduits/todo/todo-conduit.h: Add lists for added, modified and
deleted objects
* conduits/todo/todo-conduit.c (map_name): Get the pilot_id->uid
map
file name
(map_sax_start_element): SAX handler to extract a pilot_id->uid
mapping
(map_sax_parse): Parse the given file and build a pilot_id->uid
hash
(map_write_foreach): Write out individual mapping elements
(map_write): Write out the pilot_id->uid mapping
(start_calendar_server_cb): Rename from gnome_calendar_load_cb
* conduits/todo/todo-conduit-config.h: Rename pilotID to pilot_id
* conduits/todo/e-todo.conduit.in: A little renaming
* conduits/todo/Makefile.am: Fix build slightly
* pcs/cal.c (build_change_seq): Build a corba sequence out of a
list
of CalObjChanges
(Cal_get_objects_in_range): Implement new corba function
* pcs/cal-backend.c (cal_backend_init): Intiliaze to NULL
(cal_backend_load): Track the uri so we can write the log file
to the same place
(cal_backend_log_name): Figure out the log filename/path based on
the calendar uri
(cal_backend_set_node_timet): Set an xml node property value from
a time_t
(cal_backend_log_entry): Adds a log entry to list waiting to be
written
out
(cal_backend_log_sync): Syncs the log entries to disk
(cal_backend_log_sax_start_element): SAX callback for reading in
log entries
(cal_backend_log_sax_end_element): ditto
(cal_backend_log_sax_parse): Main SAX parser call to parse the log
file looking for particular log entries and creating a
CalObjChange
hash with the last change for each object
(cal_backend_get_log_entries): Returns a hash of objects of a
given
type changed since the given time
(cal_backend_update_object): Add appropriate log entries
(cal_backend_remove_object): ditto
(cal_backend_get_changed_uids): Implement new idl interface call
(cal_backend_foreach_changed): Convert CalObjChange hash into a
list
* pcs/cal-backend-imc.[hc]: Remove crufty files
* pcs/cal-backend-file.c (cal_backend_file_get_type_by_uid): New
function that returns the CalObjType for a uid.
* cal-client/cal-client.h: Update prototypes.
* cal-client/cal-client.c (build_change_list): Build a list
of CalObjChange items from a corba sequence.
(cal_client_get_changed_uids): New accessor method for the
similarly named addition to the idl file.
* cal-util/cal-util.h: Update prototypes and add CalObjChangeType
enum.
* cal-util/cal-util.c (cal_obj_change_list_free): New utility
method to free a list of CalObjChange objects.
* idl/evolution-calendar.idl: Add get_changed_uids method
and associated types.
svn path=/trunk/; revision=5512
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-31 Federico Mena Quintero <federico@helixcode.com>
* gui/event-editor.c (file_delete_cb): No need to spit a warning
if removal fails.
(event_editor_destroy): Free the exception clist data. Unref the
calendar client here.
(close_dialog): Just call gtk_object_destroy() on the event
editor; the destroy handler will free everything else.
* cal-client/cal-client.c (cal_client_object_exists): Removed
function; this is not useful because we operate asynchronously.
* gui/e-day-view.c (e_day_view_on_delete_appointment): No need to
spit a warning if removal fails.
* gui/e-week-view.c (e_week_view_on_delete_appointment): Likewise.
* gui/calendar-model.c (calendar_model_delete_task): Likewise.
svn path=/trunk/; revision=5155
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-31 JP Rosevear <jpr@helixcode.com>
* gui/event-editor.c (file_delete_cb): Implement delete option
(recurrence_toggled): Make an ugly hack to get the recurrence
pages showing properly since we don't yet implement all of the
recurrence rule stuff.
* cal-client/cal-client.c (cal_client_object_exists): New function
to see if an object exists and is obtainable from the backend
* cal-client/cal-client.h: Add prototype
svn path=/trunk/; revision=5143
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-28 Federico Mena Quintero <federico@helixcode.com>
* cal-client/cal-client.c (cal_client_is_loaded): New function.
We need this from code that dynamically updates from a client and
could not have connected to the "cal_loaded" signal right after
the client was created.
* gui/calendar-model.c (load_objects): Do not try to load the
objects if the client has not been loaded yet.
(cal_loaded_cb): Check the status value.
* gui/calendar-model.h (CalendarModel): Declare the private
structure here so that gdb will give me love.
* pcs/cal-factory.h (CalFactory): Likewise.
* pcs/cal.h (Cal): Likewise.
* cal-client/cal-listener.h (CalListener): Likewise.
* cal-client/cal-client.h (CalClient): Likewise.
* pcs/cal-backend.h (CalBackend): This no longer has a private
structure, so remove it.
* cal-util/Makefile.am (libcal_util_la_SOURCES): Removed the
vCalendar and old iCalendar cruft.
(libcal_utilinclude_HEADERS): Likewise.
Removed the obsolete iCalendar test program.
svn path=/trunk/; revision=5091
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-10 Federico Mena Quintero <federico@helixcode.com>
* cal-client/cal-client.c (cal_client_generate_instances): There.
A pretty function to generate recurrence instances atomically so
that clients don't have to jump through hoops. Now we can get rid
of the ugly calendar_iterate() function.
svn path=/trunk/; revision=4701
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-08 Federico Mena Quintero <federico@helixcode.com>
* idl/evolution-calendar.idl (Cal): Added a get_objects_in_range()
method. Takes in a time range and the type of component we are
interested in; returns a list of UIDs. The idea is that
ocurrences get computed in the client; we can have multiple
recurrences in iCalendar and we cannot identify them trivially
across the wire.
(Cal): Removed the get_events_in_range() method.
* pcs/cal-backend.c (cal_backend_free_uid_list): New function.
(cal_backend_get_objects_in_range): New function.
(cal_backend_get_events_in_range): Removed.
* pcs/cal-backend-file.c (cal_backend_file_get_objects_in_range):
Implemented new method.
(cal_backend_file_get_events_in_range): Removed.
* pcs/cal.c (Cal_get_events_in_range): Removed.
(uncorba_obj_type): New function.
(Cal_get_uids): Use uncorba_obj_type().
(Cal_get_n_objects): Likewise.
(Cal_get_objects_in_range): Implemented new method.
* cal-client/cal-client.c (cal_client_get_events_in_range): Removed.
(cal_client_get_objects_in_range): Implemented.
(corba_obj_type): New function.
(cal_client_get_n_objects): Use corba_obj_type().
(cal_client_get_uids): Likewise.
svn path=/trunk/; revision=4613
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-07 Federico Mena Quintero <federico@helixcode.com>
* cal-util/cal-component.c (cal_component_get_as_string): Doh,
libical owns the string's memory, so do not free it.
* cal-client/client-test.c (create_client): Connect to the destroy
signal of the client here.
* cal-client/test.ics: New test file, modified from Eric Busboom's
test file from RFC 2445.
2000-08-05 Federico Mena Quintero <federico@helixcode.com>
* cal-client/client-test.c (dump_component): This was gone for
some reason.
(main): Load a new test file.
2000-08-04 Federico Mena Quintero <federico@helixcode.com>
* cal-util/cal-component.c (cal_component_commit_sequence): New
function to commit changes to the SEQUENCE property.
(cal_component_get_as_string): Ensure that the sequence has been
committed.
* cal-client/cal-client.c (cal_client_get_object): Use
CalComponent instead of the old iCalObject.
(cal_client_update_object): Use iCalObject. Commit the SEQUENCE
property before stringifying the object and piping it over to the
Wombat.
svn path=/trunk/; revision=4585
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* pcs/cal.c (Cal_get_uid_by_pilot_id):
(Cal_update_pilot_id):
* pcs/cal-backend-imc.c (cal_backend_imc_update_pilot_id):
(cal_backend_imc_get_uid_by_pilot_id):
* pcs/cal-backend.c (cal_backend_get_uid_by_pilot_id):
(cal_backend_update_pilot_id): server code to service these:
* gui/calendar-pilot-sync.c: updated to make use of cal-client.
also uses dirty bits on both sides to aid in syncing.
* cal-client/cal-client.c (cal_client_get_uid_by_pilot_id): new
function -- ask the cal server to return uid given an object's
pilot id.
(cal_client_update_pilot_id): new function -- inform the
cal server of an objects pilot id and pilot dirty-flag.
svn path=/trunk/; revision=3789
|
|
|
|
| |
svn path=/trunk/; revision=3693
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-06-09 Federico Mena Quintero <federico@helixcode.com>
* idl/evolution-calendar.idl (Cal): Added a get_n_objects()
method.
* pcs/cal-backend.c (cal_backend_get_n_objects): New function.
* pcs/cal-backend-imc.c (cal_backend_imc_get_n_objects):
Implemented.
* pcs/cal.c (Cal_get_n_objects): Implemented.
* cal-client/cal-client.c (cal_client_get_uids): Free the ev.
(cal_client_get_n_objects): Implemented.
* cal-util/calobj.h (iCalObjectField): New enumeration to identify
the fields in an iCalObject.
svn path=/trunk/; revision=3486
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cal-client/cal-client.c (cal_client_get_object): instead of
returning a text representation, decode the text and return an
iCalObject. Also added CalClientGetStatus which indicates
success or type of failure.
* cal-util/calobj.c (ical_object_find_in_string): #ifed out
ical_object_find_in_string since it is unused now.
* cal-client/client-test.c (list_uids): track get_object change
* gui/calendar-commands.c (calendar_iterate): same
* gui/e-day-view.c (e_day_view_update_event): same
* gui/e-week-view.c (e_week_view_update_event): same
* gui/print.c (print_day_details): same
(print_day_summary): same
(print_todo_details): same
* gui/gnome-cal.c (trigger_alarm_cb): same
* gui/gncal-todo.c (gncal_todo_update): same
svn path=/trunk/; revision=3463
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-11 Federico Mena Quintero <federico@helixcode.com>
* gui/gnome-cal.c (add_alarms_for_object): New function to add
today's alarms for a single object.
(gnome_calendar_object_updated_cb): Update the object's alarms.
* idl/evolution-calendar.idl (Cal): Added a
get_alarms_for_object() method.
* pcs/cal.c (Cal_get_alarms_for_object): Implemented method.
* pcs/cal-backend.c (cal_backend_get_alarms_for_object): New
function.
* pcs/cal-backend-imc.c (cal_backend_imc_get_alarms_for_object):
Implemented.
* cal-client/cal-client.c (cal_client_get_alarms_for_object): New
function.
svn path=/trunk/; revision=3003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-11 Federico Mena Quintero <federico@helixcode.com>
* gui/gnome-cal.c (gnome_calendar_update_all): Removed unused
arguments. Load the initial alarms here.
(load_alarms): New function to load a day's worth of alarms.
(gnome_calendar_class_init): Eeeek! This was taking in an
incorrect argument type.
(gnome_calendar_init): Now the calendar keeps a hash table of
UIDs->queued alarms. Create the hash table here.
(gnome_calendar_destroy): Destroy the alarms hash table.
(gnome_calendar_object_updated_cb): Remove the alarms for the
object and regenerate them.
(gnome_calendar_object_removed_cb): Remove the alarms for the
object.
* gui/alarm.c (alarm_add): Do not take in a CalendarAlarm, just
the trigger time, the callback and the closure data. Return an
opaque identifier for the alarm so that it can be removed by the
client code if needed. Use the queue_alarm() helper function.
(queue_alarm): Helper function to actually queue the alarm and set
up the itimer. Deal with a nonzero return value from
setitimer().
(alarm_remove): New function to remove an alarm based on its ID.
(pop_alarm): New helper function; pops the first alarm of the
queue and resets the timer as appropriate.
(alarm_ready): Simplified a lot by using pop_alarm().
* idl/evolution-calendar.idl (Cal): Added get_alarms_in_range().
* pcs/cal.c (build_instance_seq): New function to build a CORBA
sequence from the internal list of instances.
(Cal_get_events_in_range): Use build_instance_seq().
(Cal_get_alarms_in_range): Implemented new method.
* pcs/cal-backend.c (cal_backend_get_alarms_in_range): New
function with the get_alarms_in_range() engine.
* pcs/cal-backend-imc.c (cal_backend_imc_get_alarms_in_range):
Implemented the get_alarms_in_range() method.
* cal-client/cal-client.c (cal_client_get_alarms_in_range): New
client-side function for getting the alarms.
(build_instance_list): New helper function to build the
CalObjInstance list from the CORBA sequence.
(cal_client_get_events_in_range): Use build_instance_list().
* gui/calendar-commands.h: #include <cal-util/calobj.h>. #include
"gnome-cal.h".
* gui/e-week-view.c: #include "calendar-commands.h" instead of
main.h; the latter is an obsolete file and will be killed.
* gui/evolution-calendar-control.c (main): Call init_bonobo()
before anything else. We need the GTK+ object system initialized.
* gui/Makefile.am (evolution_calendar_SOURCES): Do not use main.h.
* cal-util/cal-util.c (cal_alarm_instance_list_free): New function.
svn path=/trunk/; revision=2987
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-08 Federico Mena Quintero <federico@helixcode.com>
* pcs/cal-backend.h (CalBackendClass): CalBackendClass now is just
an interface for calendar backends; this is an abstract class.
Put in the vtable for the backend methods.
* pcs/cal-backend.c (cal_backend_new): Removed function, since
CalBackend is not just an abstract class.
Removed implementation-specific functions and made public
functions call the virtual methods instead.
* pcs/cal-backend-imc.[ch]: New files with the CalBackendIMC
implementation; this implements a backend for iCalendar and
vCalendar files. Moved the implementation-specific stuff from
cal-backend.[ch] to here.
* pcs/cal-backend-imc.c (CalendarFormat): Moved enumeration to
here. Added a CAL_UNKNOWN value for when the backend is not
loaded yet.
(cal_backend_imc_init): Initialize priv->format as CAL_UNKNOWN.
(save_to_vcal): Use the same VCProdIdProp value as in
cal-util/calobj.c. Use "1.0" as the VCVersionProp as per the
vCalendar spec.
(ensure_uid): Return nothing, since the result value need not be
used anymore.
(add_object): Since we mark the calendar as dirty anyways, we do
not need to check the result value of ensure_uid() anymore.
(remove_object): Asssert that we know how to handle the object's
type. We do this in add_object() anyways.
* pcs/Makefile.am (libpcs_a_SOURCES): Added cal-backend-imc.[ch].
* gui/gnome-cal.c: Replaced debugging printf()s with g_message()
so that we can see the line number where they occur.
* gui/gnome-cal.c (gnome_calendar_load_cb): Sort of handle the
LOAD_METHOD_NOT_SUPPORTED result code, and added a default for the
switch.
* cal-client/cal-listener.h (CalListenerLoadStatus): Removed
enumeration; it is stupid to translate all values for the
CalClient when it is going to translate them again.
(CalListenerClass::cal_loaded): This signal now passes the
LoadStatus directly from the CORBA side.
* cal-client/cal-listener.c (Listener_cal_loaded): Do not
translate the status value.
* cal-client/cal-client.h (CalClientLoadStatus): Added the
CAL_CLIENT_LOAD_METHOD_NOT_SUPPORTED error code.
* cal-client/cal-client.c (cal_loaded_cb): Translate the CORBA
version of the LoadStatus result code.
* pcs/cal-factory.c (CalFactoryPrivate): New methods field for the
hash table from method strings to the GtkTypes for backend class
types.
(cal_factory_init): Create the priv->methods hash table.
(cal_factory_destroy): Free the priv->methods hash table.
(cal_factory_register_method): New function to register a backend
class for a particular URI method.
(launch_backend_for_uri): New function to launch a backend for a
particular URI's method.
(load_backend): Use launch_backend_for_uri(). Move the error
notification code from load_fn() to here.
(create_backend): Use launch_backend_for_uri(). Move the error
notification code form create_fn() to here; it is #ifdefed out
since currently cal_backend_create() does not have any error
reporting capabilities.
* idl/evolution-calendar.idl (Listener::LoadStatus): Added a
PROTOCOL_NOT_SUPPORTED error code.
* pcs/cal-factory.c (cal_factory_load cal_factory_create): Removed
functions, since they were supposed to be internal only.
(CalFactory_load): Call queue_load_create_job() directly.
(CalFactory_create): Likewise.
svn path=/trunk/; revision=2921
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-03-12 Federico Mena Quintero <federico@helixcode.com>
* gui/main.c (gnome_calendar_locate): Removed function now that it
is no CORBA server in the GUI.
(save_default_calendar): Removed function. Now the personal
calendar server will take care of saving modified calendars when
appropriate.
(close_cmd): Do not call unregister_calendar_services().
* gui/eventedit.c (ee_ok): Do not save the calendar.
* gui/gncal-day-panel.c (day_view_range_activated): Likewise.
* gui/gncal-todo.c (ok_button): Likewise.
(delete_todo): Likewise.
* gui/gncal-full-day.c (delete_occurance): Likewise.
(delete_appointment): Likewise.
(unrecur_appointment): Likewise.
(child_focus_out): Likewise.
(update_from_drag_info): Likewise.
* gui/gnome-cal.c (gnome_calendar_new): Removed obsolete call to
create the CORBA server.
* gui/gnome-cal.h (GnomeCalendar): Renamed `calc' field to
`client'.
* cal-client/cal-client.h (CalClient): Removed filename and
corba_server fields.
svn path=/trunk/; revision=2102
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gui/gnome-cal.h: replaced "Calendar *cal" with "CalClient *calc"
in the GnomeCalendar struct.
* gui/*.c: tracked change from Calendar * to CalClient
* gui/main.c: moved alarm_defaults from here to cal-util/calobj.c
(calendar_get_events_in_range): pulled this out of calendar.c and
fixed it up to use cal-client stuff. i'm not sure where to put it yet.
* gui/main.c (calendar_iterate): pulled this one out of calendar.c also
svn path=/trunk/; revision=2090
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-17 Federico Mena Quintero <federico@helixcode.com>
* cal-client.c (cal_client_remove_object): Implemented.
* cal.c (cal_notify_remove): Implemented.
(Cal_remove_object): Implemented.
(cal_get_epv): Fill in the remove_object field in the epv.
* cal-backend.c (cal_backend_remove_object): Implemented.
(notify_remove): New function to notify clients that an object was
removed.
svn path=/trunk/; revision=1821
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-11 Federico Mena Quintero <federico@helixcode.com>
* cal-client.c (cal_client_update_object): Implemented.
* cal.c (cal_notify_update): New function to notify the listener
about an updated object.
(Cal_update_object): Implemented.
(Cal_get_uids): set_release() the sequence to TRUE.
(Cal_get_events_in_range): Likewise.
* cal-backend.c (remove_object): New function to remove objects
from a calendar backend.
(cal_backend_update_object): New public function to update an
object and notify clients about it.
* evolution-calendar.idl (Cal): Added update_object() and
delete_object() methods.
(Listener): Removed the obj_changed method and renamed obj_added
to obj_updated. We now only have updated and removed notifiers.
* cal-listener.[ch]: Removed the "changed" notification code.
Changed the "added" notification code to the "updated"
notification.
* cal-client.c: Likewise.
* tlacuache.c (create_cal_factory): Connect to "destroy" on the
factory and exit the main loop when the factory is destroyed.
* cal-factory.c (backend_destroy_cb): New callback used when a
backend is destroyed. Removes the backend from the factory's hash
table and unrefs the factory if all backends go away.
(add_calendar_client): Free the environment.
* cal.c (cal_new): Use bonobo_object_unref() if we fail to
initialize.
* cal-listener.c (cal_listener_new): Likewise.
* layout.c (layout_events): Plug li.partition memory leak.
svn path=/trunk/; revision=1742
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-10 Federico Mena Quintero <federico@helixcode.com>
* cal-backend.c (cal_backend_add_cal): Connect to the Cal's
destroy signal.
(cal_backend_remove_cal): Killed function now that removal of Cal
objects is done in their destroy callback.
(cal_destroy_cb): New callback to remove a Cal from the backend's
list of clients. Also, the backend destroys itself when there are
no more clients connected to it.
(save): New placeholder function to save a backend.
(destroy): New function to destroy a backend's data.
(cal_backend_destroy): Save the calendar and destroy it.
* cal.c (cal_destroy): Reset the priv->backend to NULL.
* cal-factory.c (add_calendar_client): There is no need to call
cal_backend_remove_cal(); we can now just destroy the Cal object.
(create_fn): Make sure we always unref the URI.
(load_fn): Move the URI unref to the end of the function for
safety.
* cal-factory.c (add_calendar_client): Unref the Cal only if
notification of the listener was unsuccessful. Otherwise, the
calendar user agent (Listener side) keeps the reference.
* tl-test.c (list_uids): Free the calobj.
* cal-client.c (cal_loaded_cb): Use bonobo_object_unref() to get
rid of the listener.
(load_or_create): Likewise.
(destroy_factory): New function to get rid of the factory.
(destroy_listener): New function to get rid of the listener.
(destroy_cal): New function to get rid of the calendar client
interface object.
(cal_client_destroy): Free all resources.
(cal_client_get_object): CORBA_free() the calobj string. Boy, I
love memprof.
* cal-listener.c (cal_listener_destroy): Reset the priv->cal to
CORBA_OBJECT_NIL.
* cal-backend.c (cal_backend_remove_cal): Do not unref the Cal,
since the calendar user agent owns it.
(cal_backend_add_cal): Do not ref the Cal, since the calendar user
agent owns it.
* cal-factory.c (add_calendar_client): Use bonobo_object_unref()
to get rid of the calendar client interface object.
* calobj.c (ical_object_create_from_vobject): Duplicate the
default "PUBLIC" string.
2000-02-09 Federico Mena Quintero <federico@helixcode.com>
* cal-factory.c (cal_factory_load): Added documentation comment.
(load_fn): Do not print a message if the backend could not be
loaded due to a non-fatal error.
(queue_load_create_job): Moved the stuff from cal_factory_load()
to here. Now this function serves to queue load or create
requests.
(cal_factory_load): Use queue_load_create_job().
(cal_factory_create): Implemented; use queue_load_create_job().
(create_fn): New job handler for creating new calendars.
(create_backend): New function to create a new backend with a new
calendar.
(add_backend): New helper function to add backends to the
factory's hash table.
(load_backend): Use add_backend() instead of adding the backend by
ourselves.
* cal-client.c (load_or_create): Moved the functionality from
cal_client_load_calendar() to here, and added an option to create
a new calendar instead of loading an existing one.
(cal_client_load_calendar): Use load_or_create().
(cal_client_create_calendar): Implemented.
* cal-backend.c (cal_backend_create): Implemented.
* evolution-calendar.idl (LoadStatus): Added an IN_USE error for
create requests.
* cal-listener.h (CalListenerLoadStatus): Added CAL_LISTENER_LOAD_IN_USE.
* cal-listener.c (Listener_cal_loaded): Convert the IN_USE error.
* cal-client.h (CalClientLoadStatus): Added CAL_CLIENT_LOAD_IN_USE.
* cal-client.c (cal_loaded_cb): Handle CAL_LISTENER_LOAD_IN_USE.
* tl-test.c: New test program for the calendar client side; it
also exercises the server side by sending commands to it.
* Makefile.am: Added the tl-test program.
* tlacuache.gnorba: Updated.
* tlacuache.c (create_cal_factory): Use the right GOAD id.
* cal-client.c (cal_client_construct): Use the right GOAD id.
svn path=/trunk/; revision=1732
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-08 Federico Mena Quintero <federico@helixcode.com>
* evolution-calendar.idl (Cal): Added get_uids() method to get a
list of UIDs based on object types.
* cal-backend.c (cal_backend_get_uids): Implemented get_uids() in
the backend.
* cal.c (Cal_get_uids): Implemented get_uids() method.
* cal-client.c (cal_client_get_uids): Implemented client-side
function.
* cal-util.c (cal_obj_instance_list_free): Doh. Free the list,
not the last link.
(cal_obj_uid_list_free): New function to free a list of UIDs.
* GnomeCal.idl (Repository): Removed unused method
get_object_by_id_list(). This is just for cleanup purposes and to
remind me exactly of what needs to be moved over to
evolution-calendar.idl.
(Repository): Removed unused get_objects() method.
* corba-cal.c (init_calendar_repo_class): Removed the unused
get_objects method.
* calobj.h (CalObjFindStatus): New status value enumeration for
the find function.
* calobj.c (ical_object_find_in_string): New function to parse a
complete calendar and find a calendar object in it. This should
be used instead ical_object_new_from_string() in the future.
* evolution-calendar.idl (CalObjInstance): Added an uid field.
Now the idea is that whenever calendar object strings are passed
around, their UIDs are passed along with them so that the actual
object can be pulled from the whole VCAL object using its UID to
identify it.
* cal-util.h (CalObjInstance): Added uid field.
* cal-util.c (cal_obj_instance_list_free): Free the UIDs.
* cal-backend.c (build_event_list): Store the object's UID in the
instance structure.
* cal.c (Cal_get_events_in_range): Copy the UID field to the CORBA
structure.
* cal-client.c (cal_client_get_events_in_range): Copy the UID
field from the CORBA structure.
* main.c (gnome_cal_file_menu): Removed unfinished html-month stuff.
* Makefile.am (gnomecal_SOURCES): Removed html-month.c.
* gnome-cal.c: #include "alarm.h"
(mail_notify): Made static.
* alarm.h: #include "calobj.h"
* corba-cal-factory.h (init_corba_server): Fixed prototype.
* quick-view.c (create_items_for_event): Made static.
* gncal-todo.c (column_resized): Made static.
* layout.c (find_index): Made static.
svn path=/trunk/; revision=1699
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-08 Federico Mena Quintero <federico@helixcode.com>
* evolution-calendar.idl (CalObjInstance): New struct to wrap
instances of calendar objects for recurrencies and alarms.
(Cal::get_events_in_range): New method to get ocurring and
recurring events by time range.
* cal-backend.c (cal_backend_get_events_in_range): New function to
get a list of event instances in a time range.
(string_from_ical_object): New internal function.
(cal_backend_get_object): Use string_from_ical_object() instead of
doing everything ourselves.
(cal_backend_get_events_in_range): New function to get a list of
the events that occur or recur in a specified time range.
* cal-client.c (cal_client_get_events_in_range): Implemented
client-side function.
* cal-util.h:
* cal-util.c: New files with utilities and types common to the
client and server parts.
(CalObjInstance): New structure to hold an instance of an actual
occurrence, recurrence, or alarm trigger of a calendar object.
(cal_obj_instance_list_free): New function to free a list of
calendar object instances.
* cal.c (Cal_get_events_in_range): Implemented new method.
* corba-cal.c (cal_repo_get_updated_objects): Free `str' with
free(), not g_free(), since calendar_get_as_vcal_string() uses
writeMemVObject(), which uses realloc(). Fixed in gnome-pim as
well.
svn path=/trunk/; revision=1693
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-04 Federico Mena Quintero <federico@helixcode.com>
* cal-backend.c (get_calendar_base_vobject): New function to
create the base VObject for a calendar.
(cal_backend_get_object): Create the base calendar and add the
sought object to it, then stringify it.
* evolution-calendar.idl (Listener::obj_added
Listener::obj_changed): Now these pass in just the UIDs, not the
complete objects.
* cal-listener.c (Listener_obj_added): Changed to pass in the uid,
not the object.
(Listener_obj_changed): Likewise.
* cal-client.h (CalClientClass): Made the obj_added and
obj_changed signals take in the UIDs, not the full objects.
* cal-client.c (obj_added_cb): Likewise.
(obj_changed_cb): Likewise.
svn path=/trunk/; revision=1666
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-03 Federico Mena Quintero <federico@helixcode.com>
* evolution-calendar.idl (Cal): Added the get_object() method.
* cal-client.c (cal_client_get_object): New function to get a
calendar object by its UID.
* cal.c (Cal_get_object): Implemented.
* cal-backend.c (cal_backend_get_object): New unfinished backend
function. We need some reorganizing of how the calendar objects
are stored.
svn path=/trunk/; revision=1663
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-01 Federico Mena Quintero <federico@helixcode.com>
* cal-client.c (cal_loaded): Handle the cal_loaded signal from the
listener. Store the calendar client interface object, and emit
our own cal_loaded signal.
(cal_client_load_calendar): Connect to the listener's signals.
(cal_client_class_init): Added the "obj_added", "obj_removed",
öbj_changed" signals.
(obj_added_cb): Handle the signal from the listener.
(obj_removed_cb): Likewise.
(obj_changed_cb): Likewise.
svn path=/trunk/; revision=1658
|
|
|
|
| |
svn path=/trunk/; revision=1657
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-01-30 Federico Mena Quintero <federico@helixcode.com>
* evolution-calendar.idl: Changed the namespace from
GNOME::Calendar to Evolution::Calendar.
(Listener::LoadStatus): Fixed SUCESSS -> SUCCESS typo. And I
never noticed it in the implementation. Ain't M-/ grand?
* Makefile.am: Changed ocurrences of gnome-calendar.idl to
evolution-calendar.idl.
* *.[ch]: Changed GNOME_Calendar_foo identifiers to
Evolution_Calendar_foo.
svn path=/trunk/; revision=1652
|
|
svn path=/trunk/; revision=1629
|