declare [Tree QTk]={Module.link ["Tree.ozf" "http://www.info.ucl.ac.be/people/ned/qtk/QTk.ozf"]} TreeNode=Tree.treeNode C {{QTk.build td(canvas(glue:nswe handle:C tdscrollbar:true lrscrollbar:true))} show} RootNode={New TreeNode init(canvas:C font:"Helvetica 10" height:18 label:"Node" )} {RootNode draw(x:2 y:2 height:_)} proc{AddChildren Node Nu} Label={Node get(label:$)} in {List.forAllInd {List.make Nu} proc{$ I _} NewNode={New TreeNode init(parent:Node label:Label#" "#I)} in {Node addLeaf(node:NewNode)} {AddChildren NewNode Nu-1} end} end {AddChildren RootNode 5} {RootNode expand}