Kaydet (Commit) 607ad597 authored tarafından Miklos Vajna's avatar Miklos Vajna

Extract MarkBase::dumpAsXml() from MarkManager

Change-Id: I85589d304dad05581bb2013166bb22f6b46cc793
üst 69d7bdfb
......@@ -68,6 +68,7 @@ namespace sw { namespace mark
{ return GetMarkEnd() > rPos; }
virtual OUString ToString( ) const =0;
virtual void dumpAsXml(struct _xmlTextWriter* pWriter) const = 0;
};
class SW_DLLPUBLIC IBookmark
......
......@@ -32,6 +32,7 @@
#include <unobookmark.hxx>
#include <rtl/random.h>
#include <xmloff/odffields.hxx>
#include <libxml/xmlwriter.h>
using namespace ::sw::mark;
using namespace ::com::sun::star;
......@@ -173,6 +174,19 @@ namespace sw { namespace mark
+ OUString::number( GetMarkPos().nContent.GetIndex( ) ) + " ] )";
}
void MarkBase::dumpAsXml(xmlTextWriterPtr pWriter) const
{
xmlTextWriterStartElement(pWriter, BAD_CAST("markBase"));
xmlTextWriterWriteAttribute(pWriter, BAD_CAST("name"), BAD_CAST(m_aName.toUtf8().getStr()));
xmlTextWriterStartElement(pWriter, BAD_CAST("markPos"));
GetMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterStartElement(pWriter, BAD_CAST("otherMarkPos"));
GetOtherMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterEndElement(pWriter);
}
MarkBase::~MarkBase()
{ }
......
......@@ -1146,18 +1146,7 @@ void MarkManager::dumpAsXml(xmlTextWriterPtr pWriter) const
{
xmlTextWriterStartElement(pWriter, BAD_CAST("bookmarks"));
for (const_iterator_t it = m_vBookmarks.begin(); it != m_vBookmarks.end(); ++it)
{
pMark_t pMark = *it;
xmlTextWriterStartElement(pWriter, BAD_CAST("bookmark"));
xmlTextWriterWriteAttribute(pWriter, BAD_CAST("name"), BAD_CAST(pMark->GetName().toUtf8().getStr()));
xmlTextWriterStartElement(pWriter, BAD_CAST("markPos"));
pMark->GetMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterStartElement(pWriter, BAD_CAST("otherMarkPos"));
pMark->GetOtherMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterEndElement(pWriter);
}
(*it)->dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
}
......@@ -1168,13 +1157,7 @@ void MarkManager::dumpAsXml(xmlTextWriterPtr pWriter) const
{
pMark_t pMark = *it;
xmlTextWriterStartElement(pWriter, BAD_CAST("fieldmark"));
xmlTextWriterWriteAttribute(pWriter, BAD_CAST("name"), BAD_CAST(pMark->GetName().toUtf8().getStr()));
xmlTextWriterStartElement(pWriter, BAD_CAST("markPos"));
pMark->GetMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterStartElement(pWriter, BAD_CAST("otherMarkPos"));
pMark->GetOtherMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
pMark->dumpAsXml(pWriter);
if (sw::mark::IFieldmark* pFieldmark = dynamic_cast<sw::mark::IFieldmark*>(pMark.get()))
{
sw::mark::IFieldmark::parameter_map_t* pParameters = pFieldmark->GetParameters();
......@@ -1200,18 +1183,7 @@ void MarkManager::dumpAsXml(xmlTextWriterPtr pWriter) const
{
xmlTextWriterStartElement(pWriter, BAD_CAST("annotationmarks"));
for (const_iterator_t it = m_vAnnotationMarks.begin(); it != m_vAnnotationMarks.end(); ++it)
{
pMark_t pMark = *it;
xmlTextWriterStartElement(pWriter, BAD_CAST("annotationmark"));
xmlTextWriterWriteAttribute(pWriter, BAD_CAST("name"), BAD_CAST(pMark->GetName().toUtf8().getStr()));
xmlTextWriterStartElement(pWriter, BAD_CAST("markPos"));
pMark->GetMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterStartElement(pWriter, BAD_CAST("otherMarkPos"));
pMark->GetOtherMarkPos().dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
xmlTextWriterEndElement(pWriter);
}
(*it)->dumpAsXml(pWriter);
xmlTextWriterEndElement(pWriter);
}
xmlTextWriterEndElement(pWriter);
......
......@@ -88,6 +88,7 @@ namespace sw {
{ m_pPos2.reset(); }
virtual OUString ToString( ) const SAL_OVERRIDE;
virtual void dumpAsXml(struct _xmlTextWriter* pWriter) const SAL_OVERRIDE;
void Swap()
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment