Здравствуйте. Скажите, пожалуйста, как сделать поведение таблицы с данными адекватным после добавления новой записи?
Что именно смущает:
- Запись должна появиться не вверху таблицы, а там где ей “положено” в соответствии с сортировкой(вызов метода dataLoader.load() после показа окна Edit диалога не помогает, видимо из-за асинхронности. Возможно можно переопределить какие-то методы Edit диалога, чтобы своего рода CallBack использовать.
- Фокус должен быть переведён на добавленную запись(опять же получение dialog.getEditedEntity() не помогает.
При этом диалог(в силу необходимости передавать в него некоторые данные) вызывается не стандартным Action-ом, а программно. Тем не менее, пока победить эти проблемы не вышло.
Ниже код обработчика события создающего окно редактирования сущности.
Заранее спасибо.
@Subscribe("customNewBtn")
public void onCustomNewBtnClick(Button.ClickEvent event) {
DocumentEdit editorScreen = (DocumentEdit) screenBuilders.editor(documentsTable).newEntity().build();
editorScreen.setNewMode();
editorScreen.setDocumentCategory(currentDocumentCategory);
editorScreen.show();
documentsDl.load()
documentsTable.setSelected(editorScreen.getEditedEntity());
}