@Override
public void showFilteredResult(List<SqlResultModel> filteredResult, SqlFilterModel usedFilter) {
resultTable.getColumns().clear();
if (!filteredResult.isEmpty()) {
for (int i = 0; i < filteredResult.get(0).rows.size(); i++) {
TableColumn<SqlResultModel, String> rowColumn = new TableColumn<SqlResultModel, String>();
rowColumn.setText(filteredResult.get(0).rows.get(i).get());
final int rowIndex = i;
rowColumn.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<SqlResultModel, String>, ObservableValue<String>>() {
@Override
public ObservableValue<String> call(CellDataFeatures<SqlResultModel, String> param) {
return param.getValue().rows.get(rowIndex);
}
});
rowColumn.prefWidthProperty().bind(resultTable.widthProperty().subtract(3).divide(filteredResult.get(0).rows.size()));
resultTable.getColumns().add(rowColumn);
}
ObservableList<SqlResultModel> content = FXCollections.observableArrayList();
content.addAll(filteredResult);
content.remove(0);
setOriginalItems(resultTable, content);
}
}