Типы встроенного языка и свойства элемента проекта вида «ФрагментКомандногоИнтерфейса»

Фрагмент командного интерфейса объединяет несколько команд и групп команд для того, чтобы показать их в интерфейсе. В отличие от группы командного интерфейса, используется только как контейнер для компонентов командного интерфейса и не позволяет задать какие-либо настройки отображения в пользовательском интерфейсе. Если является элементом другого компонента, то отображается в соответствии с его настройками. Удобен для переиспользования в различных компонентах пользовательского интерфейса.

Может задаваться как самостоятельный элемент проекта. В таком виде используется, например, в свойствах компонента СтандартноеКлиентскоеПриложениеСРазделами:

Пример фрагмента командного интерфейса на форме:

А это пример фрагмента командного интерфейса в панели навигации демонстрационного приложения:

В то время как в этом примере сама панель навигации является фрагментом командного интерфейса, каждый ее пункт является заголовком команды или группы команд. Так, Мероприятия — это группа команд, каждая из которых открывает одну из двух форм (Задачи или События).

Тип <ИмяФрагментаКомандногоИнтерфейса>

После того как вы добавили в проект фрагмент командного интерфейса и дали ему имя, создаст один тип встроенного языка. Имя этого типа будет совпадать с именем вашего фрагмента командного интерфейса.

Например, если в проекте есть фрагмент командного интерфейса ПанельНавигации, то будет создан тип ПанельНавигации. В общем случае имя этого типа будет выглядеть следующим образом: <ИмяФрагментаКомандногоИнтерфейса>.

Этот тип встроенного языка доступен на клиенте.

Он не имеет конструктора и имеет единственный экземпляр, обращение к которому выполняется по имени типа:

// Получить фрагмент командного интерфейса «ПанельНавигации»
пер Навигация = ПанельНавигации

Модуль фрагмента командного интерфейса

В проекте модуль, расширяющий тип <ИмяФрагментаКомандногоИнтерфейса>, называется модулем фрагмента командного интерфейса. Он исполняется на клиенте.

В этом модуле вы можете обработать события нажатия на команды, которые описаны в свойстве Элементы этого фрагмента.

Свойства элемента проекта

Элементы
Команда или список команд, которые будут содержаться во фрагменте. Массив следующих типов:

Пример

Пример YAML-файла, в котором используются различные способы формирования фрагмента командного интерфейса:

ВидЭлемента: ФрагментКомандногоИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 58e451d8-20ff-4ba8-8b92-d8dacae520cc
Имя: ФрагментИнтерфейса
Элементы:
    - # --- Вызов собственных команд, добавленных в проект
        =МояОбычнаяКоманда
    -
        =МояНавигационнаяКоманда
    -
        =МояПереключаемаяКоманда
    -
        =МойФрагментИнтерфейса

    - # --- Использование группы командного интерфейса      
        Тип: ГруппаКомандногоИнтерфейса<Команда>
        Представление: Стандартные команды элементов проекта
        Изображение: icon-desc.svg
        Элементы:
            - # --- Вызов стандартных команд элементов проекта: открытие форм справочников
                =Сотрудники.ОткрытьСписок
            - 
                =События.СоздатьОбъект

    - # --- Навигационная команда, описанная внутри фрагмента                   
        Тип: НавигационнаяКоманда
        Представление: Задачи
        ТипФормы: МояФорма

    - # --- Обычная команда, описанная внутри фрагмента      
        Тип: ОбычнаяКоманда
        Представление: Подсказать
        Изображение: icon-q.svg
        Обработчик: ОбработчикКомандыПодсказать 

    - # --- Переключаемая команда, описанная внутри фрагмента
        Тип: ПереключаемаяКоманда
        ПредставлениеАктивного: Избранное
        ПредставлениеНеактивного: В избранное
        Обработчик: ОбработчикПереключаемойКоманды

    - # --- Фрагмент интерфейса, описанный внутри фрагмента    
        Тип: ФрагментКомандногоИнтерфейса<Команда>
        Элементы:
            -
                Тип: ОбычнаяКоманда
                Представление: Настройки
                Изображение: РазделНастройки.svg
                Обработчик: ОбработчикКомандыНастройки
            -
                Тип: ОбычнаяКоманда
                Представление: Сервис
                Изображение: РазделСервис.svg
                Обработчик: ОбработчикКомандыСервис