   onAddComponentDoubleClicked: (e, treema) =>
     @onAddComponentEnterPressed treema
 
+  onAddComponentMouseEnter: (e, treema) ->
+    treema.$el.find('.add-button').show()
+
+  onAddComponentMouseLeave: (e, treema) ->
+    treema.$el.find('.add-button').hide()
+    return
+
   reportChanges: ->
     @callback?($.extend(true, [], @extantComponentsTreema.data))
 

      supermodel: @supermodel
      schema: {type: 'array', items: LevelComponent.schema}
      data: ($.extend(true, {}, c) for c in components)
      callbacks: {select: @onSelectAddableComponent, enter: @onAddComponentEnterPressed, dblclick: @onAddComponentDoubleClicked }
      readOnly: true
      noSortable: true
      nodeClasses:


class ComponentNode extends TreemaObjectNode
  valueClass: 'treema-component'
  addButtonTemplate: '<span class="glyphicon-plus glyphicon add-button" style="float: right;"></span>'
  collection: false

  build: ->
    super()
    @$el.find('> .treema-row').append @addButtonTemplate
    addButton = @$el.find('.add-button')
    addButton.hide()
    addButton.click =>
      @callbacks.enter?(@)
    @$el

