Author: kiwiwings
Date: Tue Jan 19 20:27:00 2021
New Revision: 1885699
URL: http://svn.apache.org/viewvc?rev=1885699&view=rev
Log:
github-211 - Revert addRow to behaviour before 4.1.2
Modified:
poi/site/src/documentation/content/xdocs/changes.xml
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java
Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL:
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1885699&r1=1885698&r2=1885699&view=diff
==============================================================================
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Tue Jan 19 20:27:00
2021
@@ -70,8 +70,11 @@
</p>
</section>
- <!-- release version="5.0.1" date="2021-04-??">
- </release -->
+ <release version="5.0.1" date="2021-04-??">
+ <actions>
+ <action type="fix" fixes-bug="github-221" context="XSLF">XSLFTable
- revert addRow to behaviour before 4.1.2</action>
+ </actions>
+ </release>
<release version="5.0.0" date="2021-01-20">
<summary>
Modified: poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java?rev=1885699&r1=1885698&r2=1885699&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java Tue
Jan 19 20:27:00 2021
@@ -156,6 +156,7 @@ public class XSLFTable extends XSLFGraph
CTTableRow tr = _table.addNewTr();
XSLFTableRow row = initializeRow(tr);
_rows.add(row);
+ updateRowColIndexes();
return row;
}
@@ -163,9 +164,6 @@ public class XSLFTable extends XSLFGraph
XSLFTableRow row = new XSLFTableRow(tr, this);
// default height is 20 points
row.setHeight(20.0);
- for (int i = 0; i < getNumberOfColumns(); i++) {
- row.addCell();
- }
return row;
}
@@ -180,6 +178,9 @@ public class XSLFTable extends XSLFGraph
}
CTTableRow tr = _table.insertNewTr(rowIdx);
XSLFTableRow row = initializeRow(tr);
+ for (int i = 0; i < getNumberOfColumns(); i++) {
+ row.addCell();
+ }
_rows.add(rowIdx, row);
return row;
}
Modified:
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java?rev=1885699&r1=1885698&r2=1885699&view=diff
==============================================================================
---
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java
(original)
+++
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java
Tue Jan 19 20:27:00 2021
@@ -27,18 +27,22 @@ import static org.junit.jupiter.api.Asse
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics2D;
+import java.awt.Rectangle;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.File;
+import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;
import java.util.Random;
+import org.apache.poi.sl.draw.DrawTableShape;
import org.apache.poi.sl.usermodel.ShapeType;
import org.apache.poi.sl.usermodel.Slide;
import org.apache.poi.sl.usermodel.StrokeStyle;
import org.apache.poi.sl.usermodel.TableCell.BorderEdge;
+import org.apache.poi.sl.usermodel.TextParagraph;
import org.apache.poi.sl.usermodel.VerticalAlignment;
import org.apache.poi.util.TempFile;
import org.apache.poi.xslf.XSLFTestDataSamples;
@@ -94,7 +98,7 @@ class TestXSLFTable {
while (rowIdx<data.length) {
row = tab.addRow();
for (int col=0; col<data[rowIdx].length; col++) {
- XSLFTextRun tr = tab.getCell(rowIdx,
col).setText(data[rowIdx][col]);
+ XSLFTextRun tr = row.addCell().setText(data[rowIdx][col]);
tr.setFontSize(15.);
tr.setFontFamily("Arial");
}
@@ -102,8 +106,7 @@ class TestXSLFTable {
for (int col=0; col<data[rowIdx].length; col++) {
XSLFTextRun tr = tab
.getCell(rowIdx, col)
- .setText(
- data[rowIdx][col]);
+ .setText(data[rowIdx][col]);
tr.setFontSize(12.);
tr.setFontFamily("Arial");
}
@@ -333,4 +336,31 @@ class TestXSLFTable {
}
}
}
+
+ @Test
+ void simpleMerge() throws IOException {
+ // github-221
+ try (XMLSlideShow slideshow = new XMLSlideShow()) {
+ XSLFSlide slide = slideshow.createSlide();
+ XSLFTable newTable = slide.createTable(3, 3);
+ newTable.setAnchor(new Rectangle(100, 100, 100, 100));
+
+ XSLFTableRow tableRow = newTable.addRow();
+ assertEquals(0, tableRow.getCells().size());
+ XSLFTableCell cell = tableRow.addCell();
+ XSLFTextParagraph textparagraph = cell.addNewTextParagraph();
+ XSLFTextRun textrun = textparagraph.addNewTextRun();
+ textrun.setText("Any Text");
+ textrun.setFontColor(Color.BLUE);
+ textparagraph.setTextAlign(TextParagraph.TextAlign.CENTER);
+ tableRow.addCell();
+ tableRow.addCell();
+ tableRow.mergeCells(0, 1);
+
+ new DrawTableShape(newTable).setAllBorders(3.,
StrokeStyle.LineDash.LG_DASH_DOT, Color.BLUE);
+
+ assertEquals(3,
newTable.getCTTable().getTblGrid().sizeOfGridColArray());
+ }
+ }
+
}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]