Контроллеры экранов
Контроллер экрана – это Java или Groovy класс, который содержит в себе логику инициализации экрана и обработки событий. Чаще всего контроллер связан с XML-дескриптором, который определяет компоновку экрана и контейнеры данных, однако и в контроллере можно программно создавать визуальные и невизуальные компоненты.
Все контроллеры экранов реализуют интерфейс-маркер FrameOwner
. Название этого интерфейса означает, что в нем содержится ссылка на фрейм, то есть визуальный компонент, представляющий собой экран при его отображении в главном окне приложения. Существует два типа фреймов:
-
Window
– самостоятельное окно, которое можно отобразить внутри главного окна приложения во вкладке или в виде модального диалогового окна. -
Fragment
– легковесный компонент, который можно добавлять к окнам или к другим фрагментам.
Контроллеры также подразделяются на две отдельные категории по типам используемых фреймвов:
-
Screen
– базовый класс контроллеров окон. -
ScreenFragment
– базовый класс контроллеров фрагментов.
Класс Screen
предоставляет базовую функциональность для любого типа самостоятельных экранов. Для экранов, предназначенных для работы с сущностями, существуют отдельные, более специфичные классы:
-
StandardEditor
- базовый класс контроллеров экранов редактирования. -
StandardLookup
- базовый класс контроллеров экранов просмотра и выбора. -
MasterDetailScreen
- комбинированный экран, отображающий список экземпляров сущностей слева и детали выбранной сущности справа.