/**
* This method gets called when an end tag is encountered.
*
* @param uri the Uniform Resource Identifier
* @param lname the local name (without prefix), or the empty string if Namespace processing is not being performed.
* @param name the name of the tag that ends
*/
public override void EndElement(String uri, String lname, String name)
{
//System.err.Println("End: " + name);
name = name.ToLower(CultureInfo.InvariantCulture);
if (ElementTags.PARAGRAPH.Equals(name))
{
document.Add((IElement)stack.Pop());
return;
}
if (HtmlTagMap.IsHead(name))
{
// we do nothing
return;
}
if (HtmlTagMap.IsTitle(name))
{
if (currentChunk != null)
{
bodyAttributes.Add(ElementTags.TITLE, currentChunk.Content);
}
return;
}
if (HtmlTagMap.IsMeta(name))
{
// we do nothing
return;
}
if (HtmlTagMap.IsLink(name))
{
// we do nothing
return;
}
if (HtmlTagMap.IsBody(name))
{
// we do nothing
return;
}
if (myTags.ContainsKey(name))
{
XmlPeer peer = (XmlPeer)myTags[name];
if (ElementTags.TABLE.Equals(peer.Tag))
{
tableBorder = false;
}
base.HandleEndingTags(peer.Tag);
return;
}
// super.handleEndingTags is replaced with handleEndingTags
// suggestion by Ken Auer
HandleEndingTags(name);
}