     gCross.appendChild(l3)
     gCross.appendChild(l4)
     
+    return gCross
+  
+  initRemove: =>
+    
     # Create the remove SVG group
-    gRemove = document.createElementNS(svgns, "g")
+    gRemove = document.createElementNS(@svgns, "g")
     gRemove.setAttribute("transform", "translate(-#{@p2}, -#{@p2})")
     gRemove.setAttribute("cursor", "pointer")
     gRemove.setAttribute("visibility", "hidden")
     
     # Create an SVG circle
-    cRemove = document.createElementNS(svgns, "circle")
+    cRemove = document.createElementNS(@svgns, "circle")
     cRemove.setAttribute("r", @p1)
     cRemove.setAttribute("fill", "#FAFAFA")
     
     # Create an SVG text element
-    tRemove = document.createElementNS(svgns, "text")
+    tRemove = document.createElementNS(@svgns, "text")
     tRemove.textContent = "x"
     tRemove.setAttribute("font-size", 11)
     tRemove.setAttribute("font-weight", 700)

  
  constructor: ->
    super
    svgns = 'http://www.w3.org/2000/svg'
    
    # Create the root SVG group
    gRoot = document.createElementNS(svgns, "g")
    gRoot.setAttribute("transform", "translate(#{@x}, #{@y})")
    
    # Create the crosshair SVG group
    gCross = document.createElementNS(svgns, "g")
    gCross.setAttribute("stroke", @color)
    gCross.setAttribute("stroke-width", 2)
    gCross.setAttribute("fill-opacity", 0)
    gCross.setAttribute("cursor", "move")
    
    # Create an SVG circle
    c = document.createElementNS(svgns, "circle")
    c.setAttribute("r", @radius)
    
    # Create the crosshair
    l1 = document.createElementNS(svgns, "line")
    l2 = document.createElementNS(svgns, "line")
    l3 = document.createElementNS(svgns, "line")
    l4 = document.createElementNS(svgns, "line")
    
    l1.setAttribute("x1", @p1)
    l1.setAttribute("y1", 0)

    gRemove.appendChild(cRemove)
    gRemove.appendChild(tRemove)
    
    return gRemove
  
  onmousemoveEl: (e) =>
    e.preventDefault()
