     @dropper_move   = null
     @dropper_unload = null
     document.body.style.cursor = 'default'
-    this
+    @startListening()
+    this
+
+  # Prevent object bindings.
+  #
+  # @return [Oghma.Table] this]
+  stopListening: ->
+    for child in @stage.children
+      child.listening(false)
+    null
+
+  # Allow object bindings.
+  #
+  # @return [Oghma.Table] this]
+  startListening: ->
+    for child in @stage.children
+      child.listening(true)
+    null
+
 
   # Mouse down the dropper.
   #
   # @param [numeric] x X stage location.
   # @param [numeric] y Y stage location.
   # @param [Object] e Event
-  # @return [Oghma.App] this
+  # @return [Oghma.Table] this
   down_dropper: ( x, y, e = null ) ->
     @dropper_down?( x, y, e )
     this

  # @param [function(x, y, event)] down Function to load for mouse down.
  # @param [function(x, y, event)] move  Function to load for mouse move.
  # @param [function()] unload Function to load for unload.
  # @return [Oghma.App] this
  load_dropper: ( up, down = null, move = null, unload = null ) ->
    @dropper_up     = up
    @dropper_down   = down
    @dropper_move   = move
    @dropper_unload = unload
    document.body.style.cursor = 'crosshair'
    this

  # Unload the dropper.
  #
  # @return [Oghma.App] this
  unload_dropper: ->
    @dropper_unload?()
    @dropper_up     = null

  # @param [numeric] x X stage location.
  # @param [numeric] y Y stage location.
  # @param [Object] e Event
  # @return [Oghma.Table] this
  up_dropper: ( x, y, e = null ) ->
    original_dropper_up = @dropper_up
    if ! e? || ! e.altKey
