pulsar/src/pane-row.coffee

35 lines
770 B
CoffeeScript
Raw Normal View History

2013-10-16 04:52:20 +04:00
{$} = require './space-pen-extensions'
2013-10-15 21:13:41 +04:00
_ = require 'underscore-plus'
PaneAxis = require './pane-axis'
2013-04-23 22:16:56 +04:00
### Internal ###
2013-04-19 05:50:22 +04:00
module.exports =
class PaneRow extends PaneAxis
@content: ->
@div class: 'row'
className: ->
"PaneRow"
adjustDimensions: ->
totalUnits = @horizontalGridUnits()
unitsSoFar = 0
for child in @children()
child = $(child).view()
childUnits = child.horizontalGridUnits()
child.css
width: "#{childUnits / totalUnits * 100}%"
height: '100%'
top: 0
left: "#{unitsSoFar / totalUnits * 100}%"
child.adjustDimensions()
unitsSoFar += childUnits
horizontalGridUnits: ->
_.sum(@horizontalChildUnits())
verticalGridUnits: ->
Math.max(@verticalChildUnits()...)