简介
Action 是交互中的反馈,在前面的章节中我们讨论过 G6交互语法的设计,本章列举出所有的交互反馈,主要从这几方面进行进行:
- 画布
- 鼠标
- 节点、边、分组
- 数据
- 组件
- 辅助图形
画布
画布上的交互主要有两种:
- 移动
- 缩放
移动 move
画布移动的方法主要有:
- start:开始移动,记录移动的点
- move:移动
- end: 结束移动
缩放 zoom
画布缩放的方法主要有:
- zoomIn: 缩小
- zoomOut:放大
鼠标
鼠标的各种形状都对应一个方法:
default | 默认光标(通常是一个箭头) |
---|---|
auto | 默认。浏览器设置的光标。 |
crosshair | 光标呈现为十字线。 |
pointer | 光标呈现为指示链接的指针(一只手) |
move | 此光标指示某对象可被移动。 |
e-resize | 此光标指示矩形框的边缘可被向右(东)移动。 |
ne-resize | 此光标指示矩形框的边缘可被向上及向右移动(北/东)。 |
nw-resize | 此光标指示矩形框的边缘可被向上及向左移动(北/西)。 |
n-resize | 此光标指示矩形框的边缘可被向上(北)移动。 |
se-resize | 此光标指示矩形框的边缘可被向下及向右移动(南/东)。 |
sw-resize | 此光标指示矩形框的边缘可被向下及向左移动(南/西)。 |
s-resize | 此光标指示矩形框的边缘可被向下移动(南)。 |
w-resize | 此光标指示矩形框的边缘可被向左移动(西)。 |
text | 此光标指示文本。 |
wait | 此光标指示程序正忙(通常是一只表或沙漏)。 |
help | 此光标指示可用的帮助(通常是一个问号或一个气球)。 |
元素 Item
通用的 Action
item-move 元素平移
拖拽时元素进行平移,无论节点、边还是 group 都进行平移,支持的方法有:
- start
- move
- end
设置单个状态
这类 Action 都有一些共同的方法:
- enableState 设置状态
- reset 取消同触发源相关的元素的状态
- clear 清除所有的状态
-
单选 single-selected
单个选中有自己的一个方法:
selected 选中,是 enableState 的一个别名
单个 single-active
单个 active 有自己的一个方法:
-
单个 single-highlight
单个 highlight 有自己的一个方法:
active 选中,是 enableState 的一个别名
设置多个元素的状态
这类 Action 都有一些共同的方法:
- enableState 设置状态
- reset 取消同触发源相关的元素的状态
- clear 清除所有的状态
多选 multiple-selected
选中多个元素,有自己的一个方法
selected 选中,是 enableState 的一个别名
多选 multiple-active
active 多个元素,有自己的一个方法
-
多选 multiple-highlight
highlight 多个元素,有自己的一个方法
active 选中,是 enableState 的一个别名
范围设置元素的状态
这类 Action 都有一些共同的方法:
- enableState 设置状态
- clear 清除所有的状态
范围选中 range-selected
范围 active
范围 highlight
Node
node-resize
- start
- resize
-
node-link
在节点上添加边
start
- resize
-
active-links
将节点连接的所有的边 active,方法有:
active
- reset
-
nodes-links-active
active 多个节点间的边,通常是一条路径
start 开始
- addNode 加入一个节点
- active 高亮
- clear 移除
-
node-delete
删除节点,同时边一起删除
delete ,删除
-
Edge
edge-resize
start
- resize
-
change-target
改变边的端点
start
- resize
- end
Group
node-add
分组内添加节点
group-delete
collapse
- collapse
- expand
- toggle
- expandAll
数据
layout
groupLayout
rangeLayout
范围内布局
组件
辅助组件
辅助框 mask
rect-mask
circle-mask
path-mask
右键菜单
contextMenu
- show
- hide
- executeCmd
- changeState
工具栏
toolbar
- executeCmd
- changeState
其他
command-queue
命令队列,执行前进后退等操作
- inQueue
- redo
- undo
- undoAll
- redoAll