Sha256: bcc09f369ad148ea647fc39c0532cd2393b827900b67bc4c49ea125875ddf86c

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

CodeSync.LayerController = Backbone.View.extend
  events:
    "dblclick .horizontal-handle" : "snapBackLeft"
    "dblclick .vertical-handle" : "snapBackUp"

  initialize: (@options={})->
    _.extend(@,@options)

    Backbone.View::initialize.apply(@, arguments)

    @setElement $(@applyTo)
    @render()

  render: ()->
    @makeDraggable("vertical")
    @

  snapBackLeft: ()->
    @$el.animate('left':'0px')

  snapBackUp: ()->
    @$el.animate('top':'0px')

  enableVerticalDragging: ()->
    @makeDraggable("vertical")

  enableHorizontalDragging: ()->
    @makeDraggable("horizontal")

  cancelDraggable: ()->
    @direction = undefined
    @$el.draggable('destroy')

  makeDraggable: (@direction="horizontal")->
    @$el.attr('data-draggable-direction', @direction)

    if @direction is "horizontal"
      @$el.draggable
        axis: "x"
        handle: ".horizontal-handle"
        containment:[0,0]

    if @direction is "vertical"
      @$el.draggable
        axis: "y"
        handle: ".vertical-handle"
        containment:[0,0]

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
code_sync-0.6.7 lib/assets/javascripts/canvas/layer_controller.coffee