/******************************************************************************* * Copyright (c) 2008 xored software, Inc. * * 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: * xored software, Inc. - initial API and Implementation (Alex Panchenko) *******************************************************************************/ package org.eclipse.vjet.eclipse.internal.debug.ui.actions; import org.eclipse.dltk.mod.core.Flags; import org.eclipse.dltk.mod.core.IMethod; import org.eclipse.dltk.mod.core.ModelException; import org.eclipse.dltk.mod.ui.actions.IActionFilterTester; public class MethodActionFilterTest implements IActionFilterTester { public static final String FILTER_ID="org.eclipse.vjet.ui.method"; public boolean test(Object target, String name, String value) { // if (target instanceof IModelElement) { // final IDLTKLanguageToolkit toolkit = DLTKLanguageManager // .getLanguageToolkit((IModelElement) target); // if (toolkit != null) { // return toolkit.getNatureId().equals(value); // } // } // return false; try { if (name.equals(FILTER_ID)) { //$NON-NLS-1$ if (target instanceof IMethod) { int flags=((IMethod)target).getFlags(); int typeFlags=((IMethod)target).getDeclaringType().getFlags(); return !Flags.isAbstract(flags)&&!Flags.isInterface(typeFlags); } } } catch (ModelException e) { e.printStackTrace(); } return false; } }