static int _prompt_to_upload_edited_file (gftp_viewedit_data * ve_proc) { struct stat st; char *str; if (stat (ve_proc->filename, &st) == -1) { ftp_log (gftp_logging_error, NULL, _("Error: Cannot get information about file %s: %s\n"), ve_proc->filename, g_strerror (errno)); return (0); } else if (st.st_mtime == ve_proc->st.st_mtime) { ftp_log (gftp_logging_misc, NULL, _("File %s was not changed\n"), ve_proc->filename); remove_file (ve_proc); return (0); } else { memcpy (&ve_proc->st, &st, sizeof (ve_proc->st)); str = g_strdup_printf (_("File %s has changed.\nWould you like to upload it?"), ve_proc->remote_filename); MakeYesNoDialog (_("Edit File"), str, do_upload, ve_proc, dont_upload, ve_proc); g_free (str); return (1); } }
static void askdel (gftp_transfer * transfer) { char *tempstr; int ok; if (transfer->numfiles > 0 && transfer->numdirs > 0) { tempstr = g_strdup_printf (_("Are you sure you want to delete these %ld files and %ld directories"), transfer->numfiles, transfer->numdirs); } else if (transfer->numfiles > 0) { tempstr = g_strdup_printf (_("Are you sure you want to delete these %ld files"), transfer->numfiles); } else if (transfer->numdirs > 0) { tempstr = g_strdup_printf (_("Are you sure you want to delete these %ld directories"), transfer->numdirs); } else return; ok = MakeYesNoDialog (_("Delete Files/Directories"), tempstr); g_free (tempstr); if (ok) { gftpui_callback_data * cdata; g_return_if_fail (transfer != NULL); g_return_if_fail (transfer->files != NULL); cdata = g_malloc0 (sizeof (*cdata)); cdata->request = ((gftp_window_data *)transfer->fromwdata)->request; cdata->files = transfer->files; cdata->uidata = transfer->fromwdata; cdata->run_function = gftpui_common_run_delete; gftpui_common_run_callback_function (cdata); g_free (cdata); } free_tdata (transfer); }