1 19 20 21 22 package ca.mcgill.sable.soot.editors; 23 24 import org.eclipse.jface.viewers.ITreeContentProvider; 25 import org.eclipse.jface.viewers.Viewer; 26 27 28 29 public class JimpleOutlineContentProvider implements ITreeContentProvider { 30 31 32 protected static final Object [] EMPTY_ARRAY = new Object [0]; 33 34 35 38 public JimpleOutlineContentProvider() { 39 super(); 40 } 41 42 45 public Object [] getChildren(Object parentElement) { 46 if (parentElement instanceof JimpleOutlineObject) { 47 JimpleOutlineObject opt = (JimpleOutlineObject)parentElement; 48 if (opt.getChildren() != null) { 49 return opt.getChildren().toArray(); 50 } 51 else { 52 return EMPTY_ARRAY; 53 } 54 } 55 else { 56 return EMPTY_ARRAY; 57 } 58 59 } 60 61 62 65 public Object getParent(Object element) { 66 return ((JimpleOutlineObject)element).getParent(); 67 } 68 69 72 public boolean hasChildren(Object element) { 73 if (element instanceof JimpleOutlineObject) { 74 if (((JimpleOutlineObject)element).getChildren() != null) { 75 return true; 76 } 77 else { 78 return false; 79 } 80 } 81 else { 82 return false; 83 } 84 } 85 86 89 public Object [] getElements(Object inputElement) { 90 return getChildren(inputElement); 91 } 92 93 96 public void dispose() { 97 } 98 99 102 public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { 103 } 104 105 } 106 | Popular Tags |