Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

ListGrid displays a list of objects in a grid, where each row represents one object and each cell in the row represents one property.

Periodical Periodically updating a ListGrid is possible in the following ways:

  • Use Using the invalidateCache method. It update This approach updates the data and will show a loading message and . However, this API will disrupt the existing view.
  • Transparent update by DataSource using theĀ fetchData method. It update This method updates the data will not but doesn't show a loading message and will not won't disrupt the existing view.

...

Code Block
titleUpdate by DataSource
private void onRefresh() {
    DataSource dataSource = listGrid.getDataSource();
    Criteria criteria = listGrid.getCriteria();

    Integer[] visibleRows = listGrid.getVisibleRows();
    Integer startRow = 0;
    Integer endRow = (visibleRows[1] + listGrid.getResultSet().getResultSize());

    DSRequest request = new DSRequest();
    request.setStartRow(startRow);
    request.setEndRow(endRow);
    request.setSortBy(listGrid.getSort());

    dataSource.fetchData(criteria, new DSCallback() {
        @Override
        public void execute(DSResponse response, Object rawData, DSRequest request) {
            DataSource dataSource = listGrid.getDataSource();
 

                      ResultSet resultSet = new ResultSet(dataSource);
            resultSet.setInitialLength(response.getTotalRows());
            resultSet.setInitialData(response.getData());
            resultSet.setInitialSort(listGrid.getSort());
           

            listGrid.setData(resultSet);
        }

    }, request);
}

...