on master help sign in
Update Examples/elm-yesod to better match online interactive examples

see http://elm-lang.org/edit/examples/ index.elm remove "box" fns (obsolete) disambiguate "link" fns (Text or Graphics) tested against ghc-7.4.1, Elm-0.7.1.1, yesod-1.1.7.1, elm-yesod-0.1.3

commit346ff6bb5d675ff27dc3a7b11c3a48c9c650b96d authorngunn <ngunn@computationalthinking.org.uk> dateSat 2 Mar 2013, 15:24 (14 years ago) parentde61363
3 files changed+20−24
Examples/elm-yesod/elm_source/clock.elm+2−4 Examples/elm-yesod/elm_source/index.elm+12−12 Examples/elm-yesod/elm_source/mouse.elm+6−8
Examples/elm-yesod/elm_source/clock.elm+2−4
@@ -1,8 +1,6 @@
11
2−import Signal.Time (every)
3−
42hand clr len time =
5− let t = pi * time / 30 - pi / 2 in
3+ let t = pi * inSeconds time / 30 - pi / 2 in
64 solid clr $ line [(200,200), (200 + len * cos t, 200 + len * sin t)]
75
86clock t = collage 400 400 [ filled (rgb 96 176 224) $ ngon 12 110 (200, 200)
@@ -10,4 +8,4 @@ clock t = collage 400 400 [ filled (rgb 96 176 224) $ ngon 12 110 (200, 200)
108 , hand black 100 (t/60)
119 , hand black 60 (t/720) ]
1210
13−main = lift clock (every 1)
11+main = lift clock (every second)
Examples/elm-yesod/elm_source/index.elm+12−12
@@ -1,11 +1,11 @@
1−title w = size w 60 . box 4 . text . header . toText $ "Elm-Yesod"
1+title w = size w 60 . text . header . toText $ "Elm-Yesod"
22
33lightGrey = rgb 240 241 244
44mediumGrey = rgb 216 221 225
55heading outer inner =
6− color mediumGrey . size outer 61 . box 1 .
7− color lightGrey . size outer 60 . box 5 .
8− size inner 60 . box 5 $ title inner
6+ color mediumGrey . size outer 61 .
7+ color lightGrey . size outer 60 .
8+ size inner 60 $ title inner
99
1010skeleton body outer =
1111 let inner = if outer < 820 then outer - 20 else 800 in
@@ -19,17 +19,17 @@ section = text . bold . Text.height (5/4) . toText
1919
2020info w = List.map (\f -> f ()) . List.intersperse (\x -> plainText "&nbsp;") . List.map ((\e x -> e) . width w) $
2121 [ section "Written in Elm, served with Yesod"
22− , text $ toText "This page is written in " ++ link "http://elm-lang.org/" (toText "Elm") ++
23− toText " and served using the " ++
24− link "http://yesodweb.com/" (toText "Yesod Web Framework") ++
22+ , text $ toText "This page is written in " ++ Text.link "http://elm-lang.org/" (toText "Elm") ++
23+ toText " and served using the " ++
24+ Text.link "http://yesodweb.com/" (toText "Yesod Web Framework") ++
2525 toText ". Since you are looking at this page it is safe to assume that you already have the example code. "
2626 , text $ toText "Type-safe URLs are rendered using simple QuasiQuoter variable interpolation."
2727 , section "More examples:"
28− , text $ toText "- " ++ link "@{MouseR}" (toText "A simple mouse input example")
29− , text $ toText "- " ++ link "@{ClockR}" (toText "An animated analog clock")
30− , text $ toText "- " ++ link "@{ShapesR}" (toText "Some simple rendered shapes")
28+ , text $ toText "- " ++ Text.link "@{MouseR}" (toText "A simple mouse input example")
29+ , text $ toText "- " ++ Text.link "@{ClockR}" (toText "An animated analog clock")
30+ , text $ toText "- " ++ Text.link "@{ShapesR}" (toText "Some simple rendered shapes")
3131 ]
32−
33−body outer inner = width outer . box 2 . flow down . (:) (plainText "&nbsp;") $ info inner
32+
33+body outer inner = width outer . flow down . (:) (plainText "&nbsp;") $ info inner
3434
3535main = lift (skeleton body) Window.width
Examples/elm-yesod/elm_source/mouse.elm+6−8
@@ -1,15 +1,13 @@
11
22-- Move your mouse around above the canvas!
33
4−import Signal.Mouse (position)
5−import Signal.Window (dimensions)
6−
74myBlue = rgb 0 85 170
8−myGreen = rgba 28 267 85 (1/2)
5+myGreen = rgba 28 267 85 0.5
96
107scene (x,y) (w,h) =
11− collage w h [ filled myBlue . rotate ((x+y)/1000) $ ngon 4 100 (200,200)
12− , filled myGreen $ ngon 5 30 (x,y)
13− ]
8+ collage w h
9+ [ rotate (toFloat (x+y) / 1000) (filled myBlue (ngon 4 100 (200,200)))
10+ , filled myGreen (ngon 5 30 (x,y))
11+ ]
1412
15−main = lift2 scene position dimensions
13+main = lift2 scene Mouse.position Window.dimensions