diff options
Diffstat (limited to 'bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDElementDeclarationAdapter.java')
-rw-r--r-- | bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDElementDeclarationAdapter.java | 339 |
1 files changed, 0 insertions, 339 deletions
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDElementDeclarationAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDElementDeclarationAdapter.java deleted file mode 100644 index c1501d72d0..0000000000 --- a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDElementDeclarationAdapter.java +++ /dev/null @@ -1,339 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2009 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.xsd.ui.internal.adapters; - -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.emf.common.notify.Adapter; -import org.eclipse.gef.commands.Command; -import org.eclipse.osgi.util.TextProcessor; -import org.eclipse.swt.graphics.Image; -import org.eclipse.wst.xsd.ui.internal.adt.actions.BaseSelectionAction; -import org.eclipse.wst.xsd.ui.internal.adt.actions.DeleteAction; -import org.eclipse.wst.xsd.ui.internal.adt.actions.SetInputToGraphView; -import org.eclipse.wst.xsd.ui.internal.adt.actions.ShowPropertiesViewAction; -import org.eclipse.wst.xsd.ui.internal.adt.design.IAnnotationProvider; -import org.eclipse.wst.xsd.ui.internal.adt.design.editparts.model.IActionProvider; -import org.eclipse.wst.xsd.ui.internal.adt.design.editparts.model.IGraphElement; -import org.eclipse.wst.xsd.ui.internal.adt.facade.IADTObject; -import org.eclipse.wst.xsd.ui.internal.adt.facade.IField; -import org.eclipse.wst.xsd.ui.internal.adt.facade.IModel; -import org.eclipse.wst.xsd.ui.internal.adt.facade.IType; -import org.eclipse.wst.xsd.ui.internal.adt.outline.ITreeElement; -import org.eclipse.wst.xsd.ui.internal.common.actions.AddXSDElementAction; -import org.eclipse.wst.xsd.ui.internal.common.actions.OpenInNewEditor; -import org.eclipse.wst.xsd.ui.internal.common.actions.SetMultiplicityAction; -import org.eclipse.wst.xsd.ui.internal.common.actions.SetTypeAction; -import org.eclipse.wst.xsd.ui.internal.common.commands.DeleteCommand; -import org.eclipse.wst.xsd.ui.internal.common.commands.UpdateNameCommand; -import org.eclipse.wst.xsd.ui.internal.editor.Messages; -import org.eclipse.wst.xsd.ui.internal.editor.XSDEditorPlugin; -import org.eclipse.xsd.XSDComplexTypeDefinition; -import org.eclipse.xsd.XSDElementDeclaration; -import org.eclipse.xsd.XSDParticle; -import org.eclipse.xsd.XSDSchema; -import org.eclipse.xsd.XSDTypeDefinition; -import org.eclipse.xsd.util.XSDConstants; -import org.w3c.dom.Element; - -public class XSDElementDeclarationAdapter extends XSDParticleAdapter implements IField, IActionProvider, IAnnotationProvider, IGraphElement -{ - protected XSDElementDeclaration getXSDElementDeclaration() - { - return (XSDElementDeclaration) target; - } - - public String getName() - { - String name = getXSDElementDeclaration().getResolvedElementDeclaration().getName(); - return (name == null) ? "" : name; //$NON-NLS-1$ - } - - public String getTypeName() - { - IType type = getType(); - if (type != null) - { - return type.getName(); - } - return null; - } - - public String getTypeNameQualifier() - { - XSDTypeDefinition type = getXSDElementDeclaration().getResolvedElementDeclaration().getTypeDefinition(); - if (type != null) - { - return type.getTargetNamespace(); - } - return ""; - } - - public IType getType() - { - XSDTypeDefinition td = getXSDElementDeclaration().getResolvedElementDeclaration().getTypeDefinition(); - //if (td != null && - // td.getTargetNamespace() != null && td.getTargetNamespace().equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001)) return null; - return (td != null) ? (IType) XSDAdapterFactory.getInstance().adapt(td) : null; - } - - public Image getImage() - { - XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration) target; - - if (!xsdElementDeclaration.isElementDeclarationReference()) - { - if (isReadOnly()) - { - return XSDEditorPlugin.getPlugin().getIcon("obj16/XSDElementdis.gif"); - } - return XSDEditorPlugin.getXSDImage("icons/XSDElement.gif"); //$NON-NLS-1$ - } - else - { - if (isReadOnly()) - { - return XSDEditorPlugin.getPlugin().getIcon("obj16/XSDElementRefdis.gif"); - } - return XSDEditorPlugin.getXSDImage("icons/XSDElementRef.gif"); //$NON-NLS-1$ - } - } - - public String getText() - { - XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration) target; - XSDElementDeclaration resolvedElementDeclaration = xsdElementDeclaration.getResolvedElementDeclaration(); - //String name = xsdElementDeclaration != resolvedElementDeclaration ? xsdElementDeclaration.getQName() : xsdElementDeclaration.getName(); - String name = resolvedElementDeclaration.getName(); - - StringBuffer result = new StringBuffer(); - if (name == null) - { - result.append(Messages._UI_LABEL_ABSENT); - } - else - { - result.append(name); - } - - if (!xsdElementDeclaration.isGlobal()) - { - Element element = xsdElementDeclaration.getElement(); - boolean hasMinOccurs = element.hasAttribute(XSDConstants.MINOCCURS_ATTRIBUTE); - boolean hasMaxOccurs = element.hasAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE); - - if (hasMinOccurs || hasMaxOccurs) - { - result.append(" ["); //$NON-NLS-1$ - if (hasMinOccurs) - { - int min = ((XSDParticle) xsdElementDeclaration.getContainer()).getMinOccurs(); - if (min == XSDParticle.UNBOUNDED) - { - result.append("*"); //$NON-NLS-1$ - } - else - { - result.append(String.valueOf(min)); - } - } - else - // print default - { - int min = ((XSDParticle) xsdElementDeclaration.getContainer()).getMinOccurs(); - result.append(String.valueOf(min)); - } - if (hasMaxOccurs) - { - int max = ((XSDParticle) xsdElementDeclaration.getContainer()).getMaxOccurs(); - result.append(".."); //$NON-NLS-1$ - if (max == XSDParticle.UNBOUNDED) - { - result.append("*"); //$NON-NLS-1$ - } - else - { - result.append(String.valueOf(max)); - } - } - else - // print default - { - result.append(".."); //$NON-NLS-1$ - int max = ((XSDParticle) xsdElementDeclaration.getContainer()).getMaxOccurs(); - result.append(String.valueOf(max)); - - } - result.append("]"); //$NON-NLS-1$ - } - } - - if (resolvedElementDeclaration.getAnonymousTypeDefinition() == null && resolvedElementDeclaration.getTypeDefinition() != null) - { - result.append(" : "); //$NON-NLS-1$ - // result.append(resolvedElementDeclaration.getTypeDefinition().getQName(xsdElementDeclaration)); - result.append(resolvedElementDeclaration.getTypeDefinition().getName()); - } - - String text = result.toString(); - String processedString = TextProcessor.process(text, ":"); - return processedString; - - } - - public ITreeElement[] getChildren() - { - XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration) target; - List list = new ArrayList(); - XSDTypeDefinition type = null; - if (xsdElementDeclaration.isElementDeclarationReference()) - { - type = xsdElementDeclaration.getResolvedElementDeclaration().getTypeDefinition(); - } - else - { - type = xsdElementDeclaration.getAnonymousTypeDefinition(); - if (type == null) - { - type = xsdElementDeclaration.getTypeDefinition(); - } - } - - if (type instanceof XSDComplexTypeDefinition && type.getTargetNamespace() != null && !type.getTargetNamespace().equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001)) - { - XSDComplexTypeDefinition ctType = (XSDComplexTypeDefinition) type; - if (ctType != null) - { - if (xsdElementDeclaration.isGlobal()) - list.add(ctType); - } - } - - List adapterList = new ArrayList(); - populateAdapterList(list, adapterList); - return (ITreeElement[]) adapterList.toArray(new ITreeElement[0]); - - } - - public String getKind() - { - return "element"; //$NON-NLS-1$ - } - - public boolean isGlobal() - { - return getXSDElementDeclaration().eContainer() instanceof XSDSchema; - } - - public boolean isReference() - { - return ((XSDElementDeclaration) target).isElementDeclarationReference(); - } - - public Command getUpdateMaxOccursCommand(int maxOccurs) - { - // TODO Auto-generated method stub - return null; - } - - public Command getUpdateMinOccursCommand(int minOccurs) - { - // TODO Auto-generated method stub - return null; - } - - public Command getUpdateNameCommand(String name) - { - return new UpdateNameCommand(Messages._UI_ACTION_UPDATE_NAME, getXSDElementDeclaration().getResolvedElementDeclaration(), name); - } - - public Command getUpdateTypeNameCommand(String typeName, String quailifier) - { - // TODO Auto-generated method stub - return null; - } - - public Command getDeleteCommand() - { - // TODO Auto-generated method stub - return new DeleteCommand(getXSDElementDeclaration()); - } - - public String[] getActions(Object object) - { - List list = new ArrayList(); - - if (!isGlobal()) - { - list.add(BaseSelectionAction.SUBMENU_START_ID + Messages._UI_ACTION_INSERT_ELEMENT); - list.add(AddXSDElementAction.BEFORE_SELECTED_ID); - list.add(AddXSDElementAction.AFTER_SELECTED_ID); - list.add(BaseSelectionAction.SUBMENU_END_ID); - } - - list.add(BaseSelectionAction.SUBMENU_START_ID + Messages._UI_ACTION_SET_TYPE); - list.add(SetTypeAction.SET_NEW_TYPE_ID); - list.add(SetTypeAction.SELECT_EXISTING_TYPE_ID); - list.add(BaseSelectionAction.SUBMENU_END_ID); - - list.add(BaseSelectionAction.SUBMENU_START_ID + Messages._UI_ACTION_SET_MULTIPLICITY); - list.add(SetMultiplicityAction.REQUIRED_ID); - list.add(SetMultiplicityAction.ZERO_OR_ONE_ID); - list.add(SetMultiplicityAction.ZERO_OR_MORE_ID); - list.add(SetMultiplicityAction.ONE_OR_MORE_ID); - list.add(BaseSelectionAction.SUBMENU_END_ID); - - list.add(BaseSelectionAction.SEPARATOR_ID); - list.add(DeleteAction.ID); - list.add(BaseSelectionAction.SEPARATOR_ID); - Object schema = getEditorSchema(); - if (getXSDElementDeclaration().getSchema() == schema) - { - if (getXSDElementDeclaration().getContainer() == schema) - { - list.add(SetInputToGraphView.ID); - } - } - else - { - list.add(OpenInNewEditor.ID); - } - list.add(BaseSelectionAction.SEPARATOR_ID); - list.add(ShowPropertiesViewAction.ID); - return (String [])list.toArray(new String[0]); - } - - public IModel getModel() - { - Adapter adapter = XSDAdapterFactory.getInstance().adapt(getXSDElementDeclaration().getSchema()); - return (IModel)adapter; - } - - public boolean isFocusAllowed() - { - return isGlobal(); - } - - public IADTObject getTopContainer() - { - if (!isGlobal()) - { - return getGlobalXSDContainer(getXSDElementDeclaration()); - } - return this; - } - - public boolean isAbstract() - { - return getXSDElementDeclaration().isAbstract(); - } -} |