A concrete viewer based on a SWT
Table
control.
This class is not intended to be subclassed outside the viewer framework. It is designed to be instantiated with a pre-existing SWT table control and configured with a domain-specific content provider, table label provider, element filter (optional), and element sorter (optional).
Label providers for table viewers must implement either the ITableLabelProvider
or the ILabelProvider
interface (see TableViewer.setLabelProvider
for more details).
As of 3.1 the TableViewer now supports the SWT.VIRTUAL flag. If the underlying table is SWT.VIRTUAL, the content provider may implement {@link ILazyContentProvider} instead of {@link IStructuredContentProvider} . Notethat in this case, the viewer does not support sorting or filtering. Also note that in this case, the Widget based APIs may return null if the element is not specified or not created yet.
Users of SWT.VIRTUAL should also avoid using getItems() from the Table within the TreeViewer as this does not necessarily generate a callback for the TreeViewer to populate the items. It also has the side effect of creating all of the items thereby eliminating the performance improvements of SWT.VIRTUAL.
Users setting up an editable table with more than 1 column have to pass the SWT.FULL_SELECTION style bit
@see SWT#VIRTUAL
@see #doFindItem(Object)
@see #internalRefresh(Object,boolean)
@noextend This class is not intended to be subclassed by clients.