блочно > Блок

Класс блока

Класс для одного блока. Обычно не вызывается напрямую, предпочтительнее workspace.newBlock().

Подпись:

export declare class Block 

Конструкторы

Конструктор Модификаторы Описание
(конструктор)(рабочая область, имя_прототипа, opt_id) Создает новый экземпляр класса Block

Характеристики

Свойство Модификаторы Тип Описание
childBlocks_ protected этот[]
рухнул_ protected булев
COLLAPSED_FIELD_NAME

static

readonly

нить Независимый от языка идентификатор, присвоенный свернутому полю.
COLLAPSED_INPUT_NAME

static

readonly

нить Независимый от языка идентификатор, присвоенный свернутому вводу.
цвет_ protected нить Цвет блока в формате «#RRGGBB».
сочинять? (rootBlock: Блок ) => недействителен (Необязательно) Необязательный метод, который перенастраивает блок на основе содержимого диалогового окна мутатора.
контекстное меню булев
данные строка | ноль Необязательные текстовые данные, которые передаются между блоками и XML. Не имеют эффекта. Могут использоваться третьими лицами для метаинформации.
разлагаться? (рабочая область: рабочая область ) => Блокировать (Необязательно) Необязательная функция, которая заполняет всплывающее окно мутатора блоками, представляющими конфигурацию этого блока.
разрушать? () => недействительный (Необязательно) Необязательный метод, вызываемый во время утилизации.
утилизация protected булев Находится ли текущий блок в настоящее время в процессе утилизации?
domToMutation? (p1: Элемент) => пустота (Необязательно) Необязательный метод десериализации для определения того, как десериализовать состояние мутации из XML. Это должно быть связано с определением mutationToDom .
получитьПеременныеРазработчика? () => строка[] (Необязательно) Необязательный метод объявления переменных разработчика, которые будут использоваться генераторами. Переменные разработчика никогда не отображаются пользователю, но объявляются как глобальные переменные в сгенерированном коде.
шляпа? нить (Необязательно) Название типа шляпы.
helpUrl строка | (() => строка) | ноль Строка для справки по блоку или функции, которая возвращает URL. Нуль для отсутствия справки.
иконки Значок []
идентификатор нить
инициализация? () => недействительный (Необязательно) Необязательный метод, вызываемый во время инициализации.
входнойСписок Вход []
входыВстроенные? булев (Необязательный)
inputsInlineПо умолчанию? булев (Необязательный)
isInFlyout булев
isInMutator булев
isInsertionMarker_ protected булев Истина, если этот блок является маркером вставки.
loadExtraState? (p1: любой) => недействительный (Необязательно) Необязательный метод сериализации для определения того, как десериализовать дополнительное состояние блока (например, состояние мутации) из чего-то совместимого с JSON. Это должно быть связано с определением saveExtraState .
мутацияToDom? (...p1: любой[]) => Элемент (Необязательно) Необязательный метод сериализации для определения того, как сериализовать состояние мутации в XML. Это должно быть связано с определением domToMutation .
следующийСвязь Соединение | нуль
на смену? ((стр.1: Аннотация ) => недействительный) | нулевой (Необязательно) Необязательный метод обратного вызова, используемый при изменении родительского рабочего пространства блока. Обычно вызывается только из конструктора, функции инициализации типа блока или функции инициализации расширения.
выходСоединение Соединение | нуль
outputShape_ protected число | ноль
родительский блок_ protected это | ноль
предыдущийConnection Соединение | нуль
оказанный readonly булев Является ли этот блок BlockSVG?
РТЛ булев
сохранитьExtraState? (doFullSerialization?: логическое значение) => любое (Необязательно) Необязательный метод сериализации для определения того, как сериализовать дополнительное состояние блока (например, состояние мутации) в нечто совместимое с JSON. Это должно быть связано с определением loadExtraState .
styleName_ protected нить Название стиля блока.
suppressPrefixSuffix булев | нуль Необязательное свойство для подавления добавления STATEMENT_PREFIX и STATEMENT_SUFFIX в сгенерированный код.
подсказка Подсказка.Информация о совете
тип нить
рабочее пространство Рабочее пространство

Методы

Метод Модификаторы Описание
добавитьИконку(значок) Добавляет указанный значок в блок.
всеВходыЗаполнены(opt_shadowBlocksAreFilled) Рекурсивно проверяет, заполнены ли все входы операторов и значений блоками. Также проверяет все следующие блоки операторов в этом стеке.
appendDummyInput(имя) Добавляет фиктивную строку ввода.
appendEndRowInput(имя) Добавляет ввод, завершающий строку.
appendInput(вход)

