       
       # - Extend self with `options`.  
       #   See default options for property names.
+      # Per convention, bind handler methods here.
+      _.bindAll @, '_onTriggerMouseMove', '_setBounds'
       $.extend (deep = yes), @, options
       # - Public properties.  
       #   Also includes `$triggers`, `$context`.

    #   direction. The data is stored with the trigger and gets accessed elsewhere.
    _updateDirectionByTrigger: ($trigger) ->
      return no if @autoDirection is off
      # - Check if adapting is needed. Adapt and store as needed.
      checkDirectionComponent = (component) =>
        if not @_bounds? then @_setBounds()
        ok = yes
        switch component

      size

    # - Direction is actually an array.
    isDirection: (directionComponent, $trigger) ->
      (
        @$tip.hasClass(@classNames[directionComponent]) or (
          (not $trigger? or not $trigger.data(@attr('direction'))) and 
          _.include(@defaultDirection, directionComponent)
        )
      )

    # Methods

