private static Epub3NavLi ReadEpub3NavLi(XElement epub3NavLiNode) { Epub3NavLi epub3NavLi = new Epub3NavLi(); foreach (XElement navLiChildNode in epub3NavLiNode.Elements()) { switch (navLiChildNode.GetLowerCaseLocalName()) { case "a": Epub3NavAnchor epub3NavAnchor = ReadEpub3NavAnchor(navLiChildNode); epub3NavLi.Anchor = epub3NavAnchor; break; case "span": Epub3NavSpan epub3NavSpan = ReadEpub3NavSpan(navLiChildNode); epub3NavLi.Span = epub3NavSpan; break; case "ol": Epub3NavOl epub3NavOl = ReadEpub3NavOl(navLiChildNode); epub3NavLi.ChildOl = epub3NavOl; break; } } return(epub3NavLi); }
private static Epub3NavOl ReadEpub3NavOl(XElement epub3NavOlNode) { Epub3NavOl epub3NavOl = new Epub3NavOl(); foreach (XAttribute navOlNodeAttribute in epub3NavOlNode.Attributes()) { string attributeValue = navOlNodeAttribute.Value; switch (navOlNodeAttribute.GetLowerCaseLocalName()) { case "hidden": epub3NavOl.IsHidden = true; break; } } epub3NavOl.Lis = new List <Epub3NavLi>(); foreach (XElement navOlChildNode in epub3NavOlNode.Elements()) { switch (navOlChildNode.GetLowerCaseLocalName()) { case "li": Epub3NavLi epub3NavLi = ReadEpub3NavLi(navOlChildNode); epub3NavOl.Lis.Add(epub3NavLi); break; } } return(epub3NavOl); }