wordcontentprovider.java

来自「这是用eclipseRCP开发的一个自定义的视图的原代码」· Java 代码 · 共 65 行

JAVA
65
字号
package viewprojec.views;


import org.eclipse.jface.viewers.*;


public class WordContentProvider 
	implements IStructuredContentProvider, WordFile.Listener
{
	WordFile input;
	ListViewer viewer;

	/**
	 * @see IStructuredContentProvider#getElements(Object)
	 */
	public Object[] getElements(Object element) {
		if (element == input)
		//if (element instanceof WordFile)
			return input.elements().toArray();
		return new Object[0];
	}

	/**
	 * @see IContentProvider#dispose()
	 */
	public void dispose() {
		if (input != null)
			input.setListener(null);
		input = null;
		viewer = null;
	}

	/**
	 * @see IContentProvider#inputChanged(Viewer, Object, Object)
	 */
	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
		if (viewer instanceof ListViewer) {
			this.viewer = (ListViewer)viewer;
		}
		if (newInput instanceof WordFile) {
			input = (WordFile)newInput;
			input.setListener(this);
		}
	}

	/**
	 * @see Listener#added()
	 */
	public void added(Word e) {
		if (viewer != null)
			viewer.add(e);
	}
	
	/**
	 * @see Listener#removed()
	 */
	public void removed(Word e) {
		if (viewer != null) {
			viewer.setSelection(null);
			viewer.remove(e);
		}
	}
}

⌨️ 快捷键说明

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