Здравствуйте.
Jmix version: 2.1.2
jmix Studio plugin version: 2.1.2-232
IntelliJ version: IntelliJ IDEA 2023.2.5 (Community Edition)
Несколько вопросов.
- Есть таблица и стандартная кнопка “Add”, для нее есть стандартный handler
@Install(to = “boxesForZipProject.addBoxAction”, subject = “afterCloseHandler”)
private void boxesForZipProjectAddBoxActionAfterCloseHandler(final DialogWindow.AfterCloseEvent afterCloseEvent) {
if (afterCloseEvent.closedWith(StandardOutcome.SELECT)) {
//Как здесь получить значение которое выбрали в диалоговом окне
}
}
Я ожидал что afterCloseEvent.getView или getSource вернет диалоговое окно и оттуда смогу добраться до сущности, но автоматически это почему то тип DivideView(экран где находится таблица и откуда я открываю диалоговое окно).
-
Я могу насильно передать вместо
final DialogWindow.AfterCloseEvent afterCloseEvent
final DialogWindow.AfterCloseEvent afterCloseEvent и в одном месте так у меня и работает, но это как то совсем не верно(. -
Если я хочу открывать в диалоговом окне не лист сущностей(у меня это “ящики”) а открывать диалоговое окно с другой справочной таблицей (каталог ящиков) и при выборе-копировать в свою таблицу сущностей. Я применил для стандартного действия addAction
boxesForZipProjectAddBoxAction.setViewClass(BoxesCatListView.class);
и где мне теперь поймать эту выбранную сущность, а далее я смогу создать свою сущность “ящик”, скопировать нужные мне поля и т.д.
Надо ли мне при закрытии диалогового окна как то возвращать выбранную сущность или это произойдет автоматически?