блочно > BlockSvg

Класс BlockSvg

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

Подпись:

export declare class BlockSvg extends Block implements IBoundedElement, IContextMenu, ICopyable<BlockCopyData>, IDraggable, IDeletable, IFocusableNode 

Расширяет: Блок

Реализует: IBoundedElement , IContextMenu , IКопируемый < БлокКопироватьДанные >, IDraggable , IDeletable , IFocusableNode

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

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

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

Свойство Модификаторы Тип Описание
COLLAPSED_WARNING_ID

static

readonly

(не объявлено) Идентификатор предупреждения «Свёрнутые предупреждения». Позволяет удалить предупреждение «Свёрнутые предупреждения», не удаляя предупреждения, относящиеся к блоку.
customContextMenu? (p1: Array<ContextMenuOption | LegacyContextMenuOption>) => void (Необязательный)
разлагаться? (стр. 1: Рабочее пространство ) => BlockSvg (Необязательный)
высота число Высота этого блока не включает блоки операторов, расположенные выше или ниже. Высота указана в единицах рабочего пространства.
В СООТВЕТСТВИИ

static

readonly

(не объявлено) Константа для определения строк, которые должны быть отображены в строке. Не конфликтует с Blockly.inputTypes.
мутатор MutatorIcon | null Значок мутатора блока (если есть).
nextConnection RenderedConnection
outputConnection RenderedConnection
предыдущийConnection RenderedConnection
визуализированный readonly (не объявлено) Является ли этот блок BlockSVG?
сохранитьПодключения? (rootBlock: BlockSvg ) => недействителен

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

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

стиль BlockStyle
ширина число Ширина этого блока, включая все подключенные блоки значений. Ширина указана в единицах рабочего пространства.
рабочее пространство WorkspaceSvg

Методы

Метод Модификаторы Описание
addClass(имя_класса) Добавьте класс CSS к группе SVG этого блока.
addIcon(значок)
addSelect() Добавляет к блоку визуальный эффект «выбора», но фактически не выбирает его и не запускает событие.
appendInput(вход)
вынести на передний план (blockOnly) Переместите этот блок на переднюю часть видимого рабочего пространства. Теги не учитывают z-index, поэтому SVG отображает их в том порядке, в котором они находятся в DOM. Размещая этот блок первым в группе блоков, , он будет отображаться поверх любых других блоков. Используйте этот метод экономно, так как он требует больших затрат, поскольку меняет порядок узлов DOM.
bumpNeighbours()

Выталкивает несвязанные блоки из выравнивания.

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

