about summary refs log blame commit diff
path: root/website/sandbox/chord-drill-sergeant/src/Tempo.elm
blob: 270cc5bd6dc6617dc90ed290f5584e19d1085524 (plain) (tree)
1
2
3
4
5
6
7
8





                                    
 
                      





                                 

                              










                                                               
module Tempo exposing (render)

import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Events exposing (..)


type alias Props msg =
    { tempo : Int
    , handleIncrease : msg
    , handleDecrease : msg
    , handleInput : String -> msg
    }


render : Props msg -> Html msg
render { tempo, handleIncrease, handleDecrease, handleInput } =
    div []
        [ p [] [ text (String.fromInt tempo ++ " BPM") ]
        , button [ onClick handleDecrease ] [ text "Slower" ]
        , input
            [ onInput handleInput
            , placeholder "Set tempo..."
            ]
            []
        , button [ onClick handleIncrease ] [ text "Faster" ]
        ]