Небольшой пример.
При нажатии на кнопку создастся новый экземпляр сущности, который мы добавляем в источник данных и сразу открываем его во внутристрочном редакторе DataGrid
.
@Inject
private Button addButton;
@Inject
private DataGrid<Customer> customersDataGrid;
@Inject
private CollectionDatasource<Customer, UUID> customersDs;
@Inject
private Metadata metadata;
@Override
public void init(Map<String, Object> params) {
Action addAction = new BaseAction("addCustomerAction").withHandler(actionPerformedEvent -> {
Customer customer = metadata.create(Customer.class);
customersDs.addItem(customer);
customersDataGrid.edit(customer);
});
addButton.setAction(addAction);
}