From 0adb39b6b0d8a41ce80444b86be9555719d2552a Mon Sep 17 00:00:00 2001 From: JP Rosevear Date: Tue, 19 Jun 2001 23:48:12 +0000 Subject: add ui (forward_cmd): implement forward command 2001-06-19 JP Rosevear * 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 --- calendar/gui/dialogs/comp-editor.c | 20 ++++++++++---------- calendar/gui/dialogs/task-editor.c | 20 ++++++++++++++++++++ 2 files changed, 30 insertions(+), 10 deletions(-) (limited to 'calendar/gui/dialogs') diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c index 5347a40df3..bdcaefd269 100644 --- a/calendar/gui/dialogs/comp-editor.c +++ b/calendar/gui/dialogs/comp-editor.c @@ -23,9 +23,10 @@ #include #endif +#include #include #include -#include +#include #include #include #include @@ -728,20 +729,18 @@ save_as_ok (GtkWidget *widget, gpointer data) { CompEditor *editor = COMP_EDITOR (data); CompEditorPrivate *priv; + struct stat s; char *path; - int fd, ret = 0; + int ret = 0; priv = editor->priv; path = gtk_file_selection_get_filename (GTK_FILE_SELECTION (priv->filesel)); - fd = open (path, O_RDONLY); - if (fd != -1) { + if (stat (path, &s) == 0) { GtkWidget *dlg; GtkWidget *text; - close (fd); - dlg = gnome_dialog_new (_("Overwrite file?"), GNOME_STOCK_BUTTON_YES, GNOME_STOCK_BUTTON_NO, @@ -755,6 +754,7 @@ save_as_ok (GtkWidget *widget, gpointer data) } if (ret == 0) { + FILE *file; gchar *ical_string; icalcomponent *top_level; @@ -784,15 +784,15 @@ save_as_ok (GtkWidget *widget, gpointer data) ical_string = icalcomponent_as_ical_string (top_level); - fd = open (path, O_WRONLY); - if (fd == -1) { + file = fopen (path, "w"); + if (file == NULL) { g_warning ("Couldn't save item"); gtk_main_quit (); return; } - write (fd, ical_string, strlen (ical_string)); - close (fd); + fprintf (file, ical_string); + fclose (file); gtk_main_quit (); } diff --git a/calendar/gui/dialogs/task-editor.c b/calendar/gui/dialogs/task-editor.c index 2a1f25cfbf..6fcff0d2cb 100644 --- a/calendar/gui/dialogs/task-editor.c +++ b/calendar/gui/dialogs/task-editor.c @@ -46,6 +46,14 @@ static void task_editor_class_init (TaskEditorClass *class); static void task_editor_init (TaskEditor *te); static void task_editor_destroy (GtkObject *object); +static void forward_cmd (GtkWidget *widget, gpointer data); + +static BonoboUIVerb verbs [] = { + BONOBO_UI_UNSAFE_VERB ("ActionForward", forward_cmd), + + BONOBO_UI_VERB_END +}; + static CompEditor *parent_class; @@ -113,6 +121,10 @@ task_editor_init (TaskEditor *te) comp_editor_append_page (COMP_EDITOR (te), COMP_EDITOR_PAGE (priv->task_details_page), _("Details")); + + comp_editor_merge_ui (COMP_EDITOR (te), EVOLUTION_DATADIR + "/gnome/ui/evolution-task-editor.xml", + verbs); } /* Destroy handler for the event editor */ @@ -145,3 +157,11 @@ task_editor_new (void) { return TASK_EDITOR (gtk_type_new (TYPE_TASK_EDITOR)); } + +static void +forward_cmd (GtkWidget *widget, gpointer data) +{ + TaskEditor *te = TASK_EDITOR (data); + + comp_editor_send_comp (COMP_EDITOR (te), CAL_COMPONENT_METHOD_PUBLISH); +} -- cgit v1.2.3