summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sw/source/core/inc/frame.hxx1
-rw-r--r--sw/source/core/text/xmldump.cxx11
2 files changed, 12 insertions, 0 deletions
diff --git a/sw/source/core/inc/frame.hxx b/sw/source/core/inc/frame.hxx
index 379bf08f829a..f576b59b4232 100644
--- a/sw/source/core/inc/frame.hxx
+++ b/sw/source/core/inc/frame.hxx
@@ -890,6 +890,7 @@ public:
public:
// if writer is NULL, dumps the layout structure as XML in layout.xml
virtual void dumpAsXml(xmlTextWriterPtr writer = nullptr) const;
+ virtual void dumpTopMostAsXml(xmlTextWriterPtr writer = nullptr) const;
void dumpInfosAsXml(xmlTextWriterPtr writer) const;
virtual void dumpAsXmlAttributes(xmlTextWriterPtr writer) const;
void dumpChildrenAsXml(xmlTextWriterPtr writer) const;
diff --git a/sw/source/core/text/xmldump.cxx b/sw/source/core/text/xmldump.cxx
index 3d08e365df2d..484f52405dd3 100644
--- a/sw/source/core/text/xmldump.cxx
+++ b/sw/source/core/text/xmldump.cxx
@@ -227,6 +227,17 @@ namespace
}
}
+void SwFrame::dumpTopMostAsXml(xmlTextWriterPtr writer) const
+{
+ const SwFrame* pFrame = this;
+ while (pFrame->GetUpper())
+ {
+ pFrame = pFrame->GetUpper();
+ }
+
+ pFrame->dumpAsXml(writer);
+}
+
void SwFrame::dumpAsXml( xmlTextWriterPtr writer ) const
{
bool bCreateWriter = ( nullptr == writer );