I was trying to modify the tree example to be a collapsing tree and when this renders the javascript ends up getting spewed out all over the form. It looks like it's getting escaped or something.

style treeView

functor Make(M : sig
                 type key
                 con id :: Name
                 con parent :: Name
                 con cols :: {Type}
                 constraint [id] ~ [parent]
                 constraint [id, parent] ~ cols

                 val key_inj : sql_injectable_prim key

                 table tab : ([id = key, parent = option key] ++ cols)
             end) = struct

    open M

    fun tree (f : $([id = key, parent = option key] ++ cols) -> xbody)
             (root : option M.key) =
        let
            fun recurse (root : option key) =
queryX' (SELECT * FROM tab WHERE {eqNullable' (SQL tab.{parent}) root})
                        (fn r =>
                            children <- recurse (Some r.Tab.id);
                s <- source False;
                            return <xml>

<a onclick={set s True}> {f r.Tab}</a>
<dyn signal={v <- signal s;
                         if v then
                         return <xml><div>{children}</div></xml>
                         else return <xml/>}/>

</xml>)
        in
            recurse root
        end

end

_______________________________________________
Ur mailing list
[email protected]
http://www.impredicative.com/cgi-bin/mailman/listinfo/ur

Reply via email to