[143376] WSDL properties view does not disable the Add/Delete extensiblity buttons
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src-asd-wsdl11/org/eclipse/wst/wsdl/ui/internal/properties/sections/W11ExtensionsSection.java b/bundles/org.eclipse.wst.wsdl.ui/src-asd-wsdl11/org/eclipse/wst/wsdl/ui/internal/properties/sections/W11ExtensionsSection.java
index 7692489..a988dbe 100644
--- a/bundles/org.eclipse.wst.wsdl.ui/src-asd-wsdl11/org/eclipse/wst/wsdl/ui/internal/properties/sections/W11ExtensionsSection.java
+++ b/bundles/org.eclipse.wst.wsdl.ui/src-asd-wsdl11/org/eclipse/wst/wsdl/ui/internal/properties/sections/W11ExtensionsSection.java
@@ -31,6 +31,7 @@
import org.eclipse.wst.wsdl.ui.internal.filter.ExtensiblityElementFilter;
import org.eclipse.wst.wsdl.ui.internal.text.WSDLModelAdapter;
import org.eclipse.wst.xsd.ui.internal.common.commands.AddExtensionCommand;
+import org.eclipse.wst.xsd.ui.internal.common.commands.RemoveExtensionNodeCommand;
import org.eclipse.wst.xsd.ui.internal.common.properties.sections.AbstractExtensionsSection;
import org.eclipse.wst.xsd.ui.internal.common.properties.sections.appinfo.AddExtensionsComponentDialog;
import org.eclipse.wst.xsd.ui.internal.common.properties.sections.appinfo.DOMExtensionTreeContentProvider;
@@ -39,6 +40,7 @@
import org.eclipse.xsd.XSDAttributeDeclaration;
import org.eclipse.xsd.XSDElementDeclaration;
import org.w3c.dom.Element;
+import org.w3c.dom.Node;
public class W11ExtensionsSection extends AbstractExtensionsSection
{
@@ -72,7 +74,10 @@
protected Command getRemoveExtensionCommand(Object o)
{
- // TODO Auto-generated method stub
+ if (o instanceof Node)
+ {
+ return new RemoveExtensionNodeCommand("remove", (Node)o);
+ }
return null;
}
@@ -81,7 +86,7 @@
// need to clean that up!!
// TODO (cs) we should avoid referencing WSDL model objects ... go thru facade instead
public void setInput(IWorkbenchPart part, ISelection selection)
- {
+ {
super.setInput(part, selection);
isReadOnly = true;
ExtensibleElement extensibleElement = getExtensibleElement(input);
@@ -159,7 +164,7 @@
{
ExtensibleElement extensibleElement = getExtensibleElement(inputElement);
if (extensibleElement != null)
- {
+ {
List domElementList = new ArrayList();
for (Iterator i = extensibleElement.getExtensibilityElements().iterator(); i.hasNext(); )
{
@@ -233,4 +238,10 @@
return true;
}
}
+
+ protected boolean isTreeViewerInputElement(Element element)
+ {
+ ExtensibleElement extensibleElement = getExtensibleElement(input);
+ return extensibleElement != null && extensibleElement.getElement() == element;
+ }
}