blockly >blockRendering >抽屉

blockRendering.Drawer 类

一个根据给定渲染信息绘制块的对象。

Signature:

export declare class Drawer 

构造函数

构造函数 修饰符 说明
(构造函数)(block, info) 构造 Drawer 类的新实例

属性

属性 修饰符 类型 说明
block_ BlockSvg
constants_ protected ConstantProvider
info_ RenderInfo
inlinePath_ 字符串
outlinePath_ 字符串
topLeft_ 坐标

方法

方法 修饰符 说明
draw()

将砌块绘制到工作区。这里是“绘图”表示设置 SVG 路径元素并在屏幕上移动字段、图标和连接。

路径片段被推送到“steps”数组中,这些“路段”数组随后与空格连接,并直接在块上设置。这可保证这些步骤用空格分隔以提高可读性,但这并不是强制性要求。

drawBottom_() protected 为砌块的底部边缘添加台阶,可能包括用于下一个连接的凹口。
drawConnectionHighlightPath(measurable) 返回路径以突出显示指定连接。
drawInlineInput_(input) protected 为内嵌输入添加步骤。
drawInternals_() protected 绘制块的内部:内嵌输入、字段和图标。这些代码并不依赖于外部的放置路径。
drawJaggedEdge_(row) protected 为收起的块上行锯齿状的边添加阶梯。
drawLeft_() protected 为代码块左侧添加步骤,其中可能包括输出连接
drawOutline_() protected 创建砌块的轮廓。这是一条连续的路径。
drawRightSideRow_(row) protected 为没有值或语句输入连接的行的右侧添加步骤。
drawStatementInput_(row) protected 为语句输入添加步骤。
drawTop_() protected 为砌块的顶角添加台阶,将帽子和圆角等细节考虑在内。
drawValueInput_(row) protected 为外部值输入添加步骤,呈现为块侧面的一个凹口。
layoutField_(fieldInfo) protected 将字段或图标的新位置推送到其 SVG 根节点。
positionExternalValueConnection_(row) protected 将连接放置在外部值输入上,同时考虑 RTL,以及父块和子块之间的小间隙(允许父块的深色路径显示出来)。
positionInlineInputConnection_(input) protected 将连接放在内嵌值输入上,同时考虑 RTL 以及父块和子块之间的小间隙,以便让父块的暗路径显示出来。
positionNextConnection_() protected 在块上放置下一个连接。
positionOutputConnection_() protected 在块上定位输出连接。
positionPreviousConnection_() protected 将上一个连接放置在一个块上。
positionStatementInputConnection_(row) protected 在语句输入上定位连接,同时考虑 RTL 以及父块和子块之间的小间隔,以便让父块的暗路径显示出来。
recordSizeOnBlock_() protected 将大小信息重新保存到块中。大多数渲染信息在渲染结束时可能会被丢弃。任何需要保留的内容都应在此函数中设置。
updateConnectionHighlights() protected 更新路径对象,以反映块上的哪些连接突出显示。