Не все виджеты GWT были разработаны с учетом этих интерфейсов (например, HasclickHandlers , HasText , IsWidget и т. Д.).
В последних версиях GWTбазовые виджеты были изменены таким образом, чтобы они реализовывали эти интерфейсы, чтобы сделать представления, использующие их, тестируемыми в модульных тестах.Поэтому я не уверен, что FlexTable реализует эти интерфейсы, но в случае CellTable вы можете использовать интерфейс HasData .
Здесь вы можете найти реализованные интерфейсыс помощью CellTable: Javadoc
Я лично выставил бы CellTable через интерфейс HasData , который можно использовать для установки и извлечения selectionModel(для выбора строк в CellTable).
Для изменения или обновления данных, отображаемых в CellTable, я бы использовал ListDataProvider и сохранил бы его в Presenter.
@Override
public HasData getCellTableDisplay() {
return cellTable;
}
и в конструкторе докладчика вы можете создать ListDataProvider и использовать функцию addDataDisplay для добавления CellTable:
final ListDataProvider<String> dataProvider = new ListDataProvider<String>();
dataProvider.addDataDisplay(getView().getCellTableDisplay);