⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbdesignerviewprovider.java

📁 eclipse平台
💻 JAVA
字号:
package dbdesigner.diagram.providers;

import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.diagram.core.providers.AbstractViewProvider;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
import dbdesigner.diagram.edit.parts.ColumnEditPart;
import dbdesigner.diagram.edit.parts.ColumnNameEditPart;
import dbdesigner.diagram.edit.parts.DatabaseEditPart;
import dbdesigner.diagram.edit.parts.FKRelationEditPart;
import dbdesigner.diagram.edit.parts.FKRelationLabelEditPart;
import dbdesigner.diagram.edit.parts.TableColumnCompartmentEditPart;
import dbdesigner.diagram.edit.parts.TableEditPart;
import dbdesigner.diagram.edit.parts.TableNameEditPart;

import dbdesigner.diagram.part.DbdesignerVisualIDRegistry;

import dbdesigner.diagram.view.factories.ColumnNameViewFactory;
import dbdesigner.diagram.view.factories.ColumnViewFactory;
import dbdesigner.diagram.view.factories.DatabaseViewFactory;
import dbdesigner.diagram.view.factories.FKRelationLabelViewFactory;
import dbdesigner.diagram.view.factories.FKRelationViewFactory;
import dbdesigner.diagram.view.factories.TableColumnCompartmentViewFactory;
import dbdesigner.diagram.view.factories.TableNameViewFactory;
import dbdesigner.diagram.view.factories.TableViewFactory;

/**
 * @generated
 */
public class DbdesignerViewProvider extends AbstractViewProvider {

	/**
	 * @generated
	 */
	protected Class getDiagramViewClass(IAdaptable semanticAdapter,
			String diagramKind) {
		EObject semanticElement = getSemanticElement(semanticAdapter);
		if (DatabaseEditPart.MODEL_ID.equals(diagramKind)
				&& DbdesignerVisualIDRegistry
						.getDiagramVisualID(semanticElement) != -1) {
			return DatabaseViewFactory.class;
		}
		return null;
	}

	/**
	 * @generated
	 */
	protected Class getNodeViewClass(IAdaptable semanticAdapter,
			View containerView, String semanticHint) {
		if (containerView == null) {
			return null;
		}
		IElementType elementType = getSemanticElementType(semanticAdapter);
		if (elementType != null
				&& !DbdesignerElementTypes.isKnownElementType(elementType)) {
			return null;
		}
		EClass semanticType = getSemanticEClass(semanticAdapter);
		EObject semanticElement = getSemanticElement(semanticAdapter);
		int nodeVID = DbdesignerVisualIDRegistry.getNodeVisualID(containerView,
				semanticElement, semanticType, semanticHint);
		switch (nodeVID) {
		case TableEditPart.VISUAL_ID:
			return TableViewFactory.class;
		case TableNameEditPart.VISUAL_ID:
			return TableNameViewFactory.class;
		case ColumnEditPart.VISUAL_ID:
			return ColumnViewFactory.class;
		case ColumnNameEditPart.VISUAL_ID:
			return ColumnNameViewFactory.class;
		case TableColumnCompartmentEditPart.VISUAL_ID:
			return TableColumnCompartmentViewFactory.class;
		case FKRelationLabelEditPart.VISUAL_ID:
			return FKRelationLabelViewFactory.class;
		}
		return null;
	}

	/**
	 * @generated
	 */
	protected Class getEdgeViewClass(IAdaptable semanticAdapter,
			View containerView, String semanticHint) {
		IElementType elementType = getSemanticElementType(semanticAdapter);
		if (elementType != null
				&& !DbdesignerElementTypes.isKnownElementType(elementType)) {
			return null;
		}
		EClass semanticType = getSemanticEClass(semanticAdapter);
		if (semanticType == null) {
			return null;
		}
		EObject semanticElement = getSemanticElement(semanticAdapter);
		int linkVID = DbdesignerVisualIDRegistry.getLinkWithClassVisualID(
				semanticElement, semanticType);
		switch (linkVID) {
		case FKRelationEditPart.VISUAL_ID:
			return FKRelationViewFactory.class;
		}
		return getUnrecognizedConnectorViewClass(semanticAdapter,
				containerView, semanticHint);
	}

	/**
	 * @generated
	 */
	private IElementType getSemanticElementType(IAdaptable semanticAdapter) {
		if (semanticAdapter == null) {
			return null;
		}
		return (IElementType) semanticAdapter.getAdapter(IElementType.class);
	}

	/**
	 * @generated
	 */
	private Class getUnrecognizedConnectorViewClass(IAdaptable semanticAdapter,
			View containerView, String semanticHint) {
		// Handle unrecognized child node classes here
		return null;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -