public static bool ShowFileDeleteProgress(int deletedSoFar, int totalToDelete, string filepath, bool showRecoverableMsg)
{
float progress = (float)(deletedSoFar+1)/((float)totalToDelete);
if (EditorUtility.DisplayCancelableProgressBar(
"Deleting file " + (deletedSoFar+1) + " of " + totalToDelete + " (" + (totalToDelete-deletedSoFar-1) + " left)",
filepath,
progress))
{
EditorUtility.ClearProgressBar();
string filesReallyDeletedPlural = deletedSoFar > 1 ? "s" : "";
string cancelTitle = "Delete operation canceled";
string cancelMsg = null;
if (deletedSoFar > 0)
{
cancelMsg = "Only " + deletedSoFar + " file" + filesReallyDeletedPlural + " (of " + totalToDelete + ") deleted.";
if (showRecoverableMsg)
{
cancelMsg += " Those files can be recovered from your " + BuildReportTool.Util.NameOfOSTrashFolder + ".";
}
}
else
{
cancelMsg = "No files deleted.";
}
EditorApplication.Beep();
EditorUtility.DisplayDialog(cancelTitle, cancelMsg, "OK");
Debug.LogWarning(cancelTitle + ". " + cancelMsg);
return true;
}
return false;
}