From ca603236ed6d7a43bc4587b70d6163ee1d95e310 Mon Sep 17 00:00:00 2001 From: JP Rosevear Date: Tue, 19 Jun 2001 19:24:08 +0000 Subject: itip/imip send dialog 2001-06-19 JP Rosevear * 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 --- calendar/gui/dialogs/cancel-comp.c | 84 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 calendar/gui/dialogs/cancel-comp.c (limited to 'calendar/gui/dialogs/cancel-comp.c') diff --git a/calendar/gui/dialogs/cancel-comp.c b/calendar/gui/dialogs/cancel-comp.c new file mode 100644 index 0000000000..4362f9da7f --- /dev/null +++ b/calendar/gui/dialogs/cancel-comp.c @@ -0,0 +1,84 @@ +/* Evolution calendar - Send calendar component dialog + * + * Copyright (C) 2001 Ximian, Inc. + * + * Author: JP Rosevear + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifdef HAVE_CONFIG_H +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include "cancel-comp.h" + + + +/** + * cancel_component_dialog: + * + * Pops up a dialog box asking the user whether he wants to send a + * cancel and delete an iTip/iMip message + * + * Return value: TRUE if the user clicked Yes, FALSE otherwise. + **/ +gboolean +cancel_component_dialog (CalComponent *comp) +{ + GtkWidget *dialog; + CalComponentVType vtype; + char *str; + + str = _("The meeting status has changed. Send an updated version?"); + + vtype = cal_component_get_vtype (comp); + + switch (vtype) { + case CAL_COMPONENT_EVENT: + str = g_strdup_printf (_("Are you sure you want to cancel " + "and delete this meeting?")); + break; + + case CAL_COMPONENT_TODO: + str = g_strdup_printf (_("Are you sure you want to cancel " + "and delete this task?")); + break; + + case CAL_COMPONENT_JOURNAL: + str = g_strdup_printf (_("Are you sure you want to cancel " + "and delete this journal entry?")); + break; + + default: + g_message ("send_component_dialog(): " + "Cannot handle object of type %d", vtype); + return FALSE; + } + + dialog = gnome_question_dialog_modal (str, NULL, NULL); + + if (gnome_dialog_run (GNOME_DIALOG (dialog)) == GNOME_YES) + return TRUE; + else + return FALSE; +} -- cgit v1.2.3