public override void WriteContent(Stream result)
{
if (!this.inTable) {
result.Write(OPEN_GROUP, 0, OPEN_GROUP.Length);
}
int itemNr = 0;
if (items != null) {
for (int i = 0; i < items.Count; i++) {
RtfElement thisRtfElement = (RtfElement) items[i];
//thisRtfElement.WriteContent(result);
if (thisRtfElement is RtfListItem) {
itemNr++;
RtfListItem rtfElement = (RtfListItem)thisRtfElement;
RtfListLevel listLevel = rtfElement.GetParent();
if (listLevel.GetListLevel() == 0) {
CorrectIndentation();
}
if (i == 0) {
listLevel.WriteListBeginning(result);
WriteListNumbers(result);
}
WriteListTextBlock(result, itemNr, listLevel);
rtfElement.WriteContent(result);
if (i < (items.Count - 1) || !this.inTable || listLevel.GetListType() > 0) { // TODO Fix no paragraph on last list item in tables
result.Write(RtfParagraph.PARAGRAPH, 0, RtfParagraph.PARAGRAPH.Length);
}
this.document.OutputDebugLinebreak(result);
} else if (thisRtfElement is RtfList) {
((RtfList)thisRtfElement).WriteContent(result);
// ((RtfList)thisRtfElement).WriteListBeginning(result);
WriteListNumbers(result);
this.document.OutputDebugLinebreak(result);
}
}
}
if (!this.inTable) {
result.Write(CLOSE_GROUP, 0, CLOSE_GROUP.Length);
result.Write(RtfParagraph.PARAGRAPH_DEFAULTS, 0, RtfParagraph.PARAGRAPH_DEFAULTS.Length);
}
}
/**