блочный

блочный пакет

Классы

Сорт Описание
Блокировать Класс для одного блока. Обычно не вызывается напрямую, предпочтительнее workspace.newBlock().
BlockFlyoutInflater Класс, отвечающий за создание блоков для всплывающих окон.
BlockNavigationPolicy Набор правил, управляющих навигацией с помощью клавиатуры из блока.
BlockSvg Класс для представления блока в формате SVG. Обычно не вызывается напрямую, предпочтительнее использовать workspace.newBlock().
ButtonFlyoutInflater Класс, отвечающий за создание кнопок для всплывающих окон.
Генератор кода Класс для генератора кода, который переводит блоки на язык.
Складной ящик для инструментовКатегория Класс для категории в панели инструментов, которую можно свернуть.
ComponentManager Менеджер всех элементов, зарегистрированных в рабочем пространстве.
Связь Класс для соединения блоков.
ConnectionChecker Класс для логики проверки типа соединения.
ConnectionDB База данных соединений. Связи хранятся в порядке их вертикальной составляющей. Таким образом, можно быстро найти соединения в заданной области с помощью бинарного поиска.
ConnectionNavigationPolicy Набор правил, управляющих навигацией с помощью клавиатуры из соединения.
ContextMenuRegistry Класс для реестра пунктов контекстного меню. Предполагается, что он будет одиночным. Не следует создавать новый экземпляр, а доступ к этому классу можно получить только из ContextMenuRegistry.registry.
Удалить область Абстрактный класс для компонента, который может удалить блок или пузырёк, помещённый на него.
DragTarget Абстрактный класс для компонента с настраиваемым поведением при перетаскивании или отпускании на нем блока или пузырька.
ПолеФлажок Класс для поля-флажка.
FieldDropdown Класс для редактируемого раскрывающегося поля.
FieldImage Класс для изображения на блоке.
FieldLabel Класс для нередактируемого, несериализуемого текстового поля.
FieldLabelSerializable Класс для нередактируемого, сериализуемого текстового поля.
FieldNavigationPolicy Набор правил, управляющих навигацией с помощью клавиатуры из поля.
НомерПоля Класс для редактируемого числового поля.
FieldTextInput Класс для редактируемого текстового поля.
FieldVariable Класс для раскрывающегося поля переменной.
FlyoutButton Класс для кнопки или метки во всплывающем окне.
FlyoutButtonNavigationPolicy Набор правил, управляющих навигацией с помощью клавиатуры с помощью всплывающей кнопки.
FlyoutItem Представление элемента, отображаемого во всплывающем окне.
FlyoutMetricsManager Рассчитывает метрики рабочей области всплывающего элемента. Эти метрики в основном используются для определения размера полос прокрутки всплывающего элемента.
FlyoutNavigationPolicy Общая навигационная политика, обеспечивающая переход между элементами во всплывающем меню.
FlyoutNavigator
FlyoutSeparator Представление зазора между элементами во всплывающем окне.
FlyoutSeparatorNavigationPolicy Набор правил, управляющих навигацией с помощью клавиатуры от разделителя выпадающих окон. Это пустой плейсхолдер, поскольку к разделителям выпадающих окон нельзя перейти.
FocusableTreeTraverser Вспомогательная утилита для реализаций IFocusableTree, облегчающая общие обходы деревьев.
FocusManager

Одиночный элемент на каждой странице, который управляет блочным фокусом на одном или нескольких IFocusableTrees и двунаправленно синхронизирует этот фокус с DOM.

Клиенты, желающие явно изменить фокус ввода для выбранных блочных компонентов на странице, должны использовать функции фокусировки в этом менеджере.

Менеджер отвечает за обработку событий фокуса из DOM (которые могут возникать при щелчке пользователей по элементам страницы) и за обеспечение того, чтобы соответствующие IFocusableNodes были четко обозначены как активно/пассивно выделенные таким же образом, как это было бы представлено при вызовах focusNode().

