public DataSource(NSOutlineViewController <Node> owner, NSOutlineView treeView) { this.owner = owner; this.treeView = treeView; this.nodeToItem = new Dictionary <ITreeNode, NSNodeItem>(); this.rootItem = CreateItem(EmptyTreeNode.Instance); }
NSNodeItem CreateItem(ITreeNode node) { var result = new NSNodeItem { Node = node }; nodeToItem.Add(node, result); return(result); }
public bool TryMapNodeToItem(ITreeNode node, out NSNodeItem item) { return(nodeToItem.TryGetValue(node, out item)); }
NSObject ToObject(NSNodeItem node) => node == rootItem ? null : node;