firstChild example
The following method calls itself recursively to traverse the items in a tree, applying code to each tree item encountered:
function traverseTree( tRoot, kProcess )
local t
t = tRoot.firstChild // Start with first item in the tree
do while t # null // if any, and repeat until done
kProcess( t ) // Process each tree item
class::traverseTree( t, kProcess ) // Call recursively for sub-tree
t := t.nextSibling // Next item at same level
enddo
The following code calls the method to traverse the entire tree treeview1 and display each item’s basic properties:
function dumpTreeButton_onClick
class::traverseTree( form.treeview1, {|t|; ? t.level, t.checked, t.text} )