Жест Класс за один жест.
Сетка Класс для сетки рабочего пространства.
ГоризонтальныйВылет Класс для вылетов.
Вход Класс для ввода с необязательными полями.
InsertionMarkerPreviewer
KeyboardNavigationController KeyboardNavigationController отвечает за координацию поведения навигации с помощью клавиатуры по всему блоку, например, включение/отключение полной визуализации курсора.
LabelFlyoutInflater Класс, отвечающий за создание меток для всплывающих окон.
LineCursor Класс для линейного курсора.
Маркер Класс маркера. Используется при навигации с помощью клавиатуры для сохранения местоположения в блочном AST.
MarkerManager Класс для управления несколькими маркерами и курсором на рабочем пространстве.
Меню Базовый класс меню.
Пункт меню Класс, представляющий элемент меню.
MetricsManager Менеджер расчетов всех показателей рабочего пространства.
Имена Класс для базы данных имен сущностей (переменных, процедур и т. д.).
Навигатор Класс, отвечающий за определение того, куда следует переместить фокус в ответ на команды навигации с клавиатуры.
Параметры Проанализируйте указанные пользователем параметры, используя разумные значения по умолчанию, если поведение не определено.
RenderedConnection Класс для соединения блоков, которые могут быть отображены на экране.
Полоса прокрутки Класс для создания полосы прокрутки в чистом SVG-формате. Этот метод обеспечивает гарантированно работоспособную полосу прокрутки, но она может выглядеть и вести себя не так, как системные полосы прокрутки.
ScrollbarPair Класс для пары полос прокрутки: горизонтальной и вертикальной.
СепараторFlyoutInflater Класс, отвечающий за создание разделителей для всплывающих окон.
ShortcutRegistry Класс для реестра сочетаний клавиш. Предполагается, что он будет одиночным. Не следует создавать новый экземпляр, а доступ к этому классу можно получить только из ShortcutRegistry.registry.
Тема Класс по теме.
Менеджер тем Класс для хранения и обновления темы рабочего пространства и компонентов пользовательского интерфейса.
Тост Класс, позволяющий показывать и закрывать временные уведомления.
Ящик с инструментами Класс для набора инструментов. Создаёт DOM набора инструментов.
ToolboxCategory Класс для категории в наборе инструментов.
ToolboxItem Класс элемента в наборе инструментов.
ToolboxSeparator Класс для разделителя панели инструментов. Это тонкая визуальная линия, которая отображается на панели инструментов. Этот элемент не является интерактивным.
Мусорное ведро Класс для мусорного бака.
UnattachedFieldError Представляет собой ошибку, при которой поле пытается получить доступ к своему блоку или информации о своем блоке до того, как оно фактически было присоединено к указанному блоку.
VariableMap Класс для отображения переменных. Содержит структуру данных словаря, в которой ключами являются типы переменных, а значениями — списки переменных. Тип списка переменных определяется ключом.
ПеременнаяМодель Класс для модели переменной. Содержит информацию о переменной, включая имя, идентификатор и тип.
VerticalFlyout Класс для вылетов.
Рабочее пространство Класс для рабочего пространства. Это структура данных, содержащая блоки. Пользовательский интерфейс отсутствует, и её можно создавать без интерфейса.
WorkspaceAudio Класс для загрузки, хранения и воспроизведения звука для рабочего пространства.
WorkspaceDragger Класс для перетаскивателя рабочего пространства. Он перемещает рабочее пространство при перетаскивании мышью или касании.
WorkspaceNavigationPolicy Набор правил, управляющих навигацией с помощью клавиатуры из рабочего пространства.
WorkspaceSvg Класс для рабочего пространства. Это экранная область с опциональными корзиной, полосами прокрутки, всплывающими подсказками и функцией перетаскивания.
ZoomControls Класс для управления масштабированием.

Абстрактные классы

Абстрактный класс Описание
Поле Абстрактный класс для редактируемого поля.
Вылет Класс для вылетов.

Перечисления

Перечисление Описание
Тип соединения Перечисление для типа соединения или входа.

Функции

