3.5.4.9. EditorScreenFacet

EditorScreenFacet – это фасет, который обеспечивает возможность предварительной настройки экрана редактирования. Декларативное описание экрана редактирования заменяет существующий метод ScreenBuilders.editor(). EditorScreenFacet определяется в элементе facets XML-дескриптора экрана.

XML-имя компонента: editorScreen.

Пример использования:

<facets>
    <editorScreen id="userEditor"
                  openMode="DIALOG"
                  editMode="CREATE"
                  entityClass="com.haulmont.cuba.security.entity.User"
                  onAction="action"/>
</facets>

Экран, настроенный с помощью EditorScreenFacet, может быть показан явно с помощью метода show():

@Inject
protected EditorScreenFacet userEditor;

@Subscribe("showDialog")
public void onShowDialogClick(Button.ClickEvent event) {
    userEditor.show();
}

Кроме того, фасет может быть подписан на действие (см. атрибут onAction) или кнопку (см. атрибут onButton) по идентификатору.

editorScreen имеет следующие атрибуты:

  • addFirst – определяет, будет ли новый элемент добавлен в начало или в конец коллекции. Влияет только на самостоятельные контейнеры; для вложенных контейнеров новые элементы всегда добавляются в конец.

  • container – устанавливает CollectionContainer. Контейнер обновляется после коммита экрана. Если контейнер является вложенным, фреймворк автоматически инициализирует ссылку на родительскую сущность и настраивает контекст данных для редактирования композиций.

  • editMode – задает режим редактирования экрана, задаваемый значением перечисления EditMode: CREATE (для создания нового экземпляра сущности) или EDIT (для редактирования существующего).

  • entityClass – полное имя класса сущности.

  • field – задает идентификатор компонента PickerField. Если это поле задано, фреймворк устанавливает закоммиченную сущность в качестве значения поля после успешного коммита экрана редактирования.

  • listComponent – задает идентификатор компонента списка. Компонент используется для получения контейнера, если он не установлен. Обычно компонент списка представляет собой таблицу или DataGrid, отображающую список сущностей.


Атрибуты editorScreen

addFirst - container - editMode - entityClass - field - id - listComponent onAction - onButton - openMode - screenClass - screenId

Элементы editorScreen

properties