Exemple #1
0
 public void forAll(nodeCallback callback)
 {
     tempNodes = new List <Node>();
     forAllSub(callback, root);
     forIsoalted(callback);
     tempNodes.Clear();
 }
Exemple #2
0
 public void forAll(nodeCallback nodeCallback, nodeToLinkCallback linkCallback)
 {
     tempNodes = new List <Node>();
     forAllSub(nodeCallback, linkCallback, root);
     forIsoalted(nodeCallback, linkCallback);
     tempNodes.Clear();
 }
Exemple #3
0
 private void forIsoalted(nodeCallback nodeCallback, nodeToLinkCallback linkCallback)
 {
     foreach (Node n in nodes)
     {
         if (!tempNodes.Contains(n))
         {
             forAllSub(nodeCallback, linkCallback, n);
         }
     }
 }
Exemple #4
0
 private void forAllSub(nodeCallback callback, Node currNode)
 {
     currNode.isChecked = true;
     tempNodes.Add(currNode);
     callback(currNode);
     foreach (var n in currNode.links)
     {
         if (!n.Value.isChecked)
         {
             forAllSub(callback, n.Value);
         }
     }
     currNode.isChecked = false;
 }
Exemple #5
0
 public void forAllExceptIsolated(nodeCallback nodeCallback)
 {
     forAllSub(nodeCallback, root);
 }