aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2017-05-20 15:37:34 +0100
committerMichael Williamson <mike@zwobble.org>2017-05-20 15:37:34 +0100
commit370df4d36053736446e9334008d012ebda5f86bb (patch)
treecfad042b40bfb45ee885de2ea651aafb8552e633 /src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java
parent62cdf68ff42c1887aac3c639226f878335a39a79 (diff)
Read whether row is header
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java b/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java
index f726a29..76ea8ea 100644
--- a/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java
+++ b/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java
@@ -95,7 +95,7 @@ class StatefulBodyXmlReader {
case "w:tbl":
return readTable(element);
case "w:tr":
- return readElements(element.getChildren()).map(TableRow::new);
+ return readTableRow(element);
case "w:tc":
return readTableCell(element);
@@ -150,6 +150,7 @@ class StatefulBodyXmlReader {
case "w:rPr":
case "w:tblPr":
case "w:tblGrid":
+ case "w:trPr":
case "w:tcPr":
return EMPTY_SUCCESS;
@@ -378,7 +379,7 @@ class StatefulBodyXmlReader {
}
}
- return new TableRow(mergedCells);
+ return new TableRow(mergedCells, row.isHeader());
}));
}
@@ -398,6 +399,13 @@ class StatefulBodyXmlReader {
return Optional.empty();
}
+ private ReadResult readTableRow(XmlElement element) {
+ XmlElementLike properties = element.findChildOrEmpty("w:trPr");
+ boolean isHeader = properties.hasChild("w:tblHeader");
+ return readElements(element.getChildren())
+ .map(children -> new TableRow(children, isHeader));
+ }
+
private ReadResult readTableCell(XmlElement element) {
XmlElementLike properties = element.findChildOrEmpty("w:tcPr");
Optional<String> gridSpan = properties