filetreecontentprovider.java

来自「Eclipse编程技术与实例一书的附CD-ROM光盘」· Java 代码 · 共 52 行

JAVA
52
字号
package org.Chapter13;

import java.io.*;
import org.eclipse.jface.viewers.*;

/**
 * FileTreeContentProvider用来帮助显示文件夹的层次结构
 *  
 */
public class FileTreeContentProvider implements ITreeContentProvider {

	/**
	 * 获得特定元素的子元素;
	 */
	public Object[] getChildren(Object element) {
		Object[]files = ((File) element).listFiles();
		return files == null ? new Object[0] : files;
	}

	/**
	 * 请求根元素下的子元素。
	 */
	public Object[] getElements(Object element) {
		return getChildren(element);
	}

	/**
	 * 判断该节点是否有子元素。
	 */
	public boolean hasChildren(Object element) {
		return getChildren(element).length > 0;
	}

	/**
	 * getParent()方法用来实现reveal(Object element),后者使树查看器能够显示树中的节点。
	 */
	public Object getParent(Object element) {
		return ((File) element).getParent();
	}

	/**
	 * 销毁函数。
	 */
	public void dispose() {
	}

	/**
	 * 通知内容提供器,查看器的输入元素已经改变了。
	 */
	public void inputChanged(Viewer viewer, Object old_input, Object new_input) {
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?