         Ember.EnumerableUtils.replace selection, 0, Ember.get(selection, 'length'), newSelection
       else
         @set('selection', newSelection)
+  ).on('change')

  ).on('didInsertElement')

  _change: (->
    # todo: get rid of this proxy fn
    @_changeMultiple()
  ).on('change')

  _changeMultiple: ->
    options = this.$('input[type=checkbox]:checked')
    content = @get('content')
    selection = @get('selection')

        # todo: what is @index for?? and does this function need bound?
        adjusted = if @index > -1 then @index else -1  # todo: better name (this is for if prompt offset)
        @selected = Ember.EnumerableUtils.indexOf(selectedIndexes, adjusted) > -1
  ).observes 'selection.@each'

  _triggerChange: (->
    selection = @get('selection')
