Sha256: 0a09451327c47a6eefb21a8ba4eec60ceb3134ccd8142acb3ee26b5621d4c453

Contents?: true

Size: 919 Bytes

Versions: 71

Compression:

Stored size: 919 Bytes

Contents

define ["frank"], (frank)->

  ViewModel = Backbone.Model.extend
    defaults:
      parent: undefined
      depth: 0

    initialize: (attributes)->
      childDepth = attributes.depth + 1
      childModels = for subview in attributes.subviews
        new ViewModel( _.extend( subview, {parent:@,depth:childDepth} ) )

      @set( children: childModels )

    getDesc: ->
      viewClass = @get('class')
      if label = @get('accessibilityLabel')
        "#{viewClass}: #{label}"
      else
        viewClass

    getShelleySelector: ->
      if @has('accessibilityLabel')
        "view:'#{@get('class')}' marked:'#{@get('accessibilityLabel')}'"
      else
        false

    getSnapshotUrl: ->
      frank.snapshotUrlForViewWithUid(@get('uid'))

    setActive: ->
      @collection.each (viewModel)=>
        viewModel.set( 'active', viewModel == @ )

    unsetActive: ->
      @set( 'active', false )


  ViewModel

Version data entries

71 entries across 54 versions & 5 rubygems

Version Path
sc-frank-ios-1.2.3 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-cucumber-1.2.5 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-cucumber-1.2.4.pre1 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-pivotal-1.3.0.pre.2 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.bba52d7.debug frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.e1e3ccb.debug frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.1a856ca.debug frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-pivotal-1.3.0.pre.1 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-pivotal-1.2.4 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-pivotal-1.2.3.pre.2 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-pivotal-1.2.3.pre.1 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-pivotal-1.2.3 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.b7791c5.debug frank-skeleton/frank_static_resources.bundle/bundle/bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.b7791c5.debug frank-skeleton/frank_static_resources.bundle/bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.b7791c5.debug frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
frank-cucumber-1.2.3 frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.3256dc1.debug frank-skeleton/frank_static_resources.bundle/bundle/bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.3256dc1.debug frank-skeleton/frank_static_resources.bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.3256dc1.debug frank-skeleton/frank_static_resources.bundle/bundle/js/view_model.coffee
sc-frank-cucumber-1.2.1.9c95c03.debug frank-skeleton/frank_static_resources.bundle/js/view_model.coffee