Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTypeReferenceEditManager.java')
-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTypeReferenceEditManager.java227
1 files changed, 0 insertions, 227 deletions
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTypeReferenceEditManager.java b/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTypeReferenceEditManager.java
deleted file mode 100644
index 9e1e13be17..0000000000
--- a/bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTypeReferenceEditManager.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 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.editor;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.ui.internal.search.dialogs.ComponentSpecification;
-import org.eclipse.wst.common.ui.internal.search.dialogs.IComponentDescriptionProvider;
-import org.eclipse.wst.xsd.ui.internal.adt.edit.ComponentReferenceEditManager;
-import org.eclipse.wst.xsd.ui.internal.adt.edit.ComponentReferenceEditManager2;
-import org.eclipse.wst.xsd.ui.internal.adt.edit.IComponentDialog;
-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.common.commands.AddXSDComplexTypeDefinitionCommand;
-import org.eclipse.wst.xsd.ui.internal.common.commands.AddXSDSimpleTypeDefinitionCommand;
-import org.eclipse.wst.xsd.ui.internal.common.commands.UpdateTypeReferenceAndManageDirectivesCommand;
-import org.eclipse.wst.xsd.ui.internal.common.commands.UpdateTypeReferenceCommand;
-import org.eclipse.wst.xsd.ui.internal.common.util.XSDDirectivesManager;
-import org.eclipse.wst.xsd.ui.internal.dialogs.NewTypeDialog;
-import org.eclipse.wst.xsd.ui.internal.editor.search.XSDSearchListDialogDelegate;
-import org.eclipse.wst.xsd.ui.internal.search.IXSDSearchConstants;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.eclipse.xsd.util.XSDSchemaBuildingTools;
-
-public class XSDTypeReferenceEditManager implements ComponentReferenceEditManager, ComponentReferenceEditManager2
-{
- protected IFile currentFile;
- protected XSDSchema[] schemas;
- private static ComponentSpecification result[];
- private IADTObject referencer;
-
- public XSDTypeReferenceEditManager(IFile currentFile, XSDSchema[] schemas)
- {
- this.currentFile = currentFile;
- this.schemas = schemas;
- }
-
- public void addToHistory(ComponentSpecification component)
- {
- // TODO (cs) implement me!
- }
-
- public IADTObject getReferencer()
- {
- return referencer;
- }
-
- public void setReferencer(IADTObject referencer)
- {
- this.referencer = referencer;
- }
-
- public IComponentDialog getBrowseDialog()
- {
- //XSDSetExistingTypeDialog dialog = new XSDSetExistingTypeDialog(currentFile, schemas);
- //return dialog;
- XSDSearchListDialogDelegate dialogDelegate = new XSDSearchListDialogDelegate(XSDSearchListDialogDelegate.TYPE_META_NAME, currentFile, schemas);
- return dialogDelegate;
- }
-
- public IComponentDescriptionProvider getComponentDescriptionProvider()
- {
- // TODO Auto-generated method stub
- return null;
- }
-
- public ComponentSpecification[] getHistory()
- {
- // TODO (cs) implement this properly - should this history be global or local to each editor?
- // This is something we should play around with ourselves to see what feels right.
- //
- List list = new ArrayList();
- ComponentSpecification result[] = new ComponentSpecification[list.size()];
- list.toArray(result);
- return result;
- }
-
- public IComponentDialog getNewDialog()
- {
- NewTypeDialog result = null;
- if (schemas.length > 0)
- {
- result = new NewTypeDialog(schemas[0]);
- }
- else
- {
- result = new NewTypeDialog();
- }
- if (referencer instanceof IField)
- {
- IField field = (IField)referencer;
- if (XSDConstants.ATTRIBUTE_ELEMENT_TAG.equals(field.getKind()))
- {
- result.allowComplexType(false);
- }
- String fieldName = field.getName();
- if (fieldName != null)
- {
- fieldName = fieldName.trim();
- if (fieldName.length() > 0)
- {
- result.setDefaultName(NLS.bind(Messages._UI_VALUE_NEW_TYPE, fieldName));
- }
- }
- }
- return result;
- }
-
- public ComponentSpecification[] getQuickPicks()
- {
- if (result != null)
- return result;
-
- // TODO (cs) implement this properly - we should be providing a list of the
- // most 'common' built in schema types here
- // I believe Trung will be working on a perference page to give us this list
- // for now let's hard code some values
- //
- List list = new ArrayList();
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "boolean", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "date", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "dateTime", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "double", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "float", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "hexBinary", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "int", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "string", null)); //$NON-NLS-1$
- list.add(new ComponentSpecification(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "time", null)); //$NON-NLS-1$
- result = new ComponentSpecification[list.size()];
- list.toArray(result);
- return result;
- }
-
-
- public void modifyComponentReference(Object referencingObject, ComponentSpecification component)
- {
- XSDConcreteComponent concreteComponent = null;
- if (referencingObject instanceof Adapter)
- {
- Adapter adpater = (Adapter)referencingObject;
- if (adpater.getTarget() instanceof XSDConcreteComponent)
- {
- concreteComponent = (XSDConcreteComponent)adpater.getTarget();
- }
- }
- else if (referencingObject instanceof XSDConcreteComponent)
- {
- concreteComponent = (XSDConcreteComponent) referencingObject;
- }
-
- if (concreteComponent != null)
- {
- if (component.isNew())
- {
- XSDTypeDefinition td = null;
- if (component.getName() == null // This means we set to anonymous type
- && concreteComponent instanceof XSDElementDeclaration)
- {
- XSDFactory factory = XSDSchemaBuildingTools.getXSDFactory();
- XSDElementDeclaration elementDeclaration = (XSDElementDeclaration) concreteComponent;
- // TODO (cs) we should use actions here so that UNDO/REDO can work nicely
- // with the proper undo descriptions
- if (component.getMetaName() == IXSDSearchConstants.COMPLEX_TYPE_META_NAME)
- {
- XSDComplexTypeDefinition complexType = factory.createXSDComplexTypeDefinition();
- elementDeclaration.setAnonymousTypeDefinition(complexType);
- }
- else
- {
- XSDSimpleTypeDefinition simpleType = factory.createXSDSimpleTypeDefinition();
- simpleType.setBaseTypeDefinition(
- elementDeclaration.getSchema().getSchemaForSchema().resolveSimpleTypeDefinition(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "string") ); //$NON-NLS-1$
- elementDeclaration.setAnonymousTypeDefinition(simpleType);
- }
- elementDeclaration.getElement().removeAttribute("type"); //TODO use external literal string
- }
- else if (component.getMetaName() == IXSDSearchConstants.COMPLEX_TYPE_META_NAME)
- {
- AddXSDComplexTypeDefinitionCommand command = new AddXSDComplexTypeDefinitionCommand(Messages._UI_ACTION_ADD_COMPLEX_TYPE, concreteComponent.getSchema());
- command.setNameToAdd(component.getName());
- command.execute();
- td = command.getCreatedComplexType();
- }
- else
- {
- AddXSDSimpleTypeDefinitionCommand command = new AddXSDSimpleTypeDefinitionCommand(Messages._UI_ACTION_ADD_SIMPLE_TYPE, concreteComponent.getSchema());
- command.setNameToAdd(component.getName());
- command.execute();
- td = command.getCreatedSimpleType();
- }
- if (td != null)
- {
- Command command = new UpdateTypeReferenceCommand(concreteComponent, td);
- command.setLabel(Messages._UI_ACTION_SET_TYPE);
- command.execute();
- }
- XSDDirectivesManager.removeUnusedXSDImports(concreteComponent.getSchema());
- }
- else
- {
- Command command = new UpdateTypeReferenceAndManageDirectivesCommand(concreteComponent, component.getName(), component.getQualifier(), component.getFile());
- command.setLabel(Messages._UI_ACTION_SET_TYPE);
- command.execute();
- }
- }
- }
-}

Back to the top