/**
*
*/
package org.jboss.tools.smooks.configuration.editors;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerFilter;
/**
* @author DartPeng
*
*/
public class CurrentProjecViewerFilter extends ViewerFilter {
private IResource referenceResource;
public CurrentProjecViewerFilter(IResource referenceResource) {
this.referenceResource = referenceResource;
}
/*
* (non-Javadoc)
*
* @see
* org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers
* .Viewer, java.lang.Object, java.lang.Object)
*/
@Override
public boolean select(Viewer viewer, Object parentElement, Object element) {
IProject project = null;
if (referenceResource != null) {
project = referenceResource.getProject();
}
if (project == null) {
return true;
}
IResource resource = null;
if (element instanceof IResource) {
resource = (IResource)element;
} else {
if (element instanceof IAdaptable) {
resource = (IResource) ((IAdaptable) element).getAdapter(IResource.class);
}
}
if (resource != null) {
if(project == resource.getProject()){
return true;
}
}
return false;
}
}