package org.jbehave.eclipse.editor.text.style;
import java.util.List;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
public class TextStyleTreeContentProvider implements ITreeContentProvider {
public static Object[] EMPTY = new Object[0];
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
public boolean hasChildren(Object element) {
TextStyle ts = (TextStyle)element;
List<TextStyle> children = ts.getChildren();
return !(children.isEmpty());
}
public Object[] getChildren(Object parentElement) {
TextStyle ts = (TextStyle)parentElement;
List<TextStyle> children = ts.getChildren();
if(children.isEmpty())
return EMPTY;
return children.toArray();
}
public Object[] getElements(Object inputElement) {
if(inputElement instanceof Object[])
return ((Object[])inputElement);//root case
return getChildren(inputElement);
}
public Object getParent(Object element) {
return ((TextStyle)element).getParent();
}
public void dispose() {
}
}