I´m using GWT 2.4 with a DataGrid
and a SimplePager
along with a MultiSelectionModel
. I want to implement a simple select-all-feature over all pages.
I´m only able to select all visible items on the current page. What is the best way to select all items on all pages?
I know the MultiSelectionModel
stores the proxy keys provided by a ProvidesKey
object in a HashMap
. I think I have to request all proxy objects from server or at least all keys. But actually I don´t want to store information about the ProvidesKey
´s getKey()
-method on server-side. But I also can not access the MultiSelectionModel
´s HashMap
of the selected proxies´ keys. This all looks cumbersome, so is there a better way to solve this?
As mentioned in https://developers.google.com/web-toolkit/doc/latest/DevGuideUiCellWidgets#selection, one way to achieve this would be to implement your own SelectionModel (e.g. by extending AbstractSelectionModel or DefaultSelectionModel):
A complex implementation can handle "select all" across multiple pages using a boolean to indicate that everything is selected, and then keep track of negative selections.