threepenny-editors-0.5.4.1: Composable algebraic editors

Safe HaskellNone
LanguageHaskell2010

Graphics.UI.Threepenny.Editors.Layout

Contents

Synopsis

Renderableable widgets

class Renderable w where Source #

Closely related to Widget, this class represents types that can be rendered to an Element

Methods

render :: w -> UI Element Source #

getLayout :: w -> Layout Source #

Instances

Renderable String Source # 
Renderable TextEntry Source # 
Renderable Element Source # 
Renderable Columns Source # 
Renderable Horizontal Source # 
Renderable Vertical Source # 
Renderable Layout Source # 
Renderable (ListBox a) Source # 
Renderable a => Renderable (UI a) Source # 

Methods

render :: UI a -> UI Element Source #

getLayout :: UI a -> Layout Source #

(Renderable a, Renderable b) => Renderable ((-*-) a b) Source # 

Methods

render :: (a -*- b) -> UI Element Source #

getLayout :: (a -*- b) -> Layout Source #

(Renderable a, Renderable b) => Renderable ((|*|) a b) Source # 

Methods

render :: (a |*| b) -> UI Element Source #

getLayout :: (a |*| b) -> Layout Source #

Renderable el => Renderable (GenericWidget el a) Source # 

Layout engine

data Layout Source #

Constructors

Grid (Seq (Seq Layout))

A non empty list of rows, where all the rows are assumed to have the same length

Layout monoids

Flat

newtype Vertical Source #

A layout monoid that places everything in a single column

Constructors

Vertical 

Fields

newtype Horizontal Source #

A layout monoid that places everything in a single row

Constructors

Horizontal 

Columns

data Columns Source #

A layout monoid that lays elements in columns

Constructors

Next Layout

Continue in the same column

Break Layout

Continue in the next column

Type level layouts

data a |*| b Source #

Type level Horizontal layouts

Constructors

a :|*| b 

Instances

Bifunctor (|*|) Source # 

Methods

bimap :: (a -> b) -> (c -> d) -> (a |*| c) -> b |*| d #

first :: (a -> b) -> (a |*| c) -> b |*| c #

second :: (b -> c) -> (a |*| b) -> a |*| c #

Biapplicative (|*|) Source # 

Methods

bipure :: a -> b -> a |*| b #

(<<*>>) :: ((a -> b) |*| (c -> d)) -> (a |*| c) -> b |*| d #

(*>>) :: (a |*| b) -> (c |*| d) -> c |*| d #

(<<*) :: (a |*| b) -> (c |*| d) -> a |*| b #

Bifoldable (|*|) Source # 

Methods

bifold :: Monoid m => (m |*| m) -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> (a |*| b) -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> (a |*| b) -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> (a |*| b) -> c #

(Renderable a, Renderable b) => Renderable ((|*|) a b) Source # 

Methods

render :: (a |*| b) -> UI Element Source #

getLayout :: (a |*| b) -> Layout Source #

data a -*- b Source #

Type level Vertical layouts

Constructors

a :-*- b 

Instances

Bifunctor (-*-) Source # 

Methods

bimap :: (a -> b) -> (c -> d) -> (a -*- c) -> b -*- d #

first :: (a -> b) -> (a -*- c) -> b -*- c #

second :: (b -> c) -> (a -*- b) -> a -*- c #

Biapplicative (-*-) Source # 

Methods

bipure :: a -> b -> a -*- b #

(<<*>>) :: ((a -> b) -*- (c -> d)) -> (a -*- c) -> b -*- d #

(*>>) :: (a -*- b) -> (c -*- d) -> c -*- d #

(<<*) :: (a -*- b) -> (c -*- d) -> a -*- b #

Bifoldable (-*-) Source # 

Methods

bifold :: Monoid m => (m -*- m) -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> (a -*- b) -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> (a -*- b) -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> (a -*- b) -> c #

(Renderable a, Renderable b) => Renderable ((-*-) a b) Source # 

Methods

render :: (a -*- b) -> UI Element Source #

getLayout :: (a -*- b) -> Layout Source #