souplesse/frontend/src/Model.elm

27 lines
580 B
Elm

module Model exposing
(
Model
, TrackState(..)
, Drag(..)
, DragTarget(..)
)
import TileMap exposing (FineZoomLevel, Coord)
import Point exposing (Point)
type DragTarget = Map | Graph | StartMark | EndMark | NoTarget
type Drag
= None
| Dragging DragTarget (Int, Int) (Int, Int)
type TrackState = Empty | Loading | Failure String | Present (List Point)
type alias Model =
{ centre: Coord
, zoom: FineZoomLevel
, drag: Drag
, startTime : Float
, duration : Float
, markedTime : (Float, Float)
, track: TrackState }