A container type for values that can be composed by horizonal and vertical layout.
- data Grid a
- type Span = (Int, Int)
- tval :: a -> Grid a
- tspan :: a -> Span -> Grid a
- empty :: Grid a
- nullt :: Grid a
- (.|.) :: Grid a -> Grid a -> Grid a
- (./.) :: Grid a -> Grid a -> Grid a
- above, beside :: Grid a -> Grid a -> Grid a
- aboveN, besideN :: [Grid a] -> Grid a
- overlay :: Grid a -> Grid a -> Grid a
- width :: Grid a -> Int
- height :: Grid a -> Int
- gridToRenderable :: Grid (Renderable a) -> Renderable a
- weights :: SpaceWeight -> Grid a -> Grid a
- fullRowAbove :: a -> Double -> Grid a -> Grid a
- fullRowBelow :: a -> Double -> Grid a -> Grid a
- fullColLeft :: a -> Double -> Grid a -> Grid a
- fullColRight :: a -> Double -> Grid a -> Grid a
- fullOverlayUnder :: a -> Grid a -> Grid a
- fullOverlayOver :: a -> Grid a -> Grid a
Documentation
Abstract datatype representing a grid.
Functor Grid | |
Show a => Show (Grid a) | |
ToRenderable a => ToRenderable (Grid a) |
tspan :: a -> Span -> Grid aSource
A WxH (measured in cells) grid from a given value, with space weight (1,1).
overlay :: Grid a -> Grid a -> Grid aSource
One grid over the other. The first argument is shallow, the second is deep.
gridToRenderable :: Grid (Renderable a) -> Renderable aSource
weights :: SpaceWeight -> Grid a -> Grid aSource
Sets the space weight of *every* cell of the grid to given value.
fullRowAbove :: a -> Double -> Grid a -> Grid aSource
A value placed above the grid, occupying 1 row with the same horizontal span as the grid.
fullRowBelow :: a -> Double -> Grid a -> Grid aSource
A value placed below the grid, occupying 1 row with the same horizontal span as the grid.
fullColLeft :: a -> Double -> Grid a -> Grid aSource
A value placed to the left of the grid, occupying 1 column with the same vertical span as the grid.
fullColRight :: a -> Double -> Grid a -> Grid aSource
A value placed to the right of the grid, occupying 1 column with the same vertical span as the grid.
fullOverlayUnder :: a -> Grid a -> Grid aSource
A value placed under a grid, with the same span as the grid.
fullOverlayOver :: a -> Grid a -> Grid aSource
A value placed over a grid, with the same span as the grid.