// コンストラクタ /// <summary> /// 鳩丸データのデータソースの FileInfo と XmlDocument を指定して、Doc のインスタンスを開始します。 /// </summary> public HatomaruDoc(HatomaruManager manager, FileInfo f, XmlDocument x) : base(manager, f, x){ int index = 0; foreach(XmlElement e in x.GetElementsByTagName(TopicElement)){ if(string.IsNullOrEmpty(e.GetAttributeValue(HatomaruDoc.PageIdAttribute))){ DocTopic dt = new DocTopic(e, 0); myAnonymousTopics.Add(dt); } else { DocTopic dt = new DocTopic(e, ++index); myTopicsDic.Add(dt.Id, dt); } } myNamedTopics = new DocTopic[myTopicsDic.Values.Count]; myTopicsDic.Values.CopyTo(myNamedTopics, 0); }
public DocTopic GetNextTopic(DocTopic dt){ if(dt.Index >= myNamedTopics.Length) return null; return myNamedTopics[dt.Index]; }
public DocTopic GetPrevTopic(DocTopic dt){ if(dt.Index < 2) return null; return myNamedTopics[dt.Index-2]; }