1 11 package org.eclipse.jdt.internal.ui.wizards; 12 13 import org.eclipse.core.runtime.Assert; 14 15 import org.eclipse.jface.viewers.Viewer; 16 import org.eclipse.jface.viewers.ViewerFilter; 17 18 21 public class TypedViewerFilter extends ViewerFilter { 22 23 private Class [] fAcceptedTypes; 24 private Object [] fRejectedElements; 25 26 30 public TypedViewerFilter(Class [] acceptedTypes) { 31 this(acceptedTypes, null); 32 } 33 34 41 public TypedViewerFilter(Class [] acceptedTypes, Object [] rejectedElements) { 42 Assert.isNotNull(acceptedTypes); 43 fAcceptedTypes= acceptedTypes; 44 fRejectedElements= rejectedElements; 45 } 46 47 50 public boolean select(Viewer viewer, Object parentElement, Object element) { 51 if (fRejectedElements != null) { 52 for (int i= 0; i < fRejectedElements.length; i++) { 53 if (element.equals(fRejectedElements[i])) { 54 return false; 55 } 56 } 57 } 58 for (int i= 0; i < fAcceptedTypes.length; i++) { 59 if (fAcceptedTypes[i].isInstance(element)) { 60 return true; 61 } 62 } 63 return false; 64 } 65 66 } 67 | Popular Tags |