XML-дескриптор экрана
Дескриптор экрана – это файл формата XML, декларативно описывающий визуальные компоненты, компоненты данных и некоторые параметры экрана.
| Используйте дизайнер экранов Studio чтобы конфигурировать XML-дескрипторы. |
Например, рассмотрим XML-дескриптор экрана редактирования:
<window xmlns="http://jmix.io/schema/ui/window"
focusComponent="demoForm"
caption="msg://window.caption">
<data>
<instance id="orderDc"
class="ui.ex1.entity.Order">
<fetchPlan extends="_base"/>
<loader/>
</instance>
</data>
<facets>
<dataLoadCoordinator auto="true"/>
<screenSettings id="settingsFacet" auto="true"/>
</facets>
<actions>
<action id="windowCommitAndClose" caption="msg:///actions.Ok"
icon="EDITOR_OK"
primary="true"
shortcut="${COMMIT_SHORTCUT}"/>
<action id="windowClose"
caption="msg:///actions.Close"
icon="EDITOR_CANCEL"/>
</actions>
<dialogMode height="600"
width="800"/>
<layout spacing="true" expand="editActions">
<form id="demoForm" dataContainer="orderDc">
<column width="350px">
<timeField id="deliveryTimeField" property="deliveryTime"/>
<textField id="ratingField" property="rating"/>
<dateField id="dateField" property="date"/>
<textField id="amountField" property="amount"/>
</column>
</form>
<hbox id="editActions" spacing="true">
<button id="commitAndCloseBtn" action="windowCommitAndClose"/>
<button id="closeBtn" action="windowClose"/>
</hbox>
</layout>
</window>
Корневой элемент window содержит следующие атрибуты:
-
messagesGroup- произвольная группа сообщений, связанная с этим окном. Если атрибутmessagesGroupне определен, сообщения загружаются из пакета, связанного с этим классом экрана. -
class− имя контроллера. -
caption− заголовок экрана, который может содержать ссылку на сообщение из вышеуказанного пакета. -
focusComponent− идентификатор компонента, который получит фокус ввода при отображении экрана. -
icon- значок окна. -
extend- используется для расширения UI.
Элементы дескриптора:
-
data− описывает компоненты данных экрана. -
facets- определяет список фасетов для экрана. -
actions- определяет список действий для экрана. -
dialogMode- определяет параметры геометрии и поведения экрана при открытии его в виде диалогового окна.Атрибуты элемента
dialogMode:-
closeable- определяет наличие в диалоговом окне кнопки закрытия. Возможные значения:true,false. -
closeOnClickOutside- определяет возможность закрыть окно кликом по окружающей области, если диалог открыт в модальном режиме. Возможные значения:true,false. -
forceDialog- указывает, что экран всегда должен открываться в виде диалога. Возможные значения:true,false. -
height- устанавливает высоту диалогового окна. -
modal- устанавливает модальный режим диалогового окна. Возможные значения:true,false. -
positionX- задает положение левого верхнего угла диалога по оси x. -
positionY- задает положение левого верхнего угла диалога по оси y. -
resizable- определяет возможность пользователя изменять размеры диалога. Возможные значения:true,false. -
width- устанавливает ширину диалогового окна.<dialogMode height="600" width="800" positionX="200" positionY="200" forceDialog="true" resizable="true"/>
-
-
actions– определяет список действий данного экрана. -
facets– определяет список фасетов данного экрана. -
layout− корневой элемент компоновки экрана. -
layout- корневой элемент компоновки экрана.