mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
javafx: Move duplicate code to a utility method (IDEA-150446)
This commit is contained in:
@@ -679,6 +679,11 @@ public class JavaFxPsiUtil {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static boolean hasConversionFromAnyType(@NotNull PsiClass targetClass) {
|
||||
return Comparing.strEqual(targetClass.getQualifiedName(), CommonClassNames.JAVA_LANG_STRING)
|
||||
|| findValueOfMethod(targetClass) != null;
|
||||
}
|
||||
|
||||
private static class JavaFxControllerCachedValueProvider implements CachedValueProvider<PsiClass> {
|
||||
private final Project myProject;
|
||||
private final PsiFile myContainingFile;
|
||||
|
||||
+1
-6
@@ -1,6 +1,5 @@
|
||||
package org.jetbrains.plugins.javaFX.fxml.descriptors;
|
||||
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.codeStyle.JavaCodeStyleManager;
|
||||
@@ -158,11 +157,7 @@ public class JavaFxPropertyAttributeDescriptor extends BasicXmlAttributeDescript
|
||||
final XmlTag currentTag = PsiTreeUtil.getParentOfType(xmlAttributeValue, XmlTag.class);
|
||||
final Map<String, XmlAttributeValue> fileIds = JavaFxPsiUtil.collectFileIds(currentTag);
|
||||
final PsiClass targetPropertyClass = JavaFxPsiUtil.getPropertyClass(xmlAttributeValue);
|
||||
if (targetPropertyClass == null ||
|
||||
Comparing.strEqual(targetPropertyClass.getQualifiedName(), CommonClassNames.JAVA_LANG_STRING) ||
|
||||
JavaFxPsiUtil.findValueOfMethod(targetPropertyClass) != null) {
|
||||
return null;
|
||||
}
|
||||
if (targetPropertyClass == null || JavaFxPsiUtil.hasConversionFromAnyType(targetPropertyClass)) return null;
|
||||
final PsiClass valueClass;
|
||||
if (JavaFxPsiUtil.isExpressionBinding(value)) {
|
||||
final String expressionText = referencesId.substring(1, referencesId.length() - 1);
|
||||
|
||||
+1
-4
@@ -18,7 +18,6 @@ package org.jetbrains.plugins.javaFX.fxml.refs;
|
||||
import com.intellij.codeInsight.completion.PrioritizedLookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupElementBuilder;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
import com.intellij.openapi.util.TextRange;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.*;
|
||||
@@ -80,9 +79,7 @@ class JavaFxComponentIdReferenceProvider extends PsiReferenceProvider {
|
||||
final PsiClass controllerClass = JavaFxPsiUtil.getControllerClass(element.getContainingFile());
|
||||
|
||||
final PsiClass targetPropertyClass = JavaFxPsiUtil.getPropertyClass(xmlAttributeValue);
|
||||
final boolean isConvertible = targetPropertyClass != null &&
|
||||
(Comparing.strEqual(targetPropertyClass.getQualifiedName(), CommonClassNames.JAVA_LANG_STRING)
|
||||
|| JavaFxPsiUtil.findValueOfMethod(targetPropertyClass) != null);
|
||||
final boolean isConvertible = targetPropertyClass != null && JavaFxPsiUtil.hasConversionFromAnyType(targetPropertyClass);
|
||||
|
||||
final Map<String, TypeMatch> typeMatches = fileIds.entrySet().stream().collect(
|
||||
Collectors.toMap(Map.Entry::getKey, e -> {
|
||||
|
||||
Reference in New Issue
Block a user