listcontentprovider.java
来自「eclipse开发笔记」· Java 代码 · 共 44 行
JAVA
44 行
package book.ch7.list;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.ListViewer;
import org.eclipse.jface.viewers.Viewer;
public class ListContentProvider implements IStructuredContentProvider,
PropertyChangeListener {
private ListViewer viewer;
private ListModel model;
public Object[] getElements(Object inputElement) {
return model.elements();
}
public void dispose() {
}
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
this.viewer = (ListViewer) viewer;
if (oldInput instanceof ListModel)
((ListModel) oldInput).removePropertyChangeListener(this);
if (newInput instanceof ListModel) {
this.model = (ListModel) newInput;
((ListModel) newInput).addPropertyChangeListener(this);
}
}
public void propertyChange(PropertyChangeEvent evt) {
if (ListModel.ADD_ELEMENT.equals(evt.getPropertyName()))
viewer.add(evt.getNewValue());
if (ListModel.REMOVE_ELEMENT.equals(evt.getPropertyName()))
viewer.remove(evt.getNewValue());
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?