} = require 'kraken/graph/graph-model'
 
 
+/**
+ * Helper that wraps a function to return false.
+ */
+stopEventAnd = (fn) ->
+    ~> fn ...; false
+
 
 
 
         valueFormatter xValueFormatter yValueFormatter
     ]>
     __bind__  : <[ 
-        render renderAll resizeViewport
+        render renderAll stopAndRender stopAndRenderAll resizeViewport
         numberFormatter numberFormatterHTML
-        onReady onSync
-        onModelChange onScaffoldChange onFirstClickRenderOptionsTab
+        onReady onSync onModelChange onScaffoldChange onFirstClickRenderOptionsTab
     ]>
     __debounce__: <[ render renderAll ]>
     ctorName  : 'GraphEditView'
     template  : require 'kraken/template/graph-edit'
     
     events:
-        'click    .redraw-button'                  : 'render'
-        'click    .save-button'                    : 'save'
+        'click    .redraw-button'                  : 'stopAndRender'
         'click    .load-button'                    : 'load'
+        'click    .save-button'                    : 'save'
+        'click    .done-button'                    : 'done'
         'keypress form.details input[type="text"]' : 'onKeypress'
         'keypress form.options .value'             : 'onKeypress'
         'submit   form.details'                    : 'onDetailsSubmit'
     load: ->
         console.log "#this.load!"
         @model.fetch()
+        false
     
     save: ->
         console.log "#this.save!"
         id = @model.id or @model.get('slug')
         @model.save {id}, {+wait}
+        false
     
+    done: ->
+        @save()
     
     change: ->
         @model.change()
         
         @updateURL()
         @trigger 'render', this
-        this
+        false
     
     renderAll: ->
         return this unless @ready
         _.invoke @scaffold.subviews, 'render'
         @scaffold.render()
         @render()
-        this
     
     /**
      * Update the page URL using HTML5 History API
     ### }}}
     ### Event Handlers {{{
     
+    
     onReady: ->
         console.log "(#this via GraphEditView).ready!"
         @ready = @scaffold.ready = true
         @render()
         false
     
+    # Needed because (sigh) _.debounce returns undefined
+    stopAndRender: ->
+        @render ...
+        false
+    
+    stopAndRenderAll: ->
+        @renderAll ...
+        false
+    
     # }}}
     
     toString: -> "#{@ctorName}(#{@model})"