boolean (@Nullable PsiDirectory targetDirectory, int[] choice, PsiFile file, @NlsSafe String name, @NlsContexts.Command String title) { if (targetDirectory == null) return false; final PsiFile existing = targetDirectory.findFile(name); if (existing != null && !existing.equals(file)) { int selection; if (choice == null || choice[0] == -1) { selection = SkipOverwriteChoice.askUser(targetDirectory, name, title, choice != null).ordinal(); } else { selection = choice[0]; } if (choice != null && selection > 1) { choice[0] = selection % 2; selection = choice[0]; } if (selection == 0) { WriteCommandAction.writeCommandAction(targetDirectory.getProject()) .withName(title) .run(() -> existing.delete()); } else { return true; } } return false; }