Навигатор
Навигатор - это иерархическая структура (дерево), состоящая из элементов навигатора. Есть три типа элементов навигатора:
- папка - объединяет другие элементы навигатора в группу. Также выбор этого элемента влияет на отображение его потомков, если они принадлежат другому окну.
- действие - выполняет заданное действие. В навигатор можно добавить только те действия, которые не принимают на вход ни одного аргумента.
- форма - открывает заданную форму в интерактивном представлении в асинхронном режиме.
При добавлении элемента в навигатор ему устанавливается родительский элемент. Корневым элементом навигатора является папка навигатора System.root
.
Если в какой-то папке навигатора не отображается ни один элемент навигатора, то эта папка автоматически прячется.
Также, как и интерактивное представление формы, навигатор отображается в двумерном пространстве: на экране устройства пользователя, и, соответственно, для него, как и для других графических представлений, можно / нужно задавать дизайн.
Язык
Для управления навигатором используется инструкция NAVIGATOR
.
Примеры
FORM items;
FORM stocks;
FORM legalEntities;
FORM shipments;
hello() { MESSAGE 'Hello world'; }
hi() { MESSAGE 'Hi'; }
NAVIGATOR {
// создаем новую папку навигатора и делаем, чтобы все ее потомки отображались в окно с вертикальным тулбаром
NEW FOLDER catalogs 'Справочники' WINDOW toolbar {
// создаем в папке элемент-форму для формы items, имя элемента по умолчанию равняется имени формы
NEW items;
}
catalogs { // инструкция редактирования элемента навигатора
// создаем элемент-форму stocksNavigator для формы stocls и добавляем в папку catalogs последним элементом
NEW FORM stocksNavigator 'Склады' = stocks;
// создаем элемент-форму с именем legalEntities в папку catalogs непосредственно за элементом items
NEW legalEntities AFTER items;
NEW shipments;
}
// создаем еще одну папку, элементы которой будут также отображаться в окно с вертикальным тулбаром
// сами папки будут отображаться в окне root, и при выборе одной из них в окне с вертикальным
// тулбаром будут показаны потомки именно этой папки
NEW FOLDER documents 'Документы' WINDOW toolbar {
NEW ACTION hi; // создаем элемент-действие
NEW ACTION h=hello; // создаем элемент-действие
// инструкция перемещения элемента shipments из папки catalogs в папку document перед элементом hello
MOVE shipments BEFORE h;
}
}