   updateScene: _.throttle ->
 
     @cleanup @realCanvas
-    @drawConnectionLine connection for connection in @connections
-    @drawConnectionLine connection for connection in @fakeConnections
-  , 300
-
-  drawConnectionLine:({source, target, options})->
-
-    return unless source or target
-
-    options    or= {}
-    activeColor  = @getOption 'lineColorActive'
-    lineDashes   = @getOption 'lineDashes'
-    lineColor    = @getOption 'lineColor'
+
+
+
+  drawConnectionLine: ({ source, target, options = {} }) ->
+
+    return  unless source or target
+
+    { lineColorActive, lineDashes, transfers = []
+      lineColor, lineWidth, curveDistance } = @getOptions()
 
     @realContext.beginPath()
 

    @realContext.bezierCurveTo(sJoint.x + sx, sJoint.y + sy, \
                               tJoint.x + tx, tJoint.y + ty, \
                               tJoint.x, tJoint.y)

    @realContext.lineWidth = @getOption 'lineWidth'
    @realContext.stroke()

  addFakeConnection:(connection)->
    @drawConnectionLine connection
    @fakeConnections.push connection


                else if target.dia in @activeDias then target

    if activeDia
      lineColor  = options.lineColor  ? \
                   (activeDia.dia.getOption 'colorTag') ? lineColorActive
      lineDashes = options.lineDashes ? \
                   (activeDia.dia.getOption 'lineDashes') ? lineDashes

    sJoint = source.dia.getJointPos source.joint
    tJoint = target.dia.getJointPos target.joint
