Mercurial > urweb
view demo/listEdit.ur @ 1904:686fa4e7f397
xml/parse: Accept entity files on the command line
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
Makefile.am | 2 +-
xml/parse.sml | 4 +---
2 files changed, 2 insertions(+), 4 deletions(-)
author | Anders Kaseorg <andersk@mit.edu> |
---|---|
date | Fri, 22 Nov 2013 09:36:14 -0500 |
parents | e6bc6bbd7a32 |
children |
line wrap: on
line source
datatype rlist = Nil | Cons of {Data : source string, NewData : source string, Tail : source rlist} fun showString ss = s <- signal ss; return <xml>{[s]}</xml> fun show rls = v <- signal rls; show' v and show' rl = case rl of Nil => return <xml/> | Cons {Data = ss, NewData = ss', Tail = rls} => return <xml> <dyn signal={showString ss}/> <button value="Change to:" onclick={fn _ => s <- get ss'; set ss s}/> <ctextbox source={ss'}/><br/> <dyn signal={show rls}/> </xml> fun main () = head <- source Nil; tailP <- source head; data <- source ""; let fun add () = data <- get data; data <- source data; ndata <- source ""; tail <- get tailP; tail' <- source Nil; let val cons = Cons {Data = data, NewData = ndata, Tail = tail'} in set tail cons; set tailP tail'; head' <- get head; case head' of Nil => set head cons | _ => return () end in return <xml><body> <ctextbox source={data}/> <button value="Add" onclick={fn _ => add ()}/><br/> <br/> <dyn signal={show head}/> </body></xml> end