Commit Graph

234 Commits

Author SHA1 Message Date
e91db1e5a1 Updated to use new EPopupMenu API.
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
2002-03-16 02:19:47 +00:00
d5ba94f758 Add <visible>False</visible> to cal-prefs-dialog so it doesn't get shown
* 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-13 04:55:04 +00:00
41c0e5bb18 remove unneeded parameter from print_text_size everywhere
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
2002-03-05 20:47:48 +00:00
843b04862e pass extra itip_send_comp params (send_freebusy): ditto (ok_clicked_cb):
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-19 16:26:25 +00:00
1e390adb7d change custom widget creator to e_url_entry_new
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 21:53:53 +00:00
180d4e4ed0 add a custom widget created with e_url_button_new
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-08 17:33:14 +00:00
70398dd9e6 pass meeting boolean for gnome_calendar_edit_object and
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-02-07 19:35:18 +00:00
f1a90dc6db Use 1 instead of zero as the minimum value for the repetitions spin button
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-25 19:02:19 +00:00
4ba09274d6 Clean up some of the Makefiles so we dont' link every library multiple
times, causing big libtool 1.4 pain.

svn path=/trunk/; revision=15461
2002-01-24 23:16:18 +00:00
04e7d6891c save the alarm string in the correct variable (str), so it actually gets
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
2002-01-18 00:00:05 +00:00
bda8b73fe1 default component classification to PUBLIC. Fixes internal bug #1066
2002-01-15  Rodrigo Moya <rodrigo@ximian.com>

	* gui/dialogs/task-page.c (task_page_fill_widgets): default component
	classification to PUBLIC. Fixes internal bug #1066

svn path=/trunk/; revision=15348
2002-01-17 00:42:56 +00:00
72d188ef33 remove needs send signal related cruft (save_comp_with_send): with
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 16:17:09 +00:00
1
ff1f6c3f1a inherit from bonobo window
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-21 14:49:31 +00:00
b48a32253b default component classification to PUBLIC
2001-12-06  Rodrigo Moya <rodrigo@ximian.com>

	* gui/dialogs/event-page.c (event_page_fill_widgets): default
	component classification to PUBLIC

svn path=/trunk/; revision=14927
2001-12-07 15:25:52 +00:00
a86bcdd036 Explicitly destroy the EMeetingModel. This is a hack to work around
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-07 00:17:04 +00:00
2c6ca58b20 added entry for the LOCATION field
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
2001-12-06 15:27:42 +00:00
44d3f6715a new protos
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
2001-11-11 21:07:43 +00:00
d437e7873d Convert strings to GTK+ encoding. (meeting_page_destroy): Free allocated
* 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-09 21:21:12 +00:00
f7c509da22 make sure to remove all attendees from the model when we edit a new comp,
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
2001-11-07 15:43:32 +00:00
cec560b009 <ettore> ok so <ettore> should I build this tarball again? ettore doesn't
<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-06 04:05:21 +00:00
748fba5603 add a changed signal (e_meeting_time_selector_construct): emit changed
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-11-06 00:02:47 +00:00
accdc958be Argh, missing commit from yesterday to fix building of the tarball.
svn path=/trunk/; revision=14563
2001-11-01 20:26:38 +00:00
9fb8bbd298 Added rules to generate `Evolution-Addressbook-SelectNames.h'.
* gui/dialogs/Makefile.am: Added rules to generate
`Evolution-Addressbook-SelectNames.h'.

svn path=/trunk/; revision=14549
2001-10-31 22:13:12 +00:00
05a56a4acf #include <string.h>
2001-10-31  Federico Mena Quintero  <federico@ximian.com>

	* gui/dialogs/alarm-options.c: #include <string.h>

svn path=/trunk/; revision=14540
2001-10-31 15:52:09 +00:00
0051272a4e disconnect signals added in append_page(). Fixes Gtk-Critical warning
2001-10-30  Damon Chaplin  <damon@ximian.com>

	* gui/dialogs/comp-editor.c (comp_editor_remove_page): disconnect
	signals added in append_page(). Fixes Gtk-Critical warning about
	GtkAccelGroup being added twice to a window.

svn path=/trunk/; revision=14518
2001-10-31 05:37:20 +00:00
c73922fb48 Add _() to a string that was missing it.
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 22:21:53 +00:00
5c4e7a0243 Commit the ETable click-to-add for if the dialog is being destroyed.
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 21:29:24 +00:00
0c26a77991 move in whole day increments if we are in all day mode
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 19:55:33 +00:00
b57629aa82 count the actual attendees (doesn't include people delegating
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 16:09:14 +00:00
4ec29933d9 set to the default timezone for DATE values, in case the user switches to
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 14:14:59 +00:00
5bee06ce4a handle DATE values for Start and Due dates.
2001-10-30  Damon Chaplin  <damon@ximian.com>

	* gui/dialogs/task-page.c: handle DATE values for Start and Due dates.

svn path=/trunk/; revision=14460
2001-10-30 14:06:34 +00:00
6cc1ca7096 updated code to handle DATE values.
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 12:59:28 +00:00
61fd4ec1b8 Fix bug #10016.
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 09:47:58 +00:00
f3c4424cca Use an EMessageBox instead of a gnome_dialog_question so that the label
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-30 09:25:24 +00:00
9ef4e0a1c9 use libical-evolution.la
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-30 01:49:59 +00:00
5679f1aea0 get the management object by id
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-29 18:57:59 +00:00
e554710d00 added break statements after each case, when setting the classification.
2001-10-28  Damon Chaplin  <damon@ximian.com>

	* gui/dialogs/task-page.c (task_page_fill_widgets): added break
	statements after each case, when setting the classification.
	Fixes bug #13772.

svn path=/trunk/; revision=14307
2001-10-29 00:22:58 +00:00
d16418158d get the tasks directly from the CalendarModel, so we get the filtering &
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-28 22:13:13 +00:00
70708440ca when the week start day is set to Sunday, we have to be careful to make
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-28 02:26:21 +00:00
54634a1357 Delete appointments with empty summaries. Fixes Ximian bug #780.
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-27 22:13:20 +00:00
7ba9607966 Fixing the license text.
svn path=/trunk/; revision=14214
2001-10-27 17:38:13 +00:00
0d1d16f053 Fixing the license text.
svn path=/trunk/; revision=14211
2001-10-27 16:44:12 +00:00
02dcd0aadf Update the licensing information to require version 2 of the GPL
(instead of version 2 or any later version).

svn path=/trunk/; revision=14190
2001-10-27 00:25:49 +00:00
7b5415e500 convert the formatted date to UTF-8.
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-27 00:07:29 +00:00
e4e894969e subtract 1 from any positive BYSETPOS value, since our array is 0-based.
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 23:28:15 +00:00
8f14d0c6c9 show an error message when we can't update the object on the calendar
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-25 12:00:00 +00:00
c3876df777 Fixes bug #5282.
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-24 17:27:22 +00:00
04bda8ad1e added setDefaultTimezone() method.
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-23 00:23:42 +00:00
c44198513e we don't need to save the state
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-22 15:12:40 +00:00
d6e71d2ad9 listen for changes in the date editors (schedule_page_set_dates): update
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
2001-10-22 03:51:41 +00:00