Функция Описание
получитьFocusManager() Удобная функция для FocusManager.getFocusManager.
hasBubble(obj) Проверка типа, которая проверяет, является ли заданный объект IHasBubble.
hideChaff(opt_onlyClosePopups) Закройте всплывающие подсказки, контекстные меню, раскрывающиеся списки и т. д.
inject(контейнер, opt_options) Внедрить редактор Blockly в указанный элемент-контейнер (обычно div).
isCopyable(obj)
isDeletable(obj) Возвращает, является ли заданный объект IDeletable.
isDraggable(obj) Возвращает, является ли заданный объект IDraggable или нет.
isIcon(obj) Тип защиты, который проверяет, является ли заданный объект IIcon.
isPaster(obj)
isRenderedElement(obj)
isSelectable(obj) Проверяет, является ли заданный объект ISelectable.
isSerializable(obj) Защита типа, которая проверяет, является ли заданный объект ISerializable.
isVariableBackedParameterModel(параметр) Возвращает, является ли данный объект держателем переменной или нет.
navigationBlock(текущий, дельта) Возвращает следующий доступный элемент относительно предоставленного дочернего блока.
navigateStacks(текущий, дельта) Возвращает следующий/предыдущий стек относительно стека заданного элемента.
setLocale(локаль)

Устанавливает локаль (т. е. локализованные сообщения/текстовые блоки и т. д.) на указанную локаль.

Это не нужно и не полезно при загрузке из тега скрипта, поскольку сообщения автоматически помещаются в объект Blockly.Msg. Но мы предоставляем это как в контексте с тегом скрипта, так и в контексте без тега скрипта, чтобы tscompiler мог корректно создать файлы определения типов.

Интерфейсы

Интерфейс Описание
BlocklyOptions Блочные варианты.
FieldCheckboxConfig Параметры конфигурации для поля флажка.
FieldCheckboxFromJsonConfig Параметры конфигурации fromJson для поля флажка.
FieldConfig Дополнительные возможности конфигурации базового поля.
FieldDropdownFromJsonConfig Конфигурация fromJson для раскрывающегося поля.
FieldImageConfig Параметры конфигурации для поля изображения.
FieldImageFromJsonConfig Параметры конфигурации fromJson для поля изображения.
FieldLabelConfig Параметры конфигурации для поля метки.
FieldLabelFromJsonConfig Параметры конфигурации fromJson для поля метки.
КонфигурацияНомерПоля Параметры конфигурации для числового поля.
FieldNumberFromJsonConfig Параметры конфигурации fromJson для числового поля.
FieldTextInputFromJsonConfig Параметры конфигурации fromJson для поля ввода текста.
FieldVariableConfig Параметры конфигурации для поля переменной.
FieldVariableFromJsonConfig Параметры конфигурации fromJson для поля переменной.
IAutoHideable Интерфейс для компонента, который может быть автоматически скрыт.
IBoundedElement Интерфейс ограниченных элементов.
IBubble Пузырьковый интерфейс.
ICollapsibleToolboxItem Интерфейс для элемента на панели инструментов, который можно свернуть.
IComponent Интерфейс для компонента рабочего пространства, который можно зарегистрировать с помощью ComponentManager.
IConnectionChecker Класс для логики проверки типа соединения.
IConnectionPreviewer Отображает визуальный «предварительный просмотр» того, куда будет подключен блок, если его отпустить.
IContextMenu
ICopyable
IDeletable Интерфейс для объекта, который можно удалить.
IDeleteArea Интерфейс для компонента, который может удалить блок или пузырь, помещенный на него.
IDraggable Представляет собой объект, который можно перетаскивать.
IDragger
IDragStrategy
IDragTarget Интерфейс для компонента с настраиваемым поведением при перетаскивании или размещении на нем блока или пузырька.
IFlyout Интерфейс для всплывающего окна.
IFlyoutInflater
IFocusableNode Представляет собой все, что может иметь фокус ввода.
IFocusableTree

Представляет собой дерево фокусируемых элементов с собственным активным/пассивным контекстом фокуса.

Обратите внимание, что фокусом управляет FocusManager, и реализации дерева могут иметь в фокусе не более одного узла IFocusableNode одновременно. Если фокус находится у самого дерева, то его сфокусированный узел считается «активным» (или «пассивным», если фокус находится у другого дерева).

