2002-03-15 Jeffrey Stedfast <fejj@ximian.com>
* gui/e-day-view.c: Updated to use new EPopupMenu API.
* gui/e-week-view.c: Updated to use new EPopupMenu API.
* gui/e-calendar-table.c: Updated to use new EPopupMenu API.
svn path=/trunk/; revision=16184
* gui/dialogs/cal-prefs-dialog.glade: Add <visible>False</visible>
to cal-prefs-dialog so it doesn't get shown when we load the Glade
file with libglade.
* gui/component-factory.c (owner_set_cb): Register the
ConfigControl factory.
* gui/tasks-control.c: Removed verb "TaskSettings".
(tasks_control_settings_cmd): Removed.
* gui/calendar-commands.c: Removed verb "CalendarSettings".
(settings_cmd): Removed.
* gui/dialogs/cal-prefs-dialog.c: Renamed `CalPrefsDialogPrivate'
to `DialogData'. Replace `dialog' member with a `page' member.
Remove `toplevel_notebook' member.
(init_widgets): Renamed from `cal_prefs_dialog_init_widgets'.
Just get a DialogData.
(get_widgets): Get a DialogData pointer.
(cal_prefs_dialog_destroy): Removed.
(config_control_destroy_callback): New, signal handler for
::destroy for ConfigControl.
(cal_prefs_dialog_new): Create a new DialogData, connect all the
signal handlers.
(create_time_edit): Renamed from
`cal_prefs_dialog_create_time_edit'.
(cal_prefs_dialog_show): Removed.
(cal_prefs_dialog_button_clicked): Removed.
(show_task_list_config): Get a DialogData.
(show_config): Renamed from `cal_prefs_dialog_show_config'.
Likewise.
(update_task_list_config): Likewise.
(update_config): Renamed from
`cal_prefs_dialog_update_config'. Likewise.
(color_set_callback): New callback, makes the dialog report
changes when the setting in any of the color widgets is changed.
(widget_changed_callback): New callback, makes the dialog report
changes when any of the widgets changes status.
(connect_changed): New utility function to connect this callback
to all the widgets.
(setup_widgets): Connect all the widgets.
(cal_prefs_dialog_new): Call `setup_widgets'.
* gui/config-control-factory.c: New.
* gui/config-control-factory.h: New.
* gui/GNOME_Evolution_Calendar.oaf.in: Add
OAFIID:GNOME_Evolution_Calendar_ConfigControl and
OAFIID:GNOME_Evolution_Calendar_ConfigControlFactory.
svn path=/trunk/; revision=16135
2002-03-05 JP Rosevear <jpr@ximian.com>
* gui/print.c: remove unneeded parameter from print_text_size
everywhere
(get_font_for_size): calculate a font size based on the available
height
(print_text): calculate the top of where the font should be drawn
(print_text_size): use get_font_for_size
(print_day_background): use get_font_for_size
2002-03-05 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-time-sel-item.c
(e_meeting_time_selector_item_draw): pass the real table
to e_meeting_model_etable_view_to_model_row
(e_meeting_time_selector_item_paint_busy_periods): ditto
* gui/dialogs/meeting-page.c (right_click_cb): ditto
* gui/e-meeting-model.h: update protos
* gui/e-meeting-model.c
(e_meeting_model_etable_model_to_view_row): take in to account the
fact the table used the without model
(e_meeting_model_etable_view_to_model_row): ditto
svn path=/trunk/; revision=15926
002-02-19 JP Rosevear <jpr@ximian.com>
* gui/e-itip-control.c (send_item): pass extra itip_send_comp
params
(send_freebusy): ditto
(ok_clicked_cb): ditto, including the timezones culled from the
component
* gui/e-week-view.c: pass extra itip_send_comp params
* gui/calendar-commands.c: ditto
* gui/e-day-view.c: ditto
* gui/dialogs/task-editor.c: ditto
* gui/dialogs/event-editor.c: ditto
* gui/dialogs/comp-editor.c: ditto
* gui/itip-utils.h (itip_send_comp): update proto
* gui/itip-utils.c (foreach_tzid_callback): check the passed in
zones, then the builtin time zones then the client
2002-02-19 JP Rosevear <jpr@ximian.com>
* gui/e-itip-control.c (find_my_address): strip the ical value and
do a case insensitive compare
(find_attendee): ditto
(change_status): put the error message here
(ok_clicked_cb): don't update the item or rsvp unless
change_status was successful, trip the ical value and do a case
insensitive compare
* gui/itip-utils.c (get_address): strip the incoming address
(itip_strip_mailto): use g_strncasecmp
(comp_limit_attendees): strip the ical value and do a case
insensitive compare
svn path=/trunk/; revision=15763
2002-02-08 JP Rosevear <jpr@ximian.com>
* gui/dialogs/task-details-page.glade: change custom widget
creator to e_url_entry_new
* gui/dialogs/task-details-page.c (get_widgets): get the url entry
and its entry
svn path=/trunk/; revision=15622
2002-02-08 JP Rosevear <jpr@ximian.com>
* gui/dialogs/task-details-page.glade: add a custom widget created
with e_url_button_new
* gui/dialogs/task-details-page.c (task_details_page_init): init
url_button member to NULL
(init_widgets): set the url button entry
(get_widgets): get the url button
* gui/calendar-commands.c (pixmaps): use new all day event icon
svn path=/trunk/; revision=15610
2002-02-07 JP Rosevear <jpr@ximian.com>
* gui/e-day-view.c: pass meeting boolean for
gnome_calendar_edit_object and gnome_calendar_new_appointment_for
* gui/e-week-view-event-item.c: ditto
* gui/e-week-view.c: ditto
* gui/tasks-control.c (confirm_expunge): kill warning
* gui/calendar-commands.c (new_meeting_cb): show a new meeting
dialog
(new_event_cb): pass new param
* gui/gnome-cal.c (gnome_calendar_edit_object): take meeting
boolean and show meeting page if true
(gnome_calendar_new_appointment_for): takeing meeting param and
pass to above
(gnome_calendar_new_appointment): add new param
* gui/gnome-cal.h: update proto
* gui/component-factory.c (create_component): take a comp editor
mode, determine vtype
(sc_user_create_new_item_cb): check for meeting user creatable
item
(create_object): add meeting as user creatable item
* gui/comp-editor-factory.c (edit_new): get a comp editor mode
now, determine vtype and show meeting page if required
(queue_edit_new): get comp editor mode
(impl_editNew): ditto, plus queue the mode directly instead of
determining the vtype
* gui/dialogs/event-editor.c (show_meeting): new internal util
function to show meeting page
(event_editor_show_meeting): show the meeting
(schedule_meeting_cmd): use show_meeting
* gui/dialogs/event-editor.h: new proto
* idl/evolution-calendar.idl: editNew takes a mode rather than a
type now
* cal-util/Makefile.am: fix includes
svn path=/trunk/; revision=15595
2002-01-25 Federico Mena Quintero <federico@ximian.com>
* gui/dialogs/alarm-options.glade: Use 1 instead of zero as the
minimum value for the repetitions spin button as we use a check
box to specify whether the alarm has repetitions or not. Fixes
bug #19054.
svn path=/trunk/; revision=15472
2002-01-17 Damon Chaplin <damon@ximian.com>
* gui/dialogs/alarm-page.c (get_alarm_string): save the alarm string
in the correct variable (str), so it actually gets shown for alarms
with specific trigger times. Fixes bug #18801.
svn path=/trunk/; revision=15352
2001-12-21 JP Rosevear <jpr@ximian.com>
* gui/dialogs/comp-editor.c: remove needs send signal related
cruft
(save_comp_with_send): with send_component_dialog, indicate if the
meeting info is newly created or not
(real_edit_comp): remember if the dialog initially needs a send
* gui/dialogs/send-comp.c (send_component_dialog): take a "new"
parameter indicating whether the dialog should intimate if the
component to be sent is a new meeting or not
* gui/dialogs/send-comp.h: update proto
* gui/dialogs/comp-editor.c: remove no longer used needs_send
notification and signal
* gui/dialogs/comp-editor.h: remove proto
* gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received): add new
param to send_component_dialog
(e_day_view_finish_long_event_resize): ditto
(e_day_view_finish_resize): ditto
(e_day_view_on_editing_stopped): ditto
(e_day_view_on_top_canvas_drag_data_received): ditto
* gui/e-week-view.c (e_week_view_on_editing_stopped): add new
param to send_component_dialog
svn path=/trunk/; revision=15204
2001-12-21 <jpr@ximian.com>
* gui/dialogs/comp-editor.h: inherit from bonobo window
* gui/dialogs/comp-editor.c: inherit from bonobo window
(comp_editor_key_press_event): Look for an escape key press and
close the window if found
svn path=/trunk/; revision=15202
2001-12-06 Jon Trowbridge <trow@ximian.com>
* gui/dialogs/event-editor.c (event_editor_destroy): Explicitly
destroy the EMeetingModel. This is a hack to work around problems
with the reference counting; we are still leaking the
EMeetingModels.
* gui/e-meeting-time-sel.c (e_meeting_time_selector_construct):
Ref our EMeetingModel.
(e_meeting_time_selector_destroy): Unref the model.
* gui/e-meeting-model.c (destroy): Properly destroy
corba_select_names with a call to bonobo_object_release_unref.
(Fixes 14002)
svn path=/trunk/; revision=14919
2001-12-05 Rodrigo Moya <rodrigo@ximian.com>
* gui/dialogs/event-page.glade: added entry for the LOCATION field
* gui/dialogs/event-page.c: added support for the new LOCATION entry
added in the Event editor.
svn path=/trunk/; revision=14901
001-11-11 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-model.h: new protos
* gui/e-meeting-model.c (e_meeting_model_get_zone): accessor
(e_meeting_model_set_zone): ditto
(init): init to the calendar default zone
(process_free_busy_comp): take the zone to convert to as a param
(e_meeting_model_refresh_busy_periods): redraw properly
* gui/dialogs/schedule-page.c (update_time): set the zone of the
model
svn path=/trunk/; revision=14669
* gui/dialogs/meeting-page.c
(meeting_page_fill_widgets): Convert strings to GTK+ encoding.
(meeting_page_destroy): Free allocated strings before freeing the list
itself.
svn path=/trunk/; revision=14647
2001-11-06 JP Rosevear <jpr@ximian.com>
* gui/dialogs/event-editor.c (event_editor_edit_comp): make sure
to remove all attendees from the model when we edit a new comp,
append the pages if they are needed and we weren't showing them
before
* gui/dialogs/task-editor.c (task_editor_edit_comp): same as above
* gui/dialogs/comp-editor.c (comp_editor_remove_page): check for a
return value indicating the page was not found and return if so
svn path=/trunk/; revision=14615
<ettore> ok so
<ettore> should I build this tarball again?
* ettore doesn't think so
<ettore> I have checked it already earlier today
svn path=/trunk/; revision=14607
2001-11-05 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-time-sel.c (e_meeting_time_selector_class_init):
add a changed signal
(e_meeting_time_selector_construct): emit changed signal
(e_meeting_time_selector_set_meeting_time): ditto
(e_meeting_time_selector_set_all_day): set the all day setting
(e_meeting_time_selector_autopick): emit changed signal
(e_meeting_time_selector_find_nearest_interval): find proper
interval when in all day mode
(e_meeting_time_selector_find_nearest_interval_backward): ditto
(e_meeting_time_selector_drag_meeting_time): for all day events,
move the time when past the 12 hour mark, and and always make sure
1 full day is selected, emit changed signal when appropriate
(e_meeting_time_selector_update_start_date_edit): set date and
time of day together
(e_meeting_time_selector_update_end_date_edit): ditto, and adjust
display time if all day event
* gui/e-meeting-time-sel-item.c
(e_meeting_time_selector_item_draw): remove unused variable
(e_meeting_time_selector_item_button_press): for all day mode,
make the interval a whole day
* gui/dialogs/schedule-page.c (update_time): set the meeting time
selector setting instead of manual mucking with the e-date-edit
widgets
(init_widgets): listen to the changed signal of the meeting time
selector instead of propagating multiple events as it updates
* gui/dialogs/event-page.c (update_time): block time zone change
signals
svn path=/trunk/; revision=14601
2001-10-30 Federico Mena Quintero <federico@ximian.com>
* gui/dialogs/meeting-page.c (meeting_page_fill_component): Add
_() to a string that was missing it.
svn path=/trunk/; revision=14491
2001-10-30 Federico Mena Quintero <federico@ximian.com>
* gui/dialogs/meeting-page.c (table_canvas_focus_out_cb): Commit
the ETable click-to-add for if the dialog is being destroyed.
Should fix bug #13959.
svn path=/trunk/; revision=14481
2001-10-30 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-time-sel-item.c
(e_meeting_time_selector_item_button_press): move in whole day
increments if we are in all day mode
* gui/e-meeting-time-sel.c
(e_meeting_time_selector_on_start_time_changed): get rid of
localtime call
(e_meeting_time_selector_on_end_time_changed): ditto
(e_meeting_time_selector_update_start_date_edit): set the date
editor using the meeting time fields directly
(e_meeting_time_selector_update_end_date_edit): ditto
* gui/dialogs/schedule-page.c (update_time): do the set_show_time
stuff first
* conduits/calendar/calendar-conduit.c (process_multi_day): don't
adjust the time, set the default timezone for date values
svn path=/trunk/; revision=14475
2001-10-30 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-model.c (e_meeting_model_count_actual_attendees):
count the actual attendees (doesn't include people delegating
* gui/e-meeting-time-sel.c: use
e_meeting_model_count_actual_attendees (renamed)
* gui/e-meeting-time-sel-item.c: use
e_meeting_model_etable_view_to_model_row calls instead of calling
on the model directly, use e_meeting_model_count_actual_attendees
* gui/e-meeting-model.c
(e_meeting_model_etable_model_to_view_row): get the real mapping
(e_meeting_model_etable_view_to_model_row): ditto
(get_key): e-table-without callback
(duplicate_key): ditto
(free_gotten_key): ditto
(free_duplicated_key): ditto
(init): create without model
(e_meeting_model_etable_from_model): build etable from without
model
* gui/e-meeting-model.h: update protos
* gui/dialogs/meeting-page.c (right_click_cb): convert row from
view to model row
svn path=/trunk/; revision=14462
2001-10-30 Damon Chaplin <damon@ximian.com>
* gui/dialogs/task-page.c (task_page_fill_widgets): set to the default
timezone for DATE values, in case the user switches to a DATE-TIME.
svn path=/trunk/; revision=14461
2001-10-30 Damon Chaplin <damon@ximian.com>
* gui/dialogs/schedule-page.c:
* gui/dialogs/event-page.c:
* gui/dialogs/comp-editor-util.c: updated code to handle DATE values.
* gui/gnome-cal.c (gnome_calendar_new_appointment_for):
* gui/e-day-view.c (e_day_view_key_press): updated DATE code.
* gui/e-cell-date-edit-text.c:
* gui/calendar-model.c: updated to support DATE values.
* cal-util/cal-recur.c (cal_recur_generate_instances_of_rule): updated
to use DATE values in same way as Outlook - i.e. the DTEND date is
not included entirely. Though I did make it so that if the DTSTART
and DTEND used the same DATE value, it includes the entire day.
So 1-day events should be the same. Long All-Day events will be
1 day shorter.
* cal-util/cal-component.c (cal_component_get_start_plus_duration):
don't subtract a day from the end date.
* gui/tasks-control.c: updated the EPixmap paths for Cut/Copy etc.
Removed Print & Print Preview paths, since we don't have menu commands
for these any more.
svn path=/trunk/; revision=14456
2001-10-30 Federico Mena Quintero <federico@ximian.com>
Fix bug #10016.
* gui/dialogs/comp-editor.c (comp_editor_merge_ui): Use
bonobo_ui_util_set_ui() instead of doing things by hand. Hmmm, if
only that function had a way of telling us whether it failed so
that we could avoid setting the verb list...
* gui/dialogs/event-editor.c (event_editor_init): Do not pass the
filename with the full path so that Bonobo can find it in a smart
way.
* gui/dialogs/task-editor.c (task_editor_init): Likewise.
svn path=/trunk/; revision=14447
2001-10-30 Federico Mena Quintero <federico@ximian.com>
* gui/dialogs/delete-comp.c (delete_component_dialog): Use an
EMessageBox instead of a gnome_dialog_question so that the label
gets line breaking. Fixes bug #11260.
2001-10-29 Federico Mena Quintero <federico@ximian.com>
Fix bug #13649.
* gui/calendar-config.c
(calendar_config_get_use_default_reminder): New function.
(calendar_config_set_use_default_reminder): New function.
(calendar_config_get_default_reminder_interval): New function.
(calendar_config_set_default_reminder_interval): New function.
(calendar_config_get_default_reminder_units): New function.
(calendar_config_set_default_reminder_units): New function.
(config_read): Get the options for default reminders.
(calendar_config_write): Set the options for default reminders.
* gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config):
Set the default reminder widgets from the config values.
(cal_prefs_dialog_update_config): Set the config values from the
widgets.
* gui/comp-util.c (cal_comp_event_new_with_defaults): New
function; creates a VEVENT component with the default alarm.
* gui/e-day-view.c (e_day_view_key_press): Use
cal_comp_event_new_with_defaults ();
* gui/e-week-view.c (e_week_view_key_press): Likewise.
* gui/calendar-model.c (calendar_model_append_row): Likewise.
* gui/comp-editor-factory.c (get_default_component): Likewise.
* gui/gnome-cal.c (gnome_calendar_new_appointment_for): Likewise.
* cal-util/cal-component.c (ensure_alarm_properties_cb): Ensure we
have a DESCRIPTION property.
(cal_component_commit_sequence): Ensure we have the mandatory
alarm properties.
svn path=/trunk/; revision=14446
2001-10-29 Damon Chaplin <damon@ximian.com>
* importers/Makefile.am (evolution_calendar_importer_LDADD):
* gui/Makefile.am (evolution_calendar_LDADD):
* cal-util/Makefile.am (test_recur_LDADD):
* cal-client/Makefile.am (client_test_LDADD): use libical-evolution.la
* gui/dialogs/schedule-page.c: save the timezone passed in for the
start time, so if our times are changed we use this. Also, if the
end time was passed in in a different timezone, convert it.
Also hide the time fields for DATE values. Note that DATE values still
do not work.
* gui/dialogs/meeting-page.glade: changed "Invite Others" to
"Invite Others..." to be consistent with the other page.
* gui/dialogs/event-page.c (times_updated):
(all_day_event_toggled_cb): set is_date if appropriate.
* gui/e-itip-control.c (write_label_piece): convert all UTC times to
the current timezone. Outlook sends simple, non-recurring, events as
UTC times, which isn't very useful.
svn path=/trunk/; revision=14397
2001-10-29 JP Rosevear <jpr@ximian.com>
* conduits/todo/todo-conduit-config.h
(todoconduit_load_configuration): get the management object by id
* conduits/calendar/calendar-conduit-config.h
(calconduit_load_configuration): ditto
svn path=/trunk/; revision=14353
2001-10-28 Damon Chaplin <damon@ximian.com>
* gui/print.c (print_todo_details): get the tasks directly from the
CalendarModel, so we get the filtering & sorting for free. Fixes
bug #10280. Hmm. This seems too easy. It isn't going to work is it...
* gui/gnome-cal.c (gnome_calendar_get_task_pad): new function to get
the TaskPad ECalendarTable, for printing.
* gui/calendar-model.c:
* gui/calendar-config.c (calendar_config_get_hide_completed_tasks_sexp):
split this out from calendar-model.c so we could use it for printing,
but ended up doing that a different way.
* gui/dialogs/task-page.c (init_widgets): removed a duplicated signal
connected to field_changed_cb().
svn path=/trunk/; revision=14302
2001-10-27 Damon Chaplin <damon@ximian.com>
* gui/print.c (print_week_view):
(range_selector_new): when the week start day is set to Sunday, we
have to be careful to make sure we print the correct week, since
the previous Saturday is actually printed first. Fixes bug #13687.
(print_week_summary): always set compress_weekend to true if
multi_week_view is FALSE (i.e. we are printing the week view).
Fixes bug #13688.
* gui/e-itip-control.c (send_freebusy): use the timezones from the
DTSTART and DTEND.
(write_label_piece): output the date-time and the timezone after it.
Note that we may want to convert it to the current timezone and display
that as well. Also converted COMPLETED to the current timezone.
And fixed all uses of old timezone functions.
* gui/dialogs/comp-editor.c (commit_all_fields): added function to
set the focus in the window to NULL, so all fields lose their focus,
so they emit "changed" signals and update their values if needed.
We call this when most menu commands are used, e.g. 'Save and Close',
'Print' etc. Fixes bug #11434. In future we should also check fields
are valid and show dialogs if they are not.
* gui/calendar-model.c (get_completed): use the completed value
properly. Fixes bug #13694.
* cal-util/timeutil.c (icaltimetype_to_tm_with_zone): don't check
from_zone and to_zone != NULL. A NULL zone is valid, it is for
floating times.
svn path=/trunk/; revision=14266
2001-10-27 Federico Mena Quintero <federico@ximian.com>
* gui/e-day-view.c (e_day_view_on_editing_stopped): Delete
appointments with empty summaries. Fixes Ximian bug #780.
* gui/e-week-view.c (e_week_view_on_editing_stopped): Likewise.
* gui/dialogs/delete-comp.c (delete_component_dialog): Added an
argument to specify whether we unconditionally want single
components to be considered as not having a summary.
* gui/comp-util.c (cal_comp_confirm_delete_empty_comp): New
function.
* gui/misc.[ch]: New files with miscellaneous utility functions;
moved string_is_empty() over from calendar-model.c.
* gui/calendar-model.c: Use the string_is_empty()
function from misc.c.
* gui/Makefile.am (evolution_calendar_SOURCES): Added misc.[ch] to
the list of sources.
svn path=/trunk/; revision=14233
2001-10-26 Damon Chaplin <damon@ximian.com>
* gui/e-itip-control.c (write_label_piece): convert the formatted
date to UTF-8.
* cal-util/cal-recur.c (CAL_OBJ_DEBUG): turn off debug functions.
* gui/dialogs/comp-editor-util.c (parse_contact_string): handle UTF8
correctly. Bug #4450. Good enough for 1.0.
* gui/e-week-view-event-item.c (e_week_view_draw_time): set the gc
color before drawing. Should fix bug #11469.
* gui/dialogs/task-editor.c (task_editor_edit_comp): show or hide the
meeting page as appropriate. Note this may be called more than once,
if the task gets updated somewhere else and the user clicks 'Update
the object'. Hopefully fixes bug #12930.
* gui/print.c (print_comp_item): printed more fields and made a little
prettier. Fixes bug #9352.
(print_date_label): used the correct timezones for each date field.
* *.c: removed several debug messages.
svn path=/trunk/; revision=14187
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-25 Rodrigo Moya <rodrigo@ximian.com>
* gui/dialogs/comp-editor.c (save_comp): show an error message when
we can't update the object on the calendar server
svn path=/trunk/; revision=14090
2001-10-24 Federico Mena Quintero <federico@ximian.com>
Fixes bug #5282.
* cal-util/timeutil.c (icaltimetype_to_tm_with_zone): New function
to avoid copying the same code all over the place.
(icaltimetype_to_tm): Also set the tm.tm_wday.
* gui/alarm-notify/alarm-queue.c (queue_midnight_refresh): Use
time_day_end_with_zone().
(load_alarms_for_today): Likewise. And oops, we were only
computing the times and not loading the alarms.
(obj_updated_cb): Likewise.
(load_alarms): Removed assertion that is no longer valid because
we may load the alarms for a client in two stages.
* gui/dialogs/alarm-page.c (get_alarm_string): Convert absolute
trigger times to the local timezone.
* gui/alarm-notify/alarm-notify-dialog.c (write_html_heading):
Convert the times to the local timezone.
(alarm_notify_dialog): Likewise, for the window title.
(alarm_notify_dialog): Set the window layer to WIN_LAYER_ONTOP.
* gui/e-cell-date-edit-text.c (ecd_get_text): Use
icaltimetype_to_tm_with_zone().
* gui/alarm-notify/save.c (get_config_db): Made public.
(discard_config_db): Made public.
* gui/alarm-notify/config-data.[ch]: New files with functions to
fetch the calendar configuration data used by the alarm daemon.
svn path=/trunk/; revision=13986
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-10-22 JP Rosevear <jpr@ximian.com>
* gui/dialogs/meeting-page.c (meeting_page_destroy): we don't need
to save the state
* gui/e-meeting-time-sel.c (e_meeting_time_selector_destroy):
ditto
* gui/e-meeting-model.c (build_etable): listen for the etable
being destroyed
(table_destroy_cb): save the state when the etable is destroyed
svn path=/trunk/; revision=13872
2001-10-21 JP Rosevear <jpr@ximian.com>
* gui/dialogs/schedule-page.c (init_widgets): listen for changes
in the date editors
(schedule_page_set_dates): update the times when they change
elsewhere
(update_time): set the time in the dialog
(time_changed_cb): notify of changed times
* gui/dialogs/comp-editor.c (page_dates_changed_cb): don't call
the set dates function on the page that noted the change
(page_summary_changed_cb): same for set summary function
* gui/dialogs/event-page.c (update_time): move time setting stuff
to util function
(event_page_set_dates): use it
(event_page_fill_component): ditto
* gui/e-meeting-time-sel.h: fix comment
svn path=/trunk/; revision=13863