예제 #1
0
 private bool TagBeginDefinitionListCategory(HtmlTag tag, bool bTagEnd)
 {
     if (gDefinitionList == null || tag.TagCategory != HtmlTagCategory.DefinitionList) return false;
     switch (tag.TagType)
     {
         case HtmlTagType.DT:
         case HtmlTagType.DD:
             //gDefinitionList.AppendChild(gCurrentNode);
             AddElement(gDefinitionList, gCurrentNode);
             if (!bTagEnd) gCurrentTreeNode = gCurrentNode;
             return true;
     }
     return false;
 }
예제 #2
0
파일: HtmlToXml.cs 프로젝트: labeuze/source
 private bool TagBeginDefinitionListCategory(HtmlTag tag, bool bTagEnd)
 {
     if (_definitionList == null || tag.TagCategory != HtmlTagCategory.DefinitionList) return false;
     switch (tag.TagType)
     {
         case HtmlTagType.DT:
         case HtmlTagType.DD:
             AddElement(_definitionList, _currentNode);
             if (!bTagEnd) _currentTreeNode = _currentNode;
             return true;
     }
     return false;
 }
예제 #3
0
 private bool TagBeginTableCategory(HtmlTag tag, bool bTagEnd)
 {
     if (gTable == null || tag.TagCategory != HtmlTagCategory.Table) return false;
     switch (tag.TagType)
     {
         case HtmlTagType.THead:
         case HtmlTagType.TBody:
         case HtmlTagType.TFoot:
             //gTable.Table.AppendChild(gCurrentNode);
             AddElement(gTable.Table, gCurrentNode);
             if (!bTagEnd)
             {
                 gTable.Body = gCurrentNode;
                 gCurrentTreeNode = gCurrentNode;
             }
             else
                 gTable.Body = null;
             return true;
         case HtmlTagType.ColGroup:
             //gTable.Table.AppendChild(gCurrentNode);
             AddElement(gTable.Table, gCurrentNode);
             if (!bTagEnd)
             {
                 gTable.ColGroup = gCurrentNode;
                 gCurrentTreeNode = gCurrentNode;
             }
             else
                 gTable.ColGroup = null;
             return true;
         case HtmlTagType.Col:
             gCurrentTreeNode = gTable.Table;
             if (gTable.ColGroup != null) gCurrentTreeNode = gTable.ColGroup;
             //gCurrentTreeNode.AppendChild(gCurrentNode);
             AddElement(gCurrentTreeNode, gCurrentNode);
             if (!bTagEnd)
             {
                 gTable.Col = gCurrentNode;
                 gCurrentTreeNode = gCurrentNode;
             }
             else
                 gTable.Col = null;
             return true;
         case HtmlTagType.TR:
             if (gTable.Body == null)
             {
                 //gTable.Body = gXmlDocument.CreateElement("tbody");
                 //gTable.Table.AppendChild(gTable.Body);
                 gTable.Body = CreateElement("tbody");
                 AddElement(gTable.Table, gTable.Body);
             }
             //gTable.Body.AppendChild(gCurrentNode);
             AddElement(gTable.Body, gCurrentNode);
             if (!bTagEnd)
             {
                 gTable.Row = gCurrentNode;
                 gCurrentTreeNode = gCurrentNode;
             }
             else
                 gTable.Row = null;
             return true;
         case HtmlTagType.TH:
         case HtmlTagType.TD:
             if (gTable.Row == null)
             {
                 if (gTable.Body == null)
                 {
                     //gtable.body = gxmldocument.createelement("tbody");
                     //gtable.table.appendchild(gtable.body);
                     gTable.Body = CreateElement("tbody");
                     AddElement(gTable.Table, gTable.Body);
                 }
                 //gTable.Row = gXmlDocument.CreateElement("tr");
                 //gTable.Body.AppendChild(gTable.Row);
                 gTable.Row = CreateElement("tr");
                 AddElement(gTable.Body, gTable.Row);
             }
             //gTable.Row.AppendChild(gCurrentNode);
             AddElement(gTable.Row, gCurrentNode);
             if (!bTagEnd)
             {
                 gTable.Data = gCurrentNode;
                 gCurrentTreeNode = gCurrentNode;
             }
             else
                 gTable.Data = null;
             return true;
     }
     return false;
 }
예제 #4
0
파일: HtmlToXml.cs 프로젝트: labeuze/source
 private bool TagBeginTableCategory(HtmlTag tag, bool bTagEnd)
 {
     if (_table == null || tag.TagCategory != HtmlTagCategory.Table) return false;
     switch (tag.TagType)
     {
         case HtmlTagType.THead:
         case HtmlTagType.TBody:
         case HtmlTagType.TFoot:
             AddElement(_table.Table, _currentNode);
             if (!bTagEnd)
             {
                 _table.Body = _currentNode;
                 _currentTreeNode = _currentNode;
             }
             else
                 _table.Body = null;
             return true;
         case HtmlTagType.ColGroup:
             AddElement(_table.Table, _currentNode);
             if (!bTagEnd)
             {
                 _table.ColGroup = _currentNode;
                 _currentTreeNode = _currentNode;
             }
             else
                 _table.ColGroup = null;
             return true;
         case HtmlTagType.Col:
             _currentTreeNode = _table.Table;
             if (_table.ColGroup != null) _currentTreeNode = _table.ColGroup;
             AddElement(_currentTreeNode, _currentNode);
             if (!bTagEnd)
             {
                 _table.Col = _currentNode;
                 _currentTreeNode = _currentNode;
             }
             else
                 _table.Col = null;
             return true;
         case HtmlTagType.TR:
             if (_table.Body == null)
             {
                 _table.Body = CreateElement("tbody");
                 AddElement(_table.Table, _table.Body);
             }
             AddElement(_table.Body, _currentNode);
             if (!bTagEnd)
             {
                 _table.Row = _currentNode;
                 _currentTreeNode = _currentNode;
             }
             else
                 _table.Row = null;
             return true;
         case HtmlTagType.TH:
         case HtmlTagType.TD:
             if (_table.Row == null)
             {
                 if (_table.Body == null)
                 {
                     _table.Body = CreateElement("tbody");
                     AddElement(_table.Table, _table.Body);
                 }
                 _table.Row = CreateElement("tr");
                 AddElement(_table.Body, _table.Row);
             }
             AddElement(_table.Row, _currentNode);
             if (!bTagEnd)
             {
                 _table.Data = _currentNode;
                 _currentTreeNode = _currentNode;
             }
             else
                 _table.Data = null;
             return true;
     }
     return false;
 }