private void InitTOC() { //Initialize TOC Tree = new TOCNodeTree(AppDataUtil.Instance.GetCurPublicationTocRootNode()); if (AppDataUtil.Instance.GetOpendTOC() != null) { LatestOpendTOCNode = AppDataUtil.Instance.GetOpendTOC().ParentNode; } else { var firstNonPageTOCNode = Tree.GetFirstPageNode().ParentNode; LatestOpendTOCNode = firstNonPageTOCNode.ParentNode == null ? firstNonPageTOCNode : firstNonPageTOCNode.ParentNode; } DisplayedTocList = Tree.GetDisplayTOCNodeList(LatestOpendTOCNode); if (AppDataUtil.Instance.GetOpendTOC() == null) { HighlightedTOCNode = Tree.GetFirstPageNode().ParentNode; SetDisplayedTOC(Tree.GetFirstPageNode()); } else { HighlightedTOCNode = AppDataUtil.Instance.GetOpendTOC(); SetDisplayedTOC(HighlightedTOCNode); } }
public TableOfContentTableViewSource(TOCNode root) { Tree = new TOCNodeTree(root); if (AppDataUtil.Instance.GetOpendTOC() != null) { LatestOpendTOCNode = AppDataUtil.Instance.GetOpendTOC().ParentNode; } else { var firstNonPageTOCNode = Tree.GetFirstPageNode().ParentNode; LatestOpendTOCNode = firstNonPageTOCNode.ParentNode == null ? firstNonPageTOCNode : firstNonPageTOCNode.ParentNode; } DisplayedTocList = Tree.GetDisplayTOCNodeList(LatestOpendTOCNode); if (AppDataUtil.Instance.GetOpendTOC() == null) { HighlightedTOCNode = Tree.GetFirstPageNode().ParentNode; SetDisplayedTOC(Tree.GetFirstPageNode()); } else { HighlightedTOCNode = AppDataUtil.Instance.GetOpendTOC(); SetDisplayedTOC(HighlightedTOCNode); } AppDataUtil.Instance.SetHighlightedTOCNode(HighlightedTOCNode); }