Sha256: c220a7f99e60462694d5f1eba930649873fa4d277e735f55aaa7e4ce6d9d6e26

Contents?: true

Size: 851 Bytes

Versions: 2

Compression:

Stored size: 851 Bytes

Contents

class @Mercury.Palette extends Mercury.Dialog

  constructor: (@url, @name, @options = {}) ->
    super


  build: ->
    @element = $('<div>', {class: "mercury-palette mercury-#{@name}-palette loading", style: 'display:none'})
    @element.appendTo($(@options.appendTo).get(0) ? 'body')


  bindEvents: ->
    Mercury.bind 'hide:dialogs', (event, dialog) => @hide() unless dialog == @
    super


  position: (keepVisible) ->
    @element.css({top: 0, left: 0, display: 'block', visibility: 'hidden'})
    position = @button.offset()
    width = @element.width()

    position.left = position.left - width + @button.width() if position.left + width > $(window).width()

    @element.css {
      top: position.top + @button.height(),
      left: position.left,
      display: if keepVisible then 'block' else 'none',
      visibility: 'visible'
    }

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mercury-rails-0.1.1 app/assets/javascripts/mercury/palette.js.coffee
mercury-rails-0.1.0 app/assets/javascripts/mercury/palette.js.coffee