[204618] Unable to set "required" use option in XSD design view when adding attribute reference
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAttributeDeclarationSection.java b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAttributeDeclarationSection.java
index 2507e7e..ce46a7f 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAttributeDeclarationSection.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAttributeDeclarationSection.java
@@ -326,9 +326,9 @@
{
if (input instanceof XSDAttributeDeclaration)
{
- XSDAttributeDeclaration xsdAttribute = ((XSDAttributeDeclaration) input).getResolvedAttributeDeclaration();
+ XSDAttributeDeclaration xsdAttribute = (XSDAttributeDeclaration) input;
isAttributeReference = ((XSDAttributeDeclaration)input).isAttributeDeclarationReference();
- XSDTypeDefinition typeDef = xsdAttribute.getTypeDefinition();
+ XSDTypeDefinition typeDef = xsdAttribute.getResolvedAttributeDeclaration().getTypeDefinition();
boolean isAnonymous = xsdAttribute.getAnonymousTypeDefinition() != null;
if (isAnonymous)
@@ -401,7 +401,7 @@
}
formCombo.setText("");
- formCombo.setEnabled(!xsdAttribute.isGlobal());
+ formCombo.setEnabled(!xsdAttribute.isGlobal() && !isAttributeReference);
boolean hasFormAttribute = false;
if (element != null)
{