/// ------------------------------------------------------------------------------------
 private IEnumerable <LocTreeNode <T> > GetLeafNodesOfNode(LocTreeNode <T> node)
 {
     foreach (var childNode in node.Nodes.Cast <LocTreeNode <T> >())
     {
         if (AllLeafNodes.Contains(childNode))
         {
             yield return(childNode);
         }
         else
         {
             foreach (var leafNode in GetLeafNodesOfNode(childNode))
             {
                 yield return(leafNode);
             }
         }
     }
 }