package de.urszeidler.shr5.ecp.util;
import java.util.List;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
public class List2TreeContentProvider implements ITreeContentProvider {
private static final Object[] EMPTY_ARRAY = new Object[0];
//Called just for the first-level objects.
//Here we provide a list of objects
@Override
public Object[] getElements(Object inputElement) {
if (inputElement instanceof List<?>)
return ((List<?>) inputElement).toArray();
else
return EMPTY_ARRAY;
}
//Queried to know if the current node has children
@Override
public boolean hasChildren(Object element) {
return false;
}
//Queried to load the children of a given node
@Override
public Object[] getChildren(Object parentElement) {
if (parentElement instanceof List) {
return getChildren(parentElement);
}
return EMPTY_ARRAY;
}
@Override
public void dispose() {
}
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
@Override
public Object getParent(Object element) {
return null;
}
}