Фокус распределяется между одним или несколькими деревьями, при этом каждое дерево может иметь ровно один активный или пассивный узел (и на всей странице в любой момент времени может существовать только один активный узел). Идея пассивного фокуса заключается в том, чтобы предоставить пользователям контекст, указывающий, куда будет восстановлен фокус при переходе к ранее выбранному дереву.

Обратите внимание: если необходим текущий сфокусированный узел дерева (пассивный или активный), можно использовать FocusableTreeTraverser.findFocusedNode.

Обратите внимание: если необходимо извлечь определенные узлы для этого дерева, используйте lookUpFocusableNode или FocusableTreeTraverser.findFocusableNodeFor.

IHasBubble
IIcon
iKeyboardAccessible Интерфейс для объекта, обрабатывающего сочетания клавиш.
Свойства изображения Определение выпадающего списка изображений, понятного человеку.
IMetricsManager Интерфейс для менеджера метрик.
IMovable Интерфейс для подвижного объекта.
INavigationPolicy Набор правил, определяющих, куда должна производиться навигация с помощью клавиатуры.
IPaster Объект, который может вставлять данные в рабочую область.
IPositionable Интерфейс для компонента, располагаемого поверх рабочего пространства.
Регистрируемый Интерфейс для компонента Blockly, который можно зарегистрировать.
IRenderedElement
Выбираемый

Интерфейс для объекта, который можно выбрать.

Обычно ожидается, что реализации будут использовать свои реализации onNodeFocus() и onNodeBlur() для вызова setSelected() с самим собой и null соответственно, чтобы гарантировать правильное обновление выделений и запуск события изменения выделения.

ISelectableToolboxItem Интерфейс для элемента на панели инструментов, который можно выбрать.
ISerializable
IStyleable Интерфейс для объекта, к которому можно добавить стиль.
IToolbox Интерфейс для набора инструментов.
IToolboxItem Интерфейс для элемента в наборе инструментов.
IVariableBackedParameterModel Интерфейс для модели параметров, содержащей переменную модель.
IVariableMap

Карты переменных — это объекты-контейнеры, отвечающие за хранение и управление набором переменных, на которые есть ссылки в рабочей области.

Любой из этих методов может определять инварианты относительно того, какие имена и типы являются допустимыми, и выдавать исключение, если они не выполняются.

IVariableModel
IVariableState Представляет состояние заданной переменной.
ToastOptions Параметры отображения/настройки всплывающего уведомления.

Пространства имен

Пространство имен Описание
Блокировать
blockAnimations
blockRendering
браузерEvents
пузыри
bumpObjects
буфер обмена
Складной ящик для инструментовКатегория
комментарии
общий
ComponentManager
константы
ContextMenu
ContextMenuItems
ContextMenuRegistry
CSS
диалог
перетаскивание
События
Расширения
fieldRegistry
герас
иконки
ICopyable
входы
слои
libraryBlocks
MetricsManager
Имена
Параметры
Процедуры
реестр
RenderedConnection
renderManagement
сериализация
ShortcutItems
ShortcutRegistry
Тема
Менеджер тем
Темы
трасос
Тост Настройки агрессивности озвучивания тостов программами экранного доступа. Значения соответствуют значениям для aria-live.
ToolboxCategory
ToolboxSeparator
Подсказка
Трогать
uiPosition
утилиты
Переменные
ПеременныеДинамические
ВиджетДив
XML
зелос

Переменные

