 
 class VisualizationCanvas extends VisualizationCanvasBase
 
-  context:    null
-  quadtree:   null
-  nodeActive: null
+  context:      null
+  quadtree:     null
+  node_hovered: null
 
 
   setupCanvas: ->

      @context.closePath()

    # Draw Labels
    if @parameters.showNodesLabel or @nodeActive
      @nodes.each (d, i, n) =>
        if !d.disabled
          node = d3.select(n[i])

    mouse = d3.mouse @canvas.node()
    @setQuadtree()
    node = @quadtree.find mouse[0], mouse[1]
    if @node_hovered and @node_hovered.id == node.id
      return
    @data_nodes.forEach (d) -> d.disabled = true 
    @node_hovered = node
    @areNodesRelated(d, o)
    @node_hovered.disabled = false
    @updateNodesColorValue()
    # update canvas if force layout stoped
    if @force.alpha() < @force.alphaMin()
      @onTick()

  onCanvasLeave: (e) =>
    console.log 'onCanvasOut'
    @node_hovered = null
    @data_nodes.forEach (d) -> d.disabled = false 
    @updateNodesColorValue()
    # update canvas if force layout stoped
    if @force.alpha() < @force.alphaMin()
      @onTick()


  updateNodes: ->
