16 #if !defined(XALANIDENTWRITER_HEADER_GUARD_1357924680)
17 #define XALANIDENTWRITER_HEADER_GUARD_1357924680
28 XALAN_CPP_NAMESPACE_BEGIN
31 template<
class WhiteSpaceWriter,
43 m_whiteSpaceWriter(writer),
44 m_newLineWriter(writer),
47 m_startNewLine(false),
50 m_preserves(writer.getMemoryManager(), 5)
52 assert( m_indent != -1);
77 if(m_startNewLine ==
true)
82 m_whiteSpaceWriter(m_currentIndent);
90 m_currentIndent += m_indent;
96 assert( m_currentIndent >= m_indent);
98 m_currentIndent -= m_indent;
104 m_startNewLine = value;
119 m_isprevtext = value;
125 m_ispreserve = value;
131 if ( m_preserves.
empty() )
133 m_ispreserve =
false;
137 m_ispreserve = m_preserves.
back();
153 return (!m_ispreserve && !m_isprevtext);
161 WhiteSpaceWriter m_whiteSpaceWriter;
163 NewLineWriter m_newLineWriter;
199 XALAN_CPP_NAMESPACE_END
203 #endif // XALANIDENTWRITER_HEADER_GUARD_1357924680
XalanDOMString::size_type size_type
Definition: XalanIndentWriter.hpp:36
void push_preserve()
Definition: XalanIndentWriter.hpp:144
void setIndent(size_type value)
Definition: XalanIndentWriter.hpp:61
~XalanIndentWriter()
Definition: XalanIndentWriter.hpp:55
void pop_preserve()
Definition: XalanIndentWriter.hpp:129
void decreaseIndent()
Definition: XalanIndentWriter.hpp:94
reference back()
Definition: XalanVector.hpp:673
void pop_back()
Definition: XalanVector.hpp:256
bool empty() const
Definition: XalanVector.hpp:636
size_type getIndent() const
Definition: XalanIndentWriter.hpp:67
void push_back(const value_type &data)
Definition: XalanVector.hpp:246
XalanIndentWriter(writer_type &writer, size_type ident)
Definition: XalanIndentWriter.hpp:40
void setPreserve(bool value)
Definition: XalanIndentWriter.hpp:123
XalanVector< bool > BoolStackType
Definition: XalanIndentWriter.hpp:37
Definition: XalanIndentWriter.hpp:33
void increaseIndent()
Definition: XalanIndentWriter.hpp:88
void setStartNewLine(bool value)
Definition: XalanIndentWriter.hpp:102
void indent()
Definition: XalanIndentWriter.hpp:73
void outputLineSep()
Output a line break.
Definition: XalanIndentWriter.hpp:111
WhiteSpaceWriter::writer_type writer_type
Definition: XalanIndentWriter.hpp:38
unsigned int size_type
Definition: XalanDOMString.hpp:53
void setPrevText(bool value)
Definition: XalanIndentWriter.hpp:117