From ea18e70a91215ee911d8e33ae4b8257747e0bc84 Mon Sep 17 00:00:00 2001 From: Max Medvedev Date: Mon, 10 Jun 2013 09:11:37 +0400 Subject: [PATCH] cleanup shortening references --- .../codeStyle/JavaCodeStyleManagerImpl.java | 15 +++++++++++---- .../codeStyle/JavaReferenceAdjusterFactory.java | 3 +++ .../psi/codeStyle/ReferenceAdjusterFactory.java | 3 +++ .../codeStyle/GrReferenceAdjusterFactory.java | 3 +++ .../CreateControllerMethodInGroovy_after.groovy | 2 ++ 5 files changed, 22 insertions(+), 4 deletions(-) diff --git a/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java b/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java index acd240486cb8..efd39c00ab00 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java @@ -84,15 +84,22 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager { throws IncorrectOperationException { CheckUtil.checkWritable(element); if (SourceTreeToPsiMap.hasTreeElement(element)) { - final ReferenceAdjuster adjuster = ReferenceAdjusterFactory.Extension.getFactory(element.getLanguage()).createReferenceAdjuster(myProject); - adjuster.processRange(element.getNode(), startOffset, endOffset); + final ReferenceAdjusterFactory factory = ReferenceAdjusterFactory.Extension.getFactory(element.getLanguage()); + if (factory != null) { + final ReferenceAdjuster adjuster = factory.createReferenceAdjuster(myProject); + adjuster.processRange(element.getNode(), startOffset, endOffset); + } } } @Override public PsiElement qualifyClassReferences(@NotNull PsiElement element) { - final ASTNode reference = new JavaReferenceAdjuster(true, true).process(element.getNode(), false, false); - return SourceTreeToPsiMap.treeToPsiNotNull(reference); + final ReferenceAdjusterFactory factory = ReferenceAdjusterFactory.Extension.getFactory(element.getLanguage()); + if (factory != null) { + final ASTNode reference = factory.createReferenceAdjuster(true, true).process(element.getNode(), false, false); + return SourceTreeToPsiMap.treeToPsiNotNull(reference); + } + return element; } @Override diff --git a/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaReferenceAdjusterFactory.java b/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaReferenceAdjusterFactory.java index b322618eddaf..306cb23ac670 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaReferenceAdjusterFactory.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaReferenceAdjusterFactory.java @@ -19,17 +19,20 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.codeStyle.CodeStyleSettingsManager; import com.intellij.psi.codeStyle.ReferenceAdjuster; import com.intellij.psi.codeStyle.ReferenceAdjusterFactory; +import org.jetbrains.annotations.NotNull; /** * @author Max Medvedev */ public class JavaReferenceAdjusterFactory implements ReferenceAdjusterFactory { + @NotNull @Override public ReferenceAdjuster createReferenceAdjuster(boolean useFqInJavadoc, boolean useFqInCode) { return new JavaReferenceAdjuster(useFqInJavadoc, useFqInCode); } + @NotNull @Override public ReferenceAdjuster createReferenceAdjuster(Project project) { return new JavaReferenceAdjuster(CodeStyleSettingsManager.getSettings(project)); diff --git a/java/java-psi-api/src/com/intellij/psi/codeStyle/ReferenceAdjusterFactory.java b/java/java-psi-api/src/com/intellij/psi/codeStyle/ReferenceAdjusterFactory.java index 5853669941ed..9cc66c1f70ba 100644 --- a/java/java-psi-api/src/com/intellij/psi/codeStyle/ReferenceAdjusterFactory.java +++ b/java/java-psi-api/src/com/intellij/psi/codeStyle/ReferenceAdjusterFactory.java @@ -18,14 +18,17 @@ package com.intellij.psi.codeStyle; import com.intellij.lang.Language; import com.intellij.lang.LanguageExtension; import com.intellij.openapi.project.Project; +import org.jetbrains.annotations.NotNull; /** * @author Max Medvedev */ public interface ReferenceAdjusterFactory { + @NotNull ReferenceAdjuster createReferenceAdjuster(boolean useFqInJavadoc, boolean useFqInCode); + @NotNull ReferenceAdjuster createReferenceAdjuster(Project project); class Extension extends LanguageExtension { diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeStyle/GrReferenceAdjusterFactory.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeStyle/GrReferenceAdjusterFactory.java index eb92dc803f13..aca89b097b9e 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeStyle/GrReferenceAdjusterFactory.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeStyle/GrReferenceAdjusterFactory.java @@ -19,16 +19,19 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.codeStyle.CodeStyleSettingsManager; import com.intellij.psi.codeStyle.ReferenceAdjuster; import com.intellij.psi.codeStyle.ReferenceAdjusterFactory; +import org.jetbrains.annotations.NotNull; /** * @author Max Medvedev */ public class GrReferenceAdjusterFactory implements ReferenceAdjusterFactory { + @NotNull @Override public ReferenceAdjuster createReferenceAdjuster(boolean useFqInJavadoc, boolean useFqInCode) { return new GrReferenceAdjuster(useFqInJavadoc, useFqInCode); } + @NotNull @Override public ReferenceAdjuster createReferenceAdjuster(Project project) { return new GrReferenceAdjuster(CodeStyleSettingsManager.getSettings(project).getCustomSettings(GroovyCodeStyleSettings.class)); diff --git a/plugins/javaFX/testData/quickfix/CreateControllerMethodInGroovy_after.groovy b/plugins/javaFX/testData/quickfix/CreateControllerMethodInGroovy_after.groovy index 62ebbfc476a1..9537d414dc21 100644 --- a/plugins/javaFX/testData/quickfix/CreateControllerMethodInGroovy_after.groovy +++ b/plugins/javaFX/testData/quickfix/CreateControllerMethodInGroovy_after.groovy @@ -1,3 +1,5 @@ +import javafx.event.ActionEvent + public class CreateControllerMethodInGroovy { public void bar(ActionEvent actionEvent) {