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

📄 dbdesignernavigatorlabelprovider.java

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

import dbdesigner.NamedElement;

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.TableEditPart;
import dbdesigner.diagram.edit.parts.TableNameEditPart;

import dbdesigner.diagram.part.DbdesignerDiagramEditorPlugin;
import dbdesigner.diagram.part.DbdesignerVisualIDRegistry;

import dbdesigner.diagram.providers.DbdesignerElementTypes;
import dbdesigner.diagram.providers.DbdesignerParserProvider;

import org.eclipse.core.runtime.IAdaptable;

import org.eclipse.emf.ecore.EObject;

import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserOptions;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserService;

import org.eclipse.gmf.runtime.emf.type.core.IElementType;

import org.eclipse.gmf.runtime.notation.View;

import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.resource.ImageRegistry;

import org.eclipse.jface.viewers.ITreePathLabelProvider;
import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.jface.viewers.TreePath;
import org.eclipse.jface.viewers.ViewerLabel;

import org.eclipse.swt.graphics.Image;

import org.eclipse.ui.IMemento;

import org.eclipse.ui.navigator.ICommonContentExtensionSite;
import org.eclipse.ui.navigator.ICommonLabelProvider;

/**
 * @generated
 */
public class DbdesignerNavigatorLabelProvider extends LabelProvider implements
		ICommonLabelProvider, ITreePathLabelProvider {

	/**
	 * @generated
	 */
	static {
		DbdesignerDiagramEditorPlugin.getInstance().getImageRegistry().put(
				"Navigator?InvalidElement",
				ImageDescriptor.getMissingImageDescriptor());
		DbdesignerDiagramEditorPlugin.getInstance().getImageRegistry().put(
				"Navigator?UnknownElement",
				ImageDescriptor.getMissingImageDescriptor());
		DbdesignerDiagramEditorPlugin.getInstance().getImageRegistry().put(
				"Navigator?ImageNotFound",
				ImageDescriptor.getMissingImageDescriptor());
	}

	/**
	 * @generated
	 */
	public void updateLabel(ViewerLabel label, TreePath elementPath) {
		Object element = elementPath.getLastSegment();
		if (element instanceof DbdesignerNavigatorItem
				&& !isOwnView(((DbdesignerNavigatorItem) element).getView())) {
			return;
		}
		label.setText(getText(element));
		label.setImage(getImage(element));
	}

	/**
	 * @generated
	 */
	public Image getImage(Object element) {
		if (element instanceof DbdesignerNavigatorGroup) {
			DbdesignerNavigatorGroup group = (DbdesignerNavigatorGroup) element;
			return DbdesignerDiagramEditorPlugin.getInstance().getBundledImage(
					group.getIcon());
		}

		if (element instanceof DbdesignerNavigatorItem) {
			DbdesignerNavigatorItem navigatorItem = (DbdesignerNavigatorItem) element;
			if (!isOwnView(navigatorItem.getView())) {
				return super.getImage(element);
			}
			return getImage(navigatorItem.getView());
		}

		return super.getImage(element);
	}

	/**
	 * @generated
	 */
	public Image getImage(View view) {
		switch (DbdesignerVisualIDRegistry.getVisualID(view)) {
		case TableEditPart.VISUAL_ID:
			return getImage("Navigator?TopLevelNode?com.my.dbdesigner?Table",
					DbdesignerElementTypes.Table_1001);
		case ColumnEditPart.VISUAL_ID:
			return getImage("Navigator?Node?com.my.dbdesigner?Column",
					DbdesignerElementTypes.Column_2001);
		case DatabaseEditPart.VISUAL_ID:
			return getImage("Navigator?Diagram?com.my.dbdesigner?Database",
					DbdesignerElementTypes.Database_79);
		case FKRelationEditPart.VISUAL_ID:
			return getImage("Navigator?Link?com.my.dbdesigner?FKRelation",
					DbdesignerElementTypes.FKRelation_3001);
		default:
			return getImage("Navigator?UnknownElement", null);
		}
	}

	/**
	 * @generated
	 */
	private Image getImage(String key, IElementType elementType) {
		ImageRegistry imageRegistry = DbdesignerDiagramEditorPlugin
				.getInstance().getImageRegistry();
		Image image = imageRegistry.get(key);
		if (image == null && elementType != null
				&& DbdesignerElementTypes.isKnownElementType(elementType)) {
			image = DbdesignerElementTypes.getImage(elementType);
			imageRegistry.put(key, image);
		}

		if (image == null) {
			image = imageRegistry.get("Navigator?ImageNotFound");
			imageRegistry.put(key, image);
		}
		return image;
	}

	/**
	 * @generated
	 */
	public String getText(Object element) {
		if (element instanceof DbdesignerNavigatorGroup) {
			DbdesignerNavigatorGroup group = (DbdesignerNavigatorGroup) element;
			return group.getGroupName();
		}

		if (element instanceof DbdesignerNavigatorItem) {
			DbdesignerNavigatorItem navigatorItem = (DbdesignerNavigatorItem) element;
			if (!isOwnView(navigatorItem.getView())) {
				return null;
			}
			return getText(navigatorItem.getView());
		}

		return super.getText(element);
	}

	/**
	 * @generated
	 */
	public String getText(View view) {
		if (view.getElement() != null && view.getElement().eIsProxy()) {
			return getUnresolvedDomainElementProxyText(view);
		}
		switch (DbdesignerVisualIDRegistry.getVisualID(view)) {
		case TableEditPart.VISUAL_ID:
			return getTable_1001Text(view);
		case ColumnEditPart.VISUAL_ID:
			return getColumn_2001Text(view);
		case DatabaseEditPart.VISUAL_ID:
			return getDatabase_79Text(view);
		case FKRelationEditPart.VISUAL_ID:
			return getFKRelation_3001Text(view);
		default:
			return getUnknownElementText(view);
		}
	}

	/**
	 * @generated
	 */
	private String getTable_1001Text(View view) {
		IAdaptable hintAdapter = new DbdesignerParserProvider.HintAdapter(
				DbdesignerElementTypes.Table_1001,
				(view.getElement() != null ? view.getElement() : view),
				DbdesignerVisualIDRegistry.getType(TableNameEditPart.VISUAL_ID));
		IParser parser = ParserService.getInstance().getParser(hintAdapter);

		if (parser != null) {
			return parser.getPrintString(hintAdapter, ParserOptions.NONE
					.intValue());
		} else {
			DbdesignerDiagramEditorPlugin.getInstance().logError(
					"Parser was not found for label " + 4002);
			return "";
		}
	}

	/**
	 * @generated
	 */
	private String getColumn_2001Text(View view) {
		IAdaptable hintAdapter = new DbdesignerParserProvider.HintAdapter(
				DbdesignerElementTypes.Column_2001,
				(view.getElement() != null ? view.getElement() : view),
				DbdesignerVisualIDRegistry
						.getType(ColumnNameEditPart.VISUAL_ID));
		IParser parser = ParserService.getInstance().getParser(hintAdapter);

		if (parser != null) {
			return parser.getPrintString(hintAdapter, ParserOptions.NONE
					.intValue());
		} else {
			DbdesignerDiagramEditorPlugin.getInstance().logError(
					"Parser was not found for label " + 4001);
			return "";
		}
	}

	/**
	 * @generated
	 */
	private String getDatabase_79Text(View view) {
		EObject domainModelElement = view.getElement();
		if (domainModelElement != null) {
			return ((NamedElement) domainModelElement).getName();
		} else {
			DbdesignerDiagramEditorPlugin.getInstance().logError(
					"No domain element for view with visualID = " + 79);
			return "";
		}
	}

	/**
	 * @generated
	 */
	private String getFKRelation_3001Text(View view) {
		IAdaptable hintAdapter = new DbdesignerParserProvider.HintAdapter(
				DbdesignerElementTypes.FKRelation_3001,
				(view.getElement() != null ? view.getElement() : view),
				DbdesignerVisualIDRegistry
						.getType(FKRelationLabelEditPart.VISUAL_ID));
		IParser parser = ParserService.getInstance().getParser(hintAdapter);

		if (parser != null) {
			return parser.getPrintString(hintAdapter, ParserOptions.NONE
					.intValue());
		} else {
			DbdesignerDiagramEditorPlugin.getInstance().logError(
					"Parser was not found for label " + 4003);
			return "";
		}
	}

	/**
	 * @generated
	 */
	private String getUnknownElementText(View view) {
		return "<UnknownElement Visual_ID = " + view.getType() + ">";
	}

	/**
	 * @generated
	 */
	private String getUnresolvedDomainElementProxyText(View view) {
		return "<Unresolved domain element Visual_ID = " + view.getType() + ">";
	}

	/**
	 * @generated
	 */
	public void init(ICommonContentExtensionSite aConfig) {
	}

	/**
	 * @generated
	 */
	public void restoreState(IMemento aMemento) {
	}

	/**
	 * @generated
	 */
	public void saveState(IMemento aMemento) {
	}

	/**
	 * @generated
	 */
	public String getDescription(Object anElement) {
		return null;
	}

	/**
	 * @generated
	 */
	private boolean isOwnView(View view) {
		return DatabaseEditPart.MODEL_ID.equals(DbdesignerVisualIDRegistry
				.getModelID(view));
	}

}

⌨️ 快捷键说明

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