blockly > Flyout

飞出类

用于浮出式界面的类。

Signature:

export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout, IFocusableNode 

扩展自DeleteArea

实现IAutoHideableIFlyoutIFocusableNode

构造函数

构造函数 修饰符 说明
(构造函数)(workspaceOptions) 构造 Flyout 类的新实例

属性

属性 修饰符 类型 说明
autoClose 布尔值 创建代码块时,弹出式菜单是否会自动关闭?
内容 protected FlyoutItem[] 悬浮窗元素列表。
CORNER_RADIUS readonly 数值 弹出式菜单背景的圆角半径。
dragAngleRange_ protected 数值 从弹出式菜单拖动到工作区的拖动角度范围。如果拖动操作与从正交线到弹出式菜单边缘的线之间的夹角小于此角度,则视为“向工作区拖动”。
GAP_X readonly 数值
GAP_Y readonly 数值
height_ protected 数值 弹出式界面的高度。
充气机 protected Map<string, IFlyoutInflater> 从弹出式菜单内容类型到负责创建内容类型的具体实例的相应 inflater 类的映射。
MARGIN readonly 数值
RTL 布尔值
SCROLLBAR_MARGIN readonly 数值 滚动条与弹出式窗口背景边缘之间的顶部/底部内边距。
svgBackground_ protected SVGPathElement | null 浮出式菜单背景周围的路径,将填充背景颜色。
svgGroup_ protected SVGGElement | null 按钮或标签的根 SVG 群组。
tabWidth_

protected

readonly

数值
toolboxPosition_ protected 数值
width_ protected 数值 弹出式界面的宽度。
workspace_ protected WorkspaceSvg

方法

方法 修饰符 说明
autoHide(onlyClosePopups) 如果弹出式菜单是自动关闭的弹出式菜单,则会自动隐藏该弹出式菜单。
canBeFocused() 请参阅 IFocusableNode.canBeFocused。
createDom(tagName) 创建弹出式界面的 DOM。只需调用一次。弹出式菜单可以作为独立的 SVG 元素存在,也可以是嵌套在单独的 SVG 元素中的 g 元素。
dispose() 处置此弹出式菜单。从所有 DOM 元素取消关联,以防止内存泄漏。
getContents() 获取当前弹出式菜单的元素列表。
getFlyoutScale() 获取弹出式界面的缩放比例(缩放级别)。默认情况下,此值与目标工作区规模相匹配,但可以替换。
getFocusableElement() 请参阅 IFocusableNode.getFocusableElement。
getFocusableTree() 请参阅 IFocusableNode.getFocusableTree。
getHeight() 获取弹出式界面的高度。
getInflaterForType(type) protected 返回负责构建指定类型项的 inflater。
getNestedTrees() 请参阅 IFocusableNode.getNestedTrees。
getRestoredFocusableNode(_previousNode) 请参阅 IFocusableNode.getRestoredFocusableNode。
getRootFocusableNode() 请参阅 IFocusableNode.getRootFocusableNode。
getTargetWorkspace() 获取弹出式菜单中的目标工作区。
getWidth() 获取弹出式菜单的宽度。
getWorkspace() 获取弹出式菜单中的工作区。
getX() abstract 计算弹出式菜单位置的 x 坐标。
getY() abstract 计算弹出式菜单位置的 y 坐标。
hide() 隐藏并清空弹出式菜单。
init(targetWorkspace) 初始化弹出式菜单。
isDragTowardWorkspace(currentDragDeltaXY) abstract 根据弹出式菜单的位置和方向,确定拖动增量是否朝向工作区。此方法用于 determineDragIntention_ 中,以确定是应创建新块还是应滚动弹出式菜单。
isVisible() 浮出控件是否可见?
layout_(contents)

protected

abstract

在弹出式菜单中布局元素。
lookUpFocusableNode(_id) 请参阅 IFocusableNode.lookUpFocusableNode。
normalizeSeparators(contents) protected

更新并返回所提供的弹出式菜单内容列表,以根据需要扁平化分隔符。

当多个分隔符连续出现时,以最后一个分隔符的值为准,并移除组中较早的分隔符。

onNodeBlur() 请参阅 IFocusableNode.onNodeBlur。
onNodeFocus() 请参阅 IFocusableNode.onNodeFocus。
onTreeBlur(_nextTree) 请参阅 IFocusableNode.onTreeBlur。
onTreeFocus(_node, _previousTree) 请参阅 IFocusableTree.onTreeFocus。
position() abstract 定位弹出式菜单。
positionAt_(width, height, x, y) protected 根据在 position() 中计算的坐标更新视图。
reflow() 重排浮出控件内容。
reflowInternal_()

protected

abstract

计算弹出式菜单的边界。对于 RTL:将元素布局为右对齐。
scrollToStart() abstract 将弹出式菜单滚动到其内容的开头。
serializeBlock(block) protected 将块序列化为 JSON。
setAutoClose(autoClose) 设置当拖出代码块、点击工作区等时,此弹出式菜单是否自动关闭。
setContainerVisible(visible) 设置相应弹出式界面的容器是否可见。
setContents(contents) 存储弹出式菜单中的元素列表。
setMetrics_(xyRatio)

protected

abstract

设置浮出框的翻译,使其与滚动条相匹配。
setVisible(visible) 设置弹出式菜单是否可见。值为 true 并不一定意味着显示了弹出式窗口。它可能已被隐藏,因为其容器已被隐藏。
show(flyoutDef) 显示并填充悬浮窗。
wheel_(e)

protected

abstract

滚动浮出控件。