anchor.diff:              let res, iter = getIter path
               if prev && res then
                   select tree iter
  -                let nodes = getSelectedNodes pad
  -                if nodes.[0].Expanded then
  +                let node = getSelectedNode pad
  +                if node.Expanded then
                       // move to last child
                       let path = getPath tree
                       path.Down()
  
positive.code:             let path = selected.[0]
              let _res, iterOriginal = getIter path
              path.Down()
              let nodes = getSelectedNodes pad
              let res, iter = getIter path
              if res && nodes.[0].Expanded then
                  select tree iter
              else
                  let path = getPath tree
  
negative.code:         tree.Selection.UnselectAll()
          tree.Selection.SelectIter iter.Value
  
      let getSelectedNode (pad:TreeViewPad) =
          let (node:ITreeNavigator) = pad.TreeView?GetSelectedNode()
          node
  
      let getPath (tree:TreeView) =
          tree.Selection.GetSelectedRows().[0]
  