Добавляет указанную входную строку.

Позволяет добавлять к блоку пользовательские входные данные.

appendStatementInput(имя) Добавляет строку ввода оператора.
appendValueInput(имя) Добавляет строку ввода значения.
bumpNeighbours() Выталкивать несвязанные блоки из выравнивания. Два блока, которые на самом деле не связаны, не должны случайно выстраиваться в линию на экране.
распорядиться(healStack) Утилизируйте этот блок.
disposeInternal() protected Удаляет этот блок, не выполняя действия, требуемые верхним блоком. Например, не запускает события, не отключает блок и т. д.
doInit_() protected Вызывает функцию init() и обрабатывает связанное срабатывание событий и т. д.
получитьДети(упорядочено) Найти все блоки, которые напрямую вложены в этот блок. Включает входные значения и операторы, а также любой последующий оператор. Исключает любые соединения на вкладке вывода или любой предшествующий оператор. Блоки опционально сортируются по позиции; сверху вниз.
получитьЦвет() Получите цвет блока.
получитьКомментарийТекст() Возвращает комментарий к этому блоку (или null, если комментариев нет).
получитьПотомки(упорядочено) Найти все блоки, которые напрямую или косвенно вложены в этот блок. Включить этот блок в список. Включить входные данные значений и операторов, а также любые последующие операторы. Исключить любые соединения на вкладке вывода или любые предыдущие операторы. Блоки опционально сортируются по позиции; сверху вниз.
getDisabledReasons() Получить набор причин, по которым блок в данный момент отключен, если таковые имеются. Если блок включен, этот набор будет пустым.
получитьПоле(имя) Возвращает именованное поле из блока.
получитьПоля()

Возвращает генератор, который предоставляет все поля в блоке.

Генератор, который можно использовать для итерации полей в блоке.

