[141675] anyAttribute not shown in the graph view
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDVisitorForFields.java b/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDVisitorForFields.java
index d36350a..081788d 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDVisitorForFields.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDVisitorForFields.java
@@ -72,7 +72,12 @@
}
}
}
- }
+ }
+ if (type.getAttributeWildcard() != null)
+ {
+ thingsWeNeedToListenTo.add(type.getAttributeWildcard());
+ concreteComponentList.add(type.getAttributeWildcard());
+ }
super.visitComplexTypeDefinition(type);
}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDWildcardAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDWildcardAdapter.java
index f2d2506..b22e6a2 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDWildcardAdapter.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDWildcardAdapter.java
@@ -30,11 +30,27 @@
{
}
-
+
public Image getImage()
{
XSDWildcard xsdWildcard = (XSDWildcard) target;
- return XSDEditorPlugin.getXSDImage(xsdWildcard.eContainer() instanceof XSDParticle ? "icons/XSDAny.gif" : "icons/XSDAnyAttribute.gif"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ if (xsdWildcard.eContainer() instanceof XSDParticle)
+ {
+ if (isReadOnly())
+ {
+ return XSDEditorPlugin.getPlugin().getIcon("obj16/XSDAnydis.gif"); //$NON-NLS-1$
+ }
+ return XSDEditorPlugin.getXSDImage("icons/XSDAny.gif"); //$NON-NLS-1$
+ }
+ else
+ {
+ if (isReadOnly())
+ {
+ return XSDEditorPlugin.getPlugin().getIcon("obj16/XSDAnyAttributedis.gif"); //$NON-NLS-1$
+ }
+ return XSDEditorPlugin.getXSDImage("icons/XSDAnyAttribute.gif"); //$NON-NLS-1$
+ }
}
public String getText()
@@ -118,7 +134,12 @@
public String getKind()
{
- return "element"; //$NON-NLS-1$
+ XSDWildcard xsdWildcard = (XSDWildcard) target;
+ if (xsdWildcard.eContainer() instanceof XSDParticle)
+ {
+ return "element"; //$NON-NLS-1$
+ }
+ return "attribute";
}
public IModel getModel()
@@ -128,7 +149,12 @@
public String getName()
{
- return "anyElement"; //$NON-NLS-1$
+ XSDWildcard xsdWildcard = (XSDWildcard) target;
+ if (xsdWildcard.eContainer() instanceof XSDParticle)
+ {
+ return "any"; //$NON-NLS-1$
+ }
+ return "anyAttribute"; //$NON-NLS-1$
}
public IType getType()
@@ -138,7 +164,7 @@
public String getTypeName()
{
- return "anyType"; //$NON-NLS-1$
+ return ""; //$NON-NLS-1$
}
public String getTypeNameQualifier()
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAnyElementContentsSection.java b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAnyElementContentsSection.java
index d3a1dc8..f3ff906 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAnyElementContentsSection.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAnyElementContentsSection.java
@@ -21,6 +21,7 @@
import org.eclipse.swt.widgets.Composite;
import org.eclipse.wst.xsd.ui.internal.editor.Messages;
import org.eclipse.xsd.XSDConcreteComponent;
+import org.eclipse.xsd.XSDParticle;
import org.eclipse.xsd.XSDProcessContents;
import org.eclipse.xsd.XSDWildcard;
import org.eclipse.xsd.util.XSDConstants;
@@ -152,9 +153,19 @@
XSDProcessContents pc = wildcard.getProcessContents();
processContentsCombo.setText(pc.getName());
}
+
+ if (wildcard.eContainer() instanceof XSDParticle)
+ {
+ minCombo.setEnabled(!isReadOnly);
+ maxCombo.setEnabled(!isReadOnly);
+ }
+ else
+ {
+ minCombo.setEnabled(false);
+ maxCombo.setEnabled(false);
+ }
}
}
-
refreshMinMax();
setListenerEnabled(true);
}