aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-meeting-model.c
Commit message (Collapse)AuthorAgeFilesLines
* If we already have an evolution_dir, free the old one before setting itHans Petter Jansson2003-04-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-04-15 Hans Petter Jansson <hpj@ximian.com> * gui/calendar-component.c (owner_set_cb): If we already have an evolution_dir, free the old one before setting it anew. * gui/e-day-view-time-item.c (e_day_view_time_item_draw): Unref the metrics. * gui/e-day-view.c (e_day_view_style_set): Unref the metrics. (e_day_view_recalc_cell_sizes): We don't need font metrics here. (e_day_view_reshape_long_event): Ditto. * gui/e-meeting-model.c (init): Don't dup the string passed to e_table_without_hide(). * gui/e-meeting-time-sel.c (e_meeting_time_selector_style_set): Unref the metrics. (e_meeting_time_selector_recalc_date_form): Doesn't need metrics. * gui/e-week-view-main-item.c (e_week_view_main_item_draw_day): Unref the metrics. * gui/e-week-view.c (e_week_view_style_set): Unref metrics. (e_week_view_recalc_cell_sizes): Ditto. (e_week_view_reshape_event_span): Move Pango stuff to where it can't be leaked due to an early return. Unref metrics. * gui/weekday-picker.c (weekday_picker_style_set): Unref metrics. * gui/dialogs/meeting-page.c (meeting_page_finalize): Free default address. svn path=/trunk/; revision=20857
* load the default book to look for additional free/busy info in (init):JP Rosevear2003-04-111-16/+20
| | | | | | | | | | | | | 2003-04-11 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (start_addressbook_server): load the default book to look for additional free/busy info in (init): ugly hack to make sure we get destroyed, set idle id to 0 (process_callbacks): unref the im because we are now done with it (refresh_busy_periods): set idle id to 0, ref the model and handle e_book_get_cursor error svn path=/trunk/; revision=20814
* Fixes #41127JP Rosevear2003-04-111-2/+0
| | | | | | | | | | | | | | | 2003-04-10 JP Rosevear <jpr@ximian.com> Fixes #41127 * gui/e-meeting-time-sel.c (e_meeting_time_selector_refresh_cb): unref here, when the callback is done (e_meeting_time_selector_refresh_free_busy): don't unref here * gui/e-meeting-model.c (process_free_busy): if the type is unexpected, make sure we cleanup properly svn path=/trunk/; revision=20807
* init new members (get_current_account): get a matching account for theJP Rosevear2003-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-03-28 JP Rosevear <jpr@ximian.com> * gui/dialogs/meeting-page.c (meeting_page_init): init new members (get_current_account): get a matching account for the currently selected user in the combo (meeting_page_finalize): unref the meeting attendee if there is one (meeting_page_fill_widgets): don't set the combo list here (clear_widgets): set the default organizer here and if we don't have an organizer, add the default organizer as an attendee (meeting_page_fill_component): use get_current_account (org_changed_cb): if this is a new meeting and the organizer changes, change the attendee (change_clicked_cb): no need to set the default here (init_widgets): reflect changed callback name (meeting_page_construct): set the combo strings here (popup_delete_cb): remove the organizer attendee if the user explicitly deletes it * gui/e-meeting-model.c (attendee_changed_cb): set row properly * gui/itip-utils.c (comp_to_list): skip the user themselves if cancelling or requesting svn path=/trunk/; revision=20557
* Fixes #34095Hans Petter Jansson2003-03-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-03-17 Hans Petter Jansson <hpj@ximian.com> Fixes #34095 * gui/e-meeting-model.c (append_row): Don't leak meeting attendees; unref the attendee after it's assigned to model. * gui/dialogs/meeting-page.c (meeting_page_destroy): Free the actual array of deleted attendees. * gui/dialogs/event-editor.c (event_editor_destroy): Free the private structure. * gui/itip-utils.c (comp_description): Rework free/busy information composer so we can free date/time information after use. Then free it. (itip_send_comp): Free the allocated CORBA buffer for attachment data. * gui/dialogs/comp-editor-util.c (comp_editor_contacts_to_component): Free the destination contacts string once we're done with it. * gui/e-calendar-table.c (invisible_destroyed): Unref the invisible. * gui/e-day-view.c (invisible_destroyed): Ditto. * gui/e-week-view.c (invisible_destroyed): Ditto. svn path=/trunk/; revision=20329
* Fixes #39740Rodrigo Moya2003-03-151-0/+2
| | | | | | | | | | | | | | | | | | | | 2003-03-14 Rodrigo Moya <rodrigo@ximian.com> Fixes #39740 * gui/e-meeting-model.c (is_cell_editable): check row number is valid before using it as index for the GPtrArray. 2003-03-14 Rodrigo Moya <rodrigo@ximian.com> Fixes #39356 * gui/Makefile.am: * gui/tasks-migrate.[ch]: removed tasks migration obsolete stuff. * gui/calendar-component.c (owner_set_cb): don't call tasks_migrate. svn path=/trunk/; revision=20301
* Fixes #31382Rodrigo Moya2003-03-061-2/+2
| | | | | | | | | | | | 2003-03-05 Rodrigo Moya <rodrigo@ximian.com> Fixes #31382 * gui/e-meeting-model.c (async_read): don't assume the buffer is always full, but use GNOME_VFS_ERROR_EOF instead for knowing when the read has finished. svn path=/trunk/; revision=20183
* Fixes #37881JP Rosevear2003-03-051-1/+1
| | | | | | | | | | | 2003-02-11 JP Rosevear <jpr@ximian.com> Fixes #37881 * gui/e-meeting-model.c (process_section): if the attendee is the empty string, try to get the email svn path=/trunk/; revision=20160
* implementJP Rosevear2003-03-051-20/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-03-04 JP Rosevear <jpr@ximian.com> * pcs/cal.c (impl_Cal_get_ldap_attribute): implement * pcs/cal-backend.h: add virtual method * pcs/cal-backend.c (cal_backend_get_ldap_attribute): call get_ldap_attribute_method * pcs/cal-backend-file.c (cal_backend_file_class_init): overrid get_ldap_attribute method * idl/evolution-calendar.idl: add getLdapAttribute method * gui/e-meeting-model.c (process_section): take simple card list as arg and try to use the ldap attribute (if any) as the attendee, else use the email address (select_names_ok_cb): get the simple card list * cal-client/cal-client.h: add proto * cal-client/cal-client.c (cal_client_init): init ldap_attribute to NULL (cal_client_destroy): free ldap_attribute svn path=/trunk/; revision=20154
* If only the pipe wouldn't break.JP Rosevear2003-03-051-60/+17
| | | | svn path=/trunk/; revision=20143
* Fixes some trivial, but distracting, warnings.Hans Petter Jansson2003-01-241-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-01-23 Hans Petter Jansson <hpj@ximian.com> Fixes some trivial, but distracting, warnings. * gui/calendar-config.c (on_timezone_set): Fix constness. * gui/e-timezone-entry.c (on_button_clicked): Fix constness. * gui/dialogs/event-page.c (contacts_changed_cb): Fix constness. * gui/dialogs/task-page.c (contacts_changed_cb): Fix constness. * gui/e-itip-control.c (start_default_server): Cast callback with G_CALLBACK (). * gui/dialogs/schedule-page.c (init_widgets): Cast callback with G_CALLBACK (). * gui/calendar-offline-handler.c (impl_dispose): Takes GObject, not GtkObject. (impl_finalize): Ditto. * gui/calendar-view.c (calendar_view_edit): Now takes parent window as second arg. * gui/e-meeting-model.c (select_names_ok_cb): Fix constness. (get_select_name_dialog): Cast callback to BonoboListenerCallbackFn. * gui/e-meeting-time-sel.c (e_meeting_time_selector_options_menu_position_callback): Add the push_in arg to arg list. This was crash-prone before. (e_meeting_time_selector_autopick_menu_position_callback): Ditto. * gui/alarm-notify/alarm-notify-dialog.c: Include e-unicode.h. svn path=/trunk/; revision=19605
* Pass the env argument to bonobo_control_set_property ().Hans Petter Jansson2002-12-071-6/+7
| | | | | | | | | | | | | | 2002-12-06 Hans Petter Jansson <hpj@ximian.com> * gui/component-factory.c (): Pass the env argument to bonobo_control_set_property (). * gui/e-meeting-model.c (class_init): We're no longer derived from GtkObject, so use GObject class methods instead. destroy->finalize. (destroy): Zapped. (finalize): Implement based on old destroy (). svn path=/trunk/; revision=19048
* Create a non-abstract enumeration type derived from GEnum.Hans Petter Jansson2002-12-071-25/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-12-06 Hans Petter Jansson <hpj@ximian.com> * cal-client/cal-client.c (cal_client_open_status_enum_get_type): Create a non-abstract enumeration type derived from GEnum. (cal_client_set_mode_status_enum_get_type): Ditto. (cal_mode_enum_get_type): Ditto. (cal_client_class_init): Use our enumerations and not the abstract one. (cal_client_finalize): Don't destroy factories, since the CalClient doesn't own them anymore. They're shared between CalClients now. (get_factories): Implement. Move the factory setup code here from cal_client_construct (), and cache the factories. This is hopefully temporary, until wombat goes away or is fixed. (cal_client_construct): Most of the code moved to get_factories (). * cal-client/cal-client.h: Add enumeration type macros and protos. * gui/cal-search-bar.c (cal_search_bar_get_type): Removed in favour of E_MAKE_TYPE, which uses GObject calls. (cal_search_bar_class_init): Use g_type_class_peek_parent (). * gui/calendar-model.c (calendar_model_get_type): (calendar_model_class_init): Ditto, like above file. * gui/calendar-view.c (calendar_view_get_type): (calendar_view_class_init): Ditto. * gui/e-calendar-table.c (e_calendar_table_get_type): (e_calendar_table_class_init): Ditto. * gui/e-comp-editor-registry.c (e_comp_editor_registry_get_type): (class_init): Ditto. * gui/e-day-view-main-item.c (e_day_view_main_item_get_type): (e_day_view_main_item_class_init): Ditto. * gui/e-day-view-time-item.c (e_day_view_time_item_get_type): (e_day_view_time_item_class_init): Ditto. * gui/e-day-view-top-item.c (e_day_view_top_item_get_type): (e_day_view_top_item_class_init): Ditto. * gui/e-day-view.c (e_day_view_get_type): (e_day_view_class_init): Ditto. * gui/e-itip-control.c (e_itip_control_get_type): (class_init): Ditto. * gui/e-meeting-attendee.c (e_meeting_attendee_get_type): (class_init): Ditto. * gui/e-meeting-model.c (e_meeting_model_get_type): (class_init): Ditto. * gui/e-meeting-time-sel-item.c (e_meeting_time_selector_item_get_type): (e_meeting_time_selector_item_class_init): Ditto. * gui/e-meeting-time-sel.c (e_meeting_time_selector_get_type): (e_meeting_time_selector_class_init): Ditto. * gui/e-timezone-entry.c (e_timezone_entry_get_type): (e_timezone_entry_class_init): Ditto. * gui/e-week-view-event-item.c (e_week_view_event_item_get_type): (e_week_view_event_item_class_init): Ditto. * gui/e-week-view-main-item.c (e_week_view_main_item_get_type): (e_week_view_main_item_class_init): Ditto. * gui/e-week-view-titles-item.c (e_week_view_titles_item_get_type): (e_week_view_titles_item_class_init): Ditto. * gui/gnome-cal.c (gnome_calendar_get_type): (gnome_calendar_class_init): Ditto. * gui/weekday-picker.c (weekday_picker_get_type): (weekday_picker_class_init): Ditto. * gui/e-week-view.c (e_week_view_get_type): (e_week_view_class_init): Ditto, but parent_class init was moved from get_type() to class_init(). * gui/calendar-view-factory.c (calendar_view_factory_get_type): (calendar_view_factory_class_init): Ditto, and set up finalize callback instead of destroy. (calendar_view_factory_finalize): It's a GObject, so implement this. (celendar_view_factory_destroy): Move code to _finalize() and remove. * gui/main.c (init_bonobo): Remove extraneous bonobo_activation_init(). svn path=/trunk/; revision=19043
* pass type to bonobo_widget::set_property. (select_names_ok_cb): ", forNot Zed2002-11-191-2/+2
| | | | | | | | | | | | | | | | | | | 2002-11-19 Not Zed <NotZed@Ximian.com> * gui/e-meeting-model.c (get_select_name_dialog): pass type to bonobo_widget::set_property. (select_names_ok_cb): ", for get_property. * gui/dialogs/e-delegate-dialog.c (e_delegate_dialog_construct): pass type to bonobo_widget::set_property & plug small leak. (e_delegate_dialog_get_delegate): ", for get_property. (e_delegate_dialog_get_delegate_name): " * gui/dialogs/comp-editor-util.c (comp_editor_contacts_to_widget): pass type to bonobo_widget::set_property. (comp_editor_contacts_to_component): ", for get_property svn path=/trunk/; revision=18835
* Use g_object_set_data(..., NULL) instead of gtk_object_remove_data().Ettore Perazzoli2002-11-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gui/calendar-commands.c (calendar_control_deactivate): Use g_object_set_data(..., NULL) instead of gtk_object_remove_data(). * gui/calendar-commands.c: Use g_object_{set,get}_* functions instead of gtk_object_{set,get}_*. * gui/calendar-commands.c: Likewise. * gui/calendar-config.c: Likewise. * gui/control-factory.c: Likewise. * gui/e-calendar-table.c: Likewise. * gui/e-comp-editor-registry.c: Likewise. * gui/e-day-view-main-item.c: Likewise. * gui/e-day-view-time-item.c: Likewise. * gui/e-day-view-top-item.c: Likewise. * gui/e-day-view.c: Likewise. * gui/e-meeting-attendee.c: Likewise. * gui/e-meeting-model.c: Likewise. * gui/e-meeting-time-sel-item.c: Likewise. * gui/e-meeting-time-sel.c: Likewise. * gui/e-week-view-event-item.c: Likewise. * gui/e-week-view-layout.c: Likewise. * gui/e-week-view-main-item.c: Likewise. * gui/e-week-view-titles-item.c: Likewise. * gui/e-week-view.c: Likewise. * gui/gnome-cal.c: Likewise. * gui/print.c: Likewise. svn path=/trunk/; revision=18674
* Use g_object_ref()/g_object_unref() instead ofEttore Perazzoli2002-11-091-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * calendar-commands.c: Use g_object_ref()/g_object_unref() instead of gtk_object_ref/gtk_object_unref(). * calendar-config.c: Likewise. * calendar-model.c: Likewise. * comp-editor-factory.c: Likewise. * comp-util.c: Likewise. * e-calendar-table.c: Likewise. * e-day-view.c: Likewise. * e-itip-control.c: Likewise. * e-meeting-model.c: Likewise. * e-meeting-time-sel.c: Likewise. * e-tasks.c: Likewise. * e-timezone-entry.c: Likewise. * e-week-view.c: Likewise. * gnome-cal.c: Likewise. * goto.c: Likewise. * itip-utils.c: Likewise. * print.c: Likewise. * tasks-control.c: Likewise. * tasks-migrate.c: Likewise. * gui/cal-search-bar.c: Use g_object_new() instead of gtk_type_new(). * gui/calendar-model.c: Likewise. * gui/calendar-view-factory.c: Likewise. * gui/calendar-view.c: Likewise. * gui/calendar-view.c: Likewise. * gui/comp-editor-factory.c: Likewise. * gui/e-calendar-table.c: Likewise. * gui/e-cell-date-edit-text.c: Likewise. * gui/e-comp-editor-registry.c: Likewise. * gui/e-day-view.c: Likewise. * gui/e-itip-control.c: Likewise. * gui/e-meeting-attendee.c: Likewise. * gui/e-meeting-attendee.c: Likewise. * gui/e-meeting-model.c: Likewise. * gui/e-meeting-time-sel.c: Likewise. * gui/e-tasks.c: Likewise. * gui/e-timezone-entry.c: Likewise. * gui/e-week-view.c: Likewise. * gui/gnome-cal.c: Likewise. * gui/weekday-picker.c: Likewise. * gui/e-itip-control.c (get_servers): g_object_unref the shell_client instead of using bonobo_object_unref(). * gui/component-factory.c (owner_set_cb): Use evolution_shell_client_corba_objref() instead of bonobo_object_corba_objref(). svn path=/trunk/; revision=18673
* Use g_signal_connect() instead of gtk_signal_connect(). Likewise.Ettore Perazzoli2002-11-091-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * gui/calendar-commands.c: Use g_signal_connect() instead of gtk_signal_connect(). * calendar-commands.c: Likewise. * calendar-config.c: Likewise. * calendar-model.c: Likewise. * comp-editor-factory.c: Likewise. * component-factory.c: Likewise. * control-factory.c: Likewise. * e-calendar-table.c: Likewise. * e-comp-editor-registry.c: Likewise. * e-day-view-time-item.c: Likewise. * e-day-view.c: Likewise. * e-itip-control.c: Likewise. * e-meeting-model.c: Likewise. * e-meeting-time-sel.c: Likewise. * e-tasks.c: Likewise. * e-timezone-entry.c: Likewise. * e-week-view.c: Likewise. * gnome-cal.c: Likewise. * goto.c: Likewise. * tasks-control.c: Likewise. * tasks-migrate.c: Likewise. * weekday-picker.c: Likewise. svn path=/trunk/; revision=18672
* Initial port of gui/ subdir to GNOME 2JP Rosevear2002-11-081-22/+20
| | | | | | | | 2002-11-07 JP Rosevear <jpr@ximian.com> * Initial port of gui/ subdir to GNOME 2 svn path=/trunk/; revision=18648
* only change the attendee value if it isn't emptyJP Rosevear2002-09-271-1/+2
| | | | | | | | | 2002-09-26 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (set_value_at): only change the attendee value if it isn't empty svn path=/trunk/; revision=18234
* fix non-ANSI switch statements.Dan Winship2002-09-231-0/+3
| | | | | | | | | | | | * pcs/cal.c (imple_Cal_update_objects, impl_Cal_remove_object): fix non-ANSI switch statements. * gui/e-meeting-model.c (is_cell_editable, value_is_empty, process_free_busy_comp): Likewise * gui/itip-utils.c (comp_compliant): Likewise. svn path=/trunk/; revision=18169
* if its a non-participant, add it as a resource to match dialog labelJP Rosevear2002-08-231-2/+10
| | | | | | | | | | | 2002-08-22 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (process_section): if its a non-participant, add it as a resource to match dialog label (set_value_at): if the type is set to be a resource, switch the role to non-participant by default svn path=/trunk/; revision=17840
* disconnect destroy signal callbacks on tablesJP Rosevear2002-08-201-1/+4
| | | | | | | | | | | 2002-08-19 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (destroy): disconnect destroy signal callbacks on tables Fixes #28231 svn path=/trunk/; revision=17813
* initialize value to corba nilJP Rosevear2002-08-021-0/+2
| | | | | | | | 2002-08-02 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (init): initialize value to corba nil svn path=/trunk/; revision=17687
* Add include lines to get ebook headers relative to <ebook/foo.h>, notPeter Williams2002-07-111-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-251-5/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* remove unneeded parameter from print_text_size everywhereJP Rosevear2002-03-061-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* use new column enums (set_value_at): emit pre-change/cell change signalsJP Rosevear2002-02-161-248/+320
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-14 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c: use new column enums (set_value_at): emit pre-change/cell change signals (destroy): destroy refresh_queue and refresh_data (init): init new elements (refresh_queue_add): if the attendee is being refreshed already, possibly update the start/end times to look for and update the callback info, otherwise add it to the queue (refresh_queue_remove): remove a refreshing attende from the queue (process_callbacks): make all the callbacks and remove the attendee from the queue (process_free_busy): process the callbacks immediately if parsing fails or on successful completion of processing (async_close): process free busy (cursor_cb): we're only looking for one at a time now (refresh_busy_periods): idle callback to start processing the queue (e_meeting_model_refresh_all_busy_periods): add every row to the queue (e_meeting_model_refresh_busy_periods): add a single row to the queue * gui/e-meeting-model.h: new protos, enum the columns * gui/e-meeting-time-sel.c: use new compare time function (e_meeting_time_selector_construct): listen for a cell changed signal and use separate callbacks for rows_inserted and rows_deleted (e_meeting_time_selector_refresh_free_busy): util function to refresh free busy info (e_meeting_time_selector_on_update_free_busy): use above (rows_inserted_cb): refresh free busy on the new rows (cell_changed_cb): refresh free busy on the row when the address changes (rows_deleted_cb): redraw * gui/e-meeting-utils.[hc]: a holding spot for a meeting time comparison function * gui/Makefile.am: compile new files svn path=/trunk/; revision=15741
* properly convert the dtstart and dtend times if they are UTC (cursor_cb):JP Rosevear2001-12-121-33/+51
| | | | | | | | | | | | | | | | | | | | | | | | | 2001-12-11 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (process_free_busy_comp): properly convert the dtstart and dtend times if they are UTC (cursor_cb): if we don't have anybody to get f/b info for, process the callbacks immediately (e_meeting_model_refresh_busy_periods): take start/end times, calculate the timet values with object timezone (e_meeting_model_etable_model_to_view_row): proper cast (e_meeting_model_etable_view_to_model_row): ditto (async_open): bail out if we couldn't open properly * gui/e-meeting-time-sel.c (e_meeting_time_selector_on_update_free_busy): use defines for determining the number of days before and after of free busy to request (e_meeting_time_selector_update_dates_shown): use defines for the number of days shown * gui/e-meeting-model.h: update proto svn path=/trunk/; revision=15000
* Explicitly destroy the EMeetingModel. This is a hack to work aroundJon Trowbridge2001-12-071-0/+7
| | | | | | | | | | | | | | | | | | | 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
* make sure we call e_table_model_pre_change() before changing the model.Damon Chaplin2001-12-041-3/+14
| | | | | | | | | | | | | | 2001-12-03 Damon Chaplin <damon@ximian.com> * gui/e-meeting-model.c: * gui/calendar-model.c: make sure we call e_table_model_pre_change() before changing the model. * gui/calendar-config.c (calendar_config_configure_e_calendar_table): removed call to e_table_model_changed(). calendar_model_refresh() results in that anyway. svn path=/trunk/; revision=14854
* new protosJP Rosevear2001-11-121-18/+49
| | | | | | | | | | | | | | | | | 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
* count the actual attendees (doesn't include people delegatingJP Rosevear2001-10-311-6/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* process an individual section here (select_names_ok_cb): call aboveJP Rosevear2001-10-301-58/+66
| | | | | | | | | | | 2001-10-30 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (process_section): process an individual section here (select_names_ok_cb): call above (get_select_name_dialog): listen for ok:dialog signal svn path=/trunk/; revision=14438
* Require gal 0.15.99.8Joe Shaw2001-10-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-29 Joe Shaw <joe@ximian.com> * configure.in: Require gal 0.15.99.8 * addressbook/backend/ebook/e-card-simple.c, addressbook/gui/component/addressbook-storage.c, addressbook/gui/widgets/e-addressbook-view.c, calendar/gui/e-calendar-table.c, calendar/gui/e-itip-control.c, calendar/gui/e-meeting-model.c, calendar/gui/itip-utils.c, calendar/gui/print.c, calendar/gui/alarm-notify/alarm-notify-dialog.c, filter/rule-editor.c, mail/mail-config.c, mail/mail-folder-cache.c, mail/mail-format.c, mail/mail-local.c, mail/mail-ops.c, mail/mail-vfolder.c, shell/e-local-storage.c, shell/e-summary-storage.c: Change includes of e-util/e-unicode-i18n.h to gal/util/e-unicode-i18n.h svn path=/trunk/; revision=14427
* Fixing the license text.Ettore Perazzoli2001-10-281-1/+0
| | | | svn path=/trunk/; revision=14211
* Update the licensing information to require version 2 of the GPLEttore Perazzoli2001-10-271-2/+2
| | | | | | (instead of version 2 or any later version). svn path=/trunk/; revision=14190
* when iterating over the subcomponents, use 'subcomp' rather thanDamon Chaplin2001-10-251-17/+18
| | | | | | | | | | | | | | | | | | | | 2001-10-24 Damon Chaplin <damon@ximian.com> * pcs/cal-backend-file.c (cal_backend_file_update_objects): when iterating over the subcomponents, use 'subcomp' rather than 'icalcomp'. That meant it wasn't working at all well when an entire VCALENDAR was passed in. * cal-util/cal-component.c: handle DURATION property used instead of DTEND or DUE. In cal_component_get_dtend/due we will return DTSTART + DURATION if necessary. In set_dtend/due we remove any DURATION property. Fixes bug #11262. * gui/e-meeting-model.c (build_etable): * gui/e-calendar-table.c (e_calendar_table_init): use U_ for the ECellCombo popdown strings, as it expects UTF-8 strings. svn path=/trunk/; revision=13992
* track the spacer vbox (e_meeting_time_selector_style_set): make sure theJP Rosevear2001-10-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | 2001-10-24 JP Rosevear <jpr@ximian.com> * gui/e-meeting-time-sel.c (e_meeting_time_selector_construct): track the spacer vbox (e_meeting_time_selector_style_set): make sure the rows are the correct size for the style * gui/e-meeting-time-sel-item.c (e_meeting_time_selector_item_paint_day_top): slight adjustments to where the text is drawn * gui/e-meeting-time-sel.h: new member * gui/e-meeting-model.c (build_etable): ensure uniform row height * conduits/todo/todo-conduit.c (comp_from_remote_record): mark status as completed in appropriate places and don't overwrite legitimate percentages and such svn path=/trunk/; revision=13989
* no longer set the scrollbar policy hereJP Rosevear2001-10-241-4/+0
| | | | | | | | | | | | | | | | 2001-10-23 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (build_etable): no longer set the scrollbar policy here * gui/e-meeting-time-sel.c (e_meeting_time_selector_update_main_canvas_scroll_region): add an extra row to the height so the click to add row can be properly seen (e_meeting_time_selector_construct): set the scrollbar policy for the etable scrolled svn path=/trunk/; revision=13948
* we don't need to save the stateJP Rosevear2001-10-221-2/+18
| | | | | | | | | | | | | | | | 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
* call the invite others dialog in the modelJP Rosevear2001-10-191-1/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* util routine to handle calling back (async_close): use aboveJP Rosevear2001-10-181-12/+29
| | | | | | | | | | | 2001-10-18 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (process_callbacks): util routine to handle calling back (async_close): use above (e_meeting_model_refresh_busy_periods): ditto svn path=/trunk/; revision=13747
* Fix incorrect variable name check.Dan Winship2001-10-091-1/+1
| | | | | | | * gui/e-meeting-model.c (process_free_busy_comp): Fix incorrect variable name check. svn path=/trunk/; revision=13512
* replace use of gnome_vfs_uri with e_uriRodrigo Moya2001-10-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 2001-10-03 Rodrigo Moya <rodrigo@ximian.com> * gui/component-factory.c: * gui/calendar-offline-handler.c: * gui/comp-editor-factory.c: replace use of gnome_vfs_uri with e_uri * gui/e-meeting-model.c (start_addressbook_server): make it return void, since the return value does not mind * pcs/cal.c: * pcs/cal-factory.c: * pcs/cal-backend.[ch]: don't use GnomeVFS for URI management * pcs/cal-backend-file.c: ditto, only use GnomeVFS for internal operations * cal-client/cal-client.c (cal_client_open_calendar): don't CORBA_exception_free before checking for exceptions svn path=/trunk/; revision=13380
* listen for model changes (task_editor_edit_comp): add the attendees to theJP Rosevear2001-09-201-11/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* remove silly debug #if 0JP Rosevear2001-09-191-2/+1
| | | | | | | | | | | | | | | 2001-09-19 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c (e_meeting_model_refresh_busy_periods): remove silly debug #if 0 * gui/calendar-commands.c (publish_freebusy_cmd): g_list_free rather than g_free * gui/e-itip-control.c (write_html): eliminate code path that caused double freed memory svn path=/trunk/; revision=12972
* A page that shows the meeting time selector and free/busy data forJP Rosevear2001-09-191-0/+1321
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