У меня есть CellTable с прикрепленной к нему MultipleSelectionModel.После некоторого изменения данных необходимо обновить таблицу и загрузить с сервера новые данные.
Однако мне необходимо обновить состояние флажков для вновь загруженных данных.Так что я могу запрашивать поля выбора с помощью selectionModel.getSelectedSet () - но теперь мне нужно найти эти объекты в таблице и «проверить» их.
Поскольку содержимое объектов изменяется и поскольку они используются в качестве ключей вВнутренние карты в компонентах GWT - я был вынужден написать «обертку» над этими объектами, которая использует только идентификатор в equals / hashCode.
Поэтому в основном я сохраняю selectedSet перед событием запуска, затем выполняю итерацию по нему и вызываю метод setSelected:
Set<T> selectedSet = selectionModel.getSelectedSet();
RangeChangeEvent.fire(table,...)
if (selectedSet != null)
for (T obj : selectedSet) {
selectionModel.setSelected(obj,true);
}
}
Есть ли лучший подход?