From bdfb59fcc4bb34086a0560f4475a7cea1bdbc95b Mon Sep 17 00:00:00 2001 From: anna Date: Sun, 21 Aug 2011 15:59:53 +0200 Subject: [PATCH] inplace introduce parameter: no need to choose method when you only want to tweak settings in the dialog --- .../InplaceIntroduceParameterPopup.java | 8 ++++++++ .../introduceParameter/IntroduceParameterHandler.java | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java b/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java index 165cfa8eab5c..9ad45a24d8fa 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java @@ -291,4 +291,12 @@ public class InplaceIntroduceParameterPopup extends AbstractJavaInplaceIntroduce public void setReplaceAllOccurrences(boolean replaceAll) { myPanel.setReplaceAllOccurrences(replaceAll); } + + public PsiMethod getMethodToIntroduceParameter() { + return myMethod; + } + + public PsiMethod getMethodToSearchFor() { + return myMethodToSearchFor; + } } diff --git a/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterHandler.java b/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterHandler.java index a96489adbbdb..72804dca4e95 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterHandler.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterHandler.java @@ -182,6 +182,13 @@ public class IntroduceParameterHandler extends IntroduceHandlerBase implements R private void chooseMethodToIntroduceParameter(final Editor editor, final List validEnclosingMethods, final Introducer introducer) { + final AbstractInplaceIntroducer inplaceIntroducer = AbstractInplaceIntroducer.getActiveIntroducer(editor); + if (inplaceIntroducer instanceof InplaceIntroduceParameterPopup) { + final InplaceIntroduceParameterPopup introduceParameterPopup = (InplaceIntroduceParameterPopup)inplaceIntroducer; + introducer.introduceParameter(introduceParameterPopup.getMethodToIntroduceParameter(), + introduceParameterPopup.getMethodToSearchFor()); + return; + } final JPanel panel = new JPanel(new BorderLayout()); final JCheckBox superMethod = new JCheckBox("Use super method of", true); superMethod.setMnemonic('U');