I hereby claim:
- I am leojpod on github.
- I am leojpod (https://keybase.io/leojpod) on keybase.
- I have a public key ASCrQ3PAFjUu4e0OvhkHDy2bf3blt2HTJt6UMujOG-6uLwo
To claim this, I am signing this object:
{-# LANGUAGE TemplateHaskell #-} | |
-- sortedtree.hs | |
-- Jeremy.Singer@glasgow.ac.uk | |
-- Example code for #FLhaskell course | |
-- Nodes contain integers, Leaves are empty | |
data Tree = Leaf | Node Int Tree Tree deriving Show | |
I hereby claim:
To claim this, I am signing this object:
import Svg exposing (Svg, svg, rect, circle) | |
import Svg.Attributes exposing (x, cx, y, cy, r, fill, width, height, viewBox) | |
boardDisplay : Board -> Html BoardMsg | |
boardDisplay board = | |
svg | |
[ viewBox "0 0 100 100" | |
] | |
(rect [ fill "#FFFFFF", x "0", y "0", width "100", height "100" ] [] | |
:: List.concat (List.indexedMap rowView board) |
boardDisplay : Board -> Html BoardMsg | |
boardDisplay board = | |
table [] | |
((tr [] | |
((td [] []) | |
:: ((List.range 0 9) | |
|> List.map (\col -> td [] [ text (toString col) ]) | |
) | |
) | |
) |
init : ( Model, Cmd Msg ) | |
init = | |
let | |
( subModuleInitModel, subModuleInitCommand ) = | |
SubModule.State.init | |
-- repeat for any submodule you have | |
model = Model subModuleInitModel ... -- init your model here | |
cmd = Cmd.batch [ subModuleInitCommand, ... ] -- init your commands here | |
in | |
( model, cmd ) |
import Setup.Types exposing (Setup, SetupMsg(..)) | |
import Board.Types exposing (Board, BoardMsg) | |
-- MODEL | |
type alias Model = | |
{ board : Board, setup : Setup, mdl : Material.Model } | |
-- MESSAGE | |
type Msg | |
= BoardMsg BoardMsg |
update : Msg -> Model -> ( Model, Cmd Msg ) | |
update msg model = | |
case msg of | |
... -- rest of our apps messages | |
Mdl mdlMsg -> | |
Material.update Mdl mdlMsg model |
<!DOCTYPE HTML> | |
<!-- MDL --> | |
<link href='https://fonts.googleapis.com/css?family=Roboto:400,300,500|Roboto+Mono|Roboto+Condensed:400,700&subset=latin,latin-ext' rel='stylesheet' type='text/css'> | |
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> | |
<link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.min.css" /> | |
<body> | |
<div></div> | |
<script src="elm.js"></script> | |
<script>Elm.App.embed(document.querySelector("div"));</script> | |
</body> |
alias Model = | |
{ ... -- your usual model definition goes here | |
, mdl : | |
Material.Model | |
-- use elm-mdl's definition of their model | |
} | |
model : Model | |
model = | |
{ ... -- your initialization goes here |
assignTo : String -> Item -> Item | |
assignTo user task = | |
let | |
updateAssignee taskProperties = | |
{ taskProperties | assignee = Just user } | |
in | |
case task of | |
Task props -> | |
Task (updateAssignee props) | |
SubTask props -> |