From 201e0dac79a2444a2cb62b0af2b2938e585b4e98 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 27 Jan 2015 19:36:40 +0300 Subject: [PATCH] safe delete: allow to delete parameter in one method without hierarchy (IDEA-135686) --- .../refactoring/safeDelete/JavaSafeDeleteProcessor.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/java/java-impl/src/com/intellij/refactoring/safeDelete/JavaSafeDeleteProcessor.java b/java/java-impl/src/com/intellij/refactoring/safeDelete/JavaSafeDeleteProcessor.java index 968a0b95f134..74dd50d5d432 100644 --- a/java/java-impl/src/com/intellij/refactoring/safeDelete/JavaSafeDeleteProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/safeDelete/JavaSafeDeleteProcessor.java @@ -147,8 +147,10 @@ public class JavaSafeDeleteProcessor extends SafeDeleteProcessorDelegateBase { if (parametersToDelete.size() > 1 && !ApplicationManager.getApplication().isUnitTestMode()) { String message = RefactoringBundle.message("0.is.a.part.of.method.hierarchy.do.you.want.to.delete.multiple.parameters", UsageViewUtil.getLongName(method)); - if (Messages.showYesNoDialog(project, message, SafeDeleteHandler.REFACTORING_NAME, - Messages.getQuestionIcon()) != Messages.YES) return null; + int result = Messages.showYesNoCancelDialog(project, message, SafeDeleteHandler.REFACTORING_NAME, + Messages.getQuestionIcon()); + if (result == Messages.CANCEL) return null; + if (result == Messages.NO) return Collections.singletonList(element); } return parametersToDelete; }