mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
javafx: accept to complete list attrs (IDEA-101228)
This commit is contained in:
+4
-4
@@ -65,7 +65,7 @@ public class JavaFxClassBackedElementDescriptor implements XmlElementDescriptor,
|
||||
if (context != null) {
|
||||
if (myPsiClass != null) {
|
||||
final List<XmlElementDescriptor> children = new ArrayList<XmlElementDescriptor>();
|
||||
collectProperties(children, true, context, new Function<PsiField, XmlElementDescriptor>() {
|
||||
collectProperties(children, context, new Function<PsiField, XmlElementDescriptor>() {
|
||||
@Override
|
||||
public XmlElementDescriptor fun(PsiField field) {
|
||||
return new JavaFxPropertyElementDescriptor(myPsiClass, field.getName(), false);
|
||||
@@ -162,7 +162,7 @@ public class JavaFxClassBackedElementDescriptor implements XmlElementDescriptor,
|
||||
final String name = context.getName();
|
||||
if (Comparing.equal(name, getName()) && myPsiClass != null) {
|
||||
final List<XmlAttributeDescriptor> simpleAttrs = new ArrayList<XmlAttributeDescriptor>();
|
||||
collectProperties(simpleAttrs, false, context, new Function<PsiField, XmlAttributeDescriptor>() {
|
||||
collectProperties(simpleAttrs, context, new Function<PsiField, XmlAttributeDescriptor>() {
|
||||
@Override
|
||||
public XmlAttributeDescriptor fun(PsiField field) {
|
||||
return new JavaFxPropertyAttributeDescriptor(field.getName(), myPsiClass);
|
||||
@@ -178,7 +178,7 @@ public class JavaFxClassBackedElementDescriptor implements XmlElementDescriptor,
|
||||
return XmlAttributeDescriptor.EMPTY;
|
||||
}
|
||||
|
||||
private <T> void collectProperties(List<T> children, boolean includeListProperties, XmlTag context, Function<PsiField, T> factory) {
|
||||
private <T> void collectProperties(List<T> children, XmlTag context, Function<PsiField, T> factory) {
|
||||
final PsiField[] fields = myPsiClass.getAllFields();
|
||||
if (fields.length > 0) {
|
||||
for (PsiField field : fields) {
|
||||
@@ -187,7 +187,7 @@ public class JavaFxClassBackedElementDescriptor implements XmlElementDescriptor,
|
||||
if (!JavaFxPsiUtil.isReadOnly(field.getName(), context) &&
|
||||
InheritanceUtil.isInheritor(fieldType, JavaFxCommonClassNames.JAVAFX_BEANS_PROPERTY) ||
|
||||
fieldType.equalsToText(CommonClassNames.JAVA_LANG_STRING) ||
|
||||
includeListProperties && GenericsHighlightUtil.getCollectionItemType(field.getType(), myPsiClass.getResolveScope()) != null) {
|
||||
GenericsHighlightUtil.getCollectionItemType(field.getType(), myPsiClass.getResolveScope()) != null) {
|
||||
children.add(factory.fun(field));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?import javafx.scene.layout.*?>
|
||||
<?import java.util.*?>
|
||||
<?import java.net.*?>
|
||||
<AnchorPane <caret> xmlns:fx="http://javafx.com/fxml">
|
||||
</AnchorPane>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?import javafx.scene.layout.*?>
|
||||
<?import java.util.*?>
|
||||
<?import java.net.*?>
|
||||
<AnchorPane stylesheets="" xmlns:fx="http://javafx.com/fxml">
|
||||
</AnchorPane>
|
||||
@@ -105,6 +105,10 @@ public class JavaFxCompletionTest extends CompletionTestCase {
|
||||
doTest("mystyle.css", "mystyle.css");
|
||||
}
|
||||
|
||||
public void testListAttributes() throws Exception {
|
||||
doTest("stylesheets");
|
||||
}
|
||||
|
||||
public void testReadOnly() throws Exception {
|
||||
configureByFile(getTestName(true) + ".fxml");
|
||||
assertTrue(myItems.length > 0);
|
||||
|
||||
Reference in New Issue
Block a user