UNPKG

@logicflow/extension

Version:
59 lines (58 loc) 1.7 kB
import LogicFlow from '@logicflow/core'; export interface SelectionConfig { exclusiveMode?: boolean; } export declare class SelectionSelect { static pluginName: string; private container?; private wrapper?; private lf; private startPoint?; private endPoint?; private disabled; private isWholeNode; private isWholeEdge; exclusiveMode: boolean; private mouseDownInfo; private originalStopMoveGraph; constructor({ lf, options }: LogicFlow.IExtensionProps); render(_: LogicFlow, domContainer: HTMLElement): void; /** * 清理选区状态 */ private cleanupSelectionState; /** * 切换框选模式 * @param exclusive 是否为独占模式。true 表示只能进行框选操作,false 表示可以同时进行其他画布操作 */ setExclusiveMode(exclusive?: boolean): void; private addEventListeners; private removeEventListeners; /** * 处理画布空白处鼠标按下事件(非独占模式) */ private handleBlankMouseDown; /** * 处理鼠标按下事件 */ private handleMouseDown; /** * 设置选中的灵敏度 * @param isWholeEdge 是否要边的起点终点都在选区范围才算选中。默认true * @param isWholeNode 是否要节点的全部点都在选区范围才算选中。默认true */ setSelectionSense(isWholeEdge?: boolean, isWholeNode?: boolean): void; /** * 开启选区 */ openSelectionSelect(): void; /** * 关闭选区 */ closeSelectionSelect(): void; private draw; private drawOff; private open; private close; } export default SelectionSelect;