|
// -- FILE ------------------------------------------------------------------
// name : RtfHtmlElementPath.cs
// project : RTF Framelet
// created : Jani Giannoudis - 2008.06.09
// language : c#
// environment: .NET 2.0
// copyright : (c) 2004-2010 by Itenso GmbH, Switzerland
// --------------------------------------------------------------------------
using System.Text;
using System.Collections;
using System.Web.UI;
namespace Itenso.Rtf.Converter.Html
{
// ------------------------------------------------------------------------
public class RtfHtmlElementPath
{
// ----------------------------------------------------------------------
public int Count
{
get { return elements.Count; }
} // Count
// ----------------------------------------------------------------------
public HtmlTextWriterTag Current
{
get { return (HtmlTextWriterTag)elements.Peek(); }
} // Current
// ----------------------------------------------------------------------
public bool IsCurrent( HtmlTextWriterTag tag )
{
return Current == tag;
} // IsCurrent
// ----------------------------------------------------------------------
public bool Contains( HtmlTextWriterTag tag )
{
return elements.Contains( tag );
} // Contains
// ----------------------------------------------------------------------
public void Push( HtmlTextWriterTag tag )
{
elements.Push( tag );
} // Push
// ----------------------------------------------------------------------
public void Pop()
{
elements.Pop();
} // Pop
// ----------------------------------------------------------------------
public override string ToString()
{
if ( elements.Count == 0 )
{
return base.ToString();
}
StringBuilder sb = new StringBuilder();
bool first = true;
foreach ( object element in elements )
{
if ( !first )
{
sb.Insert( 0, " > " );
}
sb.Insert( 0, element.ToString() );
first = false;
}
return sb.ToString();
} // ToString
// ----------------------------------------------------------------------
// members
private readonly Stack elements = new Stack();
} // class RtfHtmlElementPath
} // namespace Itenso.Rtf.Converter.Html
// -- EOF -------------------------------------------------------------------
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
👨 Senior .NET Software Engineer
🚀 My Open Source Projects
-
Time Period Library 👉
GitHub
-
Payroll Engine 👉
GitHub
Feedback and contributions are welcome.