From 4f14051a49e77c8df90716507acd11ea0bc5e22a Mon Sep 17 00:00:00 2001 From: anna Date: Wed, 27 Mar 2013 21:53:50 +0100 Subject: [PATCH] javafx: accept references inside define --- .../plugins/javaFX/fxml/JavaFXHighlightingTest.java | 4 ++++ .../JavaFxDefaultPropertyElementDescriptor.java | 6 +++--- .../highlighting/acceptReferenceInsideDefine.fxml | 8 ++++++++ 3 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 plugins/javaFX/testData/highlighting/acceptReferenceInsideDefine.fxml diff --git a/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFXHighlightingTest.java b/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFXHighlightingTest.java index 0bbc1ea43d66..c1ab0332f7be 100644 --- a/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFXHighlightingTest.java +++ b/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFXHighlightingTest.java @@ -295,6 +295,10 @@ public class JavaFXHighlightingTest extends AbstractJavaFXTestCase { doTest(); } + public void testAcceptReferenceInsideDefine() throws Exception { + doTest(); + } + public void testIncludedForm() throws Exception { myFixture.addFileToProject("sample.fxml", "\n" + "\n"); diff --git a/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/descriptors/JavaFxDefaultPropertyElementDescriptor.java b/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/descriptors/JavaFxDefaultPropertyElementDescriptor.java index e5fb621a0ffc..44a8dd455d49 100644 --- a/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/descriptors/JavaFxDefaultPropertyElementDescriptor.java +++ b/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/descriptors/JavaFxDefaultPropertyElementDescriptor.java @@ -76,14 +76,14 @@ public class JavaFxDefaultPropertyElementDescriptor implements XmlElementDescrip @Override public XmlElementDescriptor getElementDescriptor(XmlTag childTag, XmlTag contextTag) { final String name = childTag.getName(); - if (myName.equals(FxmlConstants.FX_DEFINE)) { - if (name.equals(FxmlConstants.FX_INCLUDE)) { + if (FxmlConstants.FX_DEFINE.equals(myName)) { + if (FxmlConstants.FX_INCLUDE.equals(name) || FxmlConstants.FX_REFERENCE.equals(name)) { return new JavaFxDefaultPropertyElementDescriptor(name, childTag); } return new JavaFxClassBackedElementDescriptor(name, childTag); } - if (myName.equals(FxmlConstants.FX_ROOT)) { + if (FxmlConstants.FX_ROOT.equals(myName)) { final JavaFxClassBackedElementDescriptor tagDescriptor = getRootTagDescriptor(contextTag); if (tagDescriptor != null) { return tagDescriptor.getElementDescriptor(childTag, contextTag); diff --git a/plugins/javaFX/testData/highlighting/acceptReferenceInsideDefine.fxml b/plugins/javaFX/testData/highlighting/acceptReferenceInsideDefine.fxml new file mode 100644 index 000000000000..e57bf587ea56 --- /dev/null +++ b/plugins/javaFX/testData/highlighting/acceptReferenceInsideDefine.fxml @@ -0,0 +1,8 @@ + + + +