-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUpdate.elm
More file actions
61 lines (57 loc) · 1.64 KB
/
Update.elm
File metadata and controls
61 lines (57 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
module Update exposing (..)
import Connectors exposing (..)
import ConnectorsEventHandling exposing (..)
import NodeEventHandling exposing (..)
import MapNode exposing (..)
import MapModel exposing (..)
import MapMsg exposing (..)
import UpdateHelpers exposing (..)
import ModelEventHandling exposing (..)
update : Msg -> Model -> ( Model, Cmd Msg )
update msg model =
( updateHelp msg model, Cmd.none )
updateHelp : Msg -> Model -> Model
updateHelp msg model =
let
upPDCon = updatePDConnector model.connectorData
upPDNode = updatePDNode model.nodeData in
case msg of
DoNothing -> model
StartPan d ->
startPan model d
DragAt d ->
dragAt model d
DragEnd _ ->
dragEnd model
InspectNode n ->
inspectNode model n
SelectNode (pos, node) ->
selectNode model node
CreateConnector evt ->
case evt of
InitConnector ->
initConnectorData model
ExitChanged s ->
updateConData model (upPDCon (updateExit s))
EnterChanged s ->
updateConData model (upPDCon (updateEntry s))
CostChanged cost ->
updateConData model (upPDCon (updateCost cost))
FinishConnector ->
finishConnector model
CreateNode e ->
case e of
InitNode ->
initNodeData model
DisplayTxt s ->
updateNodeData model (upPDNode (updateDisplayText s))
FinishNode ->
finishNode model
StartConnecting ->
startConnecting model
HoverSideRegion n s ->
hoverSide n s model
StopHoverSideRegion n s ->
stopHoverSide n s model
ZoomChange x ->
zoomChange model x