aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs
Commit message (Collapse)AuthorAgeFilesLines
* Initial port of gui/ subdir to GNOME 2JP Rosevear2002-11-0812-21/+22
| | | | | | | | 2002-11-07 JP Rosevear <jpr@ximian.com> * Initial port of gui/ subdir to GNOME 2 svn path=/trunk/; revision=18648
* converted to BonoboObject.Rodrigo Moya2002-11-084-10/+8
| | | | | | | | | | | | | | | | | 2002-11-07 Rodrigo Moya <rodrigo@ximian.com> * cal-client/query-listener.[ch]: converted to BonoboObject. * gui/dialogs/comp-editor-util.c (parse_contact_string): use glib's g_utf8_strchr. * gui/dialogs/delete-comp.c: removed non-existant headers. Use GtkStock instead of GnomeStock. * gui/dialogs/e-delegate-dialog.c: converted to BonoboActivation. (e_delegate_dialog_construct): adapted to changes in glade_xml_new. svn path=/trunk/; revision=18632
* #include gtkoptionmenu.h. (cal_prefs_dialog_new): adapted to changes inRodrigo Moya2002-11-0714-72/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-06 Rodrigo Moya <rodrigo@ximian.com> * gui/cal-prefs-dialog.c: #include gtkoptionmenu.h. (cal_prefs_dialog_new): adapted to changes in glade_xml_new. * gui/dialogs/event-page.h: * gui/dialogs/meeting-page.h: * gui/dialogs/recurrence-page.h: * gui/dialogs/schedule-page.h: * gui/dialogs/task-details-page.h: * gui/dialogs/task-page.h: * gui/cal-prefs-dialog.h: use correctly the macros. * gui/dialogs/cancel-comp.c: * gui/dialogs/changed-comp.c: * gui/dialogs/comp-editor-page.c: * gui/gnome-cal.h: removed non-existent headers. * gui/dialogs/comp-editor.c: remove non-existent headers. (close_dialog): gtk_widget_destroy the widget. (setup_widgets, comp_editor_merge_ui): use BonoboWindow correctly. (comp_editor_set_cal_client, comp_editor_send_comp, comp_editor_edit_comp): use G_OBJECT_GET_CLASS for getting the class of an object. * gui/dialogs/comp-editor-page.c (comp_editor_page_class_init): use g_signal_* functions. * gui/dialogs/comp-editor-util.c: converted to BonoboActivation. * gui/dialogs/comp-editor.h: #include bonobo-window.h, not bonobo-win.h. svn path=/trunk/; revision=18622
* don't return a Bonobo_EventSource_ListenerId, since it does not existRodrigo Moya2002-11-0712-4177/+4513
| | | | | | | | | | | | | | | | | 2002-11-06 Rodrigo Moya <rodrigo@ximian.com> * gui/dialogs/comp-editor-util.[ch] (comp_editor_connect_contacts_changed): don't return a Bonobo_EventSource_ListenerId, since it does not exist anymore, and was not even being used. * gui/e-timezone-entry.h: use GLib macros. * gui/dialogs/*.glade: * gui/alarm-notify/*.glade: * gui/*.glade: converted to Glade2 format. svn path=/trunk/; revision=18616
* adapted to to new glade_xml_new signature.Rodrigo Moya2002-11-075-8/+7
| | | | | | | | | | | | | | | 2002-11-05 Rodrigo Moya <rodrigo@ximian.com> * gui/dialogs/alarm-options.c (alarm_options_dialog_run): adapted to to new glade_xml_new signature. * gui/calendar-model.h: * gui/dialogs/comp-editor-page.h: * gui/dialogs/alarm-page.[ch]: removed non-existant header files. * gui/dialogs/comp-editor-util.h: added missing headers. svn path=/trunk/; revision=18615
* use libxml2 headers.Rodrigo Moya2002-11-052-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-05 Rodrigo Moya <rodrigo@ximian.com> * pcs/cal-backend.c: use libxml2 headers. * gui/alarm-notify/Makefile.am: * gui/dialogs/Makefile.am: * gui/Makefile.am: s/XML_I18N/INTLTOOL. Fixed execution of $(ORBIT_IDL). * gui/alarm-notify/alarm-notify.[ch]: converted to BonoboObject. * gui/alarm-notify/alarm-notify-dialog.c: compilation fixes. (alarm_notify_dialog): adapted to new glade_xml_new signature. * gui/alarm-notify/alarm-queue.c: ported to BonoboActivation and GtkStock and GtkDialog. * gui/alarm-notify/notify-main.c: ported to BonoboActivation and use GObject functions instead of GtkObject ones. * gui/alarm-notify/save.h: removed BonoboConfig related functions. * gui/alarm-notify/config-data.c: use GObject functions instead of GtkObject ones. * TODO.port: added file for keeping track of disabled things while we port. svn path=/trunk/; revision=18550
* if the value is a datetime, convert it to a dateJP Rosevear2002-10-181-0/+24
| | | | | | | | | | | | | | | | | | 2002-10-17 JP Rosevear <jpr@ximian.com> * gui/dialogs/recurrence-page.c (fill_ending_date): if the value is a datetime, convert it to a date * gui/itip-utils.c (comp_compliant): convert an UNTIL date value to a datetime value * cal-util/cal-component.c (cal_component_has_simple_recurrence): check to see if the component recurrences meet our definition of "simple" * cal-util/cal-component.h: new proto svn path=/trunk/; revision=18389
* changed to have a gboolean return type, which is what it's supposed to do.Rodrigo Moya2002-10-182-7/+7
| | | | | | | | | | | | | 2002-10-17 Rodrigo Moya <rodrigo@ximian.com> * gui/dialogs/recurrence-page.c (fill_component): changed to have a gboolean return type, which is what it's supposed to do. (recurrence_page_fill_component): return the result from fill_component. * gui/dialogs/comp-editor-page.h: fixed typo in function prototype. svn path=/trunk/; revision=18387
* Fixes #11434Rodrigo Moya2002-10-097-0/+85
| | | | | | | | | | | | | | | | | | | | | 2002-10-08 Rodrigo Moya <rodrigo@ximian.com> Fixes #11434 * gui/dialogs/comp-editor-page.[ch] (comp_editor_page_display_validation_error): new function. * gui/dialogs/event-page.c (event_page_fill_component): * gui/dialogs/recurrence-page.c (fill_component): * gui/dialogs/task-details-page.c (task_details_page_fill_component): * gui/dialogs/task-page.c (task_page_fill_component): added checks for all date values, and return FALSE if we find some invalid date/times. * gui/dialogs/comp-editor.c (save_comp): activate the page that returns error in fill_component. svn path=/trunk/; revision=18352
* set the 24 hour format initiallyJP Rosevear2002-10-091-0/+1
| | | | | | | | | | | | | | | | 2002-10-08 JP Rosevear <jpr@ximian.com> * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_create_time_edit): set the 24 hour format initially 2002-10-08 JP Rosevear <jpr@ximian.com> * gui/e-week-view.c: remove pilot settings from contextual menu * gui/e-day-view.c: ditto svn path=/trunk/; revision=18351
* Fixes #31774Rodrigo Moya2002-10-081-2/+2
| | | | | | | | | | | 2002-10-07 Rodrigo Moya <rodrigo@ximian.com> Fixes #31774 * gui/dialogs/alarm-options.c (dalarm_widgets_to_alarm, palarm_widgets_to_alarm): use correct pointer in loop. svn path=/trunk/; revision=18346
* cast the correct itemJP Rosevear2002-10-081-1/+1
| | | | | | | | | 2002-10-07 JP Rosevear <jpr@ximian.com> * gui/dialogs/cal-prefs-dialog.c (setup_changes): cast the correct item svn path=/trunk/; revision=18345
* Fixes #30057Rodrigo Moya2002-10-032-9/+31
| | | | | | | | | | | | | | | | | | | | | 2002-10-02 Rodrigo Moya <rodrigo@ximian.com> Fixes #30057 * cal-client/cal-client.c (cal_client_is_read_only): added check of the status of the client before trying to make CORBA calls. * gui/calendar-commands.c (sensitize_calendar_commands, sensitize_taskpad_commands): * gui/tasks-control.c (sensitize_commands): * gui/dialogs/event-editor.c (set_menu_sens): * gui/dialogs/task-editor.c (set_menu_sens): * gui/e-calendar-table.c (e_calendar_table_on_right_click): * gui/e-day-view.c (e_day_view_on_event_right_click): * gui/e-week-view.c (e_week_view_show_popup_menu): take into account the read-onlyness of clients to disable/enable menu items. svn path=/trunk/; revision=18316
* Fixes #15710Rodrigo Moya2002-10-012-1/+47
| | | | | | | | | | | | | | | | | 2002-10-01 Rodrigo Moya <rodrigo@ximian.com> Fixes #15710 * gui/dialogs/alarm-page.c (alarm_page_init): added a X-EVOLUTION-NEEDS-DESCRIPTION property, so that we later set it correctly if it hasn't been set in the meanwhile (editing options for the alarm). * gui/dialogs/alarm-options.c (dalarm_widgets_to_alarm, palarm_widgets_to_alarm): removed X-EVOLUTION-NEEDS-DESCRIPTION property from alarms every time we set the description of the alarm. svn path=/trunk/; revision=18277
* It's a grand old string-review! Nitpicky and minor changes; details in the ↵Aaron Weber2002-10-011-1/+1
| | | | | | appropriate ChangeLog files. svn path=/trunk/; revision=18268
* Non-Connector part of #29334 (meeting created by a delegate in theDan Winship2002-09-286-27/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* set the deleted attendees array to size 0 after we clean it upJP Rosevear2002-09-201-1/+2
| | | | | | | | | | | 002-09-20 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): set the deleted attendees array to size 0 after we clean it up Fixes #30479 svn path=/trunk/; revision=18135
* bump the month_num by 1 because it indexs at 0JP Rosevear2002-09-191-2/+4
| | | | | | | | | | | | 002-09-19 JP Rosevear <jpr@ximian.com> * gui/dialogs/recurrence-page.c (simple_recur_to_comp): bump the month_num by 1 because it indexs at 0 (recurrence_page_fill_widgets): lower the month_num by one as above Fixes #30381 svn path=/trunk/; revision=18110
* bail out if we couldn't send the cancelJP Rosevear2002-09-054-27/+46
| | | | | | | | | | | | | | | | | | | | | | 2002-09-04 JP Rosevear <jpr@ximian.com> * gui/dialogs/event-editor.c (event_editor_send_comp): bail out if we couldn't send the cancel * gui/dialogs/task-editor.c (task_editor_send_comp): ditto * gui/dialogs/comp-editor.c (save_comp_with_send): indicate send status (real_send_comp): return success/fail, only resave the component a if we successfully sent (comp_editor_send_comp): return success/fail * gui/itip-utils.h: update proto * gui/itip-utils.c (itip_send_comp): return true if we sent the message svn path=/trunk/; revision=17966
* use bonobo_object_release_unref to release the remote SelectNamesMike Kestner2002-08-312-2/+2
| | | | | | | | | | 2002-08-30 Mike Kestner <mkestner@ximian.com> * gui/dialogs/event-page.c: * gui/dialogs/task-page.c: use bonobo_object_release_unref to release the remote SelectNames component, not CORBA_Object_release. svn path=/trunk/; revision=17939
* use EConfigListener instead of direct access to the bonobo-conf database.Rodrigo Moya2002-08-271-1/+0
| | | | | | | | | | | | | | | | | | | | 2002-08-27 Rodrigo Moya <rodrigo@ximian.com> * gui/calendar-config.c: use EConfigListener instead of direct access to the bonobo-conf database. (calendar_config_init): create the EConfigListener here, and install an atexit function to unref the config listener object. (config_read, property_change_cb, calendar_config_write, calendar_config_write_on_exit): removed unneeded functions. (calendar_config_get_*, calendar_config_set_*): changed to make use of EConfigListener directly. * gui/main.c (main): removed call to calendar_config_write_on_exit. * gui/dialogs/cal-prefs-dialog.c (update_config): removed call to calendar_config_write. svn path=/trunk/; revision=17874
* listen for the time editors to changeJP Rosevear2002-08-151-0/+59
| | | | | | | | | | | | | | | | | | | | | | | 2002-08-14 JP Rosevear <jpr@ximian.com> * gui/dialogs/cal-prefs-dialog.c (init_widgets): listen for the time editors to change (cal_prefs_dialog_start_of_day_changed): make sure the start is never after the end (cal_prefs_dialog_end_of_day_changed): make sure the end is never after the start * gui/e-meeting-time-sel.c (e_meeting_time_selector_set_working_hours): make sure to show a minimum of 1 hour for work day * gui/e-day-view-main-item.c (e_day_view_main_item_draw): calculate the work/not working color boxes to the nearest pixel, rather the the nearest time division Fixes #10286, #26285 svn path=/trunk/; revision=17776
* set the editor to changed so the item actually gets savedJP Rosevear2002-08-101-0/+2
| | | | | | | | | 2002-08-09 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.c (real_send_comp): set the editor to changed so the item actually gets saved svn path=/trunk/; revision=17753
* check for an attendee in the list (comp_to_list): only add the user ifJP Rosevear2002-08-091-1/+8
| | | | | | | | | | | | | | | | | | 2002-08-08 JP Rosevear <jpr@ximian.com> * gui/itip-utils.c (users_has_attendee): check for an attendee in the list (comp_to_list): only add the user if they aren't on the list (comp_server_send): don't remove the users, pass back the list (itip_send_comp): send to server before doing comp_minimal * gui/dialogs/comp-editor.c (real_send_comp): edit and save the updated comp * pcs/cal.c (impl_Cal_send_object): copy the correct item to pass back svn path=/trunk/; revision=17747
* Fixes #15710Rodrigo Moya2002-08-081-0/+23
| | | | | | | | | | | | | | | | | | | 2002-08-08 Rodrigo Moya <rodrigo@ximian.com> Fixes #15710 * cal-util/cal-component.[ch] (cal_component_alarm_get_icalcomponent): new function for getting the icalcomponent from a CalComponentAlarm. * gui/comp-util.c (cal_comp_event_new_with_defaults): added X-EVOLUTION-NEEDS-DESCRIPTION property to the default reminder alarm, so that we can identify it when saving the component. * gui/dialogs/alarm-page.c (alarm_page_fill_component): if the alarm has the X-EVOLUTION-NEEDS-DESCRIPTION property, set the description to be the same as of the component. svn path=/trunk/; revision=17744
* fixed mapping of popdown menu to ICAL_STATUS_ values.Rodrigo Moya2002-07-292-10/+16
| | | | | | | | | | | | | | | | 2002-07-28 Rodrigo Moya <rodrigo@ximian.com> * gui/dialogs/task-details-page.c: fixed mapping of popdown menu to ICAL_STATUS_ values. (task_details_page_fill_widgets): when we can't set the status, default to ICAL_STATUS_NONE, which maps to 'Not started'. Fixed use of 'percent' variable, which was being used after being freed. (percent_complete_changed): default to ICAL_STATUS_NONE (Not Started). * gui/dialogs/task-details-page.glade: added 'Needs Action' to popdown menu values. svn path=/trunk/; revision=17624
* use util function to see if the user is the organizer72002-07-185-14/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-07-17 <jpr@ximian.com> * gui/calendar-model.c (calendar_model_value_at): use util function to see if the user is the organizer * gui/dialogs/cancel-comp.c (cancel_component_dialog): add deleting proto to indicate whether cancelling or deleting is the primary operation * gui/dialogs/cancel-comp.h: update proto * gui/dialogs/comp-editor.c (delete_cmd): offer to cancel * gui/dialogs/task-editor.c (cancel_task_cmd): call cancel_component_dialog with new param * gui/dialogs/event-editor.c (cancel_meeting_cmd): ditto * gui/e-week-view.c (e_week_view_on_editing_stopped): only update request if user is organizer (e_week_view_show_popup_menu): disable the meeting and meeting organizer mask if appropriate (e_week_view_delete_event_internal): offer to cancel the meeting (e_week_view_on_cut): ditto (selection_received): send request if its a meeting * gui/e-day-view.h: add meeting icon/mask * gui/e-day-view.c (e_day_view_on_event_right_click): disable the meeting and meeting organizer mask if appropriate (e_day_view_delete_event_internal): offer to cancel meeting (e_day_view_on_cut): ditto (e_day_view_finish_long_event_resize): only update request if user is organizer (e_day_view_reshape_long_event): add meeting icon to count (e_day_view_reshape_day_event): ditto (e_day_view_on_top_canvas_drag_data_received): only update request if user is organizer (e_day_view_on_main_canvas_drag_data_received): ditto (selection_received): offer to send meeting info * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): draw meeting icon if appropriate (using dummy icon atm) svn path=/trunk/; revision=17491
* Add include lines to get ebook headers relative to <ebook/foo.h>, notPeter Williams2002-07-113-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-07-09 Peter Williams <peterw@ximian.com> * tools/Makefile.am (INCLUDES): Add include lines to get ebook headers relative to <ebook/foo.h>, not "foo.h". addressbook: 2002-07-08 Peter Williams <peterw@ximian.com> * backend/ebook/e-book.h: Normalize includes to <ebook/foo.h>, so that the installed headers will work sanely. * backend/ebook/e-card-cursor.h: * backend/ebook/e-book-view.h: * backend/ebook/e-card-simple.h: * backend/ebook/e-card.h: * backend/ebook/e-destination.h: Same. * printing/Makefile.am (INCLUDES): add -Iaddressbook/backend to access the ebook headers. Also the builddir version to get the generated addressbook.h * gui/widgets/Makefile.am (INCLUDES): Same builddir fix. * gui/merging/e-card-merging.c: Fix an ebook #include. * gui/merging/Makefile.am (INCLUDES): Same idea. * gui/contact-list-editor/Makefile.am (INCLUDES): Same. * gui/contact-editor/Makefile.am (INCLUDES): Same builddir change. calendar: 2002-07-08 Peter Williams <peterw@ximian.com> * gui/Makefile.am (INCLUDES): Change the -I flags to get it to play nicely with the new Ebook header paradigm. * gui/dialogs/Makefile.am: Same. * gui/e-meeting-model.c: More of the same. * gui/dialogs/e-delegate-dialog.c: * gui/dialogs/e-meeting-model.c: * gui/dialogs/comp-editor-util.c: Fix include lines to get ebook headers. * pcs/Makefile.am: Same. composer: 2002-07-08 Peter Williams <peterw@ximian.com> * Makefile.am (INCLUDES): Fix cflags for ebook header namespacing. importers: 2002-07-08 Peter Williams <peterw@ximian.com> * Makefile.am: Fix cflags to get at ebook headers correctly. * pine-importer.c: Fix include lines to get ebook headers the "right" way. * evolution-gnomecard-importer.c: Same. mail: 2002-07-08 Peter Williams <peterw@ximian.com> * Makefile.am (INCLUDES): Add -I flags to get the ebook headers. svn path=/trunk/; revision=17411
* add back protoJP Rosevear2002-06-258-212/+313
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-06-25 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor-page.h: add back proto * gui/dialogs/comp-editor-page.c (comp_editor_page_notify_needs_send): add page needs_send signal * gui/e-meeting-time-sel.c (e_meeting_time_selector_on_invite_others_button_draw): check to see if the button should be sensitive when drawing (e_meeting_time_selector_construct): listen for the button draw signal * cal-util/cal-component.c (cal_component_strip_errors): remove X-LIC-ERROR x properties * cal-util/cal-component.h: new proto * gui/dialogs/meeting-page.c (change_clicked_cb): set needs_send to true (meeting_page_fill_widgets): set up gui based on if the user or someone else is the organizer (meeting_page_construct): read the addresses here for the combo box (get_widgets): explicitly set the value in list values * gui/dialogs/event-editor.c (set_menu_sens): base this on the exist org and user org values of the comp editor (event_editor_edit_comp): set up editable row restrictions on the meeting model if the user is not an organizer, and don't set needs send if we aren't the organizer initially (model_row_changed_cb): set needs_send to true (row_count_changed_cb): ditto * gui/dialogs/meeting-page.glade: update gui * gui/dialogs/comp-editor.c (save_comp_with_send): if the user is not the organizer, REPLY rather than REQUEST (comp_editor_set_existing_org): accessor (comp_editor_get_existing_org): ditto (comp_editor_set_user_org): ditto (comp_editor_get_user_org): ditto (real_edit_comp): determine if there is an existing organizer and if the organizers is a user (page_changed_cb): warn the user that changes may be discarded (page_summary_changed_cb): ditto (page_dates_changed_cb): ditto * gui/dialogs/comp-editor.h: new protos * gui/itip-utils.c (itip_organizer_is_user): determine if the organizer of a component is a user (itip_sentby_is_user): same for sentby field of organizer (comp_sentby): use above routines instead (comp_compliant): strip all X-LIC-ERROR fields generated by libical * gui/e-meeting-model.c (is_cell_editable): if there is a list of editable rows, allow only the status column of those rows to be edited (init): init edit_rows (e_meeting_model_restricted_add): add an editable row to the model (e_meeting_model_restricted_remove): remove an editable row (e_meeting_model_restricted_clear): clear all editable rows (e_meeting_model_etable_click_to_add): set the click to add arg on all tables (e_meeting_model_etable_from_model): track the tables (table_destroy_list_cb): remove the table being destroyed from the list (table_destroy_state_cb): remove the table being destroyed from the list * gui/e-meeting-model.h: new protos * gui/e-itip-control.c (update_attendee_status): kill warning svn path=/trunk/; revision=17274
* Fix a typo.Kjartan Maraas2002-06-131-1/+1
| | | | | | | | 2002-06-12 Kjartan Maraas <kmaraas@gnome.org> * gui/dialogs/cal-prefs-dialog.glade: Fix a typo. svn path=/trunk/; revision=17174
* In an attempt to clean up the config dialog (and to reduce its overallAnna Marie Dirks2002-06-041-179/+281
| | | | | | | | | | | 2002-06-03 Anna Marie Dirks <anna@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: In an attempt to clean up the config dialog (and to reduce its overall girth), I have re-laid-out the calendar preferences dialog. It now conforms to standard Evolution spacing and padding guidelines, and exhibits proper alignment, etc. svn path=/trunk/; revision=17087
* update protoJP Rosevear2002-05-272-0/+14
| | | | | | | | | | | | | | | | | | | 2002-05-26 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.h: update proto * gui/dialogs/comp-editor.c (comp_editor_get_comp): new function to get base comp * gui/e-comp-editor-registry.c (e_comp_editor_registry_add): get the base comp, not the current comp, don't unref it (foreach_close_cb): block the signal, unblock it if the editor could not be closed (e_comp_editor_registry_close_all): fix preconditions (editor_destroy_cb): get the base comp, not the current comp, don't unref it svn path=/trunk/; revision=17020
* if there are remaining items, return false (foreach_close_cb): don'tJP Rosevear2002-05-272-5/+10
| | | | | | | | | | | | | | | | | | | | 2002-05-26 JP Rosevear <jpr@ximian.com> * gui/e-comp-editor-registry.c (e_comp_editor_registry_close_all): if there are remaining items, return false (foreach_close_cb): don't remove the item if it couldn't be closed * gui/e-comp-editor-registry.h: update proto * gui/component-factory.c (request_quit): return a boolean indicating if everything was closed * gui/dialogs/comp-editor.h: update proto * gui/dialogs/comp-editor.c (comp_editor_close): return true if the editor was closed, false otherwise svn path=/trunk/; revision=17019
* a registry of comp editors so we can close them all centrallyJP Rosevear2002-05-272-13/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-05-26 JP Rosevear <jpr@ximian.com> * gui/e-comp-editor-registry.[hc]: a registry of comp editors so we can close them all centrally * gui/gnome-cal.c (gnome_calendar_init): there is no editor hash now (gnome_calendar_destroy): ditto (gnome_calendar_edit_object): look for the event editor in the registry, if it isn't there, create it and add it to the registry * gui/e-calendar-table.c (open_task): look for the task editor in the registry, if it isn't there, create it and add it to the registry * gui/component-factory.c (request_quit): close all open editors (create_object): add a request_quit function to the shell component * gui/comp-editor-factory.c (free_client): there is no uid_comp_hash to free any more (editor_destroy_cb): we get an OpenClient as callback data now, reduce the editor count and destroy it if it is 0 (edit_existing): don't create the Component, add the new editor to the registry, increase the editor count (edit_new): ditto (open_client): set the editor count to 0 (impl_editExisting): look in the registry for the editor * gui/Makefile.am: Build new sources * gui/main.c (main): create the registry * gui/dialogs/comp-editor.c (comp_editor_close): prompt to save and then close dialog * gui/dialogs/comp-editor.h: new proto * gui/GNOME_Evolution_Calendar.oaf.in: remove dead summary stuff svn path=/trunk/; revision=17018
* Pass the @component_pixmaps in so we give the new "Meeting" button anEttore Perazzoli2002-05-214-4/+17
| | | | | | | | | | * gui/dialogs/event-editor.c (event_editor_init): Pass the @component_pixmaps in so we give the new "Meeting" button an icon. * gui/dialogs/comp-editor.c (comp_editor_merge_ui): New arg @component_pixmaps to pass in custom pixmaps. svn path=/trunk/; revision=16955
* added PermissionDenied exception and make it be raised in open,Rodrigo Moya2002-05-171-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* set the working hours for the meeting time selectorJP Rosevear2002-05-151-0/+6
| | | | | | | | | 2002-05-14 JP Rosevear <jpr@ximian.com> * gui/dialogs/schedule-page.c (schedule_page_construct): set the working hours for the meeting time selector svn path=/trunk/; revision=16786
* make the range datetime member a struct not a pointerJP Rosevear2002-05-151-1/+2
| | | | | | | | | | | | | | | | 2002-05-14 JP Rosevear <jpr@ximian.com> * cal-util/cal-component.h: make the range datetime member a struct not a pointer * cal-util/cal-component.c (cal_component_get_recurid): take a pointer to a range (cal_component_set_recurid): ditto * gui/itip-utils.c (comp_minimal): get/set the recurrence id properly svn path=/trunk/; revision=16785
* Collapsed notebook into two pages and added accelerators for everything,Anna Marie Dirks2002-04-201-354/+326
| | | | | | | | | | 2002-04-19 Anna Marie Dirks <anna@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: Collapsed notebook into two pages and added accelerators for everything, as part of my config dialog polishing project svn path=/trunk/; revision=16540
* properly handle -ve recurrence valuesJP Rosevear2002-04-191-67/+256
| | | | | | | | | | | | | | | | | | | | | 2002-04-18 JP Rosevear <jpr@ximian.com> * gui/dialogs/recurrence-page.c (simple_recur_to_comp): properly handle -ve recurrence values (month_num_submenu_selection_done_cb): track the current date in use (make_recur_month_num_submenu): make a submenu of dates (make_recur_month_num_menu): make the date/relation option menu (month_num_menu_selection_done_cb): update the date properly and keep both option menus consistent (month_day_menu_selection_done_cb): keep both option menus consistent (make_monthly_special): listen for selection done signal (make_recurrence_special): destroy old month_num_menu (recurrence_page_fill_widgets): properly handle -ve recurrence values svn path=/trunk/; revision=16526
* Bumped required gal version number to 0.19.99.11.Christopher James Lahey2002-04-181-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-04-17 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped required gal version number to 0.19.99.11. From addressbook/ChangeLog: 2002-04-17 Christopher James Lahey <clahey@ximian.com> * gui/component/select-names/e-select-names.c (e_select_names_create_categories): Changed this to use ECategoriesMasterListOptionMenu. * gui/component/select-names/e-select-names.c (section_right_click_cb), gui/widgets/e-addressbook-reflow-adapter.c, gui/widgets/e-addressbook-view.c: Updated these to match the new EPopupMenu. From calendar/ChangeLog: 2002-04-17 Christopher James Lahey <clahey@ximian.com> * gui/e-calendar-table.c, gui/e-day-view.c, gui/e-week-view.c, gui/dialogs/meeting-page.c: Updated these to match the new EPopupMenu. From mail/ChangeLog: 2002-04-17 Christopher James Lahey <clahey@ximian.com> * folder-browser.c, mail-display.c: Updated these to match the new EPopupMenu. From shell/ChangeLog: 2002-04-17 Christopher James Lahey <clahey@ximian.com> * e-activity-handler.c: Updated this to match the new EPopupMenu. svn path=/trunk/; revision=16498
* ignore .pureChris Toshok2002-04-021-0/+1
| | | | svn path=/trunk/; revision=16312
* implement new pop up menu items for "Save as", "Print", "Assign Task",JP Rosevear2002-03-303-89/+55
| | | | | | | | | | | | | | | | | | | | | | | | 2002-03-29 JP Rosevear <jpr@ximian.com> * gui/e-calendar-table.c: implement new pop up menu items for "Save as", "Print", "Assign Task", "Forward as iCalendar" * gui/e-day-view.c: similarly, also "Publish Free/Busy Information" and "New Meeting" and "New Task" * gui/e-week-view.c: ditto * gui/dialogs/task-editor.c (show_assignment): move the assignment page stuff here (task_editor_show_assignment): use it (assign_task_cmd): ditto * gui/dialogs/task-editor.h: new proto * gui/dialogs/comp-editor.c (save_as_cmd): use new e-util file selector function svn path=/trunk/; revision=16287
* Updated to use new EPopupMenu API.Jeffrey Stedfast2002-03-161-5/+8
| | | | | | | | | | | | 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
* Add <visible>False</visible> to cal-prefs-dialog so it doesn't get shownEttore Perazzoli2002-03-133-361/+267
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* remove unneeded parameter from print_text_size everywhereJP Rosevear2002-03-061-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* pass extra itip_send_comp params (send_freebusy): ditto (ok_clicked_cb):JP Rosevear2002-02-203-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* change custom widget creator to e_url_entry_newJP Rosevear2002-02-092-41/+12
| | | | | | | | | | | | 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
* add a custom widget created with e_url_button_newJP Rosevear2002-02-092-9/+43
| | | | | | | | | | | | | | | | 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
* pass meeting boolean for gnome_calendar_edit_object andJP Rosevear2002-02-082-5/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-07 JP Rosevear <jpr@ximian.com> * gui/e-day-view.c: pass meeting boolean for gnome_calendar_edit_object and gnome_calendar_new_appointment_for * gui/e-week-view-event-item.c: ditto * gui/e-week-view.c: ditto * gui/tasks-control.c (confirm_expunge): kill warning * gui/calendar-commands.c (new_meeting_cb): show a new meeting dialog (new_event_cb): pass new param * gui/gnome-cal.c (gnome_calendar_edit_object): take meeting boolean and show meeting page if true (gnome_calendar_new_appointment_for): takeing meeting param and pass to above (gnome_calendar_new_appointment): add new param * gui/gnome-cal.h: update proto * gui/component-factory.c (create_component): take a comp editor mode, determine vtype (sc_user_create_new_item_cb): check for meeting user creatable item (create_object): add meeting as user creatable item * gui/comp-editor-factory.c (edit_new): get a comp editor mode now, determine vtype and show meeting page if required (queue_edit_new): get comp editor mode (impl_editNew): ditto, plus queue the mode directly instead of determining the vtype * gui/dialogs/event-editor.c (show_meeting): new internal util function to show meeting page (event_editor_show_meeting): show the meeting (schedule_meeting_cmd): use show_meeting * gui/dialogs/event-editor.h: new proto * idl/evolution-calendar.idl: editNew takes a mode rather than a type now * cal-util/Makefile.am: fix includes svn path=/trunk/; revision=15595
* Use 1 instead of zero as the minimum value for the repetitions spin buttonFederico Mena Quintero2002-01-261-1/+1
| | | | | | | | | | | 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
* Clean up some of the Makefiles so we dont' link every library multipleEttore Perazzoli2002-01-251-4/+3
| | | | | | times, causing big libtool 1.4 pain. svn path=/trunk/; revision=15461
* save the alarm string in the correct variable (str), so it actually getsDamon Chaplin2002-01-181-2/+1
| | | | | | | | | | 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
* default component classification to PUBLIC. Fixes internal bug #1066Rodrigo Moya2002-01-171-3/+5
| | | | | | | | | 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
* remove needs send signal related cruft (save_comp_with_send): withJP Rosevear2001-12-225-52/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* inherit from bonobo window12001-12-212-34/+50
| | | | | | | | | | | | 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
* default component classification to PUBLICRodrigo Moya2001-12-071-3/+5
| | | | | | | | | 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
* Explicitly destroy the EMeetingModel. This is a hack to work aroundJon Trowbridge2001-12-071-0/+1
| | | | | | | | | | | | | | | | | | | 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
* added entry for the LOCATION fieldRodrigo Moya2001-12-062-2/+75
| | | | | | | | | | | 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
* new protosJP Rosevear2001-11-121-1/+2
| | | | | | | | | | | | | | | | | 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
* Convert strings to GTK+ encoding. (meeting_page_destroy): Free allocatedChyla Zbigniew2001-11-101-2/+5
| | | | | | | | | * 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
* make sure to remove all attendees from the model when we edit a new comp,JP Rosevear2001-11-073-10/+22
| | | | | | | | | | | | | | | | 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'tDan Winship2001-11-062-1/+2
| | | | | | | | | <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
* add a changed signal (e_meeting_time_selector_construct): emit changedJP Rosevear2001-11-062-25/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Argh, missing commit from yesterday to fix building of the tarball.Ettore Perazzoli2001-11-021-1/+1
| | | | svn path=/trunk/; revision=14563
* Added rules to generate `Evolution-Addressbook-SelectNames.h'.Ettore Perazzoli2001-11-011-18/+32
| | | | | | | * gui/dialogs/Makefile.am: Added rules to generate `Evolution-Addressbook-SelectNames.h'. svn path=/trunk/; revision=14549
* #include <string.h>Federico Mena Quintero2001-10-311-0/+1
| | | | | | | | 2001-10-31 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-options.c: #include <string.h> svn path=/trunk/; revision=14540
* disconnect signals added in append_page(). Fixes Gtk-Critical warningDamon Chaplin2001-10-311-0/+5
| | | | | | | | | | 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
* Add _() to a string that was missing it.Federico Mena Quintero2001-10-311-1/+1
| | | | | | | | | 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
* Commit the ETable click-to-add for if the dialog is being destroyed.Federico Mena Quintero2001-10-311-1/+23
| | | | | | | | | | 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
* move in whole day increments if we are in all day modeJP Rosevear2001-10-311-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | 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
* count the actual attendees (doesn't include people delegatingJP Rosevear2001-10-311-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* set to the default timezone for DATE values, in case the user switches toDamon Chaplin2001-10-301-10/+9
| | | | | | | | | 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
* handle DATE values for Start and Due dates.Damon Chaplin2001-10-301-30/+60
| | | | | | | | 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
* updated code to handle DATE values.Damon Chaplin2001-10-303-23/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fix bug #10016.Federico Mena Quintero2001-10-303-151/+138
| | | | | | | | | | | | | | | | | | | 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
* Use an EMessageBox instead of a gnome_dialog_question so that the labelFederico Mena Quintero2001-10-302-5/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* use libical-evolution.laDamon Chaplin2001-10-303-13/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* get the management object by idJP Rosevear2001-10-301-1/+0
| | | | | | | | | | | | 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
* added break statements after each case, when setting the classification.Damon Chaplin2001-10-291-0/+6
| | | | | | | | | | 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
* get the tasks directly from the CalendarModel, so we get the filtering &Damon Chaplin2001-10-291-2/+0
| | | | | | | | | | | | | | | | | | | | | 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
* when the week start day is set to Sunday, we have to be careful to makeDamon Chaplin2001-10-281-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Delete appointments with empty summaries. Fixes Ximian bug #780.Federico Mena Quintero2001-10-283-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fixing the license text.Ettore Perazzoli2001-10-2838-152/+114
| | | | svn path=/trunk/; revision=14214
* Fixing the license text.Ettore Perazzoli2001-10-282-2/+0
| | | | svn path=/trunk/; revision=14211
* Update the licensing information to require version 2 of the GPLEttore Perazzoli2001-10-272-4/+4
| | | | | | (instead of version 2 or any later version). svn path=/trunk/; revision=14190
* convert the formatted date to UTF-8.Damon Chaplin2001-10-276-17/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* subtract 1 from any positive BYSETPOS value, since our array is 0-based.Damon Chaplin2001-10-2612-44/+187
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* show an error message when we can't update the object on the calendarRodrigo Moya2001-10-251-1/+5
| | | | | | | | | 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
* Fixes bug #5282.Federico Mena Quintero2001-10-251-10/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* added setDefaultTimezone() method.Damon Chaplin2001-10-233-208/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* we don't need to save the stateJP Rosevear2001-10-221-8/+0
| | | | | | | | | | | | | | | | 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
* listen for changes in the date editors (schedule_page_set_dates): updateJP Rosevear2001-10-223-83/+240
| | | | | | | | | | | | | | | | | | | | | | | | 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
* call the invite others dialog in the modelJP Rosevear2001-10-195-172/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-18 JP Rosevear <jpr@ximian.com> * gui/e-meeting-time-sel.c (e_meeting_time_selector_on_invite_others_button_clicked): call the invite others dialog in the model * gui/e-meeting-attendee.c (e_meeting_attendee_get_atype): pick attendee type based on role and cutype * gui/e-meeting-attendee.h: remove proto * gui/Makefile.am: compile select names idl * gui/e-meeting-model.h: new proto * gui/dialogs/meeting-page.c: remove invite others dialogs bits from here * gui/e-meeting-model.c (e_meeting_model_invite_others_dialog): and put them here * gui/dialogs/Makefile.am: compile corba bits in parent dir * gui/dialogs/comp-editor-util.h: reflect above in includes * gui/dialogs/e-delegate-dialog.c: ditto * gui/dialogs/schedule-page.c: ditto and clean includes svn path=/trunk/; revision=13775
* removed Help button. Do we have any others?Damon Chaplin2001-10-161-8/+0
| | | | | | | | | 2001-10-15 Damon Chaplin <damon@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: removed Help button. Do we have any others? svn path=/trunk/; revision=13692
* remove warnings.Larry Ewing2001-10-161-2/+2
| | | | | | | | 2001-10-15 Larry Ewing <lewing@ximian.com> * gui/dialogs/comp-editor.c (set_icon_from_comp): remove warnings. svn path=/trunk/; revision=13686
* call set_icon_from_comp. (set_icon_from_comp): set the window icon fromLarry Ewing2001-10-142-0/+37
| | | | | | | | | | | | | 2001-10-13 Larry Ewing <lewing@ximian.com> * gui/dialogs/comp-editor.c (real_edit_comp): call set_icon_from_comp. (set_icon_from_comp): set the window icon from the comp. (make_icon_from_comp): get the icon path based on comp type. * gui/dialogs/Makefile.am (iconsdir): EVOLUTION_ICONSDIR bits. svn path=/trunk/; revision=13666
* send cancellation comp if necessaryJP Rosevear2001-10-141-0/+27
| | | | | | | | | 2001-10-13 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-editor.c (task_editor_send_comp): send cancellation comp if necessary svn path=/trunk/; revision=13655
* return fill_component successJP Rosevear2001-10-1313-161/+197
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-12 JP Rosevear <jpr@ximian.com> * gui/dialogs/alarm-page.c: return fill_component success * gui/dialogs/task-page.c: ditto * gui/dialogs/task-details-page.c: ditto * gui/dialogs/schedule-page.c: ditto * gui/dialogs/recurrence-page.c: ditto * gui/dialogs/event-page.c: ditto * gui/dialogs/meeting-page.c: use e_notice instead of duplicate_error (meeting_page_get_cancel_comp): duh, deleted_attendees is an array now (meeting_page_fill_component): spew gui errors if there is no organizer or no attendees, return success * gui/dialogs/event-editor.c (event_editor_send_comp): always call parent method and don't send the cancellation comp if the method is publish (refresh_meeting_cmd): use the orginal comp to refresh (forward_cmd): prompt the user for the version they want to send (current, original) * gui/dialogs/task-editor.c (forward_cmd): as above (refresh_task_cmd): ditto * gui/dialogs/comp-editor-page.c (comp_editor_page_fill_component): return boolean of whether the component could be filled or not * gui/dialogs/comp-editor-page.h: update proto * gui/dialogs/comp-editor.c (prompt_to_save_changes): take a param on whether to try and send or not (comp_editor_get_current_comp): only fill component if its changed (comp_editor_save_comp): prompt user as well * gui/dialogs/comp-editor.h: change proto * gui/itip-utils.c: replace error_dialog with e_notice (comp_content_type): specify charset svn path=/trunk/; revision=13635
* fix logic checksJP Rosevear2001-10-102-6/+22
| | | | | | | | | | | | | | | | | | | | | 2001-10-10 JP Rosevear <jpr@ximian.com> * pcs/cal-factory.c (add_uri): fix logic checks * gui/dialogs/event-editor.c (event_editor_init): init the exisiting_org boolean (set_menu_sens): base sensitivity on existing_org boolean (event_editor_edit_comp): set exisiting_org boolean * gui/dialogs/task-editor.c: same as above * gui/calendar-offline-handler.c (add_connection): handle the protocol or host being unknown * cal-util/cal-component.c (cal_component_has_organizer): implement svn path=/trunk/; revision=13552
* util function to get address (itip_addresses_get_default): get only theJP Rosevear2001-10-102-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-09 JP Rosevear <jpr@ximian.com> * gui/itip-utils.c (get_address): util function to get address (itip_addresses_get_default): get only the default address (itip_address_free): free single address (itip_addresses_free): use above (comp_limit_attendees): limit the number of attendees to one, the user (comp_sentby): set the sentby parameter if the user is not the organizer (comp_minimal): remove extraneous info for send (for refresh and declinecounter) (comp_compliant): remove all alarms, do various things to make the components comply with itip spec based on method (itip_send_comp): use comp_compliant method * gui/itip-utils.h: new protos * gui/e-itip-control.c: rescan the component when necessary (get_next): don't get stuck in infinite loop if there are no viewable components (e_itip_control_set_data): if there are no viewable components, spit an error message * gui/dialogs/meeting-page.h: tidy * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): use organizer's cn if possible (other_clicked_cb): no longer doing the sent by stuff directly, hide more widgets * pcs/query.c: use bonobo exception stuff * cal-util/cal-component.c (cal_component_rescan): have the comp rescan its libical component (for when you change things directly) (free_icalcomponent): take a param on whether to free the component or just clean up the mappings (cal_component_has_attendees): util function * cal-util/cal-component.h: new protos svn path=/trunk/; revision=13525
* refactor functionality into several function (comp_string): if we areJP Rosevear2001-10-042-4/+7
| | | | | | | | | | | | | | | | | | 2001-10-03 JP Rosevear <jpr@ximian.com> * gui/itip-utils.c (itip_send_comp): refactor functionality into several function (comp_string): if we are publishing, empty the attendee list * gui/dialogs/event-editor.c (schedule_meeting_cmd): when we schedule a new meeting, mark the event editor as changed * pcs/cal.c (cal_class_init): get correct parent class * gui/dialogs/comp-editor.c (comp_editor_merge_ui): use the generated ui component name svn path=/trunk/; revision=13385
* save the EXDATE as a DATE-TIME value, since we know the exact time. FixesDamon Chaplin2001-10-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | 2001-10-03 Damon Chaplin <damon@ximian.com> * gui/comp-util.c (cal_comp_util_add_exdate): save the EXDATE as a DATE-TIME value, since we know the exact time. Fixes bug #11278. (Before we were setting is_date, but icaltime_from_timet_with_zone() didn't convert it properly. We need to figure out how to handle DATEs when using time_t's.) * gui/dialogs/recurrence-page.c (get_exception_string): use e_time_format_date_and_time() so we show the time as well, if the exception is a DATE-TIME value. * cal-util/timeutil.c: removed time_add_month(), time_year_begin(), time_month_begin() & time_week_begin() - old pre-timezone functions which we no longer use. * cal-util/cal-recur.c (cal_recur_from_icalproperty): set ir.until.is_date to FALSE before converting to a time_t. Hopefully fixes bug #5034. svn path=/trunk/; revision=13366
* Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'.Ettore Perazzoli2001-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | * e-shell-view.c (e_shell_view_construct): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. * mail-account-gui.c (launch_signature_editor): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. * e-msg-composer.c (setup_ui): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. * gui/dialogs/comp-editor.c (setup_widgets): Use `bonobo_ui_component_new_default()', not `bonobo_ui_component_new()'. svn path=/trunk/; revision=13306
* unref the page objects here, instead of in close_dialog(). (This was fixedDamon Chaplin2001-10-021-4/+7
| | | | | | | | | | 2001-10-01 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (comp_editor_destroy): unref the page objects here, instead of in close_dialog(). (This was fixed a while ago, but accidentally reverted.) Fixes bug #7543. svn path=/trunk/; revision=13278
* use bound_text to print the summary, so it wraps instead of being clippedDamon Chaplin2001-09-292-17/+18
| | | | | | | | | | | | | | | | | | | | | | | | | 001-09-28 Damon Chaplin <damon@ximian.com> * gui/print.c (print_comp_item): use bound_text to print the summary, so it wraps instead of being clipped to 1 line. Fixes part 3 of bug #10285, I think. * gui/dialogs/alarm-page.glade: left-aligned the Date/Time label. Also set the width of the Summary & Date/Time labels to 10, and set expand to TRUE, to make sure that the dialog doesn't keep getting wider as the summary text on the main page gets longer. Could possibly use an EClippedLabel here instead, so we get a '...' at the end if it is clipped. * gui/dialogs/recurrence-page.glade: changed Summary & Date/Time widths as above. * gui/print.c (print_calendar): use landscape mode for the month preview. (print_border_with_triangles): use EPSILON to account for floating point errors. Hopefully fixes part 2b of bug #10285. svn path=/trunk/; revision=13246
* added comparison functions for these special cell types. But the date andDamon Chaplin2001-09-278-118/+199
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-26 Damon Chaplin <damon@ximian.com> * gui/e-calendar-table.c (date_compare_cb): (percent_compare_cb): (priority_compare_cb): added comparison functions for these special cell types. But the date and percent ones don't work yet due to the use of static text buffers for return cell values. (e_calendar_table_init): added the comparison functions to the ETableExtras. NOTE: task_compare_cb() never seems to be called. I'm not sure why it is there. * gui/e-calendar-table.etspec: set the comparison function names for the date/percent/priority fields. * cal-util/cal-util.c (cal_util_priority_to_string): (cal_util_priority_from_string): new utility functions. * gui/calendar-model.c (get_priority): (set_priority): used above utility functions, and removed the warning dialog which isn't useful now that the field isn't editable. * gui/dialogs/event-page.c (times_updated): handle timezones and for all-day events make sure it stays an all-day event after adjusting. Fixes bugs #5945 and #10222. * gui/calendar-commands.c (pixmaps): fixed the E_PIXMAP paths - the edit items were moved beneath 'EditPlaceholder'. This gets rid of those long Bonobo warnings! (and we get the icons back) * gui/dialogs/comp-editor.c (pixmaps): removed the PrintPreview toolbar icon, since it doesn't appear in the xml file. Gets rid of warning. * gui/dialogs/event-page.c (notify_dates_changed): new function to emit the notification signal when the dates are changed. It also handles timezones now. * gui/dialogs/comp-editor-page.h (CompEditorPageDates): used CalComponentDateTime for start/end/due so we have the timezone as well as the time. * gui/dialogs/comp-editor-util.c (comp_editor_dates): updated to get the timezones as well as the times. (comp_editor_free_dates): new function needed to free all the structs. * gui/dialogs/recurrence-page.c (recurrence_page_set_dates): added call to preview_recur() to make sure the preview gets updated. * gui/dialogs/alarm-page.c (alarm_page_fill_widgets): free the CompEditorPageDates struct after use. * gui/tag-calendar.c (tag_calendar_by_comp): added 'comp_is_on_server' argument. If FALSE, we try to use builtin timezones first. This is needed for the recurrence page of the event editor, because the timezones may not have been added to the server yet. This and the changes to the notification stuff should fix bug #5034. * gui/gnome-cal.c (dn_query_obj_updated_cb): call above tag_calendar_by_comp() with TRUE since the events will be on the server in this case. * gui/e-day-view-layout.c: * gui/e-day-view.c: made sure an event always takes up at least one row, even when the start & end times are the same. Fixes bug #5944. I don't know if we should try to also handle events with the end time before the start time. * gui/e-week-view.c (e_week_view_style_set): check that the small font is actually smaller than the normal font. If it isn't, don't use it. Hopefully fixes bug #6876. (e_week_view_on_new_appointment): if only one day is selected, then we set the initial time of the event to 1/2-hour from the start of the working day, to differentiate 'New Appointment' from 'New All Day Event'. Fixes bug #8892. * gui/e-day-view.c (e_day_view_on_new_appointment): do the same as the above. svn path=/trunk/; revision=13186
* Fixes the GUI part of bug #7892.Federico Mena Quintero2001-09-271-38/+86
| | | | | | | | | | | | | | | | 2001-09-26 Federico Mena Quintero <federico@ximian.com> Fixes the GUI part of bug #7892. * gui/dialogs/alarm-page.c (get_alarm_duration_string): Return NULL if the duration is zero. (get_alarm_string): Handle duration of zero. Also, hopefully make the strings be more l10n-friendly. * gui/alarm-notify/alarm.c (alarm_ready_cb): I am a moron. Fix reversed test. svn path=/trunk/; revision=13182
* disconnect signals first thingJP Rosevear2001-09-271-2/+2
| | | | | | | | | 2001-09-26 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.c (comp_editor_destroy): disconnect signals first thing svn path=/trunk/; revision=13151
* Warning fixes courtesy of Chris Lahey <clahey@ximian.com>.Federico Mena Quintero2001-09-262-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | 2001-09-25 Federico Mena Quintero <federico@ximian.com> Warning fixes courtesy of Chris Lahey <clahey@ximian.com>. * gui/e-itip-control.c (write_html): Warning fixes. Also, don't strdup() more than necessary. * gui/e-meeting-time-sel.c (e_meeting_time_selector_refresh_cb): Warning fixes. * gui/itip-utils.c (itip_addresses_get): Warning fixes. * gui/print.c (print_day_background): Warning fixes. * gui/dialogs/alarm-options.c (alarm_to_aalarm_widgets): Warning fixes. (alarm_to_palarm_widgets): Likewise. * gui/dialogs/delete-comp.c: #include "../calendar-config.h" svn path=/trunk/; revision=13120
* use bonobo-exception stuff to clean codeJP Rosevear2001-09-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* make sure to release the ref on priv->comp.Larry Ewing2001-09-202-0/+10
| | | | | | | | | | | | 2001-09-20 Larry Ewing <lewing@ximian.com> * gui/dialogs/recurrence-page.c (recurrence_page_destroy): make sure to release the ref on priv->comp. * gui/dialogs/comp-editor.c (real_edit_comp): make sure to release the ref on priv->comp. svn path=/trunk/; revision=13008
* Display a notification message always, in addition to playing the sound.Federico Mena Quintero2001-09-203-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | 2001-09-19 Federico Mena Quintero <federico@ximian.com> * gui/alarm-notify/alarm-queue.c (audio_notification): Display a notification message always, in addition to playing the sound. (procedure_notification): Present a confirmation dialog before actually running the alarm's program. (procedure_notification): Use gnome_execute_shell() instead of gnome_execute_async() so that we handle multiple arguments properly. Plus, it is most likely what the user expects. (mail_notification): Display a message about unsupported email reminders instead of blindly dropping the alarm. * gui/dialogs/alarm-options.glade: Added an explanatory message about mail alarms not being supported. * gui/dialogs/alarm-page.glade: Removed the "Send an email" option. * gui/dialogs/alarm-page.c (action_map): Removed CAL_ALARM_EMAIL. svn path=/trunk/; revision=13004
* listen for model changes (task_editor_edit_comp): add the attendees to theJP Rosevear2001-09-206-80/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-19 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-editor.c (init_widgets): listen for model changes (task_editor_edit_comp): add the attendees to the model and notify of need send (row_count_changed_cb): mark as changed when row added/deleted (model_row_changed_cb): mark as changed when row changes * gui/dialogs/event-editor.c (init_widgets): listen for model changes (event_editor_init): flip page order (event_editor_edit_comp): set needs send value (schedule_meeting_cmd): flip page order (row_count_changed_cb): mark as changed when row added/deleted (model_row_changed_cb): mark as changed when row changes * gui/dialogs/schedule-page.c: remove model change notification stuff (schedule_page_fill_widgets): no need to do the needs_send here because the editor handles this since it owns the model * gui/dialogs/event-editor.c (init_widgets): listen for model changes (event_editor_init): flip page order (event_editor_edit_comp): set needs send value (schedule_meeting_cmd): flip page order (row_count_changed_cb): mark as changed when row added/deleted (model_row_changed_cb): mark as changed when row changes * gui/dialogs/meeting-page.c (meeting_page_fill_widgets): no need to do the needs_send here because the editor handles this since it owns the model (invite_entry_changed): ditto * gui/dialogs/comp-editor.c (comp_editor_set_changed): new accessor (comp_editor_get_changed): ditto (comp_editor_set_needs_send): ditto (comp_editor_get_needs_send): ditto * gui/dialogs/comp-editor.h: new protos * gui/itip-utils.c (itip_addresses_get): reflect configuration path changes in the mailer * gui/e-meeting-model.c: remove commented out code, ifdef one section for later svn path=/trunk/; revision=12983
* A page that shows the meeting time selector and free/busy data forJP Rosevear2001-09-1911-783/+717
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-18 JP Rosevear <jpr@ximian.com> * gui/dialogs/schedule-page.*: A page that shows the meeting time selector and free/busy data for attendees * gui/dialogs/meeting-page.c: use the meeting model to track/edit attendees, remove table value conversion routines and simple table routines (set_attendees): take a pointer array (meeting_page_destroy): destroy the pointer array, save state (meeting_page_init): new pointer array (meeting_page_fill_widgets): don't null the deleted attendees field (popup_delegate_cb): array add (popup_delete_cb): array add (cleanup_attendees): iterate over the array to unref now (meeting_page_fill_widgets): don't null out fields, no need to add attendees here (invite_entry_changed): use e_meeting_attendee routines (popup_delegate_cb): ditto (popup_delete_cb): ditto (meeting_page_new): take new arg and pass it to construct (meeting_page_construct): take new arg, use e-meeting-model routines to construct table * gui/dialogs/task-editor.c (task_editor_init): new meeting model (task_editor_destroy): unref the model * gui/dialogs/event-editor.c (event_editor_init): make new model and pass it to meeting and schedule pages (event_editor_set_cal_client): virtual function, set meeting model client (event_editor_edit_comp): add the attendees to the model (event_editor_destroy): unref model * gui/dialogs/comp-editor.h: add virtual function * gui/dialogs/comp-editor.c (comp_editor_set_cal_client): make set_cal_client a virutal function * gui/e-meeting-types.h: generally useful type defines * gui/e-meeting-time-sel*.[hc]: Move here and use an e-table for the attendee list and extract display information from the new meeting model and attendees * gui/e-meeting-time-sel.etspec: spec for the table * gui/e-meeting-attendee.[hc]: meeting attendees for the model, with to/from conversions for CalComponentAttendee structure, emits changed signal and allows getting and setting of free busy periods * gui/e-meeting-model.[hc]: move the model out on its own * gui/e-itip-control.c (write_error_html): clean up warnings svn path=/trunk/; revision=12968
* Fixes bug #2830.Federico Mena Quintero2001-09-193-28/+54
| | | | | | | | | | | | | | | | | | | | | | | 2001-09-18 Federico Mena Quintero <federico@ximian.com> Fixes bug #2830. * gui/calendar-config.c (calendar_config_get_confirm_delete): New function. (calendar_config_set_confirm_delete): New function. (config_read): Get the default value for the ConfirmDelete option. (calendar_config_write): Set the value of ConfirmDelete. * gui/dialogs/delete-comp.c (delete_component_dialog): Handle the configuration option for confirmation. * gui/dialogs/cal-prefs-dialog.c (CalPrefsDialogPrivate): Added the fields for the Other page. (get_widgets): Handle the new widgets. (cal_prefs_dialog_show_config): Likewise. (cal_prefs_dialog_update_config): Likewise. svn path=/trunk/; revision=12953
* added a timeout to refresh the list every 10 minutes. Not ideal, as theDamon Chaplin2001-09-182-4/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-17 Damon Chaplin <damon@ximian.com> * gui/calendar-model.c: added a timeout to refresh the list every 10 minutes. Not ideal, as the user may be editing a task when it gets refreshed. (adjust_query_sexp): use the 'completed-before?' operator to filter out tasks according to the config settings. * gui/dialogs/task-details-page.c (task_details_page_fill_widgets): added support for the 'Completed' date. This code must have got lost somewhere, as it used to work. (date_changed_cb): set the priv->updating flag while updating the other widgets. * pcs/cal-backend-file.c (cal_backend_file_update_objects): made sure we freed the components. * pcs/query.c (func_completed_before): added 'completed-before?' operator. * gui/calendar-config.c (calendar_config_configure_e_cell_date_edit): don't set the lower & upper hour. Use 0-24 like the EDateEdit does. * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): set the 12/24-hour time format options sensitive only if we support both. * gui/calendar-config.c (config_read): if the locale doesn't define 'am' and 'pm' strings then we must use 24-hour format. * gui/calendar-commands.c (calendar_set_folder_bar_label): don't translate the '%d' as it doesn't make much sense. Resolves bug #8027. svn path=/trunk/; revision=12925
* Updated required version of gal to 0.11.99.4.Christopher James Lahey2001-09-171-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-16 Christopher James Lahey <clahey@ximian.com> * configure.in: Updated required version of gal to 0.11.99.4. From calendar/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * gui/dialogs/meeting-page.c (build_etable): Updated this to match the new ETableSimple interface. From mail/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * message-list.c (ml_get_node_by_id): Made save_id const here. From shell/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (etree_get_node_by_id): Made save_id const here. svn path=/trunk/; revision=12870
* [Automake 1.5 fixes pointed out by Richard BoultonEttore Perazzoli2001-09-151-1/+1
| | | | | | | | | <richard@tartarus.org>, as per #9258.] * gui/alarm-notify/Makefile.am: Set CLEANFILES directly instead of using `+='. svn path=/trunk/; revision=12842
* use ical partstat, role, cutypes directlyJP Rosevear2001-09-141-47/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-13 JP Rosevear <jpr@ximian.com> * cal-util/cal-component.h: use ical partstat, role, cutypes directly * cal-util/cal-component.c: ditto * gui/e-itip-control.c (find_my_address): set my addresses if the addresses match (find_attendee): strstr returns non-null on a match (write_html): use new icon, select the name displayed (organizer or attendee) based on method, (ok_clicked_cb): when rsvp'ing strip off all but the attendee being replied for as is specified in the spec (find_attendee_partstat): new util function to extract the partstat of an attendee (update_attendee_status): updates the partstat of a specific attendee in the reply message * gui/dialogs/meeting-page.c: use ical partstat, role, cutypes directly (popup_delegate_cb): if we delegate, notify of needs send and changed (popup_delete_cb): notify of needs send and changed for each deletion svn path=/trunk/; revision=12806
* free the destination vector when we finish with it, if we actually addJP Rosevear2001-09-121-5/+4
| | | | | | | | | | | 2001-09-11 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (invite_entry_changed): free the destination vector when we finish with it, if we actually add anyone, notify listeners of the needs send and changed info. Fixes bug #8632. svn path=/trunk/; revision=12771
* Handle the new icalattach type instead of struct icalattachtype.Federico Mena Quintero2001-09-111-21/+19
| | | | | | | | | | | | | | | 2001-09-10 Federico Mena Quintero <federico@ximian.com> * cal-util/cal-component.c (cal_component_alarm_get_attach): Handle the new icalattach type instead of struct icalattachtype. (cal_component_alarm_set_attach): Likewise. * gui/dialogs/alarm-options.c (alarm_to_aalarm_widgets): Likewise. (alarm_to_palarm_widgets): Likewise. (aalarm_widgets_to_alarm): Likewise. (palarm_widgets_to_alarm): Likewise. svn path=/trunk/; revision=12749
* don't call calendar_config_check_timezone_set() now, since the startupDamon Chaplin2001-09-047-101/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-03 Damon Chaplin <damon@ximian.com> * gui/calendar-commands.c (calendar_control_activate): * gui/tasks-control.c (tasks_control_activate): don't call calendar_config_check_timezone_set() now, since the startup wizard handles that. * gui/e-tasks.c (e_tasks_class_init): changed selection_changed signal to GTK_RUN_LAST. It has no reason to be GTK_RUN_FIRST. * gui/gnome-cal.c: * gui/e-week-view.c: * gui/e-day-view.c: added "selection_changed" signal, XX_delete_event() and XX_get_num_events_selected(). * gui/e-day-view-top-item.c (e_day_view_top_item_draw): fix the shadow around the dates at the top - it was 1 pixel off. * gui/calendar-commands.c: added sensitize_commands(), similar to in tasks-control.c, so we only make Cut/Copy/Delete sensitive when an event is selected. Also added delete_event_cmd(). * gui/dialogs/task-page.c (task_page_set_summary): * gui/dialogs/event-page.c (event_page_set_summary): do nothing, since the summary only gets changed on the main event/task page now. Fixes bug #6939. * gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received): (e_day_view_on_top_canvas_drag_data_received): check that we are dragging an event from the same EDayView. We currently don't support DnD from other widgets. (e_day_view_update_top_canvas_drag): only get the summary if we actually have an event. Fixes bug #5162. * gui/e-day-view.c (e_day_view_on_editing_stopped): if the text hasn't changed we need to call e_day_view_update_event_label() to show the times again if necessary. Fixes bug #1813. * gui/dialogs/comp-editor.c (comp_editor_destroy): destroy the CompEditorPage objects here rather than in close_dialog(), after the widgets have been destroyed. We do this because the widgets have lots of signal handlers connected with the CompEditorPage objects as the signal data, so we want to ensure that the data pointer is always valid. (Alternatively we could disconnect all the handlers when the CompEditorPage objects are destroyed, or use connect_while_alive()). Fixes bug #7543. Note: there is still a small bug in that if you type in a time and then hit 'Save and Close', the time won't be saved. I'm not sure where this should be fixed - should the actions which close the dialog grab the focus to the toplevel, so any widgets currently being edited finish the edit and emit 'changed'? * gui/dialogs/recurrence-page.c (append_exception): use gtk_clist_set_row_data_full() so freeing is handled automatically by the GtkClist. This helps avoid problems at destroy-time. (exception_delete_cb): just call gtk_clist_remove() now. No need to free the row data as GtkCList now handles it. (recurrence_page_destroy): no need to free the data in the clist. * gui/dialogs/alarm-page.c: ditto. * gui/dialogs/meeting-page.c: ditto. (etable_destroy_cb): save the ETable state in this new handler cb rather than in the destroy method, since the widget will already be destroyed by then. svn path=/trunk/; revision=12575
* fix debugging messages so they use "" rather than NULL. Fixes bug #8559.Damon Chaplin2001-09-011-2/+2
| | | | | | | | | | 2001-08-31 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor-util.c (comp_editor_contacts_to_widget): (comp_editor_contacts_to_component): fix debugging messages so they use "" rather than NULL. Fixes bug #8559. svn path=/trunk/; revision=12539
* Unset the priv->updating flag before returning in the case the componentFederico Mena Quintero2001-08-231-0/+2
| | | | | | | | | | 2001-08-22 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/recurrence-page.c (recurrence_page_fill_widgets): Unset the priv->updating flag before returning in the case the component has no recurrence information. Fixes bug #6850. svn path=/trunk/; revision=12413
* Added a snooze flag to differentiate snoozed alarms from real occurrences.Federico Mena Quintero2001-08-231-1/+1
| | | | | | | | | | | | | | | 2001-08-22 Federico Mena Quintero <federico@ximian.com> * gui/alarm-notify/alarm-queue.c (QueuedAlarm): Added a snooze flag to differentiate snoozed alarms from real occurrences. (add_component_alarms): Do not specify a destroy function for the alarm trigger. We handle this in the callbacks now. (alarm_trigger_cb): Just remove the alarms for the unimplemented notification types. (create_snooze): Implemented snooze. (notify_dialog_cb): Snooze as appropriate. svn path=/trunk/; revision=12412
* Handle the case where there is no attachment. Fixes bug #7257.Federico Mena Quintero2001-08-221-5/+16
| | | | | | | | | 2001-08-21 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-options.c (alarm_to_palarm_widgets): Handle the case where there is no attachment. Fixes bug #7257. svn path=/trunk/; revision=12368
* added new e-sexp operator. We don't currently use it though.Damon Chaplin2001-08-222-3/+70
| | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-21 Damon Chaplin <damon@ximian.com> * pcs/query.c (func_is_completed): added new e-sexp operator. We don't currently use it though. * gui/dialogs/cal-prefs-dialog.glade: Changed '_Overdue' to 'O_verdue' since we have an '_Other' notebook tab. Added '_Hide' accel. * gui/dialogs/cal-prefs-dialog.c: hooked up config options to dialog. * gui/calendar-config.c: added config options for hiding completed tasks. * gui/e-week-view-event-item.c (e_week_view_event_item_draw): * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): * gui/e-day-view.c (e_day_view_reshape_long_event): added 2 pixels extra space between icons and text for long events, and 1 pixel space between icons in all events. (e_day_view_realize): changed the background color to match the EGrayBar in the shell. svn path=/trunk/; revision=12347
* use Delete icon in menu, and change to bigger Save icon in toolbar.Damon Chaplin2001-08-201-1/+3
| | | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (pixmaps): use Delete icon in menu, and change to bigger Save icon in toolbar. svn path=/trunk/; revision=12280
* use new delete icon for toolbar.Damon Chaplin2001-08-201-0/+1
| | | | | | | | 2001-08-20 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (pixmaps): use new delete icon for toolbar. svn path=/trunk/; revision=12244
* added option to hide completed tasks after a given number ofDamon Chaplin2001-08-193-2/+79
| | | | | | | | | | | | | | | | | 2001-08-18 Damon Chaplin <damon@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: added option to hide completed tasks after a given number of minutes/hours/days. Unfinished. * gui/dialogs/event-page.c (event_page_fill_component): initialize zone to NULL to avoid a warning. (contacts_clicked_cb): work around a bug in SelectNames by notifying that the page has changed when you click the 'Contacts' button. Otherwise it is easy to lose changes. * gui/dialogs/task-page.c (contacts_clicked_cb): ditto. svn path=/trunk/; revision=12215
* used new Save/Save As icons.Damon Chaplin2001-08-191-0/+5
| | | | | | | | | | | | 2001-08-18 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (pixmaps): used new Save/Save As icons. * gui/tasks-control.c: * gui/calendar-commands.c (pixmaps): added new Cut/Copy/Paste icons, and changed the 'New Task' icon to use the bigger one I made. svn path=/trunk/; revision=12214
* Use e_dialog_editable_get instead of gtk_editable_get_chars (we need UTF-8Zbigniew Chyla2001-08-191-1/+1
| | | | | | | | | | 2001-08-05 Zbigniew Chyla <cyba@gnome.pl> * gui/dialogs/task-page.c (summary_changed_cb): Use e_dialog_editable_get instead of gtk_editable_get_chars (we need UTF-8 string). svn path=/trunk/; revision=12209
* Startup assistant stuffIain Holmes2001-08-174-1004/+0
| | | | svn path=/trunk/; revision=12145
* hide the timezone fields for all-day events. We will use DATE values forDamon Chaplin2001-08-178-19/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-16 Damon Chaplin <damon@ximian.com> * gui/dialogs/event-page.c: hide the timezone fields for all-day events. We will use DATE values for these eventually, and these don't have timezones associated with them. Currently we just use the default timezone for all-day events, as a workaround until we have DATE values working. * gui/dialogs/comp-editor-util.c (comp_editor_new_date_edit): added make_time_insensitive flag. Though we may not use it. * gui/dialogs/event-page.glade: made the 'All day event' toggle right-aligned, so it doesn't move when the other widgets are shown and hidden. * gui/e-timezone-entry.c (e_timezone_entry_set_default_timezone): new function to set the default timezone of the widget. If the current timezone setting matches the default then the entry field is hidden. Most people won't use timezones so this makes the GUI simpler. * gui/dialogs/event-page.c (init_widgets): * gui/dialogs/task-page.c (init_widgets): set the default timezone using the above function. * gui/dialogs/task-page.c (task_page_fill_widgets): if the start date or due date is not set, we use the default timezone, so the user doesn't have to set this each time they set the date. svn path=/trunk/; revision=12137
* If the component has no alarms remember to set the priv->updating flag toFederico Mena Quintero2001-08-171-1/+3
| | | | | | | | | | 2001-08-16 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-page.c (alarm_page_fill_widgets): If the component has no alarms remember to set the priv->updating flag to FALSE before returning. svn path=/trunk/; revision=12128
* get the destinations property, not the text propertyJP Rosevear2001-08-171-1/+1
| | | | | | | | | | 2001-08-16 JP Rosevear <jpr@ximian.com> * gui/dialogs/e-delegate-dialog.c (e_delegate_dialog_get_delegate_name): get the destinations property, not the text property svn path=/trunk/; revision=12126
* Set the default-to-add notification to be display a message 15 minutesFederico Mena Quintero2001-08-171-41/+48
| | | | | | | | | | 2001-08-16 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-page.c (clear_widgets): Set the default-to-add notification to be display a message 15 minutes before the start of the appointment. Fixes bug #7175. svn path=/trunk/; revision=12123
* New function to strip surrounding whitespace from a string of categoriesFederico Mena Quintero2001-08-174-4/+84
| | | | | | | | | | | | | | | 2001-08-16 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/comp-editor-util.c (comp_editor_strip_categories): New function to strip surrounding whitespace from a string of categories entered by the user. * gui/dialogs/task-page.c (task_page_fill_component): Use comp_editor_strip_categories(). * gui/dialogs/event-page.c (event_page_fill_component): Likewise. svn path=/trunk/; revision=12122
* Do not set the time popup range. We also want to be able to createFederico Mena Quintero2001-08-171-1/+1
| | | | | | | | | | | | | | 2001-08-16 Federico Mena Quintero <federico@ximian.com> * gui/calendar-config.c (calendar_config_configure_e_date_edit): Do not set the time popup range. We also want to be able to create appointments that are not within nine-to-five! Think of going to the movies! Fixes bug #7436. * gui/dialogs/cal-prefs-dialog.glade: "am/pm" is now "AM/PM". Fixes bug #7367. svn path=/trunk/; revision=12109
* only fill the component and save it if something has changedJP Rosevear2001-08-151-2/+8
| | | | | | | | | | | 2001-08-15 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.c (save_comp): only fill the component and save it if something has changed (save_comp_with_send): only try to send if something has changed and the editor needs a send svn path=/trunk/; revision=12052
* OK, re-added the default alarm options. Way too many people are asking forFederico Mena Quintero2001-08-151-0/+101
| | | | | | | | | 2001-08-15 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: OK, re-added the default alarm options. Way too many people are asking for them. svn path=/trunk/; revision=12050
* Add the user creatable items. The callback is not actually implementedFederico Mena Quintero2001-08-151-23/+62
| | | | | | | | | | | | | | 2001-08-15 Federico Mena Quintero <federico@ximian.com> * gui/component-factory.c (factory_fn): Add the user creatable items. The callback is not actually implemented yet; this is just to finalize the GUI. * gui/dialogs/cal-prefs-dialog.glade: Added an option to ask for confirmation when deleting items. Added underlined shortcuts (they may not all work currently). svn path=/trunk/; revision=12047
* added support for the Contacts field. Note that I'm not sure what weDamon Chaplin2001-08-157-37/+467
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-14 Damon Chaplin <damon@ximian.com> * gui/dialogs/task-page.c: * gui/dialogs/event-page.c: added support for the Contacts field. Note that I'm not sure what we should put in the iCalendar CONTACT properties. Currently we put "name <email>", but it isn't recognized as a contact when we reopen the dialog, so we may need more info here. Also we currently use a simple parser to parse the above format, and we should maybe use some camel function. * gui/dialogs/task-page.glade: * gui/dialogs/event-page.glade: replaced the GtkEntry fields for the Contacts with a GtkEventBox which we put the BonoboControl in at runtime. * gui/dialogs/meeting-page.c (invite_entry_changed): added FIXMEs since it doesn't seem to be freeing the EDestination stuff. JP? * gui/dialogs/comp-editor-util.c: added bunch of utility functions to handle the Contacts field in the main Event and Task pages. * gui/gnome-cal.c: added visible_start and visible_end fields, so we only emit the 'dates-shown-changed' signal when really necessary. Currently changing the folder title bar label results in a complete redraw of the Evolution window (silly GtkLabel queueing a resize), so we want to avoid that as much as possible. (gnome_calendar_new_appointment_for): only move the event's end time to the end of the day if it is not already 00:00:00. * gui/e-week-view-event-item.c: * gui/e-week-view.c: * gui/e-day-view.c: added support for double-clicking on an event to open it, and for double-clicking on the background to create a new event. There is still a minor problem to sort out, but it basically works. * cal-util/cal-component.c: added support for CONTACT properties, mainly by copying the code for COMMENT properties which are exactly the same type. * gui/e-day-view.c (e_day_view_realize): use the same color for the top canvas background as the shortcut bar, to make it look a little nicer (I think). Although we still have the theme problem with hard-coded colors. svn path=/trunk/; revision=12039
* turn on word-wrap for the description fields. Fixes bug #6821.Damon Chaplin2001-08-122-1/+8
| | | | | | | | | | 2001-08-11 Damon Chaplin <damon@ximian.com> * gui/dialogs/event-page.c (init_widgets): * gui/dialogs/task-page.c (init_widgets): turn on word-wrap for the description fields. Fixes bug #6821. svn path=/trunk/; revision=11922
* added new backend method to get the component given a UID.Damon Chaplin2001-08-101-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-09 Damon Chaplin <damon@ximian.com> * pcs/cal-backend.c (cal_backend_get_object_component): added new backend method to get the component given a UID. * pcs/cal-backend-file.c (cal_backend_file_get_object_component): added implementation of above virtual method. * pcs/query.c (match_component): use the new backend function to get the CalComponent rather than the string. This avoids converting all the calendar components to strings and parsing them back into components for every query! (That wasn't a good idea, was it ;) * gui/e-week-view.c: * gui/e-day-view.c: use a timeout handler to layout the events, to avoid doing a layout for each event we get from a query. * gui/print.c (print_day_add_event): * gui/e-day-view.c (e_day_view_add_event): set start_row_or_col and num_columns to 0. They are guint8's. * gui/e-week-view.c (e_week_view_free_events): hide all the jump buttons. Fixes bug #5946. * gui/calendar-commands.c (calendar_set_folder_bar_label): added the day numbers for the month view. * gui/dialogs/recurrence-page.glade: changed "_Delete" to "_Remove", since it clashed with "_Add". Also added underlined accelerators for the recurrence radio buttons. Note that none of these accelerators actually work at present, due to the way we are using .glade files for each notebook page. I need to add a bug about this. Also, the "_Action" menu doesn't popup when I press Alt+A, even though the "_File" menu does popup when I press Alt+F. Strange. * pcs/cal-backend-file.c (cal_backend_file_get_timezone_object): removed debug msgs. svn path=/trunk/; revision=11866
* Remove progress frameJP Rosevear2001-08-107-939/+560
| | | | | | | | | | | | | | | | | | | | | | 2001-08-09 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-page.*: Remove progress frame * gui/dialogs/task-details-page.*: Put in progress frame, remove basics frame * gui/dialogs/task-editor.c (set_menu_sens): util function to set menu sensitivity based on state (task_editor_init): add meeting page (task_editor_edit_comp): show page if necessary (task_editor_destroy): unref meeting page (assign_task_cmd): bring up meeting page (refresh_task_cmd): save before sending (forward_cmd): ditto * gui/dialogs/comp-editor.c (save_cmd): implement new save command svn path=/trunk/; revision=11846
* Chain to the destroy handler in the parent class!Federico Mena Quintero2001-08-091-0/+7
| | | | | | | | | | | | | | | 2001-08-09 Federico Mena Quintero <federico@ximian.com> * gui/e-itip-control.c (destroy): Chain to the destroy handler in the parent class! * gui/dialogs/comp-editor-page.c (comp_editor_page_destroy): Likewise. Sigh. * gui/cal-search-bar.c (cal_search_bar_destroy): Whoops, added a destroy handler. svn path=/trunk/; revision=11820
* Duuuh, set the alarm_copy on the component, not the original alarm. FixesFederico Mena Quintero2001-08-091-1/+1
| | | | | | | | | | 2001-08-08 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-page.c (alarm_page_fill_component): Duuuh, set the alarm_copy on the component, not the original alarm. Fixes bug #5214. svn path=/trunk/; revision=11806
* set the attendees of a component (meeting_page_fill_component): use aboveJP Rosevear2001-08-095-42/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-08 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (set_attendees): set the attendees of a component (meeting_page_fill_component): use above (meeting_page_get_cancel_comp): return a comp with the attendees to be cancelled * gui/dialogs/meeting-page.h: get a component that will be sent as a cancellation * gui/dialogs/event-editor.c (event_editor_class_init): override send_comp class method (event_editor_send_comp): send cancellation notices to deleted attendees (refresh_meeting_cmd): save before send (forward_cmd): ditto * gui/dialogs/comp-editor.c (comp_editor_class_init): set default send_comp method (real_send_comp): do the real work (comp_editor_send_comp): call class method (save_comp): don't do any sending (save_comp_with_send): save and send here (prompt_to_save_changes): use above (save_close_cmd): ditto * gui/dialogs/comp-editor.h: add virtual function svn path=/trunk/; revision=11803
* added 'different_timezone' fields to EDayViewEvent and EWeekViewEvent, toDamon Chaplin2001-08-073-54/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-06 Damon Chaplin <damon@ximian.com> * gui/e-week-view.h: * gui/e-day-view.h: added 'different_timezone' fields to EDayViewEvent and EWeekViewEvent, to note that the event is in a different timezone. We now compute this once when we add the event to the array, rather than each time we draw the event. If it is set, we will draw the timezone icon next to the event. * gui/e-day-view-main-item.c: take transparency into account when drawing the blue vertical bars to represent busy time. * gui/tag-calendar.c: take transparency into account when tagging the mini calendar. * gui/e-calendar-table.c (e_calendar_table_init): removed the "None" options for transparency and classification, since these properties have defaults anyway, so we may as well use those to keep it simple. Also use "Free" and "Busy" for transparency, rather than "Transparent" and "Opaque". * gui/calendar-model.c: updated classification & transparency code as above. * gui/e-calendar-table.etspec: changed "Transparency" to "Show Time As" since people have a chance of understanding that. * gui/e-week-view.c: * gui/e-day-view.c: * gui/gnome-cal.c: added functions to get the visible time range. * gui/calendar-commands.c: finished stuff to set the folder bar label to the dates currently displayed. * gui/control-factory.c (control_factory_new_control): connected signal to update the folder title bar label when the dates shown are changed. I had to connect it here since we need the BonoboControl in the callback, and I don't know how to get the control from the widget. * gui/tasks-control.c (tasks_control_activate): clear the folder bar label. We could display something here at some point. * gui/dialogs/recurrence-page.glade: changed "_Add" to "A_dd", since we have an "_Actions" menu. (These also use Alt+key, right?) * gui/dialogs/event-page.glade: * gui/dialogs/event-page.c: added 'Show Time As' field, which is really the TRANSP property but with a better name! Also changed one of the "_Confidential" to "Con_fidential" since we already have "_Contacts" using the same 'C' key. * pcs/cal-backend-file.c (cal_backend_file_get_free_busy): skip events that are TRANSPARENT. Also added comment as this code looks inefficient. * cal-util/cal-component.c: removed stuff for comparing timezones. * gui/comp-util.c (cal_comp_util_compare_event_timezones): moved the above function here, and updated it to compare the UTC offsets of the times as well as the TZIDs. svn path=/trunk/; revision=11717
* In process of fixing bug #6005. The "Calendar" page is now "Display", andFederico Mena Quintero2001-08-071-236/+161
| | | | | | | | | | | 2001-08-06 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: In process of fixing bug #6005. The "Calendar" page is now "Display", and it has no frames. The "Task list" page has colons between the labels and the color pickers, and it has no frame. svn path=/trunk/; revision=11707
* New function; stops further notification from happening. This is neededFederico Mena Quintero2001-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-03 Federico Mena Quintero <federico@ximian.com> * cal-client/query-listener.c (query_listener_stop_notification): New function; stops further notification from happening. This is needed since the listener is destroyed asynchronously from the Wombat and the corresponding CalQuery may already have died. (impl_notifyObjUpdated): Do not notify if requested. (impl_notifyObjRemoved): Likewise. (impl_notifyQueryDone): Likewise. (impl_notifyEvalError): Likewise. * cal-client/cal-query.c (cal_query_destroy): Use query_listener_stop_notification(). * cal-client/cal-listener.c (cal_listener_destroy): Nullify the pointers to the callback functions. * gui/e-day-view.c (update_query): Commit our state of no longer having a query before unrefing it. We may reenter from the ORBit main loop and we *really* want this information to be committed. * gui/e-week-view.c (update_query): Likewise. * gui/calendar-model.c (update_query): Likewise. * gui/tag-calendar.c (tag_calendar_by_comp): Added a "clear_first" argument that indicates whether the ECalendar should be cleared of any marks first. * gui/calendar-commands.c (calendar_control_activate): Removed ifdefed-out view buttons code from the Gnomecal days. * gui/gnome-cal.c (client_categories_changed_cb): Merge the categories of the calendar and tasks clients so that we can display the categories in both sets. (gnome_calendar_construct): Connect to "categories_changed" on both clients. (gnome_calendar_on_date_navigator_selection_changed): Removed call to gnome_calendar_update_view_buttons(). (gnome_calendar_update_view_buttons): Removed. We cannot have this until Bonobo supports radio toolbar items. (gnome_calendar_set_view_buttons): Removed. (gnome_calendar_dayjump): Do not use priv->day_button. (GnomeCalendarPrivate): Removed the {day,work_week,week,month}_button fields. (gnome_calendar_set_query): Start a retagging process of the date navigator so that it reflects the current query. (update_query): New function to restart a query for the date navigator. (initial_load): Use update_query() instead of tagging the date navigator directly. (gnome_calendar_on_date_navigator_date_range_changed): Likewise. (client_cal_opened_cb): Use update_query() instead of initial_load(). (initial_load): Removed. (client_obj_updated_cb): Removed. (client_obj_removed_cb): Removed. (gnome_calendar_new_appointment_for): Set the default category of the new component. (search_bar_category_changed_cb): Set the default category for the calendar views. * gui/cal-search-bar.c (cal_search_bar_set_categories): Sort the categories before creating the menu. * gui/e-day-view.c (adjust_query_sexp): Return NULL instead of "#f" if the time range is not set yet. (update_query): Do not start a query if the time range is not set. (e_day_view_set_default_category): New function. (e_day_view_key_press): Set the default category on the new component. * gui/e-week-view.c (adjust_query_sexp): Analogous to the above. (update_query): Analogous to the above. (e_week_view_set_default_category): Analogous to the above. (e_week_view_key_press): Analogous to the above. svn path=/trunk/; revision=11646
* Fixes bug #1407.Federico Mena Quintero2001-08-041-120/+0
| | | | | | | | | | | 2001-08-03 Federico Mena Quintero <federico@ximian.com> Fixes bug #1407. * gui/dialogs/cal-prefs-dialog.glade: Removed the alarm preferences page, since we decided it was unnecessary. svn path=/trunk/; revision=11621
* I18n fixes.Chyla Zbigniew2001-08-041-1/+1
| | | | | | | | | | | * gui/dialogs/event-page.c (summary_changed_cb): Use e_dialog_editable_get instead of gtk_editable_get_chars (we need UTF-8 string). * gui/itip-utils.c: Added missing #include <config.h> svn path=/trunk/; revision=11619
* If the default category is the same as the value passed in to thisFederico Mena Quintero2001-08-021-2/+2
| | | | | | | | | | | | | | | | | | 2001-08-01 Federico Mena Quintero <federico@ximian.com> * gui/calendar-model.c (calendar_model_value_is_empty): If the default category is the same as the value passed in to this function, return TRUE. This could be a hack or not, but it prevents two items from being added to the table if a category is selected. * gui/e-tasks.c (setup_widgets): Allow the search bar to shrink horizontally. * gui/dialogs/task-page.c (clear_widgets): Pass valid values to e_dialog_option_menu_set(); these need to come from the status map. svn path=/trunk/; revision=11565
* Sync from OLS - FedericoFederico Mena Quintero2001-08-013-10/+40
| | | | svn path=/trunk/; revision=11514
* started some code to show the currently displayed dates in the folderDamon Chaplin2001-07-311-43/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-30 Damon Chaplin <damon@ximian.com> * gui/gnome-cal.c: * gui/calendar-commands.c (clear_folder_bar_label): started some code to show the currently displayed dates in the folder title bar. Unfinished. * gui/e-itip-control.c (set_date_label): * conduits/todo/todo-conduit.c (local_record_from_comp): * conduits/calendar/calendar-conduit.c (local_record_from_comp): free the CalComponentDateTimes. (Note the iTIP control needs updating for timezone support.) * cal-util/cal-component.c: Changed CalComponentDateTime so that the TZID is malloc'ed and freed rather than being a pointer to a static string. This was causing problems as sometimes we were freeing the string that was being pointed to, so we got corrupted TZIDs. * gui/comp-util.c (cal_comp_util_add_exdate): set TZID to NULL. DATE values do not have timezones. * gui/e-week-view.c: * gui/e-day-view.c: Moved 'Paste' after the New Appointment commands, since I think they are more commonly-used. Also added underlined accelerator keys. * gui/e-calendar-table.c: changed 'Edit this task' to 'Open' in the popup menu to be consistent with other folders, and separated from the clipboard commands. Also changed to use EPopupMenu so the accelerators work, and the masks may be useful at some point. * gui/dialogs/recurrence-page.c: use DATE values for UNTIL, since that makes it simpler. Fixes bug #5034. * gui/calendar-config.c (calendar_config_set_timezone): strdup the location string. Fixes bug #4990. * gui/tag-calendar.c (tag_calendar_cb): take 1 off iend as the times don't include the end time. * gui/e-week-view-layout.c (e_week_view_layout_event): fixed days_shown. Fixes bug #5709. * cal-client/cal-client.c (cal_client_get_timezone): took out some debugging messages. svn path=/trunk/; revision=11494
* added Help button. Though of course it doesn't do anything yet.Damon Chaplin2001-07-312-0/+11
| | | | | | | | | 2001-07-30 Damon Chaplin <damon@ximian.com> * gui/dialogs/cal-prefs-dialog.glade: added Help button. Though of course it doesn't do anything yet. svn path=/trunk/; revision=11489
* Mark strings for translationJP Rosevear2001-07-311-67/+64
| | | | | | | | 2001-07-30 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: Mark strings for translation svn path=/trunk/; revision=11480
* when an entry has changed, iterate over the elements of the entry and addJP Rosevear2001-07-271-175/+248
| | | | | | | | | | | 2001-07-26 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (invite_entry_changed): when an entry has changed, iterate over the elements of the entry and add them to the list if need be (get_select_name_dialog): add a Chair Persons section svn path=/trunk/; revision=11443
* free a list of attendees (meeting_page_fill_widgets): clean up attendeeJP Rosevear2001-07-273-48/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-26 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (cleanup_attendees): free a list of attendees (meeting_page_fill_widgets): clean up attendee lists and fix typo (find_match): add ability to return pos of match (popup_delete_cb): if deletion happens, make sure to tidy up delegation chain * gui/dialogs/e-delegate-dialog.c (e_delegate_dialog_construct): use the destination rather than text property (e_delegate_dialog_get_delegate): ditto (e_delegate_dialog_new): take name/address pair for dialog default * gui/dialogs/e-delegate-dialog.h: update protos * gui/e-itip-control.c (clean_up): only unref the object if we have one * gui/itip-control-factory.c (stream_read): make sure we null terminate the final buffer * gui/itip-utils.c (itip_send_comp): strip the mailto: from the organizer address if necessary svn path=/trunk/; revision=11440
* check that the row passed in is valid. Sometimes we get the "row-selected"Damon Chaplin2001-07-271-0/+6
| | | | | | | | | | | | | | | | | 2001-07-26 Damon Chaplin <damon@ximian.com> * gui/dialogs/recurrence-page.c (exception_select_row_cb): check that the row passed in is valid. Sometimes we get the "row-selected" signal for row 0 when there are no rows in the list. Fixes bug #4266. * cal-client/cal-client.c (cal_client_get_object): prefetch all the timezone data needed by the object, to try to avoid making Corba calls all over the place. They can cause problems because they call the GTK+ main loop recursively. This currently leads to an assertion failure in the GnomeCanvas occasionally. Though there are probably several other similar problems around. svn path=/trunk/; revision=11433
* used the new print preview icon.Damon Chaplin2001-07-261-1/+1
| | | | | | | | | | | | 2001-07-25 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (pixmaps): used the new print preview icon. * gui/print.c (range_selector_new): changed the 'Current day/week...' strings to 'Selected day/week...' to make a little less confusing. Fixes bug #5451. svn path=/trunk/; revision=11416
* see if the address is already in the list of attendees (duplicate_error):JP Rosevear2001-07-261-16/+57
| | | | | | | | | | | | | | | 2001-07-25 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (is_duplicate): see if the address is already in the list of attendees (duplicate_error): throw up an error dialog (popup_delegate_cb): if the attendee has already delegated, delete the old delegatee (value_at): cast to kill warnings (append_row): don't add the new attendee if they are already in the list svn path=/trunk/; revision=11406
* calculate tmp_tm.tm_wday ourselves. strftime has a habit of crashing ifDamon Chaplin2001-07-251-0/+5
| | | | | | | | | | 2001-07-24 Damon Chaplin <damon@ximian.com> * gui/dialogs/recurrence-page.c (get_exception_string): calculate tmp_tm.tm_wday ourselves. strftime has a habit of crashing if you have weird values here. I think this fixes bug #4574. svn path=/trunk/; revision=11369
* stip the delto and delfrom (popup_delegate_cb): show a delegate dialog andJP Rosevear2001-07-255-38/+642
| | | | | | | | | | | | | | | | | | | | 2001-07-24 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (value_at): stip the delto and delfrom (popup_delegate_cb): show a delegate dialog and add the new delegatee and update the delegator (add_section): listen for changes in a more direct manner (get_select_name_dialog): add_section now takes a limit argument * gui/dialogs/e-delegate-dialog.[hc]: New dialog to query the user for a person to delegate to * gui/dialogs/Makefile.am: build/install new files * gui/Makefile.am: add ldadd line for ebook svn path=/trunk/; revision=11364
* Removed unused prototype.Federico Mena Quintero2001-07-202-2/+0
| | | | | | | | | | | | 2001-07-19 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/event-editor.h (event_editor_update_widgets): Removed unused prototype. * gui/dialogs/task-editor.h (task_editor_update_widgets): Likewise. svn path=/trunk/; revision=11251
* updated to use new print icon.Damon Chaplin2001-07-201-1/+1
| | | | | | | | | 2001-07-19 Damon Chaplin <damon@ximian.com> * gui/dialogs/comp-editor.c (pixmaps): * gui/calendar-commands.c (pixmaps): updated to use new print icon. svn path=/trunk/; revision=11244
* don't show the time in the EDateEdit widget for adding EXDATEs.Damon Chaplin2001-07-181-0/+1
| | | | | | | | | | | | | 2001-07-17 Damon Chaplin <damon@ximian.com> * gui/dialogs/recurrence-page.c (init_widgets): don't show the time in the EDateEdit widget for adding EXDATEs. * cal-util/cal-component.c (cal_component_alarm_set_trigger): don't set t.time.is_date to -1. It is a boolean flag, 0 or 1. We probably don't want a date value, so we leave it at 0. svn path=/trunk/; revision=11193
* Print a g_message when the list of invited people changes in theJon Trowbridge2001-07-171-2/+11
| | | | | | | | | | | | | 2001-07-17 Jon Trowbridge <trow@ximian.com> * gui/dialogs/meeting-page.c (invite_entry_changed): Print a g_message when the list of invited people changes in the SelectNames control. (add_section): #if 0/#endif out some (broken?) code. (get_select_name_dialog): Listen for changes in the SelectNames control. svn path=/trunk/; revision=11151
* destroy the dialog widget here. Fixes bug #4198.Damon Chaplin2001-07-171-0/+5
| | | | | | | | | 2001-07-17 Damon Chaplin <damon@ximian.com> * gui/dialogs/e-timezone-dialog.c (e_timezone_dialog_destroy): destroy the dialog widget here. Fixes bug #4198. svn path=/trunk/; revision=11149
* try to use builtin timezones before getting them from the server. WhenDamon Chaplin2001-07-174-24/+56
| | | | | | | | | | | | | | | | | | | | | | 2001-07-16 Damon Chaplin <damon@ximian.com> * gui/dialogs/task-page.c (task_page_fill_widgets): * gui/dialogs/event-page.c (event_page_fill_widgets): try to use builtin timezones before getting them from the server. When creating new events/tasks the timezones may not be on the server. * gui/dialogs/event-page.c (event_page_fill_widgets): for all-day events we subtract a day from the end date rather than add it. * gui/dialogs/e-timezone-dialog.c (on_map_leave): ignore the event if it isn't a GDK_CROSSING_NORMAL event. For some reason we are getting leave events when the button is pressed, which meant that selecting timezones in the map didn't work. * gui/dialogs/comp-editor-util.c (comp_editor_dates): * gui/print.c (print_date_label): only free icaltimetype if not NULL. svn path=/trunk/; revision=11144
* Added missing underlined shortcuts.Taylor Hayward2001-07-133-9/+15
| | | | | | | | | | | | | | 2001-07-12 Taylor Hayward <taylorhayward@yahoo.com> * gui/goto-dialog.glade: * gui/meeting-mockup.glade: * gui/alarm-notifyålarm-notify.glade: * gui/dialogs/alarm-page.glade: * gui/dialogs/meeting-page.glade: * gui/dialogs/recurrence-page.glade: Added missing underlined shortcuts. svn path=/trunk/; revision=11067
* fix typo breaking compilationJP Rosevear2001-07-133-2/+28
| | | | | | | | | | | | | | | 2001-07-12 JP Rosevear <jpr@ximian.com> * gui/e-calendar-table.c (e_calendar_table_copy_clipboard): fix typo breaking compilation * gui/dialogs/meeting-page.c: fix include * gui/dialogs/Makefile.am: build select names idl here * gui/Makefile.am: remove select names compilation from here svn path=/trunk/; revision=11050
* guard against infinite loops with the updating boolean, fixes 4270JP Rosevear2001-07-131-0/+7
| | | | | | | | | 2001-07-12 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-details-page.c (task_details_page_set_dates): guard against infinite loops with the updating boolean, fixes 4270 svn path=/trunk/; revision=11045
* Fixes bug #4380 as well as some leftovers from the days of struct tm andFederico Mena Quintero2001-07-124-17/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-11 Federico Mena Quintero <federico@ximian.com> Fixes bug #4380 as well as some leftovers from the days of struct tm and some uninitialized values. * gui/gnome-cal.c (gnome_calendar_on_date_navigator_selection_changed): Initialize the icaltimetype structures completely. (gnome_calendar_init): Do not reset priv->zone to NULL here, since it was set by gnome_calendar_update_config_settings() from setup_widgets(). * gui/calendar-model.c (set_completed): Do not set is_daylight. * gui/e-day-view.c (e_day_view_convert_grid_position_to_time): Likewise. * gui/e-week-view.c (e_week_view_set_timezone): Likewise. * cal-util/cal-recur.c (generate_instances_for_chunk): Likewise, and initialize start_tt and end_tt completely. * cal-util/timeutil.c (time_year_begin_with_zone): Likewise. (time_month_begin_with_zone): Likewise. (time_week_begin_with_zone): Likewise. (time_day_begin_with_zone): Likewise. (time_day_end_with_zone): Likewise. (time_from_isodate): Likewise. * gui/dialogs/task-page.c (task_page_fill_component): Initialize icaltime before using it. * gui/dialogs/event-page.c (event_page_fill_component): Likewise. * gui/dialogs/recurrence-page.c (simple_recur_to_comp): Removed an unused icaltimetype. * gui/dialogs/task-details-page.c (task_details_page_fill_component): Initialize icaltime before using it. svn path=/trunk/; revision=11024
* be careful about adding and stripping MAILTO:'s properlyJP Rosevear2001-07-123-17/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-11 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: be careful about adding and stripping MAILTO:'s properly * gui/dialogs/meeting-page.etspec: add missing columns * gui/itip-utils.c (itip_strip_mailto): point to the real start of the email address * gui/itip-utils.h: add proto * gui/itip-control-factory.c: get rid of the my address property * gui/e-itip-control.c: use the users real identity to figure out which attendee they are (find_my_address): figure out who the user is among the attendees * gui/e-itip-control.h: remove protos * gui/dialogs/Makefile.am: extra dist etspecs * gui/Makefile.am: ditto svn path=/trunk/; revision=11020
* [Fix bug #4388: ETableSpecification still in .c file]Jason Leach2001-07-113-46/+27
| | | | | | | | | | | | | | | | | 2001-07-10 Jason Leach <jleach@ximian.com> [Fix bug #4388: ETableSpecification still in .c file] * gui/dialogs/meeting-page.etspec: New file containing the spec that was previously in meeting-page.c as a string. * gui/dialogs/meeting-page.c: One line change to get it to use this spec file instead of a string. * gui/dialogs/Makefile.am: Necessary changes to get the new meeting-page.etspec installed. svn path=/trunk/; revision=10985
* more timezone updates. I'm pretty much done with the calendar code now,Damon Chaplin2001-07-113-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Add popup support so you can delete users from the listJP Rosevear2001-07-112-8/+133
| | | | | | | | | | | 2001-07-10 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: Add popup support so you can delete users from the list * gui/dialogs/comp-editor.c (setup_widgets): fix typo svn path=/trunk/; revision=10982
* Pass the parent vCalendar component as the timezone closure ofFederico Mena Quintero2001-07-111-5/+5
| | | | | | | | | | | | | | | 2001-07-09 Federico Mena Quintero <federico@ximian.com> * pcs/cal-backend-file.c (generate_alarms_for_comp): Pass the parent vCalendar component as the timezone closure of cal_recur_generate_instances(). * gui/dialogs/alarm-page.c (get_alarm_string): Make the string consistent with the option menu text. (get_alarm_string): Removed extra spaces from the last part of the alarm string. svn path=/trunk/; revision=10961
* connect to the entry not the comboJP Rosevear2001-07-074-9/+58
| | | | | | | | | | | | | | | | | | | | 2001-07-06 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (init_widgets): connect to the entry not the combo * gui/dialogs/event-editor.c (set_menu_sens): set menu sensitivities based on whether or not the meeting page is shown (event_editor_init): call above (event_editor_edit_comp): ditto (schedule_meeting_cmd): ditto * gui/dialogs/comp-editor.h: new proto * gui/dialogs/comp-editor.c (comp_editor_set_ui_prop): new function to allow for set of ui props (esp. "sensitive") svn path=/trunk/; revision=10861
* actually clear some widgets and hide/show widgets in the default setupJP Rosevear2001-07-073-38/+394
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-06 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (clear_widgets): actually clear some widgets and hide/show widgets in the default setup (meeting_page_destroy): destroy the address lists (meeting_page_fill_widgets): allow the user to select among their identities as a new organizer, or show the existing organizer as label (meeting_page_fill_component): set the "MAILTO:" bit of the organizer to match spec, set CN properly if we know it (get_widgets): load new widgets (other_clicked_cb): handle "Other Organizer" click (change_clicked_cb): handle "Change Organizer" click (init_widgets): listen for clicks on new buttons * gui/dialogs/comp-editor.c (comp_editor_remove_page): remove the page from our internal list and unref it * gui/itip-utils.c (itip_addresses_get): get the configure mail identities (itip_addresses_free): free a list of identities returned by itip_addresses_get * gui/itip-utils.h: remove obsolete protos, and new protos * gui/gnome-cal.html: Remove ancient file svn path=/trunk/; revision=10856
* Fixes bug #4018 and what would be the analogous bugs for the otherFederico Mena Quintero2001-07-059-1/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-04 Federico Mena Quintero <federico@ximian.com> Fixes bug #4018 and what would be the analogous bugs for the other component editors. * gui/dialogs/comp-editor-page.h (CompEditorPageClass): New virtual method "::focus_main_widget()". * gui/dialogs/comp-editor-page.c (comp_editor_page_focus_main_widget): New function. * gui/dialogs/comp-editor.c (comp_editor_append_page): If we are inserting the main page, ask it to focus its main widget. * gui/dialogs/alarm-page.c (alarm_page_focus_main_widget): Implemented. * gui/dialogs/event-page.c (event_page_focus_main_widget): Implemented. #include "e-util/e-categories-config.h". * gui/dialogs/meeting-page.c (meeting_page_focus_main_widget): Implemented. * gui/dialogs/recurrence-page.c (recurrence_page_focus_main_widget): Implemented. * gui/dialogs/task-details-page.c (task_details_page_focus_main_widget): Implemented. * gui/dialogs/task-page.c (task_page_focus_main_widget): Implemented. svn path=/trunk/; revision=10784
* Add new columns for information specification (meeting_page_destroy): saveJP Rosevear2001-07-044-15/+64
| | | | | | | | | | | | | | | | | | | 2001-07-03 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c: Add new columns for information specification (meeting_page_destroy): save the table state (build_etable): load new table state * gui/dialogs/task-editor.c (task_editor_destroy): unref pages * gui/dialogs/event-editor.c (event_editor_destroy): unref pages * gui/dialogs/comp-editor.c (setup_widgets): kill warning (comp_editor_append_page): ref page passed in (close_dialog): unref pages svn path=/trunk/; revision=10777
* fix warning, and added some debug messages.Damon Chaplin2001-07-031-1/+5
| | | | | | | | | | | | | 2001-07-03 Damon Chaplin <damon@ximian.com> * gui/e-day-view.c (query_obj_updated_cb): fix warning, and added some debug messages. * gui/dialogs/comp-editor-util.c (write_label_piece): * gui/e-day-view-top-item.c (e_day_view_top_item_draw): call mktime() to set the weekday, though this is a temporary fix. svn path=/trunk/; revision=10737
* added virtual method to get a VTIMEZONE component given a TZID. We needDamon Chaplin2001-07-031-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-03 Damon Chaplin <damon@ximian.com> * pcs/cal-backend.[hc]: added virtual method to get a VTIMEZONE component given a TZID. We need this to resolve TZIDs when expanding an event using cal_recur_generate_instances() in query.c. * pcs/cal-backend-file.c (cal_backend_file_get_timezone): implemented virtual method. (cal_backend_file_update_object): fixed bug, kind -> child_kind. * pcs/query.c (func_occur_in_time_range): use the virtual method for resolving TZIDs. The other way didn't work anyway, as we didn't have the entire VCALENDAR with VTIMEZONEs in it. * gui/dialogs/recurrence-page.c (init_widgets): (make_ending_until_special): moved the call to e_date_edit_set_get_time_callback() from init_widgets to make_ending_until_special(), since that is where the widget gets created. * gui/e-timezone-entry.c (e_timezone_entry_set_timezone): handle zone being NULL. svn path=/trunk/; revision=10732
* New files with the alarm options dialog; this configures theFederico Mena Quintero2001-07-036-4/+1051
| | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/alarm-options.[ch]: New files with the alarm options dialog; this configures the repeat/duration properties and the options specific to each alarm action type. * gui/dialogs/alarm-page.c (AlarmPagePrivate): Added the alarm options button. Also, keep an alarm structure which we are editing and an alarm options dialog. (init_widgets): Connect to the options button. (add_clicked_cb): Clone the component we are editing instead of creating a new one so that we preserve the data from the alarm options dialog. (button_options_clicked_cb): Pop up the alarm options dialog. * cal-util/cal-component.c (cal_component_alarm_new): Doh, initialize the other fields in the new alarm. svn path=/trunk/; revision=10731
* cal-client/cal-client.[hc] cal-util/cal-component.cDamon Chaplin2001-07-0314-319/+809
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* publish free/busy information for the currently viewed time rangeJP Rosevear2001-07-031-8/+91
| | | | | | | | | 2001-07-02 JP Rosevear <jpr@ximian.com> * gui/calendar-commands.c (publish_freebusy_cmd): publish free/busy information for the currently viewed time range svn path=/trunk/; revision=10723
* Support for repeat/duration properties in alarm components.Federico Mena Quintero2001-07-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Federico Mena Quintero <federico@ximian.com> Support for repeat/duration properties in alarm components. * cal-util/cal-component.h (CalAlarmRepeat): New structure that pairs the repeat/duration values of an alarm component, which must be set both together or not set at all. * cal-util/cal-component.c (CalComponentAlarm): Added fields for the repeat and duration properties. (scan_alarm_property): Scan the DURATION and REPEAT properties. (make_alarm): Nullify/initialize all the fields in the alarm. (cal_component_alarm_get_repeat): New function. (cal_component_alarm_set_repeat): New function. * gui/dialogs/alarm-page.glade: Changed the label of display alarms from "Show a dialog" to "Display a message". svn path=/trunk/; revision=10706
* fill in delegated from fieldJP Rosevear2001-07-032-5/+6
| | | | | | | | | 2001-07-02 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-details-page.c (task_details_page_fill_widgets): fill in delegated from field svn path=/trunk/; revision=10701
* use the new self-contained e_categories_config_open_dialog_for_entry()Rodrigo Moya2001-07-032-36/+3
| | | | | | | | | | | | | | | | | 2001-07-02 Rodrigo Moya <rodrigo@ximian.com> * gui/dialogs/task-page.c (categories_clicked_cb): * gui/dialogs/event-page.c (categories_clicked_cb): use the new self-contained e_categories_config_open_dialog_for_entry() function * gui/e-week-view-event-item.c (e_week_view_item_draw_icons): * gui/e-day-view-top-item.c (e_day_view_reshape_long_event): (e_day_view_reshape_day_event): ditto * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): use e_categories_config_get_icon_for() to retrieve the icon associated with each category svn path=/trunk/; revision=10699
* implementJP Rosevear2001-07-036-29/+354
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-02 JP Rosevear <jpr@ximian.com> * gui/e-itip-control.c (send_freebusy): implement * cal-util/cal-component.c (set_attendee_list): add the delto property rather than the delfrom property twice * gui/dialogs/task-editor.c (task_editor_edit_comp): show delegation info if appropriate (delegate_task_cmd): delegate command (cancel_task_cmd): cancel command (refresh_task_cmd): refresh command * gui/dialogs/task-details-page.c: Load new widgets (task_details_page_show_delegation): show/hide delegation info widgets * gui/dialogs/task-details-page.h: new proto * gui/dialogs/event-editor.c (event_editor_edit_comp): free attendee list when finished * gui/dialogs/comp-editor.c (setup_widgets): explicitly show the widgets, update pixmaps after the verbs have been added (comp_editor_focus): don't do a show all svn path=/trunk/; revision=10697
* Fixes bug #1406.Federico Mena Quintero2001-07-012-418/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-30 Federico Mena Quintero <federico@ximian.com> Fixes bug #1406. * gui/calendar-config.c (config_read): Handle the options for the task list colors. (calendar_config_write): Ditto. (calendar_config_get_tasks_due_today_color): New function. (calendar_config_set_tasks_due_today_color): New function. (calendar_config_get_tasks_overdue_color): New function. (calendar_config_set_tasks_overdue_color): New function. (calendar_config_configure_e_calendar_table): Use e_table_model_changed() for the colors. * gui/dialogs/cal-prefs-dialog.glade: Updated the options for the task list and alarms. * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_show_config): Update the task list settings. (cal_prefs_dialog_update_config): Ditto. * gui/calendar-model.c (get_color): Deal with tasks for today as well as overdue tasks. Make it cleaner, even though we have to duplicate a chunk of is_overdue(). * gui/calendar-commands.c (preferences_cmd): Renamed from properties_cmd(). svn path=/trunk/; revision=10648
* Renamed the occur field to occur_start; added an occur_end field. This wayFederico Mena Quintero2001-06-276-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-26 Federico Mena Quintero <federico@ximian.com> * idl/evolution-calendar.idl (CalAlarmInstance): Renamed the occur field to occur_start; added an occur_end field. This way we can present the complete times for the occurrence from the server. * cal-util/cal-component.h (CalAlarmInstance): Likewise. * pcs/cal-backend-file.c (add_alarm_occurrences_cb): Fill the new fields appropriately. (generate_absolute_triggers): Likewise; we use -1 in case the component has no DTSTART or DTEND because there are no meaningful occurrence dates here. (fill_alarm_instances_seq): Fill in the new fields. * cal-client/cal-client.c (build_alarm_instance_list): Likewise. * gui/alarm-notify/alarm-notify-dialog.c (alarm_notify_dialog): Take in both the occur_start and occur_end times. * gui/goto.c (goto_dialog): Free the dlg structure on the bail-out cases. * gui/dialogs/event-page.c (get_widgets): Do not assert if we cannot find the main widget; just return FALSE. * gui/dialogs/alarm-page.c (get_widgets): Likewise. * gui/dialogs/task-page.c (get_widgets): Likewise. * gui/dialogs/task-details-page.c (get_widgets): Likewise. * gui/dialogs/meeting-page.c (get_widgets): Likewise. svn path=/trunk/; revision=10517
* Converted to use BonoboXObject.Federico Mena Quintero2001-06-254-507/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-24 Federico Mena Quintero <federico@ximian.com> * gui/alarm-notify/alarm-notify.c: Converted to use BonoboXObject. * gui/gnome-cal.c (gnome_calendar_open): Ask the alarm notification service to add the calendar and tasks URIs. (add_alarms): New function. * gui/alarm-notify/notify-main.c (main): Doh, fixed typo in the OAFIID. (main): Initialize and shut down gnome-vfs. * gui/Makefile.am (IDLS): Added evolution-calendar.idl, sigh. (evolution_calendar_SOURCES): Added the files generated from the IDL. * gui/alarm-notify/alarm-queue.c (alarm_trigger_cb): New function used when an alarm is triggered. * gui/dialogs/Makefile.am: Removed the alarm-notify-dialog files; they are now in gui/alarm-notify. * gui/alarm-notify/Makefile.am: Added the alarm-notify-dialog files. * pcs/cal.c (cal_forget_password): This was incorrectly named cal_client_forget_password(); renamed it. * gui/main.c (main): Initialize and shut down gnome-vfs. svn path=/trunk/; revision=10453
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-2312-13/+13
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* update to new callJP Rosevear2001-06-221-30/+0
| | | | | | | | | | | | | | | | 2001-06-21 JP Rosevear <jpr@ximian.com> * gui/main.c (main): update to new call * gui/e-itip-control.[hc]: break the widget bits out on their own into a proper object, basic stuff seems to be working again * gui/itip-control-factory.c: put the control specific bits here from e-itip-control.c * gui/itip-control-factory.h: new header svn path=/trunk/; revision=10389
* add include pathJP Rosevear2001-06-221-0/+2
| | | | | | | | 2001-06-21 JP Rosevear <jpr@ximian.com> * gui/dialogs/Makefile.am (gladedir): add include path svn path=/trunk/; revision=10384
* remove buttons and use evolution's standard ui configJP Rosevear2001-06-221-21/+15
| | | | | | | | | | | 2001-06-21 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.c (setup_widgets): remove buttons and use evolution's standard ui config * gui/print.c (print_comp_item): print description text svn path=/trunk/; revision=10383
* print menu command (print_preview_cmd): ditto for print previewJP Rosevear2001-06-215-3/+252
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-20 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor.c (print_cmd): print menu command (print_preview_cmd): ditto for print preview (print_setup_cmd): ditto for print setup (comp_editor_set_cal_client): listen for updated and removed signals (obj_updated_cb): if the item changes else where, query the user for the course of action (obj_removed_cb): ditto for removal * gui/print.c (print_setup): rudimentary page setup support (print_comp): rudimentary individual event/task printing support * gui/print.h: new protos * gui/dialogs/changed-comp.[hc]: dialog to query the user about what to do when a item is changed elsewhere * gui/dialogs/Makefile.am: build new files * gui/dialogs/send-comp.c (send_component_dialog): remove useless assignment svn path=/trunk/; revision=10338
* moved the function to check for a default timezone to calendar-config.c,Damon Chaplin2001-06-201-1/+1
| | | | | | | | | | | | | | | 2001-06-20 Damon Chaplin <damon@ximian.com> * gui/calendar-config.[hc]: * gui/gnome-cal.[hc]: * gui/tasks-control.c (tasks_control_activate): * gui/calendar-commands.c (calendar_control_activate): moved the function to check for a default timezone to calendar-config.c, and also used it in the tasks control. * gui/dialogs/e-timezone-dialog.h: #include <gtk/gtkwidget.h> fix. svn path=/trunk/; revision=10325
* added code to show the timezone dialog if the user hasn't set a defaultDamon Chaplin2001-06-202-2/+2
| | | | | | | | | | | | | | 2001-06-20 Damon Chaplin <damon@ximian.com> * gui/calendar-commands.c (calendar_control_activate): * gui/gnome-cal.[hc]: added code to show the timezone dialog if the user hasn't set a default timezone yet. * gui/dialogs/e-timezone-dialog.c (e_timezone_dialog_add_timezones): set the "None" item string before adding it to the combo, to stop the combo putting "None" in the entry initially. svn path=/trunk/; revision=10324
* if the timezones of the start and end of the event are the same, then ifDamon Chaplin2001-06-201-0/+56
| | | | | | | | | | | 2001-06-19 Damon Chaplin <damon@ximian.com> * gui/dialogs/event-page.c: if the timezones of the start and end of the event are the same, then if the start timezone is changed we change the end timezone as well, since that is what most users will want. svn path=/trunk/; revision=10323
* added a 'Time zone' setting. Also rearranged a little, adding a newDamon Chaplin2001-06-2011-302/+327
| | | | | | | | | | | | | | | | | | | 2001-06-19 Damon Chaplin <damon@ximian.com> * gui/dialogs/cal-prefs-dialog.c: added a 'Time zone' setting. Also rearranged a little, adding a new 'General' page, since we had too many settings on the 'Calendar' page. * gui/e-timezone-entry.[hc]: * gui/dialogs/e-timezone-dialog.[hc]: * gui/dialogs/comp-editor.c: * gui/dialogs/comp-editor-page.[hc]: * gui/dialogs/event-page.c: * gui/dialogs/task-details-page.c: * gui/dialogs/task-page.c: removed CalClient stuff. The timezone dialog now uses the timezone data directly from the client's libical library. svn path=/trunk/; revision=10321
* add ui (forward_cmd): implement forward commandJP Rosevear2001-06-202-10/+30
| | | | | | | | | | | | 2001-06-19 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-editor.c (task_editor_init): add ui (forward_cmd): implement forward command * gui/dialogs/comp-editor.c (save_as_ok): bug fix, seems to work now svn path=/trunk/; revision=10315
* itip/imip send dialogJP Rosevear2001-06-2013-324/+1439
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-19 JP Rosevear <jpr@ximian.com> * gui/dialogs/send-comp.c: itip/imip send dialog * gui/dialogs/send-comp.h: new proto * gui/dialogs/recurrence-page.c (recurrence_page_set_dates): only use the weekday picker if visible * gui/dialogs/meeting-page.c: just show the meeting list * gui/dialogs/event-editor.c (event_editor_edit_comp): remove the meeting page if no attendees (schedule_meeting_cmd): schedule a meeting menu item (refresh_meeting_cmd): refresh meeting request menu item (cancel_meeting_cmd): ditto for cancel (forward_cmd): send as attachment * gui/dialogs/comp-editor.c (comp_editor_remove_page): remove page from dialog (comp_editor_show_page): show a given page (comp_editor_get_current_comp): return a cal component representing the current widget state (comp_editor_save_comp): save the cal component (comp_editor_delete_comp): delete the cal component (comp_editor_send_comp): send the cal component (comp_editor_merge_ui): merge xml in to the bonobo gui (setup_widgets): use a bonobo window instead of a gtk window, add menus again (save_as_cmd): save to file on disk - still broken (save_close_cmd): close menu command (save_close_cmd): save and close menu command * gui/dialogs/comp-editor.h: new protos * gui/dialogs/cancel-comp.c (cancel_component_dialog): itip/imip cancellation dialog * gui/dialogs/cancel-comp.h: new proto * gui/dialogs/Makefile.am: build new files * gui/dialogs/comp-editor-page.c (comp_editor_page_notify_needs_send): emit needs_send signal * gui/dialogs/comp-editor-page.h: new signal protos * gui/itip-utils.c (itip_send_comp): new function to send cal components * gui/itip-utils.h: new proto * gui/e-itip-control.c (pstream_load): trim using cal-component wrapper stuff (accept_button_clicked_cb): use itip_send_comp (tentative_button_clicked_cb): ditto (decline_button_clicked_cb): ditto * gui/Makefile.am: compile select name idl stuff * cal-util/cal-component.c (cal_component_get_organizer): get the organizer (cal_component_set_organizer): set the organizer (cal_component_get_recurid): get the recurrence id (cal_component_set_recurid): set the recurrence id (set_attendee_list): actually set the attendee list (get_attendee_list): build the attendee list * cal-util/cal-component.h: new protos svn path=/trunk/; revision=10299
* Sync - FedericoFederico Mena Quintero2001-06-201-1/+1
| | | | svn path=/trunk/; revision=10293
* added timezone fields. Also moved the 'All Day' flag into an alignment soDamon Chaplin2001-06-1910-45/+387
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-19 Damon Chaplin <damon@ximian.com> * gui/dialogs/task-details-page.glade: * gui/dialogs/task-page.glade: * gui/dialogs/event-page.glade: added timezone fields. Also moved the 'All Day' flag into an alignment so it doesn't mess up the height of the other widgets. * gui/dialogs/task-details-page.c: * gui/dialogs/task-page.c: * gui/dialogs/event-page.c: added code to handle the timezone fields. This still needs to be hooked up when the libical code is finished. * gui/dialogs/e-timezone-dialog.c (on_map_leave): new function to clear the preview label and turn off the highlighted point on the map when you move the mouse outside it. (find_selected_point): new function to try to find the point corresponding to the text in the combo. (on_combo_changed): call the above function to update the selected point. (on_map_leave): turn off the preview point & label when the mouse leaves the map. (e_timezone_dialog_set_cal_client): changed it so that selecting "None" clears the entry. * gui/dialogs/comp-editor-page.[hc]: added set_cal_client() virtual method since some pages need to access the CalClient to get timezone information. Also added comp_editor_page_set_cal_client() to call the virtual method. * gui/dialogs/comp-editor.c (comp_editor_set_cal_client): called comp_editor_page_set_cal_client() on each page. * gui/calendar-config.c: added functions to get & set the timezone. svn path=/trunk/; revision=10285
* new dialog for setting the time zone.Damon Chaplin2001-06-144-0/+865
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* remove unnecessary spaceJP Rosevear2001-06-142-1/+3
| | | | | | | | | | | | 2001-06-13 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor-util.c (comp_editor_date_label): remove unnecessary space * gui/dialogs/task-page.c (task_page_set_summary): indicate we are updating, Fixes #3307 svn path=/trunk/; revision=10210
* set the completed time in the date editor if appropriateJP Rosevear2001-06-142-5/+17
| | | | | | | | | | | | | | | | | | | | 001-06-13 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-details-page.c (task_details_page_set_dates): set the completed time in the date editor if appropriate * gui/dialogs/task-page.c (task_page_set_dates): if we are updating, return (complete_date_changed): don't returns if we are updating - the guards are done in the calling function (status_changed): indicate when we are updating and when we are finished, round the completion time to the nearest minute (percent_complete_changed): indicate when are updating and when we are finished (percent_complete_changed): notify of the date change after the option menu is updated svn path=/trunk/; revision=10208
* Sync from laptop.JP Rosevear2001-06-073-0/+735
| | | | svn path=/trunk/; revision=10134
* update the blocked/selected days if the starting day of the appointmentJP Rosevear2001-06-052-1/+15
| | | | | | | | | | | | 2001-06-04 JP Rosevear <jpr@ximian.com> * gui/dialogs/recurrence-page.c (recurrence_page_set_dates): update the blocked/selected days if the starting day of the appointment changes, fixes #2188 * gui/dialogs/task-details-page.h: tidy proto svn path=/trunk/; revision=10113
* use new funcJP Rosevear2001-06-026-12/+33
| | | | | | | | | | | | | | | | | | | | | 2001-06-01 JP Rosevear <jpr@ximian.com> * gui/dialogs/event-page.c (make_date_edit): use new func * gui/dialogs/task-details-page.c (task_details_page_create_date_edit): ditto * gui/dialogs/recurrence-page.c (make_ending_until_special): ditto * gui/dialogs/comp-editor-util.c (comp_editor_new_date_edit): rename date_edit_new function * gui/dialogs/comp-editor-util.h: new proto * gui/dialogs/task-page.c (task_page_set_summary): no longer any need to block/unblock the handler (task_page_create_date_edit): use new func svn path=/trunk/; revision=10093
* renamed from editor-page for consistency, more complete implementationJP Rosevear2001-06-0229-2927/+3570
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-01 JP Rosevear <jpr@ximian.com> * gui/dialogs/comp-editor-page.[hc]: renamed from editor-page for consistency, more complete implementation * gui/dialogs/comp-editor.[hc]: More complete implementation * gui/dialogs/*-page.*: The various pages needed to construct the event and task dialogs * gui/dialogs/comp-editor-util.[hc]: useful utility functions for the component editor pages to use * gui/dialogs/Makefile.am: Build and install new files * gui/event-editor*: Remove, obsoleted by the new comp-editor stuff * gui/dialogs/task-editor-dialog.glade: ditto * gui/e-calendar-table.c (open_task): update to use comp editor stuff * gui/e-tasks.c (e_tasks_new_task): ditto * gui/gnome-cal.c (gnome_calendar_edit_object): ditto * gui/Makefile.am: don't build non-existent files nor try to install them svn path=/trunk/; revision=10088
* For JPR - FedericoFederico Mena Quintero2001-05-312-0/+256
| | | | svn path=/trunk/; revision=10053
* Finished porting from the old event-editor.c. Made it store a clone of theFederico Mena Quintero2001-05-247-29/+1213
| | | | | | | | | | | | | | | | | | | 2001-05-23 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/recurrence-page.c: Finished porting from the old event-editor.c. Made it store a clone of the component for when we need to expand the recurrence set. 2001-05-22 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/event-page.c (event_page_get_dates): New function. * gui/dialogs/editor-page.c (editor_page_set_dates): Renamed from editor_page_set_dtstart(); now sets both DTSTART and DTEND. * gui/dialogs/alarm-page.c (alarm_page_set_dates): Ahem, it is a svn path=/trunk/; revision=9953
* Fix bug #2829.Federico Mena Quintero2001-05-192-51/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-05-18 Federico Mena Quintero <federico@ximian.com> Fix bug #2829. * gui/dialogs/delete-comp.c (delete_component_dialog): Allow the caller to specify whether just one or many components are to be deleted. * gui/e-calendar-table.c (tasks_popup_one): Popup menu definition for when one and only one task is selected. (tasks_popup_many): Likewise, for more than one task. (e_calendar_table_on_right_click): Do not create a structure for the closure data; we can simply pass the cal_table. Use a different menu depending on the number of selected tasks. (mark_as_complete_cb): Renamed; now iterates over the selected rows. (delete_selected_components): New function to delete all the selected components. (delete_cb): Adjusted for delete_component_dialog(). (open_task): New function, simply open a CalComponent in the task editor. (open_task_by_row): Renamed; use open_task(). * gui/e-week-view.c (e_week_view_on_delete_appointment): Updated for delete_component_dialog(). * gui/e-day-view.c (e_day_view_on_delete_appointment): Likewise. svn path=/trunk/; revision=9886
* Split the event and task editors into different objects for the separateFederico Mena Quintero2001-05-1714-550/+5096
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-05-16 Federico Mena Quintero <federico@ximian.com> Split the event and task editors into different objects for the separate pages; this way they can be shared by both editors. * gui/dialogs/editor-page.[ch]: New abstract class for a page in a calendar component editor. * gui/dialogs/event-page.[ch]: Main page of an event editor. * gui/dialogs/alarm-page.[ch]: Alarm page of a calendar component editor. * gui/dialogs/recurrence-page.[ch]: Recurrence page of a calendar component editor. * gui/dialogs/event-page.c (event_page_fill_widgets): Eeek, this was missing a bunch of break statements. (event_page_fill_component): Use a temporary variable rather than allocating a struct icaltimetype. * gui/dialogs/alarm-page.c (get_alarm_string): Do not use fixed-size buffers. (alarm_page_fill_widgets): Use cal_obj_uid_list_free(). (append_reminder): Now the list stores the plain CalComponentAlarm structures in the row data. We do *NOT* want to be frobbing the component's data directly. Rather, we clone the alarms from the component and maintain them on our own. (alarm_page_fill_component): Clone the alarms before adding them to the component so that we maintain the invariant that the alarm structures in the list did *not* come from the component. * cal-util/cal-component.c (cal_component_add_alarm): Added documentation. (cal_component_remove_alarm): Added documentation. (cal_component_remove_alarm): Do a lookup in our hash table of alarms instead of scanning the whole component. (CalComponentAlarm): Removed the `parent' field, since it was unused. (cal_component_free_alarm_uids): Removed function, since cal_component_get_alarm_uids() is documented so that the user will know that he must use cal_obj_uid_list_free(). (cal_component_alarm_clone): New function. svn path=/trunk/; revision=9861
* use define from widgets/misc/e-filter-bar.h instead of own enumeration andGediminas Paulauskas2001-05-081-27/+23
| | | | | | | | | | | | | | | | | | | | | | | | 2001-05-07 Gediminas Paulauskas <menesis@delfi.lt> * gui/component/addressbook.c: use define from widgets/misc/e-filter-bar.h instead of own enumeration and search menu names. * gui/component/Makefile.am, gui/component/select-names/Makefile.am: removed EVOLUTION_VERSION. 2001-05-07 Gediminas Paulauskas <menesis@delfi.lt> * gui/event-editor.c (make_title_from_comp): conversion summary from utf8 here, use translated strings as is. (set_title_from_comp): reflect this, simplify. * gui/dialogs/task-editor.c: updated copies of above functions here. * gui/gnome-cal.c: use defines from widgets/misc/e-filter-bar.h for consistency in "Show all". svn path=/trunk/; revision=9693
* Merge build fix from the branch:Ettore Perazzoli2001-04-271-0/+1
| | | | | | | Add `$(EXTRA_GNOME_CFLAGS)' to the include path list for building the dialogs (we use GAL there). svn path=/trunk/; revision=9598
* Hot builddir != srcdir loving action.Ettore Perazzoli2001-04-191-0/+2
| | | | svn path=/trunk/; revision=9444
* Connect to the "changed" signal of the categories entry so that they willFederico Mena Quintero2001-04-181-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | 2001-04-17 Federico Mena Quintero <federico@ximian.com> * gui/event-editor.c (init_widgets): Connect to the "changed" signal of the categories entry so that they will be applied correctly. (EventEditorPrivate): Added fields for the contacts button and entry. (init_widgets): Disable the contacts widgets as we do not support them yet. (get_widgets): Get the contacts widgets. * gui/dialogs/task-editor.c (get_widgets): Get the contacts button, which was missing. (init_widgets): Disable the contacts widgets as we do not support them yet. * pcs/query.c (matches_text_list): Use e_utf8_strstrcasedecomp() instead of plain e_utf8_strstrcase(). (matches_summary): Likewise. svn path=/trunk/; revision=9436
* Display fixes, thanks to Kjartan for finding these.Gediminas Paulauskas2001-04-111-18/+13
| | | | | | | | | | | | | | 2001-04-11 Gediminas Paulauskas <menesis@delfi.lt> Display fixes, thanks to Kjartan for finding these. * gui/event-editor.c: use simple (not e_utf8_) gtk_clist_append for strings which are never in utf-8. * dialogs/delete-comp.c (delete_component_dialog): convert only summary from utf-8 to gtk charset. Translated values are in correct craset already. svn path=/trunk/; revision=9219
* Here goes my additional simple include fixes.Gediminas Paulauskas2001-04-051-0/+2
| | | | svn path=/trunk/; revision=9191
* Plug leak.Federico Mena Quintero2001-04-031-0/+8
| | | | | | | | | | | | | | | | | 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
* Replace includes of <gnome.h>, <bonobo.h> and <gtk/gtk.h> with the neededKjartan Maraas2001-03-261-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-26 Kjartan Maraas <kmaraas@gnome.org> * cal-client/client-test.c: Replace includes of <gnome.h>, <bonobo.h> and <gtk/gtk.h> with the needed headers to speed up compile. * cal-util/test-recur.c: Same here for <gtk/gtk.h> * gui/calendar-commands.c: Replace <bonobo.h> and remove <libgnorba/gnorba.h> * gui/calendar-summary.c: Replace <gnome.h> and <bonobo.h> * gui/calendar-summary.h: Added <bonobo/bonobo-generic-factory.h> * gui/component-factory.c: Remove <bonobo.h> * gui/control-factory.c: Replace <bonobo.h> * gui/e-calendar-table.c: Remove <gnome.h> * gui/e-itip-control.c: Replace <gnome.h> and <bonobo.h> * gui/e-meeting-edit.c: Replace <bonobo.h> * gui/e-tasks.c: Replace <gnome.h> * gui/e-tasks.h: Replace <bonobo.h> * gui/gnome-cal.h: Remove <bonobo.h> * gui/main.c: Replace <bonobo.h> and <glade/glade.h> * gui/tasks-control-factory.c: Replace <bonobo.h> * gui/tasks-control.c: Replace <gnome.h> and <bonobo.h> * gui/weekday-picker.c: Add <string.h> and <libgnome/gnome-defs.h> * gui/alarm-notify/client-main.c: Remove <gnome.h> and <bonobo.h> * gui/alarm-notify/notify-main.c: Replace <gnome.h> and <bonobo.h> * gui/dialogs/alarm-notify-dialog.c: Replace <gnome.h> * pcs/cal-backend.c: Replace <gtk/gtk.h> svn path=/trunk/; revision=8937
* keep list of all Tasks folders so we can update the preference settingsDamon Chaplin2001-03-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-05 Damon Chaplin <damon@ximian.com> * gui/e-tasks.c: keep list of all Tasks folders so we can update the preference settings when necessary. * gui/gnome-cal.c: configure the TaskPad according to the settings. * gui/e-calendar-table.c: use ECellCombo and ECellDateEdit for fields, so the tasks folders is almost usable now. * gui/calendar-model.c: added support for the Status property. * gui/calendar-config.[hc]: added convenience functions to setup ECalendarTable and ECellDateEdit objects. * gui/calendar-commands.c: connected to "destroy" signal of calendars so we can remove them from all_calendars list. * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_update_config): call e_tasks_update_all_config_settings() to update all the settings in the Tasks folders as well. * cal-util/cal-component.h: added CAL_COMPONENT_FIELD_STATUS. * cal-util/cal-component.c (cal_component_get_transparency): fixed calls to strcasecmp so they check for '== 0'. Applied patch from Miguel... 2001-02-27 Miguel de Icaza <miguel@ximian.com> * gui/e-day-view.c (e_day_view_on_event_right_click): Reorganize the menus to have entries always in a consistent fashion, as reported to the genepool mailing list. (e_day_view_on_event_right_click): Added a FIXME comment to the FIXME comment without a FIXME. Now we use e_popup_menu. This allows us to hide/show items on demand, and to sensitize/de-sensitize items depending on their state. This will also let us add icon support (when we get nice icons for this) * gui/e-week-view.c (e_week_view_show_popup_menu): Ditto. The files popup-menu.c and popup-menu.h can now be removed. svn path=/trunk/; revision=8549
* Getting almost full and proper use of xml-i18n-tools.Gediminas Paulauskas2001-02-118-111/+1
| | | | | | | | | | | | | | | | | Removed all files where glade writes strings. Changed Makefile.am to not distribute them. Changed all glade files to not write strings to those files. Removed *.desktop and evolution.keys files, because they are generated. Added them to .cvsignore Added *.desktop.in evolution.keys.in files without transalted strings. Added all existing entries from desktop files to po files. Changed Makefile.am to distribute only .in files, and merge translations into desktop files. Removed obsolete files from po/ dir svn path=/trunk/; revision=8164
* Oops, remove old widgetJP Rosevear2001-02-093-80/+4
| | | | | | | | 2001-02-08 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-editor-dialog.glade: Oops, remove old widget svn path=/trunk/; revision=8133
* fill in new classification stuff properly (get_widgets): load new class.JP Rosevear2001-02-094-540/+662
| | | | | | | | | | | | | | | | | | | | | | | 2001-02-08 JP Rosevear <jpr@ximian.com> * gui/dialogs/task-editor.c (fill_widgets): fill in new classification stuff properly (get_widgets): load new class. widgets (init_widgets): if the class. widgets change, mark the dialog dirty (dialog_to_comp_object): set the comp class. from the new widgets * gui/dialogs/task-editor-dialog.glade: Make more consistent, fixing bugs 1247 and 1249 * gui/dialogs/task-editor.c (fill_widgets): * gui/event-editor-dialog.glade: Gui tidying * gui/event-editor.c: Remove old alarm cruft * cal-util/cal-component.c (cal_component_set_url): Don't try and write an empty string as a property svn path=/trunk/; revision=8132
* Pull up from 0.9 branchJP Rosevear2001-02-094-1208/+1096
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-08 JP Rosevear <jpr@ximian.com> * gui/event-editor.c: Remove assorted menu/bonobo stuff * gui/dialogs/task-editor.c: Remove assorted menu/bonobo stuff (task_editor_construct): no longer suck out the glade contents into a bonobo win, listen for apply and close signals (tedit_apply_event_cb): listen for apply signal and save object (tedit_close_event_cb): listen for close signal and prompt to save if need be (task_editor_focus): new function to bring the dialog to the front * gui/dialogs/task-editor.h: new prototype * gui/e-meeting-edit.c (schedule_button_clicked_cb): no need to update widgets in the event editor since the event editor won't be open (e_meeting_editor_new): don't need the event editor reference any more * gui/e-meeting-edit.h: Change prototype * gui/e-day-view.c (e_day_view_on_event_right_click): Make schedule meeting a new contextual menu item (e_day_view_on_schedule_meet): new routine to schedule a meeting from the contextual menu * gui/e-calendar-table.c (e_calendar_table_open_task): Call task_editor_focus * gui/event-editor-dialog.glade: Update to be a property box * gui/dialogs/task-editor-dialog.glade: Update to be a property box svn path=/trunk/; revision=8115
* Pulling stuff up from the branchJP Rosevear2001-02-073-19/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-06 JP Rosevear <jpr@ximian.com> * cal-util/cal-component.c (cal_component_set_categories): If the categories string is empty, remove the property (get_period_list): Fixes from clahey to handle the new rdate format in libical (set_period_list): ditto 2001-02-06 JP Rosevear <jpr@ximian.com> * gui/event-editor.c (fill_reminder_widgets): Match new append_alarm signature (reminder_to_comp_object): only add alarms tagged as new, no longer delete all alarms first (append_reminder): the row data is now of type ReminderData, rename from append_alarm (reminder_add_cb): math new append_alarm signature (reminder_delete_cb): if the alarm existed before the dialog was loaded, delete it immediately from the cal component 2001-02-06 JP Rosevear <jpr@ximian.com> * gui/event-editor-dialog.glade: Gui tweaks for bugs 1248 and 1246 * gui/dialogs/task-editor-dialog.glade: ditto 2001-02-06 JP Rosevear <jpr@ximian.com> * gui/e-week-view.c (e_week_view_show_popup_menu): Make the menus more consistent * gui/e-day-view.c (e_day_view_on_event_right_click): ditto * gui/e-calendar-table.c: ditto svn path=/trunk/; revision=8037
* gnome_dialog_grab_focus() on the Yes button. Fixes bug #1242.Federico Mena Quintero2001-02-041-3/+5
| | | | | | | | | 2001-02-03 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/save-comp.c (save_component_dialog): gnome_dialog_grab_focus() on the Yes button. Fixes bug #1242. svn path=/trunk/; revision=7947
* <gnome.h> trimming to reduce compilation time. Likewise. Likewise.Federico Mena Quintero2001-01-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-29 Federico Mena Quintero <federico@ximian.com> * gui/calendar-config.c: <gnome.h> trimming to reduce compilation time. * gui/calendar-summary.c: Likewise. * gui/e-calendar-table.c: Likewise. * gui/e-day-view-time-item.c: Likewise. * gui/e-day-view.c: Likewise. * gui/e-itip-control.c: Likewise. * gui/e-meeting-edit.c: Likewise. * gui/e-meeting-edit.h: Likewise. * gui/e-tasks.c: Likewise. * gui/e-week-view.c: Likewise. * gui/event-editor.c: Likewise. * gui/gnome-cal.c: Likewise. * gui/goto.c: Likewise. * gui/itip-utils.h: Likewise. * gui/main.c: Likewise. * gui/popup-menu.c: Likewise. * gui/print.c: Likewise. * gui/tasks-control-factory.c: Likewise. * gui/tasks-control.c: Likewise. * gui/tasks-migrate.c: Likewise. svn path=/trunk/; revision=7896
* <gnome.h> trimming to reduce compilation time. Ditto. Ditto. Ditto. Ditto.Federico Mena Quintero2001-01-294-5/+13
| | | | | | | | | | | | | | 2001-01-25 Federico Mena Quintero <federico@ximian.com> * cal-util/timeutil.c: <gnome.h> trimming to reduce compilation time. * gui/dialogs/task-editor.c: Ditto. * gui/dialogs/cal-prefs-dialog.c: Ditto. * gui/dialogs/save-comp.c: Ditto. * gui/dialogs/delete-comp.c: Ditto. * gui/calendar-commands.c: Ditto. * gui/calendar-model.c: Ditto. svn path=/trunk/; revision=7880
* libical import cleanupJP Rosevear2001-01-241-3/+3
| | | | | | | | 2001-01-23 JP Rosevear <jpr@ximian.com> * libical import cleanup svn path=/trunk/; revision=7753
* compile new stuffJP Rosevear2001-01-234-11/+89
| | | | | | | | | | | | | | | | | | 2001-01-22 JP Rosevear <jpr@ximian.com> * gui/dialogs/Makefile.am: compile new stuff * gui/dialogs/task-editor.c (prompt_to_save_changes): use new standard dialog * gui/event-editor.c (prompt_to_save_changes): ditto * gui/dialogs/save-comp.h: new header * gui/dialogs/save-comp.c (save_component_dialog): shows the save dialog svn path=/trunk/; revision=7733
* Fix bug #1250; now we present a confirmation dialog before deleting theFederico Mena Quintero2001-01-221-7/+11
| | | | | | | | | 2001-01-21 Federico Mena Quintero <federico@ximian.com> * gui/dialogs/task-editor.c (file_delete_cb): Fix bug #1250; now we present a confirmation dialog before deleting the component. svn path=/trunk/; revision=7684
* Ximianified email addresses and copyrights.Federico Mena Quintero2001-01-178-30/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* moved #include <cal-client/cal-client.h> to the .h file.Damon Chaplin2001-01-145-15/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-14 Damon Chaplin <damon@helixcode.com> * gui/dialogs/task-editor.[hc]: moved #include <cal-client/cal-client.h> to the .h file. * gui/e-tasks.c: load & save the Tasks folders' ETable layout. Added an option menu to filter tasks by category. * gui/gnome-cal.c: use the "Tasks" folder for the TaskPad. (We may make the actual tasks folder shown a per-calendar option.) * gui/tasks-control.c (tasks_control_new_task_cmd): added support for the New Task icon on the toolbar. * gui/e-calendar-table.[hc]: we now use an ETableSubsetVariable model to filter the tasks by a category. And tidied up a little. * gui/calendar-model.[hc]: added way to get all the categories used by the tasks, so we can show an option menu of them. Also a signal which is emitted when they are changed. Also allows a default category to be set, which is used to initialize the 'click-to-add' row. Also made sure the initialize_value()/get_value() functions don't return NULL since that can cause a SEGV. * gui/e-week-view.c: * gui/e-day-view.c: set the "fill_color_rgba" arg of the EText items to black since it doesn't seem to set up a default color properly. Hopefully this fixes the bug on Solaris where the items appear with strange colors. * gui/widget-util.c (date_edit_new): use the calendar_config function to set most of the options. It wasn't setting the 12/24 hour option before. * gui/dialogs/task-editor-dialog.glade: added "Undefined" priority. svn path=/trunk/; revision=7483
* get categories button (init_widgets): listen for button clickJP Rosevear2001-01-062-2/+2
| | | | | | | | | | | | | | | | | | 2001-01-05 JP Rosevear <jpr@helixcode.com> * gui/event-editor.c (get_widgets): get categories button (init_widgets): listen for button click (fill_widgets): fill in the categories area (dialog_to_comp_object): set the cal component categories (categories_clicked): throw up the categories dialog and update when ok is clicked * gui/event-editor-dialog.glade: Add categories and contacts buttons and fields * gui/dialogs/task-editor-dialog.glade: Rename button svn path=/trunk/; revision=7270
* get categories button (init_widgets): listen for button clickJP Rosevear2001-01-064-28/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-05 JP Rosevear <jpr@helixcode.com> * gui/dialogs/task-editor.c (get_widgets): get categories button (init_widgets): listen for button click (fill_widgets): fill in the categories area (dialog_to_comp_object): set the cal component categories (categories_clicked): throw up the categories dialog and update when ok is clicked * gui/dialogs/task-editor-dialog.glade: Tweak to name the categories button and make it active * gui/calendar-model.c (get_categories): We can get the string list of categories directly now * cal-util/cal-component.c (cal_component_get_categories): new function to get the categories list as a string (cal_component_set_categories): same but for setting (free_icalcomponent): init the categories var (scan_categories): kill (scan_property): assign the prop to the categories var (cal_component_get_categories_list): deal with renaming var to categories (cal_component_set_categories_list): fix brokeness svn path=/trunk/; revision=7268
* Do not compose strings so that they can be localized correctly. Also,Federico Mena Quintero2001-01-033-32/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-02 Federico Mena Quintero <federico@helixcode.com> * gui/dialogs/delete-comp.c (delete_component_dialog): Do not compose strings so that they can be localized correctly. Also, convert from UTF8 into the font's encoding. Fixes bug #1030. * gui/e-calendar-table.c (delete_component): Pass the widget argument to delete_component_dialog(). * gui/e-day-view.c (e_day_view_on_delete_appointment): Likewise. * gui/e-week-view.c (e_week_view_on_delete_appointment): Likewise. * gui/event-editor.c (file_delete_cb): Likewise. * gui/calendar-commands.c: Use BONOBO_UI_VERB() instead of BONOBO_UI_UNSAFE_VERB(). Guess what, all of our handler signatures were wrong. * gui/event-editor.c: Likewise. * gui/dialogs/task-editor.c: Likewise. * gui/goto-dialog.glade: Added some spacing between the month/year widgets and the calendar widget. svn path=/trunk/; revision=7211
* Clean up translatable strings for translators, fixes bug 993JP Rosevear2000-12-231-6/+5
| | | | | | | | | 2000-12-22 JP Rosevear <jpr@helixcode.com> * gui/dialogs/delete-comp.c (delete_component_dialog): Clean up translatable strings for translators, fixes bug 993 svn path=/trunk/; revision=7136
* Fixes bug #955.Federico Mena Quintero2000-12-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-14 Federico Mena Quintero <federico@helixcode.com> Fixes bug #955. * gui/weekday-picker.c (WeekdayPickerPrivate): Added a field for the week_start_day, to be used in the same way as calendar-config.h defines it. Removed the week_starts_on_monday flag. (day_event_cb): Use the week_start_day. (colorize_items): Likewise. (configure_items): Likewise. (weekday_picker_set_week_start_day): New function. (weekday_picker_get_week_start_day): New function. (weekday_picker_set_week_starts_on_monday): Removed function. (weekday_picker_get_week_starts_on_monday): Removed function. * gui/widget-util.[ch]: New files with utilities for creating or configuring widgets. * gui/widget-util.c (date_edit_new): New function to create an EDateEdit configured with the calendar's preferences; moved over from event-editor.c. * gui/event-editor.c (make_recur_weekly_special): Use weekday_picker_set_week_start_day() and the corresponding function from calendar-config.h. (init_widgets): Likewise. (make_date_edit_with_time): Removed function. (make_recur_ending_until_special): Use date_edit_new(). (make_date_edit): Likewise. * gui/dialogs/task-editor.c (task_editor_create_date_edit): Likewise. * gui/event-editor-dialog.glade: Removed references to make_date_edit_with_time(); replace them with make_date_edit(). * gui/Makefile.am (evolution_calendar_SOURCES): Added widget-util.[ch] to the list of sources. svn path=/trunk/; revision=7037
* Even though icaltime_from_timet() now properly ignores the is_utc argumentFederico Mena Quintero2000-12-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-13 Federico Mena Quintero <federico@helixcode.com> * cal-util/cal-component.c (ensure_mandatory_properties): Even though icaltime_from_timet() now properly ignores the is_utc argument since time_t values *are* in UTC by definition, we were passing FALSE for that argument's value in a bunch of places. So although it is ignored, changed them to TRUE for consistency. Hopefully newer versions of libical will remove that argument entirely since it does not make sense to speak of non-absolute time_t values. * cal-util/cal-recur.c (cal_recur_set_rule_end_date): Likewise. * conduits/calendar/calendar-conduit.c (comp_from_remote_record): Likewise. * conduits/todo/todo-conduit.c (comp_from_remote_record): Likewise. * gui/dialogs/task-editor.c (dialog_to_comp_object): Likewise. * gui/e-day-view.c (e_day_view_on_new_appointment): Likewise. (e_day_view_on_delete_occurrence): Likewise. (e_day_view_on_unrecur_appointment): Likewise. (e_day_view_on_unrecur_appointment): Likewise. (e_day_view_finish_long_event_resize): Likewise. (e_day_view_finish_resize): Likewise. (e_day_view_key_press): Likewise. (e_day_view_on_top_canvas_drag_data_received): Likewise. (e_day_view_on_main_canvas_drag_data_received): Likewise. * gui/e-week-view.c (e_week_view_key_press): Likewise. (e_week_view_on_new_appointment): Likewise. (e_week_view_on_delete_occurrence): Likewise. (e_week_view_on_unrecur_appointment): Likewise. * gui/event-editor.c (simple_recur_to_comp_object): Likewise. (recur_to_comp_object): Likewise. (dialog_to_comp_object): Likewise. * gui/gnome-cal.c (gnome_calendar_new_appointment): Likewise. svn path=/trunk/; revision=6995