diff --git a/libraries/Color.elm b/libraries/Color.elm index 330bb81..1029c3f 100644 --- a/libraries/Color.elm +++ b/libraries/Color.elm @@ -21,7 +21,7 @@ which provides aesthetically reasonable defaults for colors. Each color also comes with a light and dark version. ### Standard -@docs red, orange, yellow, green, blue, purple, brown, black, white +@docs red, orange, yellow, green, blue, purple, brown ### Light @docs lightRed, lightOrange, lightYellow, lightGreen, lightBlue, lightPurple, @@ -31,14 +31,14 @@ comes with a light and dark version. @docs darkRed, darkOrange, darkYellow, darkGreen, darkBlue, darkPurple, darkBrown -### Grays -These six colors are a compatible series of shades of gray. White and black are -listed above. -@docs lightGray, gray, darkGray, lightCharcoal, charcoal, darkCharcoal +### Eight Shades of Grey +These colors are a compatible series of shades of grey, fitting nicely +with the Tango palette. +@docs white, lightGrey, grey, darkGrey, lightCharcoal, charcoal, darkCharcoal, black -#### Greys -These are identical to the *gray* versions. -@docs lightGrey, grey, darkGrey +These are identical to the *grey* versions. It seems the spelling is regional, but +that has never helped me remember which one I should be writing. +@docs lightGray, gray, darkGray -} diff --git a/libraries/JavaScript.elm b/libraries/JavaScript.elm index 092c88b..32e739f 100644 --- a/libraries/JavaScript.elm +++ b/libraries/JavaScript.elm @@ -11,8 +11,6 @@ integration. # JavaScript from Elm @docs fromString, fromInt, fromFloat, fromBool fromList --} -{- # DOM Nodes and Elements @docs toElement, fromElement -} @@ -27,7 +25,7 @@ data JSArray a = JSArray a data JSDomNode = JSDomNode data JSObject = JSObject --- Requires that the input array be uniform (all members have the same type) +{-| Requires that the input array be uniform (all members have the same type) -} toList : JSArray a -> [a] toList = Native.JavaScript.toList @@ -44,7 +42,7 @@ toString : JSString -> String toString = Native.JavaScript.toString --- Produces a uniform JavaScript array with all members of the same type. +{-| Produces a uniform JavaScript array with all members of the same type. -} fromList : [a] -> JSArray a fromList = Native.JavaScript.fromList @@ -60,7 +58,6 @@ fromBool = Native.JavaScript.fromBool fromString : String -> JSString fromString = Native.JavaScript.fromString -{-- {-| Turn an `Element` into a DOM node. -} fromElement : Element -> JSDomNode fromElement = Native.JavaScript.fromElement @@ -69,4 +66,3 @@ fromElement = Native.JavaScript.fromElement using the normal `width` and `height` functions. -} toElement : Int -> Int -> JSDomNode -> Element toElement = Native.JavaScript.toElement ---} diff --git a/libraries/Keyboard.elm b/libraries/Keyboard.elm index 1c5b4dd..9aad98e 100644 --- a/libraries/Keyboard.elm +++ b/libraries/Keyboard.elm @@ -20,30 +20,31 @@ import Signal (Signal) import Native.Keyboard {-| Type alias to make it clearer what integers are supposed to represent - in this library. Use [`Char.toCode`](docs/Char.elm#toCode) and - [`Char.fromCode`](/docs/Char.elm#fromCode) to convert key codes to characters. - Use the uppercase character with `toCode`. -} +in this library. Use [`Char.toCode`](docs/Char.elm#toCode) and +[`Char.fromCode`](/docs/Char.elm#fromCode) to convert key codes to characters. +Use the uppercase character with `toCode`. +-} type KeyCode = Int {-| Custom key directions to support different locales. The order is up, down, -left, right. -} --- The plan is to have a locale independent version of this function --- that uses the physical location of keys, but I don't know how to do it. +left, right. +-} directions : KeyCode -> KeyCode -> KeyCode -> KeyCode -> Signal { x:Int, y:Int } directions = Native.Keyboard.directions {-| A signal of records indicating which arrow keys are pressed. - `{ x = 0, y = 0 }` when pressing no arrows.
- `{ x =-1, y = 0 }` when pressing the left arrow.
- `{ x = 1, y = 1 }` when pressing the up and right arrows.
- `{ x = 0, y =-1 }` when pressing the down, left, and right arrows. +`{ x = 0, y = 0 }` when pressing no arrows.
+`{ x =-1, y = 0 }` when pressing the left arrow.
+`{ x = 1, y = 1 }` when pressing the up and right arrows.
+`{ x = 0, y =-1 }` when pressing the down, left, and right arrows. -} arrows : Signal { x:Int, y:Int } arrows = directions 38 40 37 39 {-| Just like the arrows signal, but this uses keys w, a, s, and d, -which are common controls for many computer games. -} +which are common controls for many computer games. +-} wasd : Signal { x:Int, y:Int } wasd = directions 87 83 65 68 diff --git a/libraries/Random.elm b/libraries/Random.elm index 57dfed2..c198a04 100644 --- a/libraries/Random.elm +++ b/libraries/Random.elm @@ -1,4 +1,3 @@ - module Random where {-| Since the core of Elm is pure, randomness must be handled via signals. diff --git a/libraries/Touch.elm b/libraries/Touch.elm index d3419fe..51aaf38 100644 --- a/libraries/Touch.elm +++ b/libraries/Touch.elm @@ -4,7 +4,7 @@ module Touch where include gestures that would be useful for both games and web-pages. # Touches -@docs touches +@docs Touch, touches # Gestures @docs taps @@ -14,15 +14,14 @@ import Signal (Signal) import Native.Touch import Time (Time) -{-| -Every `Touch` has `xy` coordinates. It also has an identifier `id` to -distinguish one touch from another. +{-| Every `Touch` has `xy` coordinates. It also has an identifier +`id` to distinguish one touch from another. A touch also keeps info about the initial point and time of contact: `x0`, `y0`, and `t0`. This helps compute more complicated gestures like taps, drags, and swipes which need to know about timing or direction. -type Touch = { x:Int, y:Int, id:Int, x0:Int, y0:Int, t0:Time } -} +type Touch = { x:Int, y:Int, id:Int, x0:Int, y0:Int, t0:Time } {-| A list of ongoing touches. -} touches : Signal [Touch]