calculateContextMenuLocation(e) protected Возвращает местоположение для отображения контекстного меню для этого блока. Используйте местоположение щелчка, если был нажат блок, или местоположение, основанное на полях блока в противном случае.
canBeFocused() См. IFocusableNode.canBeFocused.
checkAndDelete() Удалите блок и скройте при этом лишнее. Блок не будет удалён, если он находится во всплывающем меню. Это действие вызывается из контекстного меню и сочетаниями клавиш как полное удаление. Если вы удаляете блок из рабочей области и вам не нужно проверять всплывающие окна, обрабатывать группировку событий или скрывать лишнее, используйте block.dispose() напрямую.
dispose(healStack, animate) Утилизируйте этот блок.
disposeInternal() Удаляет этот блок, не выполняя действия, требуемые верхним блоком. Например, вызывает эффекты пользовательского интерфейса, удаляет узлы и т. д.
перетащить(newLoc, e) Перетаскивает блок в указанное место.
endDrag(e) Завершает перетаскивание блока.
generateContextMenu(e) protected Сгенерировать контекстное меню для этого блока.
получитьBoundingRectangle() Возвращает координаты ограничивающего прямоугольника, описывающего размеры данного блока и всех блоков, расположенных под ним. Система координат: координаты рабочего пространства.
getBoundingRectangleWithoutChildren() Возвращает координаты ограничивающего прямоугольника, описывающего размеры только этого блока. Система координат: координаты рабочего пространства.
получитьДети(упорядочено) Найти все блоки, непосредственно вложенные в данный блок. Включает входные значения и операторы, а также все последующие операторы. Исключает любые соединения на вкладке вывода или все предыдущие операторы. Блоки можно сортировать по положению сверху вниз.
получитьЦвет() Получите цвет блока.
getColourSecondary() Получить вторичный цвет блока.
getColourTertiary() Получить третичный цвет блока.
получитьFocusableElement() См. IFocusableNode.getFocusableElement.
getFocusableTree() См. IFocusableNode.getFocusableTree.
получитьNextBlock() Верните следующий блок операторов, непосредственно связанный с этим блоком.
получитьПредыдущийБлок() Возвращает блок, подключенный к предыдущему соединению.
получитьRelativeToSurfaceXY() Возвращает координаты левого верхнего угла блока относительно начала координат поверхности чертежа (0,0) в единицах рабочего пространства. Если блок находится в рабочем пространстве, то начало координат рабочей области — (0, 0). Это не зависит от масштаба рабочего пространства.
получитьСтиль() Возвращает объект BlockStyle, используемый для стилизации этого блока.
получитьSvgRoot() Возвращает корневой узел SVG или null, если его не существует.
initSvg() Создать и инициализировать SVG-представление блока. Может вызываться несколько раз.
isCopyable() Возвращает, можно ли копировать этот блок или нет.
isMovable() Возвращает, является ли этот блок подвижным или нет.
jsonInit(json)
markDirty() Уведомить все входные данные в этом блоке о необходимости пометить их поля как грязные. Грязное поле — это поле, которое необходимо перерисовать.
moveBy(dx, dy, reason) Переместить блок на относительное смещение.
moveNumberedInputBefore(inputIndex, refIndex) Переместить пронумерованный вход в другое место этого блока.
moveTo(xy, причина) Переместить блок на позицию.
onNodeBlur() См. IFocusableNode.onNodeBlur.
onNodeFocus() См. IFocusableNode.onNodeFocus.
removeClass(имя_класса) Удалить класс CSS из группы SVG этого блока.
removeIcon(тип)
removeInput(имя, opt_quiet) Удалить вход из этого блока.
removeSelect() Удаляет визуальный эффект «выбора» из блока, но фактически не отменяет его выбор и не запускает событие.
оказывать() Мгновенно размещает и переформатирует блок на основе его содержимого и настроек.
revertDrag() Перемещает блок обратно туда, где он был в начале перетаскивания.
scheduleSnapAndBump() Привяжите к сетке, а затем отодвиньте соседние блоки в конце следующего рендера.
выбирать() Выбирает этот блок. Визуально выделяет блок.
setCollapsed(свернуто) Установить, будет ли блок свернут или нет.
setColour(цвет) Измените цвет блока.
setDeletable(удаляемый) Добавьте класс blocklyNotDeletable, если блок не может быть удален, или удалите класс, если блок может быть удален.
setDisabledReason(отключено, причина) Добавьте или удалите причину, по которой блок может быть отключен. Если у блока есть причины для отключения, он сам будет считаться отключенным. Блок может быть отключен одновременно по нескольким независимым причинам, например, если пользователь отключает его вручную или блок недействителен.
setDragStrategy(dragStrategy) Устанавливает стратегию перетаскивания для этого блока.
setEditable(редактируемый) Установите, будет ли этот блок доступен для редактирования или нет.
setHighlighted(выделено) Укажите, будет ли блок подсвечен или нет. Подсвечивание блоков часто используется для визуального обозначения блоков, которые в данный момент выполняются.
setInputsInline(newBoolean) Установите, будут ли вводимые значения располагаться горизонтально или вертикально.
setMovable(подвижный) Установите, является ли этот блок подвижным или нет.
setMutator(мутатор) Дайте этому блоку диалог-мутатор.
setNextStatement(newBoolean, opt_check) Установите, может ли другой блок присоединить цепочку к нижней части этого блока.
setOutput(newBoolean, opt_check) Установите, возвращает ли этот блок значение.
setPreviousStatement(newBoolean, opt_check) Установите, может ли этот блок прикрепляться к основанию другого блока.
setStyle(blockStyleName) Задайте стиль и цвет блока.
setWarningText(текст, идентификатор) Установите текст предупреждения этого блока.
snapToGrid() Привяжите этот блок к ближайшей точке сетки.
startDrag(e) Начинает перетаскивание блока.
toCopyData() Закодировать блок для копирования.
toFlyoutInfo() Возвращает представление этого блока, которое может быть отображено во всплывающем окне.
перевод(x, y) Преобразует блок, устанавливая преобразование в атрибут преобразования SVG блока.
отменить выбор() Снимает выделение с этого блока. Визуально снимает выделение с блока.