Переменная Описание
Блоки Сопоставление имен типов блоков с объектами-прототипами блоков.
COLLAPSE_CHARS
COLLAPSED_FIELD_NAME
COLLAPSED_INPUT_NAME
конфигурация Объект, содержащий все значения в Blockly, которые, как мы ожидаем, разработчики смогут изменить.
defineBlocksWithJsonArray Определите блоки из массива определений блоков JSON, которые могут быть сгенерированы инструментами разработчика Blockly.
DELETE_VARIABLE_ID
DropDownDiv
получитьMainWorkspace Возвращает основное рабочее пространство. Возвращает последнее использованное основное рабочее пространство (в зависимости от фокуса). Старайтесь не использовать эту функцию, особенно если на странице несколько экземпляров Blockly.
getSelected Возвращает текущий выбранный копируемый объект.
ВХОДНОЕ_ЗНАЧЕНИЕ
JavaScript
keyboardNavigationController Одиночный экземпляр контроллера навигации клавиатуры.
Сообщение Словарь локализованных сообщений.
СЛЕДУЮЩЕЕ_ЗАЯВЛЕНИЕ
ОБРАТНЫЙ_ТИП
ВЫХОДНОЕ_ЗНАЧЕНИЕ
ПРЕДЫДУЩЕЕ_ЗАЯВЛЕНИЕ
PROCEDURE_CATEGORY_NAME Строка для использования в атрибуте «custom» категории в XML-файле набора инструментов. Эта строка указывает, что категория должна быть динамически заполнена блоками процедур.
RENAME_VARIABLE_ID
setParentContainer Задайте родительский контейнер. Это элемент-контейнер, в котором отображаются WidgetDiv, dropDownDiv и Tooltip при первом вызове Blockly.inject . Этот метод является NOP-оператором, если вызывается после первого Blockly.inject .
svgResize Измените размер SVG-изображения так, чтобы оно полностью заполняло его контейнер. Вызывайте этот метод, когда вид фактически меняет размеры (например, при изменении размера окна или ориентации устройства). Чтобы изменить размер рабочей области при изменении содержимого (например, при добавлении или удалении блока), см. workspace.resizeContents. Запишите высоту/ширину SVG-изображения.
TOOLBOX_AT_BOTTOM
TOOLBOX_AT_LEFT
TOOLBOX_AT_RIGHT
TOOLBOX_AT_TOP
VARIABLE_CATEGORY_NAME Строка для использования в атрибуте «custom» категории в XML-файле набора инструментов. Эта строка указывает, что категория должна быть динамически заполнена переменными блоками.
VARIABLE_DYNAMIC_CATEGORY_NAME Строка для использования в атрибуте «custom» категории в XML-файле набора инструментов. Эта строка указывает, что категория должна быть динамически заполнена переменными блоками.
ВЕРСИЯ Версия ядра Blockly. Эта константа переопределяется скриптом сборки (npm run build) значением версии из package.json. Это делает Closure Compiler в задаче gulp buildCompressed. Для локальных сборок можно передать компилятору --define='Blockly.VERSION=XYZ', чтобы переопределить эту константу.

Псевдонимы типов

Тип псевдонима Описание
FieldCheckboxValidator Функция, которая вызывается для проверки изменений значения поля перед их установкой.
FieldDropdownConfig Параметры конфигурации для раскрывающегося поля.
FieldDropdownValidator Функция, которая вызывается для проверки изменений значения поля перед их установкой.
FieldNumberValidator Функция, которая вызывается для проверки изменений значения поля перед их установкой.
FieldTextInputConfig Параметры конфигурации для поля ввода текста.
FieldTextInputValidator Функция, которая вызывается для проверки изменений значения поля перед их установкой.
FieldValidator Функция, которая вызывается для проверки изменений значения поля перед их установкой.
FieldVariableValidator Функция, которая вызывается для проверки изменений значения поля перед их установкой.
ICopyData
MenuGenerator Либо массив пунктов меню, либо функция, которая генерирует массив пунктов меню для FieldDropdown или его потомков.
MenuGeneratorFunction Функция, которая генерирует массив пунктов меню для FieldDropdown или его потомков.
MenuOption Отдельный пункт в раскрывающемся меню. Может быть либо строковым литералом- separator для пункта меню, либо массивом для пунктов меню обычных действий. В последнем случае первый элемент — это понятное человеку значение (текст, объект ImageProperties или HTML-элемент), а второй элемент — значение, не зависящее от языка.
ReturnEphemeralFocus

Объявление типа для возврата фокуса в FocusManager после завершения эфемерного потока пользовательского интерфейса (например, диалога).

Более подробную информацию см. в FocusManager.takeEphemeralFocus.