     initialize: (options) ->
       super(options)
       @render()
-      @listenTo(@model, 'change:source', () => @renderFn())
+      @listenTo(@model, 'change', () => @renderFn())
       source = @mget("source")
       @listenTo(source, 'change:data', () => @renderFn())
       @listenTo(source, 'change:selected', () => @changeSelection())

              strict: column.get("strict")
              checkedTemplate: column.get("checked")
              uncheckedTemplate: column.get("unchecked")
          })

        @$el.handsontable({
          data: source.datapoints()

        columns = []

        for column in @mget("columns")
          if column?
            headers.push(column.get("header"))
            columns.push({
              data: column.get("field")
              type: column.get("type")
              format: column.get("format")
