Mega Code Archive

 
Categories / Delphi / Examples
 

Treewalk

procedure TMainForm.TreeWalk(xmlDoc: IXMLDOMDocument; currDOMnodePtr: IXMLDOMNode); //a recursive procedure to iterate through every one of the nodes on a tree... //THIS DOES NOTHING -use as a foundation of something useful... var DOMnodePtr: IXMLDOMNode; nodeText: String; begin if (currDOMnodePtr.hasChildNodes) then begin DOMnodePtr := currDOMnodePtr.firstChild; repeat if (not(DOMnodePtr = nil)) then begin //filter out any nodes that are not 'element' type nodes if (DOMNodePtr.nodeType = NODE_ELEMENT) then begin nodeText := DOMnodePtr.nodeName; //ShowMessage(nodeText); TreeWalk(xmlDoc, DOMnodePtr); end; end; DOMnodePtr := DOMnodePtr.nextSibling; until (DOMnodePtr = nil); end; end;