diff --git a/components/graph/base.js b/components/graph/base.js index 68a4503..36d2650 100644 --- a/components/graph/base.js +++ b/components/graph/base.js @@ -40,6 +40,9 @@ class GraphView extends GraphViewBase { _super_getNodeComponent: this.getNodeComponent, getNodeComponent: this.constructor.prototype.getNodeComponent.bind(this), + + _super_handleNodeMouseEnter: this.handleNodeMouseEnter, + handleNodeMouseEnter: this.constructor.prototype.handleNodeMouseEnter.bind(this), }); } @@ -105,6 +108,24 @@ class GraphView extends GraphViewBase { } } + handleNodeMouseEnter(event, data, hovered) { + if (hovered && !this.state.hoveredNode) { + this.setState({ + hoveredNode: true, + hoveredNodeData: data, + }); + } else if (!hovered && this.state.draggingEdge) { + this.setState({ + edgeEndNode: data, + }); + } else { + this.setState({ + hoveredNode: true, + hoveredNodeData: data, + }); + } + } + getEdgeComponent(edge, nodeMoving) { if (!this.props.renderEdge) { return this._super_getEdgeComponent(edge);