Interface ILazyTreeContentProvider

  • All Superinterfaces:
    IContentProvider

    public interface ILazyTreeContentProvider
    extends IContentProvider
    The ILazyTreeContentProvider is the content provider for tree viewers created using the SWT.VIRTUAL flag that only wish to return their contents as they are queried.
    Since:
    3.2
    • Method Detail

      • updateElement

        void updateElement​(Object parent,
                           int index)
        Called when a previously-blank item becomes visible in the TreeViewer. If the content provider knows the child element for the given parent at this index, it should respond by calling TreeViewer.replace(Object, int, Object). The content provider should also update the child count for any replaced element by calling TreeViewer.setChildCount(Object, int). If the given current child count is already correct, setChildCount does not have to be called since a call to replace will not change the child count. If the content provider doesn't know the child count at this point, and can more efficiently determine if the element has any children, then it can instead call TreeViewer.setHasChildren(Object, boolean).

        NOTE #updateElement(int index) can be used to determine selection values. If TableViewer#replace(Object, int) is not called before returning from this method, selections may have missing or stale elements. In this situation it is suggested that the selection is asked for again after replace() has been called.

        Parameters:
        parent - The parent of the element, or the viewer's input if the element to update is a root element
        index - The index of the element to update in the tree
      • updateChildCount

        void updateChildCount​(Object element,
                              int currentChildCount)
        Called when the TreeViewer needs an up-to-date child count for the given element, for example from StructuredViewer.refresh() and StructuredViewer.setInput(Object). If the content provider knows the given element, it should respond by calling TreeViewer.setChildCount(Object, int). If the given current child count is already correct, no action has to be taken by this content provider.
        Parameters:
        element - The element for which an up-to-date child count is needed, or the viewer's input if the number of root elements is requested
        currentChildCount - The current child count for the element that needs updating
      • getParent

        Object getParent​(Object element)
        Returns the parent for the given element, or null indicating that the parent can't be computed. In this case the tree-structured viewer can't expand a given node correctly if requested.
        Parameters:
        element - the element
        Returns:
        the parent element, or null if it has none or if the parent cannot be computed