## Uses of Interface
com.google.gwt.view.client.ProvidesKey

- Packages that use ProvidesKey
  Package | Description
  --- | ---
  com.google.gwt.user.cellview.client | The "cellview" widget set.
  com.google.gwt.user.client.ui | Widgets, Panels, and other user-interface classes.
  com.google.gwt.view.client | Classes and interfaces used by the `cellview` widget set.
  com.google.web.bindery.requestfactory.gwt.ui.client | Classes used by the request factory to manage proxies, user logins, and authentication.

- - ### Uses of ProvidesKey in com.google.gwt.user.cellview.client

    Methods in com.google.gwt.user.cellview.client that return ProvidesKey
    Modifier and Type | Method | Description
    --- | --- | ---
    `ProvidesKey<T>` | AbstractHasData.`getKeyProvider()` |
    `ProvidesKey<C>` | CellWidget.`getKeyProvider()` |
    `ProvidesKey<T>` | HasDataPresenter.`getKeyProvider()` |

    Constructors in com.google.gwt.user.cellview.client with parameters of type ProvidesKey
    Constructor | Description
    --- | ---
    `AbstractCellTable​(Element elem, int pageSize, AbstractCellTable.Resources resources, ProvidesKey<T> keyProvider)` | Constructs a table with the given page size, the specified `AbstractCellTable.Style`, and the given key provider.
    `AbstractCellTable​(Widget widget, int pageSize, AbstractCellTable.Resources resources, ProvidesKey<T> keyProvider)` | Constructs a table with the given page size, the specified `AbstractCellTable.Style`, and the given key provider.
    `AbstractHasData​(Element elem, int pageSize, ProvidesKey<T> keyProvider)` | Constructs an `AbstractHasData` with the given page size.
    `AbstractHasData​(Widget widget, int pageSize, ProvidesKey<T> keyProvider)` | Constructs an `AbstractHasData` with the given page size.
    `BrowserCellList​(Cell<T> cell, int level, ProvidesKey<T> keyProvider)` |
    `CellList​(Cell<T> cell, CellList.Resources resources, ProvidesKey<T> keyProvider)` | Construct a new `CellList` with the specified `CellList.Resources` and `key provider`.
    `CellList​(Cell<T> cell, ProvidesKey<T> keyProvider)` | Construct a new `CellList` with the specified `key provider`.
    `CellTable​(int pageSize, CellTable.Resources resources, ProvidesKey<T> keyProvider)` | Constructs a table with the given page size, the specified `CellTable.Resources`, and the given key provider.
    `CellTable​(int pageSize, CellTable.Resources resources, ProvidesKey<T> keyProvider, Widget loadingIndicator)` | Constructs a table with the specified page size, `CellTable.Resources`, key provider, and loading indicator.
    `CellTable​(int pageSize, CellTable.Resources resources, ProvidesKey<T> keyProvider, Widget loadingIndicator, boolean enableColGroup, boolean attachLoadingPanel)` | Constructs a table with the specified page size, `CellTable.Resources`, key provider, and loading indicator.
    `CellTable​(int pageSize, ProvidesKey<T> keyProvider)` | Constructs a table with the given page size and the given `key provider`.
    `CellTable​(ProvidesKey<T> keyProvider)` | Constructs a table with a default page size of 15, and the given `key provider`.
    `CellWidget​(Cell<C> cell, ProvidesKey<C> keyProvider)` | Construct a new `CellWidget` with the specified cell and key provider, and an initial value of `null`.
    `CellWidget​(Cell<C> cell, C initialValue, ProvidesKey<C> keyProvider)` | Construct a new `CellWidget` with the specified cell, initial value, and key provider.
    `CellWidget​(Cell<C> cell, C initialValue, ProvidesKey<C> keyProvider, Element elem)` | Creates a `CellWidget` with the specified cell, initial value, key provider, using the specified element as the wrapper around the cell.
    `DataGrid​(int pageSize, DataGrid.Resources resources, ProvidesKey<T> keyProvider)` | Constructs a table with the given page size, the specified `DataGrid.Resources`, and the given key provider.
    `DataGrid​(int pageSize, DataGrid.Resources resources, ProvidesKey<T> keyProvider, Widget loadingIndicator)` | Constructs a table with the given page size, the specified `DataGrid.Resources`, and the given key provider.
    `DataGrid​(int pageSize, ProvidesKey<T> keyProvider)` | Constructs a table with the given page size and the given `key provider`.
    `DataGrid​(ProvidesKey<T> keyProvider)` | Constructs a table with a default page size of 50, and the given `key provider`.
    `HasDataPresenter​(HasData<T> display, HasDataPresenter.View<T> view, int pageSize, ProvidesKey<T> keyProvider)` | Construct a new `HasDataPresenter`.

  - ### Uses of ProvidesKey in com.google.gwt.user.client.ui

    Constructors in com.google.gwt.user.client.ui with parameters of type ProvidesKey
    Constructor | Description
    --- | ---
    `ValueListBox​(Renderer<? super T> renderer, ProvidesKey<T> keyProvider)` |

  - ### Uses of ProvidesKey in com.google.gwt.view.client

    Subinterfaces of ProvidesKey in com.google.gwt.view.client
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `SelectionModel<T>` | A model for selection within a list.
    `interface` | `SetSelectionModel<T>` | A model that allows getting all elements and clearing the selection.

    Classes in com.google.gwt.view.client that implement ProvidesKey
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractDataProvider<T>` | A base implementation of a data source for `HasData` implementations.
    `class` | `AsyncDataProvider<T>` | An implementation of `AbstractDataProvider` that allows the data to be modified.
    `class` | `DefaultSelectionModel<T>` | A convenience `SelectionModel` that allows items to be selected according to a subclass-defined rule, plus a list of positive or negative exceptions.
    `class` | `ListDataProvider<T>` | A concrete subclass of `AbstractDataProvider` that is backed by an in-memory list.
    `class` | `MultiSelectionModel<T>` | A simple selection model that allows multiple items to be selected.
    `class` | `NoSelectionModel<T>` | A selection model that does not allow selection, but fires selection change events.
    `class` | `OrderedMultiSelectionModel<T>` | A simple selection model that allows multiple items to be selected and retains order of selection.
    `static class` | `SelectionModel.AbstractSelectionModel<T>` | A default implementation of `SelectionModel` that provides listener addition and removal.
    `class` | `SimpleKeyProvider<T>` | Simple passthrough implementation of `ProvidesKey`.
    `class` | `SingleSelectionModel<T>` | A simple selection model that allows only one item to be selected a a time.

    Methods in com.google.gwt.view.client that return ProvidesKey
    Modifier and Type | Method | Description
    --- | --- | ---
    `ProvidesKey<T>` | AbstractDataProvider.`getKeyProvider()` | Get the `ProvidesKey` that provides keys for list items.
    `ProvidesKey<T>` | HasKeyProvider.`getKeyProvider()` | Return the key provider.
    `ProvidesKey<T>` | SelectionModel.AbstractSelectionModel.`getKeyProvider()` | Returns a `ProvidesKey` instance that simply returns the input data item.
    `ProvidesKey<T>` | TreeViewModel.DefaultNodeInfo.`getProvidesKey()` |
    `ProvidesKey<T>` | TreeViewModel.NodeInfo.`getProvidesKey()` | Return the key provider for children of this node.

    Constructors in com.google.gwt.view.client with parameters of type ProvidesKey
    Constructor | Description
    --- | ---
    `AbstractDataProvider​(ProvidesKey<T> keyProvider)` | Construct an AbstractDataProvider with a given key provider.
    `AbstractSelectionModel​(ProvidesKey<T> keyProvider)` | Construct an AbstractSelectionModel with a given key provider.
    `AsyncDataProvider​(ProvidesKey<T> keyProvider)` | Constructs an AsyncDataProvider with the given key provider.
    `DefaultSelectionModel​(ProvidesKey<T> keyProvider)` | Constructs a DefaultSelectionModel with the given key provider.
    `ListDataProvider​(ProvidesKey<T> keyProvider)` | Creates an empty list model that wraps the given collection.
    `ListDataProvider​(java.util.List<T> listToWrap, ProvidesKey<T> keyProvider)` | Creates a list model that wraps the given list.
    `MultiSelectionModel​(ProvidesKey<T> keyProvider)` | Constructs a MultiSelectionModel with the given key provider.
    `MultiSelectionModel​(ProvidesKey<T> keyProvider, java.util.Map<java.lang.Object,​T> selectedSet, java.util.Map<java.lang.Object,​MultiSelectionModel.SelectionChange<T>> selectionChanges)` | Construct a MultiSelectionModel with the given key provider and implementations of selectedSet and selectionChanges.
    `NoSelectionModel​(ProvidesKey<T> keyProvider)` | Constructs a NoSelectionModel with the given key provider.
    `OrderedMultiSelectionModel​(ProvidesKey<T> keyProvider)` | Constructs a OrderedMultiSelectionModel with the given key provider.
    `SingleSelectionModel​(ProvidesKey<T> keyProvider)` | Constructs a SingleSelectionModel with the given key provider.

  - ### Uses of ProvidesKey in com.google.web.bindery.requestfactory.gwt.ui.client

    Classes in com.google.web.bindery.requestfactory.gwt.ui.client that implement ProvidesKey
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `EntityProxyKeyProvider<P extends EntityProxy>` | An `EntityProxy`-aware key provider, handy for use with `SelectionModel` and various cell widgets.