получитьЗначениеПоля(имя) Возвращает нейтральное к языку значение указанного поля.
получитьОттенок() Получить значение оттенка HSV блока. Null, если оттенок не установлен.
получитьИконку(тип)
получитьИконки()
getInheritedDisabled() Получить, отключен ли блок из-за родителей. Собственное отключенное свойство блока не учитывается.
получитьВход(имя) Извлекает именованный входной объект.
getInputsInline() Узнайте, расположены ли входные значения горизонтально или вертикально.
получитьInputTargetBlock(имя) Извлекает блок, прикрепленный к указанному входу.
получитьInputWithBlock(блок) Возвращает вход, который подключается к указанному блоку.
получитьСледующийБлок() Верните следующий блок операторов, напрямую связанный с этим блоком.
получитьOutputShape() Получите выходную форму блока.
получитьParent() Возвращает родительский блок или null, если этот блок находится на верхнем уровне. Родительский блок — это либо блок, подключенный к предыдущему соединению (для блока операторов), либо блок, подключенный к выходному соединению (для блока значений).
получитьПредыдущийБлок() Возвращает блок, подключенный к предыдущему соединению.
получитьОтносительноПоверхностиXY() Возвращает координаты верхнего левого угла этого блока относительно начала координат поверхности чертежа (0,0) в единицах рабочего пространства.
получитьRootBlock() Возвращает самый верхний блок в дереве этого блока. Он вернет себя, если этот блок находится на верхнем уровне.
получитьИмяСтиля() Получите название стиля блока.
получитьSurroundParent() Возвращает родительский блок, который окружает текущий блок, или null, если у этого блока нет окружающего блока. Родительский блок может быть просто предыдущим оператором, тогда как окружающий блок — это оператор if, цикл while и т. д.
получитьTooltip() Возвращает текст подсказки для этого блока.
получитьVars() Вернуть все переменные, на которые ссылается этот блок.
hasDisabledReason(причина) Узнайте, отключен ли блок в данный момент по указанной причине.
имеетИконку(тип)
initModel() Вызовите initModel для всех полей блока. Может быть вызван более одного раза. После создания блока и до первого взаимодействия с ним необходимо вызвать либо initModel, либо initSvg. Взаимодействия включают действия пользовательского интерфейса (например, щелчок и перетаскивание) и запуск событий (например, создание, удаление и изменение).
isCollapsed() Узнать, свёрнут ли блок или нет.
isDeletable() Узнать, можно ли удалить этот блок или нет.
isDisposed() Возвращает значение, если этот блок был уничтожен/удалён.
isDuplicateable() Узнать, является ли блок дублируемым или нет. Если дублирование этого блока и потомков поместит этот блок выше емкости рабочей области, этот блок не дублируется. Если дублирование этого блока и потомков поместит любой тип выше их maxInstances, этот блок не дублируется.
isEnabled() Получите, включен ли этот блок. Блок считается включенным, если нет причин, по которым он может быть отключен. Блок может быть отключен по другим причинам, даже если пользователь попытается вручную включить его, например, когда блок находится в недопустимом месте.
isInsertionMarker() Узнайте, является ли этот блок блоком маркера вставки или нет.
isOwnDeletable() Возвращает значение true или false для свойства удаления этого блока.
isOwnEditable() Возвращает значение, является ли собственное редактируемое свойство этого блока истинным или ложным.
isShadow() Узнайте, является ли этот блок теневым или нет.
jsonInit(json) Инициализируйте этот блок, используя кроссплатформенное, удобное для интернационализации JSON-описание.
миксин(mixinObj, opt_disableCheck) Добавьте ключ/значения из mixinObj в этот объект блока. По умолчанию этот метод проверит, что ключи в mixinObj не перезапишут существующие значения в блоке, включая значения прототипа. Это обеспечивает некоторую страховку от несовместимости миксинов/расширений с будущими функциями блока. Эту проверку можно отключить, передав true в качестве второго аргумента.
moveBy(dx, dy, причина) Переместить блок на относительное смещение.
moveInputBefore(имя, refName) Переместить именованный вход в другое место этого блока.
moveNumberedInputBefore(inputIndex, refIndex) Переместите пронумерованный вход в другое место этого блока.
removeIcon(тип) Удаляет значок, getType которого соответствует заданному типу iconType, из блока.
removeInput(имя, opt_quiet) Удалить вход из этого блока.
переименоватьVarById(старыйId, новыйId) Уведомление о переименовании переменной. Если идентификатор совпадает с одной из переменных этого блока, переименуйте ее.
setCollapsed(свернуто) Установите, будет ли блок свернут или нет.
setColour(цвет) Изменить цвет блока.
setCommentText(текст) Задайте текст комментария этого блока.
setDeletable(удаляемый) Установите, можно ли удалить этот блок или нет.
setDisabledReason(отключено, причина) Добавьте или удалите причину, по которой блок может быть отключен. Если у блока есть какие-либо причины для отключения, то сам блок будет считаться отключенным. Блок может быть отключен по нескольким независимым причинам одновременно, например, когда пользователь вручную отключает его или блок недействителен.
setEditable(редактируемый) Укажите, можно ли редактировать этот блок.
setFieldValue(новоеЗначение, имя) Устанавливает значение указанного поля для этого блока.
setHelpUrl(url) Установите URL-адрес страницы справки этого блока.
setInputsInline(новыйБулевый) Установите, будут ли вводимые значения располагаться горизонтально или вертикально.
setMovable(подвижный) Установите, является ли этот блок подвижным или нет.
setMutator(_mutator) Дайте этому блоку диалог-мутатор.
setNextStatement(newBoolean, opt_check) Установите, может ли другой блок присоединить цепь к нижней части этого блока.
установитьПриИзменении(onchangeFn) Устанавливает функцию обратного вызова для использования при каждом изменении родительского рабочего пространства блока, заменяя любой предыдущий обработчик onchange. Обычно это вызывается только из конструктора, функции инициализации типа блока или функции инициализации расширения.
setOutput(newBoolean, opt_check) Установите, возвращает ли этот блок значение.
setOutputShape(выходнаяФорма) Установите выходную форму блока.
setPreviousStatement(newBoolean, opt_check) Установите, может ли этот блок прикрепляться к основанию другого блока.
setStyle(имяСтиляБлока) Задайте стиль и цветовые значения блока.
setTooltip(новыйПодсказка) Устанавливает подсказку для этого блока.
setWarningText(_text, _opt_id) Установите текст предупреждения этого блока.
toDevString()

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

Предназначено для использования в журналах консоли и ошибках. Если вам нужна строка, которая использует родной язык пользователя (включая текст блока, значения полей и дочерние блоки), используйте toString() .

toString(opt_maxLength, opt_emptyToken) Создайте понятное текстовое представление этого блока и всех его дочерних элементов.
отключить (opt_healStack) Отсоедините этот блок от его вышестоящего блока. Если этот блок является утверждением, по желанию переподключите блок ниже с блоком сверху.