summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-04-02 11:59:47 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-04-02 12:04:52 +0200
commit82332ee1fc23b6fdccaf92149c0f2fa46fcdc4d6 (patch)
treed585c43b586e36c9bd4b3ed436541917c90cb8b7
parentb0606fa6f8ab8bc3ee8b90eaedb34019c4d6657d (diff)
sw doc model dump: handle SdrObject text
Change-Id: I0b11aaa3efd5176a3a7c124bd15d50962ee7e90e
-rw-r--r--sw/source/core/docnode/nodedump.cxx20
1 files changed, 19 insertions, 1 deletions
diff --git a/sw/source/core/docnode/nodedump.cxx b/sw/source/core/docnode/nodedump.cxx
index aee1ca285f16..dbdf4801c91a 100644
--- a/sw/source/core/docnode/nodedump.cxx
+++ b/sw/source/core/docnode/nodedump.cxx
@@ -26,6 +26,8 @@
#include <editeng/rsiditem.hxx>
#include <editeng/fontitem.hxx>
#include <editeng/fhgtitem.hxx>
+#include <editeng/editobj.hxx>
+#include <editeng/outlobj.hxx>
#include <svx/svdpage.hxx>
#include <svx/svdmodel.hxx>
#include <tools/datetimeutils.hxx>
@@ -125,7 +127,7 @@ void lcl_dumpSdrModel(WriterHelper& writer, const SdrModel* pModel)
sal_Int32 nObjCount = pPage->GetObjCount();
for (sal_Int32 i = 0; i < nObjCount; ++i)
{
- SdrObject* pObject = pPage->GetObj(i);
+ const SdrObject* pObject = pPage->GetObj(i);
writer.startElement("sdrObject");
writer.writeFormatAttribute("ptr", "%p", pObject);
if (pObject)
@@ -134,6 +136,22 @@ void lcl_dumpSdrModel(WriterHelper& writer, const SdrModel* pModel)
writer.writeFormatAttribute("name", "%s", BAD_CAST(OUStringToOString(pObject->GetName(), RTL_TEXTENCODING_UTF8).getStr()));
writer.writeFormatAttribute("title", "%s", BAD_CAST(OUStringToOString(pObject->GetTitle(), RTL_TEXTENCODING_UTF8).getStr()));
writer.writeFormatAttribute("description", "%s", BAD_CAST(OUStringToOString(pObject->GetDescription(), RTL_TEXTENCODING_UTF8).getStr()));
+
+ const OutlinerParaObject* pOutliner = pObject->GetOutlinerParaObject();
+ writer.startElement("outliner");
+ writer.writeFormatAttribute("ptr", "%p", pOutliner);
+ if (pOutliner)
+ {
+ const EditTextObject& rEditObj = pOutliner->GetTextObject();
+ sal_Int32 nPara = rEditObj.GetParagraphCount();
+ for (sal_Int32 j = 0; j < nPara; ++j)
+ {
+ writer.startElement("paragraph");
+ xmlTextWriterWriteString(writer, BAD_CAST(OUStringToOString(rEditObj.GetText(j), RTL_TEXTENCODING_UTF8).getStr()));
+ writer.endElement();
+ }
+ }
+ writer.endElement();
}
writer.endElement();
}