Дизайнер меню
Дизайнер меню позволяет управлять пунктами меню в конфигурационном файле menu.xml текущего проекта.
Меню может создаваться в двух режимах:
- В режиме Composite mode меню содержит пункты, обозначенные в файле
menu.xml
текущего проекта, а также в конфигурационных файлах меню всех компонентов приложения. Этот режим позволяет легко включать в меню наследуемые элементы и вставлять пункты меню проекта в любое место в струтуре меню. При этом редактирование наследуемых пунктов меню невозможно.
- В режиме Single mode меню содержит только те элементы, которые обозначеные в файле
menu.xml
текущего проекта. В этом случае вам необходимо вручную создать все пункты меню, в том числе и существующие в компонентов приложения, что дает вам полный контроль над формированием структуры меню.
Список конфигурационных файлов меню настраивается в свойстве приложения cuba.menuConfig, на которое влияет выбранный вами режим.
Для того чтобы добавить пункт меню, выберите один из существующих пунктов в списке (в случае пункта меню верхнего уровня - конфигурационный файл) и нажмите на кнопку New. Окно Menu item editor откроется в виде модального диалога.
Вы можете создавать три вида элементов меню:
- Screen - пункт меню, открывающий экран приложения
- Menu - пункт меню, содержащий вложенные пункты меню (меню нижестоящего уровня)
- Separator - горизонтальная линия, разделяющая пункты меню
Для пункта меню Screen необходимо указать следующие свойства:
- Id - идентификатор экрана, открывающегося данным пунктом меню
- Caption - название пункта меню. Кнопка Edit открывает окно локализации, где необходимо задать названия пунктов меню на использующихся в проекте языках. Названия пунктов меню сохраняются в соответствующем главном пакете сообщений в виде ключей в формате
menu-config.{item_id}
, где {item_id} - идентификатор пункта меню, который в данном случае совпадает с идентификатором открываемого экрана.
- Open type - режим открытия окна: новая вкладка или новое окно (
NEW_TAB
или DIALOG
соответственно). Если режим не указан, по умолчанию выбирается NEW_TAB
.
- Shortcut - комбинация клавиш, открывающих экран. Доступные модификаторы (
ALT, CTRL, SHIFT
) должны разделяться знаком "-", например, ALT-C
.
- Insert before / Insert after - пункт меню, перед которым/после которого долже размещаться новый элемент. Это свойство помогает комбинировать пункты меню проекта с элементами, унаследованными от базовых проектов в режиме Composite. Например, если вы хотите расположить вашу структуру меню слева от пункта меню Администрирование item, выберите
administration
в поле Insert before корневого элемента иерархии.
- Params - параметры, передаваемые методу
init()
контроллера открываемого экрана. Подробнее см. в разделе menu.xml в документации.
- Permissions - позволяет ограничить доступ к пункту меню. Если пользователь не имеет прав на доступ к данному пункту, он не будет отображаться. Подробнее см. в разделе menu.xml. Следует помнить, что существует более простой способ управления доступом к экрану - при помощи вкладки Screens в редакторе ролей
Для элемента Menu необходимо указать слудющий свойства:
- Id - опциональный уникальный идентификатор элемента
- Caption - название, аналогично названию элемента Screen
- Insert before / Insert after - аналогично элементу Screen