comparison demo/more/dragList.ur @ 1784:e6bc6bbd7a32

Update demo code for key/mouse handler change
author Adam Chlipala <adam@chlipala.net>
date Sat, 21 Jul 2012 10:12:35 -0400
parents 6a77c3e33908
children
comparison
equal deleted inserted replaced
1783:5bc4fbf9c0fe 1784:e6bc6bbd7a32
3 draggingItem <- source None; 3 draggingItem <- source None;
4 return <xml> 4 return <xml>
5 <h2>Great {[title]}</h2> 5 <h2>Great {[title]}</h2>
6 <ul> 6 <ul>
7 {List.mapX (fn itemSource => <xml> 7 {List.mapX (fn itemSource => <xml>
8 <li onmousedown={set draggingItem (Some itemSource)} 8 <li onmousedown={fn _ => set draggingItem (Some itemSource)}
9 onmouseup={set draggingItem None} 9 onmouseup={fn _ => set draggingItem None}
10 onmouseover={di <- get draggingItem; 10 onmouseover={fn _ => di <- get draggingItem;
11 case di of 11 case di of
12 None => return () 12 None => return ()
13 | Some di => original <- get di; 13 | Some di => original <- get di;
14 movedOver <- get itemSource; 14 movedOver <- get itemSource;
15 set di movedOver; 15 set di movedOver;
16 set itemSource original; 16 set itemSource original;
17 set draggingItem (Some itemSource)}> 17 set draggingItem (Some itemSource)}>
18 <dyn signal={Monad.mp cdata (signal itemSource)}/> 18 <dyn signal={Monad.mp cdata (signal itemSource)}/>
19 </li></xml>) itemSources} 19 </li></xml>) itemSources}
20 </ul> 20 </ul>
21 </xml> 21 </xml>
22 22