From 8f99166710d98213410f6fbfe2127db7f660017d Mon Sep 17 00:00:00 2001 From: "20932067@zju.edu.cn" Date: Tue, 18 May 2021 16:43:25 +0800 Subject: [PATCH] =?UTF-8?q?top=E6=9C=80=E6=96=B0=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../topology/src/behavior/dice-er-node.js | 20 ++++++++++--------- .../topology/src/behavior/hover-event-edit.js | 12 +++++++++-- .../packages/topology/src/node/dice-er-box.js | 4 ++-- .../top/packages/topology/src/topology.vue | 2 +- .../topology/src/utils/anchor/set-state.js | 11 +++++----- 5 files changed, 30 insertions(+), 19 deletions(-) diff --git a/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/dice-er-node.js b/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/dice-er-node.js index 8132517..f861dac 100644 --- a/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/dice-er-node.js +++ b/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/dice-er-node.js @@ -32,7 +32,7 @@ export default { itemHeight: 50, wheel: "scroll", "node:click": "click", - "node:mousemove": "moves", + // "node:mousemove": "moves", }; }, scroll(e) { @@ -106,14 +106,16 @@ export default { moves(e) { const name = e.shape.get("name"); const item = e.item; - if (name && name.startsWith("item")) { - this.graph.updateItem(item, { - selectedIndex: Number(name.split("-")[1]), - }); - } else { - this.graph.updateItem(item, { - selectedIndex: NaN, - }); + if (!name.startsWith("marker")){ + if (name && name.startsWith("item")) { + this.graph.updateItem(item, { + selectedIndex: Number(name.split("-")[1]), + }); + } else { + this.graph.updateItem(item, { + selectedIndex: NaN, + }); + } } }, } diff --git a/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/hover-event-edit.js b/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/hover-event-edit.js index 8754a5e..e61ce9e 100644 --- a/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/hover-event-edit.js +++ b/hchyun-ui/src/views/tool/top/packages/topology/src/behavior/hover-event-edit.js @@ -35,11 +35,19 @@ export default { }); } // console.log(item); - hoverNode.setState("hover", true); + if (name && name.startsWith("marker")) { + hoverNode.setState(graph,"hover", true, graph); + } }, onNodeOut(event) { + + const name = event.shape.get("name"); + console.log("out", name) let hoverNode = event.item; - hoverNode.setState("hover", false); + if (name && name.startsWith("marker")) { + hoverNode.setState(graph,"hover", false); + } + // hoverNode.setState("hover", false); } } }; diff --git a/hchyun-ui/src/views/tool/top/packages/topology/src/node/dice-er-box.js b/hchyun-ui/src/views/tool/top/packages/topology/src/node/dice-er-box.js index e57149d..b5da5f0 100644 --- a/hchyun-ui/src/views/tool/top/packages/topology/src/node/dice-er-box.js +++ b/hchyun-ui/src/views/tool/top/packages/topology/src/node/dice-er-box.js @@ -265,12 +265,12 @@ export default { [1, 0], ]; }, - setState(name, value, item) { + setState(graph,name, value, item) { // 设置节点状态 // utils.node.setState(name, value, item) // 设置锚点状态 // if (vm.graphMode === 'edit') { - utils.anchor.setState(name, value, item) + utils.anchor.setState(graph,name, value, item) // } }, } diff --git a/hchyun-ui/src/views/tool/top/packages/topology/src/topology.vue b/hchyun-ui/src/views/tool/top/packages/topology/src/topology.vue index 0e8630b..c4b1732 100644 --- a/hchyun-ui/src/views/tool/top/packages/topology/src/topology.vue +++ b/hchyun-ui/src/views/tool/top/packages/topology/src/topology.vue @@ -304,7 +304,7 @@ export default { // Behavior.obj.dragAddEdge.sendThis(this); Behavior.obj.dragEventEdit.sendThis(this); Behavior.obj.keyupEventEdit.sendThis(this); - // Behavior.obj.hoverEventEdit.sendThis(this); + Behavior.obj.hoverEventEdit.sendThis(this); Behavior.obj.diceErEdge.sendThis(this) this.clearHistoryData(); diff --git a/hchyun-ui/src/views/tool/top/packages/topology/src/utils/anchor/set-state.js b/hchyun-ui/src/views/tool/top/packages/topology/src/utils/anchor/set-state.js index 7891a89..a66bf16 100644 --- a/hchyun-ui/src/views/tool/top/packages/topology/src/utils/anchor/set-state.js +++ b/hchyun-ui/src/views/tool/top/packages/topology/src/utils/anchor/set-state.js @@ -3,21 +3,22 @@ * @data: 2019/08/15 * @description: set anchor state */ - import theme from '../../theme' -export default function(name, value, item) { +export default function(graph,name, value, item) { + const themeStyle = theme.defaultStyle // todo...先使用默认主题,后期可能增加其它风格的主体 - console.log(name) if (name === 'hover') { - console.log(456) + console.log(graph) let group = item.getContainer() let children = group.get('children') for (let i = 0, len = children.length; i < len; i++) { let child = children[i] // 处理锚点状态 - if (child.attrs.name === 'anchor') { + console.log(value) + if (child.attrs.name === 'anchorg') { if (value) { + console.log(graph) child.attr(themeStyle.anchorStyle.hover) } else { child.attr(themeStyle.anchorStyle.unhover)