BlockSvg 类
用于块的 SVG 表示法的类。通常不会直接调用,建议使用 workspace.newBlock()。
Signature:
export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBoundedElement, ICopyable<BlockCopyData>, IDraggable
扩展:屏蔽
实现:IASTNodeLocationSvg、IBoundedElement、ICopyable<BlockCopyData>、IDraggable
构造函数
构造函数 | 修饰符 | 说明 |
---|---|---|
(constructor)(workspace, protoName, opt_id) | 构造 BlockSvg 类的新实例 |
属性
媒体资源 | 修饰符 | 类型 | 说明 |
---|---|---|---|
COLLAPSED_WARNING_ID |
|
(未声明) | 用于发出“已收起警告”警告的 ID。允许我们移除“已收起的警告”警告,而不移除属于该屏蔽的任何警告。 |
customContextMenu 吗? | (p1:Array<ContextMenuOption | LegacyContextMenuOption>)=> 空 | (可选) | |
如何分解? | (p1:工作区) => BlockSvg | (可选) | |
高度 | number | 此代码块的高度,不包括上方或下方的任何语句块。高度以工作区单位为单位。 | |
内嵌 |
|
(未声明) | 用于标识要以内嵌方式呈现的行的常量。请勿与 Blockly.inputTypes 冲突。 |
赋值者 | MutatorIcon | null | 屏蔽的更改器图标(如果有)。 | |
nextConnection | RenderedConnection | ||
outputConnection | RenderedConnection | ||
previousConnection | RenderedConnection | ||
已呈现 | boolean | ||
saveConnections? | (p1:BlockSvg)=> void | (可选) | |
样式 | BlockStyle | ||
警告 | WarningIcon | null | 禁播警告图标(如有)。 | |
宽度 | number | 此块的宽度,包括任何连接的值块。宽度以工作区单位为单位。 | |
工作区 | WorkspaceSvg |
方法
方法 | 修饰符 | 说明 |
---|---|---|
addIcon(icon) | ||
addSelect() | 向代码块添加视觉“选择”效果,但实际上并不会选择该代码块或触发事件。 | |
appendInput(input) | ||
bumpNeighbours() | 使未连接的块出现不一致的情况。 两个实际并未连接的方块在屏幕上不应对齐排列,因为这会让最终用户感到困惑。 |
|
checkAndDelete() | 删除一个块并隐藏 chaff 。如果该块在浮出控件中,不会被删除。此操作会从上下文菜单和键盘快捷键进行调用,作为完整的删除操作。如果您要从工作区中处置块且不需要执行浮出检查、处理事件分组或隐藏 chaff,可以直接使用 block.dispose() 。 |
|
dispose(healStack, animate) | 处置此块。 | |
disposeInternal() | 处理此代码块,而不执行 Top 代码块所需的操作。例如,确实会触发界面效果、移除节点等。 | |
generateContextMenu() | protected |
为此块生成上下文菜单。 |
getBoundingRectangle() | 返回边界框的坐标,该坐标表示此图块及其堆叠的所有图块的尺寸。坐标系:工作区坐标。 | |
getChildren(ordered) | 查找直接嵌套在此代码块中的所有代码块。包括价值和语句输入,以及任何后续语句。排除输出标签页或前面的任何语句中的任何连接。组成要素有选择性地按位置排序;从上到下排序。 | |
getColour() | 获取方块的颜色。 | |
getColourSecondary() | 获取块的次要颜色。 | |
getColourTertiary() | 获取方块的第三色。 | |
getCommentIcon() | 获取附加到此代码块的注释图标,如果代码块没有注释,则返回 null。 | |
getNextBlock() | 返回直接连接到此代码块的下一个语句代码块。 | |
getPreviousBlock() | 返回连接到上一个连接的块。 | |
getRelativeToSurfaceXY() | 返回此图块左上角相对于绘图表面原点 (0,0) 的坐标,以工作区单位为单位。如果图块在工作区上,则 (0, 0) 为工作区坐标系的原点。这一点不会随工作区缩放而变化。 | |
getSvgRoot() | 返回 SVG 的根节点;如果不存在,则返回 null。 | |
initSvg() | 创建并初始化块的 SVG 表示形式。可以多次调用。 | |
markDirty() | 通知此块上的所有输入,以将其字段标记为脏。脏字段是需要重新渲染的字段。 | |
moveBy(dx, dy, reason) | 以相对偏移量移动块。 | |
moveNumberedInputBefore(inputIndex, refIndex) | 将带编号的输入内容移至此块上的其他位置。 | |
moveTo(xy, reason) | 将方块移到某个位置。 | |
removeIcon(type) | ||
removeInput(name, opt_quiet) | 从此代码块中移除输入。 | |
removeSelect() | 从代码块中移除视觉“选择”效果,但实际上并不会取消选择该效果或触发事件。 | |
render()。 | 根据块的内容和设置立即布局和重排块。 | |
select() | 选择此方块。以视觉方式突出显示该版块;如果该版块尚未选中,则会触发选择事件。 | |
setCollapsed(collapsed) | 设置是否收起该块。 | |
setColour(colour) | 更改方块的颜色。 | |
setEditable(editable) | 设置此组成要素是否可修改。 | |
setEnabled(enabled) | 设置是否启用屏蔽设置。 | |
setHighlighted(highlighted) | 设置是否突出显示该方块。块突出显示通常用于直观地标记当前正在执行的块。 | |
setInputsInline(newBoolean) | 设置值输入是水平排列还是垂直排列。 | |
setMovable(movable) | 设置此砌块是否可移动。 | |
setMutator(mutator) | 为此块提供一个更改器对话框。 | |
setNextStatement(newBoolean, opt_check) | 设置是否可以将另一个方块连结到此方块的底部。 | |
setOutput(newBoolean, opt_check) | 设置此块是否返回值。 | |
setPreviousStatement(newBoolean, opt_check) | 设置此版块是否可以链接至其他版块的底部。 | |
setStyle(blockStyleName) | 设置方块的样式和颜色值。 | |
setWarningText(text, id) | 设置此块的警告文本。 | |
snapToGrid() | 将此方块与最近的网格点贴靠。 | |
tab(开始,前进) | 打开下一个(或上一个)FieldTextInput。 | |
toCopyData() | 对块进行编码以进行复制。 | |
平移(x, y) | 通过在块的 SVG 的转换属性上设置转换来转换块。 | |
unselect() | 取消选择此屏蔽设置。取消突出显示该块,并在该块当前处于选中状态的情况下触发 select (false) 事件。 | |
updateMarkers_() | protected |
根据需要重新绘制任何附加的标记或光标 SVG。 |