/**
* @���ߣ��¸�
* @Email��glchengang@yeah.net
* @Blog��http://blog.csdn.net/glchengang
*/
package net.ms.designer.ui.view;
import java.util.List;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
/**
* ������������������Щ�����¼Ӧ�������TreeViewer����ʾ
*/
public class TreeViewerContentProvider implements ITreeContentProvider {
/**
* �����������������һ����ʾ��Щ����
*
* @param inputElement
* ����tv.setInput()����������Ǹ�����
* @return Object[]һ�����飬������һ��Ԫ�ؾ���һ�����
*/
public Object[] getElements(Object inputElement) {
if (inputElement instanceof List) {
List list = (List) inputElement;
return list.toArray();
} else {
return new Object[0]; //����һ��������
}
}
/**
* �ж�ij����Ƿ����ӽ�㡣������ӽ�㣬��ʱ���ǰ����һ����������ͼ��
*
* @param element
* ��Ҫ�ж��Ƿ����ӵĽ��
* @return true���ӽ�㣬false���ӽ��
*/
public boolean hasChildren(Object element) {
ITreeEntry entry = (ITreeEntry) element;
List list = entry.getChildren();
if (list == null || list.isEmpty()) //�ж��Ƿ����ӽ��
return false;
else
return true;
}
/**
* ������������������Ӧ����ʾ��Щ�ӽ�㡣
*
* @param parentElement
* ��ǰ������Ľ�����
* @return ���ӽ����ΪԪ�ص�����
*/
public Object[] getChildren(Object parentElement) {
ITreeEntry entry = (ITreeEntry) parentElement;
List list = entry.getChildren();
if (list == null || list.isEmpty())
return new Object[0];
else
return list.toArray();
}
//--------------���·������ã���ʵ��----------------
public Object getParent(Object element) {
return null;
}
public void dispose() {
}
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
}