         attr("stroke", "gray").
         attr("fill", (datum, i) -> colors(i)).
         attr("width", @x @module.Node.width).
-        attr("height", (d) => @y d.value())
+        attr("height", (d) => @y d.value()).
+        on("mouseover", @node_mouseover).
+        on("mouseout", @node_mouseout)
 
       # And here we have the label. We use a +svg:text+ element that will then
       # hold a +tspan+ element for each line

        data(@module.nodes.models, (d) -> d.get('id')).
        enter().
        append("svg").
        attr("class", "node").
        attr("x", (d) => @x(@module.Node.horizontal_spacing * d.get('column') + 20)).
        attr("y", (d) => @y(d.y_offset()))


        data(@module.links.models, (d) -> d.cid).
        enter().
        append("svg:path").
        attr("class", (link) ->
          "link #{link.left.get('id')} #{link.right.get('id')}"
        ).
        style("stroke-width", (link) -> link.value()).
        style("stroke", (link, i) -> link.color()).
        style("fill", "none").
