下面列出了怎么用org.eclipse.jface.viewers.TreeNodeContentProvider的API类实例代码及写法,或者点击链接到github查看源代码。
@Override
public void createControl(Composite parent) {
super.createControl(parent);
viewer = getTreeViewer();
contentProvider = new TreeNodeContentProvider();
viewer.setContentProvider(contentProvider);
labelProvider = new TextUMLLabelProvider();
viewer.setLabelProvider(labelProvider);
// disabled: used to make elements to show sorted by type
// viewer.setComparator(new UIModelObjectViewerComparator());
viewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
// tracks selections in the outline and reflects them in the editor
viewer.addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
TreeSelection selection = (TreeSelection) event.getSelection();
if (!selection.isEmpty()) {
TreeNode treeNode = (TreeNode) selection.getFirstElement();
UIModelObject model = (UIModelObject) treeNode.getValue();
selectInEditor(model.getToken());
}
}
});
refresh();
}
/**
* @since 2.8
*/
protected void showBusyStatus() {
TreeViewer treeViewer = getTreeViewer();
treeViewer.setLabelProvider(busyLabelProvider);
treeViewer.setContentProvider(new TreeNodeContentProvider());
treeViewer.setInput(new TreeNode[] { new TreeNode("Loading...") });
}
public static ContainerCheckedTreeViewer createCheckedTreeViewer(final AbstractDialog dialog, final Composite parent, final int height, final int span) {
final GridData gridData = new GridData();
gridData.heightHint = height;
gridData.horizontalAlignment = GridData.FILL;
gridData.grabExcessHorizontalSpace = true;
gridData.horizontalSpan = span;
final ContainerCheckedTreeViewer viewer = new ContainerCheckedTreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
final Tree tree = viewer.getTree();
tree.setLayoutData(gridData);
viewer.setContentProvider(new TreeNodeContentProvider());
viewer.setLabelProvider(new ViewLabelProvider());
if (dialog != null) {
viewer.addCheckStateListener(new ICheckStateListener() {
@Override
public void checkStateChanged(final CheckStateChangedEvent event) {
dialog.validate();
}
});
}
return viewer;
}
private void createAllObjectGroup(Composite composite) {
final GridData gridData = new GridData();
gridData.heightHint = 300;
gridData.horizontalAlignment = GridData.FILL;
gridData.grabExcessHorizontalSpace = true;
this.viewer = new ContainerCheckedTreeViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
final Tree tree = viewer.getTree();
tree.setLayoutData(gridData);
viewer.setContentProvider(new TreeNodeContentProvider());
viewer.setLabelProvider(new ViewLabelProvider());
}
private void createAllSchemaGroup(Composite composite) {
final GridData gridData = new GridData();
gridData.heightHint = 300;
gridData.horizontalAlignment = GridData.FILL;
gridData.grabExcessHorizontalSpace = true;
this.viewer = new ContainerCheckedTreeViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
final Tree tree = viewer.getTree();
tree.setLayoutData(gridData);
viewer.setContentProvider(new TreeNodeContentProvider());
viewer.setLabelProvider(new ViewLabelProvider());
}
private void createAllObjectGroup(Composite composite) {
GridData gridData = new GridData();
gridData.heightHint = 300;
gridData.horizontalAlignment = GridData.FILL;
gridData.grabExcessHorizontalSpace = true;
this.viewer = new ContainerCheckedTreeViewer(composite, SWT.MULTI
| SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
Tree tree = this.viewer.getTree();
tree.setLayoutData(gridData);
this.viewer.setContentProvider(new TreeNodeContentProvider());
this.viewer.setLabelProvider(new ViewLabelProvider());
}
private void createAllSchemaGroup(Composite composite) {
GridData gridData = new GridData();
gridData.heightHint = 300;
gridData.horizontalAlignment = GridData.FILL;
gridData.grabExcessHorizontalSpace = true;
this.viewer = new ContainerCheckedTreeViewer(composite, SWT.MULTI
| SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
Tree tree = this.viewer.getTree();
tree.setLayoutData(gridData);
this.viewer.setContentProvider(new TreeNodeContentProvider());
this.viewer.setLabelProvider(new ViewLabelProvider());
}