Code coverage report for code/views/palette-inspector-view.coffee

Statements: 0% (0 / 46)      Branches: 0% (0 / 8)      Functions: 0% (0 / 6)      Lines: 0% (0 / 37)      Ignored: none     

All files » code/views/ » palette-inspector-view.coffee
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86                                                                                                                                                                           
PaletteItemView    = React.createFactory require './palette-item-view'
 
ImageMetadata      = React.createFactory require './image-metadata-view'
 
Draggable          = require '../mixins/draggable'
PaletteStore       = require "../stores/palette-store"
ImageDialogStore   = require "../stores/image-dialog-store"
PaletteDialogStore = require "../stores/palette-delete-dialog-store"
NodesStore         = require "../stores/nodes-store"
 
tr             = require "../utils/translate"
 
 
{label, div, img, i, span} = React.DOM
 
PaletteAddImage = React.createFactory React.createClass
  mixins: [Draggable]
  render: ->
    (div {className: 'palette-image', 'data-droptype': 'new'},
      (div {className: 'palette-add-image', onClick: -> ImageDialogStore.actions.open.trigger(false) },
        (div { className: 'proto-node'},
          (div {className: 'img-background'},
            tr '~PALETTE-INSPECTOR.ADD_IMAGE'
          )
        )
      )
    )
 
module.exports = React.createClass
 
  displayName: 'PaletteInspector'
  mixins: [ PaletteStore.mixin, NodesStore.mixin ]
 
  imageSelected: (index) ->
    PaletteStore.actions.selectPaletteIndex(index)
 
  delete: ->
    PaletteDialogStore.actions.open()
 
  render: ->
    index = 0
    (div {className: 'palette-inspector'},
      (div {className: 'palette', ref: 'palette'},
        (div {},
          (PaletteAddImage {})
          # _.forEach @state.palette, (node,index) =>
          _.map @state.palette, (node, index) =>
            (PaletteItemView {
              key: index
              index: index
              node: node
              image: node.image
              selected: index is @state.selectedPaletteIndex
              onSelect: @imageSelected
            })
        )
      )
      if @state.selectedPaletteItem
        (div {className: 'palette-about-image'},
          (div {className: 'palette-about-image-title'},
            (i {className: "fa fa-info-circle"})
            (span {}, tr '~PALETTE-INSPECTOR.ABOUT_IMAGE')
            (img {src: @state.selectedPaletteImage})
          )
          unless @state.palette.length is 1 and @state.paletteItemHasNodes
            (div {className: 'palette-delete', onClick: @delete},
              if @state.paletteItemHasNodes
                (span {},
                  (i {className: "fa fa-recycle"})
                  (label {}, tr '~PALETTE-INSPECTOR.REPLACE')
                )
              else
                (span {},
                  (i {className: "fa fa-trash"})
                  (label {}, tr '~PALETTE-INSPECTOR.DELETE')
                )
            )
          (div {className: 'palette-about-image-info'},
            if @state.selectedPaletteItem.metadata
              (ImageMetadata {
                metadata: @state.selectedPaletteItem.metadata,
                update: PaletteStore.actions.update})
          )
      )
    )