Class VirtualList<T>

    • Constructor Detail

      • VirtualList

        public VirtualList()
        Creates an empty list.
    • Method Detail

      • setDataProvider

        public void setDataProvider​(DataProvider<T,​?> dataProvider)
        Description copied from interface: HasDataProvider
        Sets the data provider for this listing. The data provider is queried for displayed items as needed.
        Specified by:
        setDataProvider in interface HasDataProvider<T>
        Parameters:
        dataProvider - the data provider, not null
      • getDataProvider

        public DataProvider<T,​?> getDataProvider()
        Returns the data provider of this list.
        Returns:
        the data provider of this list, not null
      • getDataCommunicator

        public DataCommunicator<T> getDataCommunicator()
        Returns the data communicator of this list.
        Returns:
        the data communicator, not null
      • setRenderer

        public void setRenderer​(ValueProvider<T,​String> valueProvider)
        Sets a renderer for the items in the list, by using a ValueProvider. The String returned by the provider is used to render each item.
        Parameters:
        valueProvider - a provider for the label string for each item in the list, not null
      • setRenderer

        public void setRenderer​(Renderer<T> renderer)
        Sets a renderer for the items in the list.

        When set, a same renderer is used for the placeholder item. See setPlaceholderItem(Object) for details.

        Parameters:
        renderer - a renderer for the items in the list, not null
      • setPlaceholderItem

        public void setPlaceholderItem​(T placeholderItem)
        Sets an item to be shown as placeholder in the list while the real data in being fetched from the server.

        Setting a placeholder item improves the user experience of the list while scrolling, since the placeholder uses the same renderer set with setRenderer(Renderer), maintaining the same height for placeholders and actual items.

        When no placeholder item is set (or when set to null), an empty placeholder element is created.

        Note: when using ComponentRenderers, the component used for the placeholder is statically stamped in the list. It can not be modified, nor receives any events.

        Parameters:
        placeholderItem - the item used as placeholder in the list, while the real data is being fetched from the server
      • getPlaceholderItem

        public T getPlaceholderItem()
        Gets the placeholder item of this list, or null if none has been set.
        Returns:
        the placeholder item
      • onEnabledStateChanged

        public void onEnabledStateChanged​(boolean enabled)
        Description copied from class: Component
        Handle component enable state when the enabled state changes.

        By default this sets or removes the 'disabled' attribute from the element. This can be overridden to have custom handling.

        Overrides:
        onEnabledStateChanged in class Component
        Parameters:
        enabled - the new enabled state of the component