/* * Copyright (c) 2006, 2008 Borland Software Corp. * * 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: * Alexander Shatalin (Borland) - initial API and implementation */ package org.eclipse.gmf.ecore.part; import org.eclipse.core.expressions.PropertyTester; import org.eclipse.emf.ecore.EAnnotation; import org.eclipse.gmf.ecore.edit.parts.EPackageEditPart; import org.eclipse.gmf.runtime.notation.View; /** * @generated */ public class EcoreShortcutPropertyTester extends PropertyTester { /** * @generated */ protected static final String SHORTCUT_PROPERTY = "isShortcut"; //$NON-NLS-1$ /** * @generated */ public boolean test(Object receiver, String method, Object[] args, Object expectedValue) { if (false == receiver instanceof View) { return false; } View view = (View) receiver; if (SHORTCUT_PROPERTY.equals(method)) { EAnnotation annotation = view.getEAnnotation("Shortcut"); //$NON-NLS-1$ if (annotation != null) { return EPackageEditPart.MODEL_ID.equals(annotation.getDetails().get("modelID")); //$NON-NLS-1$ } } return false; } }