svn commit: r1886644 - /poi/site/src/documentation/content/xdocs/changes.xml

2021-02-17 Thread abearez
Author: abearez
Date: Wed Feb 17 22:06:30 2021
New Revision: 1886644

URL: http://svn.apache.org/viewvc?rev=1886644=rev
Log:
Manipulate individual data point properties

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1886644=1886643=1886644=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed Feb 17 22:06:30 
2021
@@ -89,6 +89,7 @@
 XSSFWorkbook - 
reference cloned sheet in cloned chart data
 XSSFWorkbook - 
clone sheet with chart
 XSLFSlide - 
import slide notes when importing slide content
+Manipulate individual data point properties
 
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1886643 - /poi/site/src/documentation/content/xdocs/changes.xml

2021-02-17 Thread abearez
Author: abearez
Date: Wed Feb 17 22:06:26 2021
New Revision: 1886643

URL: http://svn.apache.org/viewvc?rev=1886643=rev
Log:
[bug-54470] clone sheet with chart

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1886643=1886642=1886643=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed Feb 17 22:06:26 
2021
@@ -86,7 +86,8 @@
 Don't throw 
exception on empty data source
 Set hole size 
for doughnut chart
 XSSFDrawing - 
import chart from other drawing
-XSSFWorkbook - 
clone sheet with chart
+XSSFWorkbook - 
reference cloned sheet in cloned chart data
+XSSFWorkbook - 
clone sheet with chart
 XSLFSlide - 
import slide notes when importing slide content
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1886642 - in /poi/trunk/src: examples/src/org/apache/poi/examples/xslf/ examples/src/org/apache/poi/examples/xssf/usermodel/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/testcase

2021-02-17 Thread abearez
Author: abearez
Date: Wed Feb 17 22:05:18 2021
New Revision: 1886642

URL: http://svn.apache.org/viewvc?rev=1886642=rev
Log:
Manipulate individual data point properties

Added:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataPoint.java
Modified:
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/PieChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/BarAndLineChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLine3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPie3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurface3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurfaceChartData.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/TestNecessaryOOXMLClasses.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/PieChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xslf/PieChartDemo.java?rev=1886642=1886641=1886642=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/examples/xslf/PieChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/examples/xslf/PieChartDemo.java 
Wed Feb 17 22:05:18 2021
@@ -110,6 +110,7 @@ public final class PieChartDemo {
firstSeries.replaceData(categoriesData, valuesData);
firstSeries.setTitle(chartTitle, 
chart.setSheetTitle(chartTitle, 0));
firstSeries.setExplosion(25L);
+   firstSeries.getDataPoint(1).setExplosion(35L);
chart.plot(pie);
 
 // save the result

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/BarAndLineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/BarAndLineChart.java?rev=1886642=1886641=1886642=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/BarAndLineChart.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/BarAndLineChart.java
 Wed Feb 17 22:05:18 2021
@@ -166,10 +166,15 @@ public final class BarAndLineChart {
 // some colors
 XDDFFillProperties solidChartreuse = new 
XDDFSolidFillProperties(XDDFColor.from(PresetColor.CHARTREUSE));
 XDDFFillProperties solidTurquoise = new 
XDDFSolidFillProperties(XDDFColor.from(PresetColor.TURQUOISE));
-XDDFLineProperties solidLines = new 
XDDFLineProperties(solidTurquoise);
+XDDFLineProperties linesChartreuse = new 
XDDFLineProperties(solidChartreuse);
+XDDFLineProperties linesTurquoise = new 
XDDFLineProperties(solidTurquoise);
 series1.setFillProperties(solidChartreuse);
-series1.setLineProperties(solidLines); // bar border color 
different from fill
-series2.setLineProperties(solidLines);
+series1.setLineProperties(linesTurquoise); // bar border color 
different from fill
+series1.getDataPoint(2).setFillProperties(solidTurquoise); // this 
specific bar has inverted colors
+series1.getDataPoint(2).setLineProperties(linesChartreuse);
+series2.setLineProperties(linesTurquoise);
+series2.getDataPoint(2).setMarkerStyle(MarkerStyle.STAR);
+series2.getDataPoint(2).setLineProperties(linesChartreuse);
 
 // legend
 XDDFChartLegend legend = chart.getOrAddLegend();

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java?rev=1886642=1886641=1886642=diff
==
--- 
poi/trunk/src/ooxml/java/org

svn commit: r1886606 - /poi/site/src/documentation/content/xdocs/changes.xml

2021-02-16 Thread abearez
Author: abearez
Date: Tue Feb 16 23:40:09 2021
New Revision: 1886606

URL: http://svn.apache.org/viewvc?rev=1886606=rev
Log:
[bug-63902] reference cloned sheet in cloned chart data series

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1886606=1886605=1886606=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Tue Feb 16 23:40:09 
2021
@@ -86,6 +86,7 @@
 Don't throw 
exception on empty data source
 Set hole size 
for doughnut chart
 XSSFDrawing - 
import chart from other drawing
+XSSFWorkbook - 
clone sheet with chart
 XSLFSlide - 
import slide notes when importing slide content
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1886605 - in /poi/trunk/src/ooxml: java/org/apache/poi/xddf/usermodel/chart/ java/org/apache/poi/xslf/usermodel/ java/org/apache/poi/xssf/usermodel/ testcases/org/apache/poi/xssf/ testcas

2021-02-16 Thread abearez
Author: abearez
Date: Tue Feb 16 23:39:19 2021
New Revision: 1886605

URL: http://svn.apache.org/viewvc?rev=1886605=rev
Log:
[bug-63902] reference cloned sheet in cloned chart data series

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/TestXSSFCloneSheet.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDrawing.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java?rev=1886605=1886604=1886605=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
 Tue Feb 16 23:39:19 2021
@@ -42,9 +42,4 @@ public interface XDDFCategoryDataSource
 default boolean isReference() {
 return true;
 }
-
-@Override
-default String getDataRangeReference() {
-return getFormula();
-}
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1886605=1886604=1886605=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Tue Feb 16 23:39:19 2021
@@ -124,10 +124,6 @@ public abstract class XDDFChart extends
  */
 protected final CTChartSpace chartSpace;
 
-/**
- * Chart element in the chart space
- */
-protected final CTChart chart;
 
 /**
  * Construct a chart.
@@ -136,8 +132,7 @@ public abstract class XDDFChart extends
 super();
 
 chartSpace = CTChartSpace.Factory.newInstance();
-chart = chartSpace.addNewChart();
-chart.addNewPlotArea();
+chartSpace.addNewChart().addNewPlotArea();
 }
 
 /**
@@ -153,7 +148,6 @@ public abstract class XDDFChart extends
 super(part);
 
 chartSpace = ChartSpaceDocument.Factory.parse(part.getInputStream(), 
DEFAULT_XML_OPTIONS).getChartSpace();
-chart = chartSpace.getChart();
 }
 
 /**
@@ -174,8 +168,7 @@ public abstract class XDDFChart extends
  */
 @Internal
 public CTChart getCTChart() {
-return chart;
-
+return chartSpace.getChart();
 }
 
 /**
@@ -185,7 +178,7 @@ public abstract class XDDFChart extends
  */
 @Internal
 protected CTPlotArea getCTPlotArea() {
-return chart.getPlotArea();
+return getCTChart().getPlotArea();
 }
 
 /**
@@ -199,8 +192,8 @@ public abstract class XDDFChart extends
 workbook.removeSheetAt(0);
 workbook.createSheet();
 }
-chart.set(CTChart.Factory.newInstance());
-chart.addNewPlotArea();
+getCTChart().set(CTChart.Factory.newInstance());
+getCTChart().addNewPlotArea();
 }
 
 /**
@@ -208,8 +201,8 @@ public abstract class XDDFChart extends
  * otherwise
  */
 public boolean isPlotOnlyVisibleCells() {
-if (chart.isSetPlotVisOnly()) {
-return chart.getPlotVisOnly().getVal();
+if (getCTChart().isSetPlotVisOnly()) {
+return getCTChart().getPlotVisOnly().getVal();
 } else {
 return false;
 }
@@ -221,40 +214,40 @@ public abstract class XDDFChart extends
  *the chart
  */
 public void setPlotOnlyVisibleCells(boolean only) {
-if (!chart.isSetPlotVisOnly()) {
-chart.setPlotVisOnly(CTBoolean.Factory.newInstance());
+if (!getCTChart().isSetPlotVisOnly()) {
+getCTChart().setPlotVisOnly(CTBoolean.Factory.newInstance());
 }
-chart.getPlotVisOnly().setVal(only);
+getCTChart().getPlotVisOnly().setVal(only);
 }
 
 public void setFloor(int thickness) {
-if (!chart.isSetFloor()) {
-chart.setFloor

svn commit: r1886338 - in /poi/trunk/src/ooxml: java/org/apache/poi/xslf/usermodel/XSLFShape.java java/org/apache/poi/xslf/usermodel/XSLFSlide.java testcases/org/apache/poi/xslf/usermodel/TestXSLFNote

2021-02-08 Thread abearez
Author: abearez
Date: Mon Feb  8 20:34:14 2021
New Revision: 1886338

URL: http://svn.apache.org/viewvc?rev=1886338=rev
Log:
Import slide notes when importing slide content

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSlide.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFNotes.java

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFShape.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFShape.java?rev=1886338=1886337=1886338=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFShape.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFShape.java Mon 
Feb  8 20:34:14 2021
@@ -143,7 +143,10 @@ public abstract class XSLFShape implemen
 
 if (this instanceof PlaceableShape) {
 PlaceableShape ps = (PlaceableShape)this;
-ps.setAnchor(sh.getAnchor());
+Rectangle2D anchor = sh.getAnchor();
+if (anchor != null) {
+ps.setAnchor(anchor);
+}
 }
 
 
@@ -485,4 +488,4 @@ public abstract class XSLFShape implemen
 protected XmlObject getShapeProperties() {
 return getChild(CTShapeProperties.class, PML_NS, "spPr");
 }
-}
\ No newline at end of file
+}

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSlide.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSlide.java?rev=1886338=1886337=1886338=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSlide.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSlide.java Mon 
Feb  8 20:34:14 2021
@@ -295,6 +295,11 @@ implements Slidehttp://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFNotes.java?rev=1886338=1886337=1886338=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFNotes.java 
(original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFNotes.java 
Mon Feb  8 20:34:14 2021
@@ -103,4 +103,25 @@ class TestXSLFNotes {
 
 ppt.close();
 }
+
+@Test
+void importNotes() throws IOException {
+
+XMLSlideShow ppt = 
XSLFTestDataSamples.openSampleDocument("sample.pptx");
+XMLSlideShow newShow = new XMLSlideShow();
+
+for (XSLFSlide slide : ppt.getSlides()) {
+XSLFNotes slideNotes = slide.getNotes();
+assertNotNull(slideNotes);
+XSLFNotes notesSlide = ppt.getNotesSlide(slide);
+assertNotNull(notesSlide);
+assertEquals(notesSlide, slideNotes);
+
+XSLFSlide newSlide = newShow.createSlide().importContent(slide);
+XSLFNotes newNotes = newSlide.getNotes();
+assertNotNull(newNotes);
+}
+
+ppt.close();
+}
 }



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1886337 - /poi/site/src/documentation/content/xdocs/changes.xml

2021-02-08 Thread abearez
Author: abearez
Date: Mon Feb  8 20:33:38 2021
New Revision: 1886337

URL: http://svn.apache.org/viewvc?rev=1886337=rev
Log:
Fix slide notes content import part from bug 57835

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1886337=1886336=1886337=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Mon Feb  8 20:33:38 
2021
@@ -86,6 +86,7 @@
 Don't throw 
exception on empty data source
 Set hole size 
for doughnut chart
 XSSFDrawing - 
import chart from other drawing
+XSLFSlide - 
import slide notes when importing slide content
 
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1885886 - in /poi/trunk/src: examples/src/org/apache/poi/examples/xssf/usermodel/ examples/src/org/apache/poi/examples/xwpf/usermodel/ ooxml/testcases/org/apache/poi/xddf/usermodel/chart/

2021-01-24 Thread abearez
Author: abearez
Date: Sun Jan 24 20:01:36 2021
New Revision: 1885886

URL: http://svn.apache.org/viewvc?rev=1885886=rev
Log:
Replace deprecated methods used  in tests

Modified:

poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/ExcelChartWithTargetLine.java

poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/BarChartExample.java

poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/ChartFromScratch.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFLineChartData.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFScatterChartData.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFChart.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/ExcelChartWithTargetLine.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/ExcelChartWithTargetLine.java?rev=1885886=1885885=1885886=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/ExcelChartWithTargetLine.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/examples/xssf/usermodel/ExcelChartWithTargetLine.java
 Sun Jan 24 20:01:36 2021
@@ -137,7 +137,7 @@ public final class ExcelChartWithTargetL
 }
 
 XDDFScatterChartData scatter = (XDDFScatterChartData) 
chart.createData(ChartTypes.SCATTER, scatterX, scatterY);
-scatter.setVaryColors(true);
+scatter.setVaryColors(false);
 
 //  This only works for Excel since OpenOffice or LibreOffice Calc 
does not support literal numeric data series.
 XDDFNumericalDataSource targetDS = 
XDDFDataSourcesFactory.fromArray(new Double[] { target, target });

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/BarChartExample.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/BarChartExample.java?rev=1885886=1885885=1885886=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/BarChartExample.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/BarChartExample.java
 Sun Jan 24 20:01:36 2021
@@ -63,7 +63,7 @@ public final class BarChartExample {
 }
 
 try (FileInputStream argIS = new FileInputStream(args[0]);
-BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[1]), StandardCharsets.ISO_8859_1)) {
+BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[1]), StandardCharsets.UTF_8)) {
 
 String chartTitle = modelReader.readLine();  // first line is 
chart title
 String[] series = modelReader.readLine().split(",");

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/ChartFromScratch.java?rev=1885886=1885885=1885886=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/ChartFromScratch.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/examples/xwpf/usermodel/ChartFromScratch.java
 Sun Jan 24 20:01:36 2021
@@ -67,7 +67,7 @@ public final class ChartFromScratch {
 return;
 }
 
-try (BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[0]), StandardCharsets.ISO_8859_1)) {
+try (BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[0]), StandardCharsets.UTF_8)) {
 
 String chartTitle = modelReader.readLine();  // first line is 
chart title
 String[] series = modelReader.readLine().split(",");

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java?rev=1885886=1885885=1885886=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
 Sun Jan 24 20:01:36 2021
@@ -117,7 +117,7 @@ class TestXDDFChartRemoveSeries {
 }
 
 /**
- * Remove the first series by calling chartData.getSeries().remove(0).
+ * Attempt to remove the first series by calling 
chartData.getSeries().remove(0).
  * 
  * This used to corrupt the workbook but the returned L

svn commit: r1885771 - in /poi/trunk/src: examples/src/org/apache/poi/examples/xslf/ ooxml/java/org/apache/poi/ooxml/util/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/testcases/org/apache/po

2021-01-21 Thread abearez
Author: abearez
Date: Thu Jan 21 21:13:27 2021
New Revision: 1885771

URL: http://svn.apache.org/viewvc?rev=1885771=rev
Log:
Bug 64950: handle doughnut hole size

Added:

poi/trunk/src/examples/src/org/apache/poi/examples/xslf/DoughnutChartFromScratch.java
  - copied, changed from r1885770, 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java
Modified:
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/BarChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/PieChartDemo.java
poi/trunk/src/ooxml/java/org/apache/poi/ooxml/util/POIXMLUnits.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/TestNecessaryOOXMLClasses.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xslf/BarChartDemo.java?rev=1885771=1885770=1885771=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/examples/xslf/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/examples/xslf/BarChartDemo.java 
Thu Jan 21 21:13:27 2021
@@ -64,7 +64,7 @@ public final class BarChartDemo {
 }
 
 try (FileInputStream argIS = new FileInputStream(args[0]);
-BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[1]), StandardCharsets.ISO_8859_1)) {
+BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[1]), StandardCharsets.UTF_8)) {
 
 String chartTitle = modelReader.readLine();  // first line is 
chart title
 String[] series = modelReader.readLine().split(",");

Modified: 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java?rev=1885771=1885770=1885771=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java 
Thu Jan 21 21:13:27 2021
@@ -72,7 +72,7 @@ public final class ChartFromScratch {
 return;
 }
 
-try (BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[0]), StandardCharsets.ISO_8859_1)) {
+try (BufferedReader modelReader = 
Files.newBufferedReader(Paths.get(args[0]), StandardCharsets.UTF_8)) {
 
 String chartTitle = modelReader.readLine();  // first line is 
chart title
 String[] series = modelReader.readLine().split(",");
@@ -163,10 +163,10 @@ public final class ChartFromScratch {
 bar.setBarGrouping(BarGrouping.CLUSTERED);
 
 XDDFBarChartData.Series series1 = (XDDFBarChartData.Series) 
bar.addSeries(categoriesData, valuesData);
-series1.setTitle(series[0], chart.setSheetTitle(series[0], 
COLUMN_COUNTRIES));
+series1.setTitle(series[0], 
chart.setSheetTitle(series[COLUMN_COUNTRIES - 1], COLUMN_COUNTRIES));
 
 XDDFBarChartData.Series series2 = (XDDFBarChartData.Series) 
bar.addSeries(categoriesData, valuesData2);
-series2.setTitle(series[1], chart.setSheetTitle(series[1], 
COLUMN_SPEAKERS));
+series2.setTitle(series[1], chart.setSheetTitle(series[COLUMN_SPEAKERS 
- 1], COLUMN_SPEAKERS));
 
 bar.setVaryColors(true);
 bar.setBarDirection(BarDirection.COL);

Copied: 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/DoughnutChartFromScratch.java
 (from r1885770, 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java)
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/examples/xslf/DoughnutChartFromScratch.java?p2=poi/trunk/src/examples/src/org/apache/poi/examples/xslf/DoughnutChartFromScratch.java=poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java=1885770=1885771=1885771=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/ChartFromScratch.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/examples/xslf/DoughnutChartFromScratch.java
 Thu Jan 21 21:13:27 2021
@@ -19,32 +19,19 @@
 
 package org.apache.poi.examples.xslf;
 
-import java.awt.geom.Rectangle2D;
-import java.io.BufferedReader;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.OutputStream;
-import java.nio.charset.StandardCharsets;
-import java.nio.file.Files;
-import java.nio.file.Paths;
-import java.util.ArrayList;
-i

svn commit: r1885700 - in /poi/trunk: src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChart.java test-data/spread

2021-01-19 Thread abearez
Author: abearez
Date: Tue Jan 19 21:33:38 2021
New Revision: 1885700

URL: http://svn.apache.org/viewvc?rev=1885700=rev
Log:
Bug 65016 - Creating a chart throws exception

Added:
poi/trunk/test-data/spreadsheet/65016.xlsx
Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChart.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java?rev=1885700=1885699=1885700=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
 Tue Jan 19 21:33:38 2021
@@ -80,7 +80,9 @@ public interface XDDFDataSource {
 }
 }
 if (effectiveNumOfPoints == 0) {
-cache.unsetPtCount();
+if (cache.isSetPtCount()) {
+cache.unsetPtCount();
+}
 } else {
 if (cache.isSetPtCount()) {
 cache.getPtCount().setVal(numOfPoints);

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChart.java?rev=1885700=1885699=1885700=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChart.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChart.java
 Tue Jan 19 21:33:38 2021
@@ -23,9 +23,17 @@ import static org.junit.jupiter.api.Asse
 
 import org.apache.poi.ooxml.POIXMLFactory;
 import org.apache.poi.ooxml.POIXMLRelation;
+import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.xssf.XSSFTestDataSamples;
+import org.apache.poi.xssf.usermodel.XSSFSheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.junit.jupiter.api.Test;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpace;
 
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+
 class TestXDDFChart {
 @Test
 void testConstruct() {
@@ -48,6 +56,39 @@ class TestXDDFChart {
 assertEquals("rid2", ctChartSpace.getExternalData().getId());
 }
 
+@Test
+public void test65016() throws IOException {
+try (XSSFWorkbook wb = 
XSSFTestDataSamples.openSampleWorkbook("65016.xlsx")) {
+XSSFSheet splitSheet = wb.getSheet("Splits");
+
+XDDFChart chart = newXDDFChart();
+XDDFChartLegend legend = chart.getOrAddLegend();
+legend.setPosition(LegendPosition.BOTTOM);
+
+// Use a category axis for the bottom axis.
+XDDFCategoryAxis bottomAxis = 
chart.createCategoryAxis(AxisPosition.BOTTOM);
+XDDFValueAxis leftAxis = chart.createValueAxis(AxisPosition.LEFT);
+leftAxis.setCrosses(AxisCrosses.AUTO_ZERO);
+
+XDDFLineChartData data = (XDDFLineChartData) 
chart.createData(ChartTypes.LINE, bottomAxis, leftAxis);
+
+// starting row 1 to include description
+XDDFNumericalDataSource xs = 
XDDFDataSourcesFactory.fromNumericCellRange(splitSheet,
+new CellRangeAddress(2, 100, 0, 0));
+XDDFNumericalDataSource ys1 = 
XDDFDataSourcesFactory.fromNumericCellRange(splitSheet,
+new CellRangeAddress(2, 100, 1, 1));
+
+XDDFLineChartData.Series series = (XDDFLineChartData.Series) 
data.addSeries(xs, ys1);
+assertEquals(series.categoryData.getPointCount(), 
xs.getPointCount());
+
+chart.plot(data);
+
+try (OutputStream out = new 
FileOutputStream("/tmp/chart20201220.xlsx")) {
+wb.write(out);
+}
+}
+}
+
 private XDDFChart newXDDFChart() {
 XDDFChart xddfChart = new XDDFChart() {
 @Override
@@ -67,4 +108,4 @@ class TestXDDFChart {
 };
 return xddfChart;
 }
-}
\ No newline at end of file
+}

Added: poi/trunk/test-data/spreadsheet/65016.xlsx
URL: 
http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/65016.xlsx?rev=1885700=auto
==
Binary files poi/trunk/test-data/spreadsheet/65016.xlsx (added) and 
poi/trunk/test-data/spreadsheet/65016.xlsx Tue Jan 19 21:33:38 2021 differ



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1878148 - /poi/site/src/documentation/content/xdocs/changes.xml

2020-05-26 Thread abearez
Author: abearez
Date: Wed May 27 01:35:50 2020
New Revision: 1878148

URL: http://svn.apache.org/viewvc?rev=1878148=rev
Log:
Bug 63290: retrieve default run properties from paragraph

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1878148=1878147=1878148=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed May 27 01:35:50 
2020
@@ -88,7 +88,7 @@
 Picture.resize(double scale) scales width wrong for small 
pictures and when dx1 is set
 upgrading 
xmlsec causes junit tests to fail
 XSLF - Wrong 
scheme colors used when rendering
-setText in 
XWPFTableCell updates the xml and also updates the runs and iruns
+Method setText 
in XWPFTableCell updates the xml and also updates the runs and iruns
 XWPFTableCell does not process bodyElements when handle 
paragraph
 XWPFNumbering.addAbstractNum will definitely throw an 
exception
 Allow 
try-with-resources with OPCPackage.revert()
@@ -98,9 +98,10 @@
 CountryRecord 
not found
 Big POIFS 
stream result in OOM
 Provide 
JigSaw modules
-synchronize code that initialises WorkbookFactory
+Synchronize code that initialises WorkbookFactory
 Support 
DateValue function
-add 
an option for RangeCopier.copyRange() also clone styles
+Add 
an option for RangeCopier.copyRange() also clone styles
+Retrieve 
default run properties from paragraph
 
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1878146 - in /poi/trunk/src/ooxml: java/org/apache/poi/xslf/usermodel/XSLFTextRun.java testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java

2020-05-26 Thread abearez
Author: abearez
Date: Wed May 27 01:18:10 2020
New Revision: 1878146

URL: http://svn.apache.org/viewvc?rev=1878146=rev
Log:
Get rid of redundant getParentParagraph

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java?rev=1878146=1878145=1878146=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java Wed 
May 27 01:18:10 2020
@@ -71,10 +71,6 @@ public class XSLFTextRun implements Text
 }
 }
 
-XSLFTextParagraph getParentParagraph(){
-return _p;
-}
-
 @Override
 public String getRawText(){
 if (_r instanceof CTTextField) {
@@ -123,14 +119,14 @@ public class XSLFTextRun implements Text
 CTTextCharacterProperties rPr = getRPr(true);
 CTSolidColorFillProperties fill = rPr.isSetSolidFill() ? 
rPr.getSolidFill() : rPr.addNewSolidFill();
 
-XSLFSheet sheet = getParentParagraph().getParentShape().getSheet();
+XSLFSheet sheet = getParagraph().getParentShape().getSheet();
 XSLFColor col = new XSLFColor(fill, sheet.getTheme(), 
fill.getSchemeClr(), sheet);
 col.setColor(c);
 }
 
 @Override
 public PaintStyle getFontColor(){
-final boolean hasPlaceholder = 
getParentParagraph().getParentShape().getPlaceholder() != null;
+final boolean hasPlaceholder = 
getParagraph().getParentShape().getPlaceholder() != null;
 CharacterPropertyFetcher fetcher = new 
CharacterPropertyFetcher(_p.getIndentLevel()){
 @Override
 public boolean fetch(CTTextCharacterProperties props){
@@ -182,7 +178,7 @@ public class XSLFTextRun implements Text
 @Override
 public Double getFontSize(){
 double scale = 1;
-final XSLFTextShape ps = getParentParagraph().getParentShape();
+final XSLFTextShape ps = getParagraph().getParentShape();
 if (ps != null) {
 final CTTextBodyProperties tbp = ps.getTextBodyPr();
 if (tbp != null) {

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java?rev=1878146=1878145=1878146=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java
 Wed May 27 01:18:10 2020
@@ -231,49 +231,49 @@ public class TestXSLFTextShape {
 assertEquals(VerticalAlignment.TOP, shape2.getVerticalAlignment());
 
 XSLFTextRun pr1 = 
shape2.getTextParagraphs().get(0).getTextRuns().get(0);
-assertEquals(0, pr1.getParentParagraph().getIndentLevel());
+assertEquals(0, pr1.getParagraph().getIndentLevel());
 assertEquals("Content", pr1.getRawText());
 assertEquals("Calibri", pr1.getFontFamily());
 assertEquals(32.0, pr1.getFontSize(), 0);
-assertEquals(27.0, pr1.getParentParagraph().getLeftMargin(), 0);
-assertEquals("\u2022", pr1.getParentParagraph().getBulletCharacter());
-assertEquals("Arial", pr1.getParentParagraph().getBulletFont());
+assertEquals(27.0, pr1.getParagraph().getLeftMargin(), 0);
+assertEquals("\u2022", pr1.getParagraph().getBulletCharacter());
+assertEquals("Arial", pr1.getParagraph().getBulletFont());
 
 XSLFTextRun pr2 = 
shape2.getTextParagraphs().get(1).getTextRuns().get(0);
-assertEquals(1, pr2.getParentParagraph().getIndentLevel());
+assertEquals(1, pr2.getParagraph().getIndentLevel());
 assertEquals("Level 2", pr2.getRawText());
 assertEquals("Calibri", pr2.getFontFamily());
 assertEquals(28.0, pr2.getFontSize(), 0);
-assertEquals(58.5, pr2.getParentParagraph().getLeftMargin(), 0);
-assertEquals("\u2013", pr2.getParentParagraph().getBulletCharacter());
-assertEquals("Arial", pr2.getParentParagraph().getBulletFont());
+assertEquals(58.5, pr2.getParagraph().getLeftMargin(), 0);
+assertEquals("\u2013", pr2.getParagraph().getBulletCharacter());
+assertEquals("Arial", pr2.getParagraph().getBulletFont());
 
 XSLFTextRun pr3 = 
shape2.getTextParagraphs().get(2).getTextRuns().get(0);
-assertEquals(2, pr3.getParentParagraph().getIndent

svn commit: r1878147 - in /poi/trunk: src/ooxml/java/org/apache/poi/xddf/usermodel/text/ src/ooxml/java/org/apache/poi/xslf/usermodel/ src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/ src/ooxml

2020-05-26 Thread abearez
Author: abearez
Date: Wed May 27 01:18:15 2020
New Revision: 1878147

URL: http://svn.apache.org/viewvc?rev=1878147=rev
Log:
Bug 63290: retrieve default run properties from paragraph

Added:
poi/trunk/test-data/slideshow/bug63290.pptx
Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java?rev=1878147=1878146=1878147=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java 
Wed May 27 01:18:15 2020
@@ -612,7 +612,8 @@ public class XDDFTextRun {
 } else if (isRegularRun() && _rtr.isSetRPr()) {
 return _rtr.getRPr();
 }
-return null;
+XDDFRunProperties defaultProperties = 
_parent.getDefaultRunProperties();
+return (defaultProperties == null) ? null : 
defaultProperties.getXmlObject();
 }
 
 private XDDFRunProperties getOrCreateProperties() {

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java?rev=1878147=1878146=1878147=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java Wed 
May 27 01:18:15 2020
@@ -492,6 +492,9 @@ public class XSLFTextRun implements Text
 return tr.addNewRPr();
 }
 }
+if (_p.getXmlObject().isSetPPr() && 
_p.getXmlObject().getPPr().isSetDefRPr()) {
+return _p.getXmlObject().getPPr().getDefRPr();
+}
 return null;
 }
 

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java?rev=1878147=1878146=1878147=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java
 Wed May 27 01:18:15 2020
@@ -18,16 +18,22 @@ package org.apache.poi.xddf.usermodel.te
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.util.List;
 
+import org.apache.poi.POIDataSamples;
 import org.apache.poi.util.LocaleUtil;
 import org.apache.poi.xslf.usermodel.XMLSlideShow;
+import org.apache.poi.xslf.usermodel.XSLFShape;
 import org.apache.poi.xslf.usermodel.XSLFSlide;
+import org.apache.poi.xslf.usermodel.XSLFTextParagraph;
+import org.apache.poi.xslf.usermodel.XSLFTextRun;
 import org.apache.poi.xslf.usermodel.XSLFTextShape;
 import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
 import org.apache.poi.xssf.usermodel.XSSFDrawing;
@@ -133,4 +139,29 @@ public class TestXDDFTextRun {
 assertNotNull(run.getText());
 }
 }
+
+@Test
+public void testDefaultRunProperties() throws IOException {
+// bug #63290
+POIDataSamples pds = POIDataSamples.getSlideShowInstance();
+try (InputStream is = pds.openResourceAsStream("bug63290.pptx");
+ XMLSlideShow ppt = new XMLSlideShow(is)) {
+XSLFSlide slide = ppt.getSlides().get(0);
+for (XSLFShape shape : slide.getShapes()) {
+if (shape instanceof  XSLFTextShape) {
+XSLFTextShape text = (XSLFTextShape) shape;
+XDDFTextParagraph paragraph = 
text.getTextBody().getParagraph(0);
+XDDFTextRun defaultRun = paragraph.getTextRuns().get(0);
+assertEquals("DefaultRunProperties", 
defaultRun.getText().trim());
+XDDFTextRun explicitRun = paragraph.getTextRuns().get(1);
+assertEquals("ExplicitRunProperties", 
explicitRun.getText().trim());
+assertEquals(defaultRun.getDirty(), 
explicitRun.

svn commit: r1876430 - in /poi/site: .gitignore src/documentation/content/xdocs/changes.xml

2020-04-12 Thread abearez
Author: abearez
Date: Sun Apr 12 18:23:16 2020
New Revision: 1876430

URL: http://svn.apache.org/viewvc?rev=1876430=rev
Log:
Improvements for paragraphs in XSLF and XWPF

Added:
poi/site/.gitignore
Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Added: poi/site/.gitignore
URL: http://svn.apache.org/viewvc/poi/site/.gitignore?rev=1876430=auto
==
--- poi/site/.gitignore (added)
+++ poi/site/.gitignore Sun Apr 12 18:23:16 2020
@@ -0,0 +1,3 @@
+*.iml
+.idea/
+.project/
\ No newline at end of file

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1876430=1876429=1876430=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Sun Apr 12 18:23:16 
2020
@@ -74,6 +74,8 @@
 
 Upgrade to XMLSec 2.1.5
 updated dependencies to Bouncycastle 1.65, 
Commons-Codec 1.14, Commons-Compress 1.20
+XWPF - improvements in table and 
paragraph
+XSLF - improvements for paragraph
 
 
 HSMF 
enhancements - NamedIdChunk, MultiValueChunks, ByteChunkDeferred



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1876409 - /poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java

2020-04-11 Thread abearez
Author: abearez
Date: Sun Apr 12 00:26:12 2020
New Revision: 1876409

URL: http://svn.apache.org/viewvc?rev=1876409=rev
Log:
Add table row at correct index

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java

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=1876409=1876408=1876409=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 Sun 
Apr 12 00:26:12 2020
@@ -153,14 +153,15 @@ public class XSLFTable extends XSLFGraph
 
 public XSLFTableRow addRow(){
 CTTableRow tr = _table.addNewTr();
-return initializeRow(tr);
+XSLFTableRow row = initializeRow(tr);
+_rows.add(row);
+return row;
 }
 
 private XSLFTableRow initializeRow(CTTableRow tr) {
 XSLFTableRow row = new XSLFTableRow(tr, this);
 // default height is 20 points
 row.setHeight(20.0);
-_rows.add(row);
 for (int i = 0;  i < getNumberOfColumns(); i++) {
 row.addCell();
 }
@@ -177,7 +178,9 @@ public class XSLFTable extends XSLFGraph
 throw new IndexOutOfBoundsException("Cannot insert row at " + 
rowIdx + "; table has only " + getNumberOfRows() + "rows.");
 }
 CTTableRow tr = _table.insertNewTr(rowIdx);
-return initializeRow(tr);
+XSLFTableRow row = initializeRow(tr);
+_rows.add(rowIdx, row);
+return row;
 }
 
 /**



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1876406 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java

2020-04-11 Thread abearez
Author: abearez
Date: Sat Apr 11 21:43:18 2020
New Revision: 1876406

URL: http://svn.apache.org/viewvc?rev=1876406=rev
Log:
Return and set paragraph indentation level

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java?rev=1876406=1876405=1876406=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
 Sat Apr 11 21:43:18 2020
@@ -172,6 +172,32 @@ public class XDDFTextParagraph {
 }
 
 /**
+ * Returns the paragraph indentation level.
+ *
+ * @return indentation level of the paragraph.
+ */
+public int getIndentationLevel() {
+if (_p.isSetPPr()) {
+return getProperties().getLevel();
+} else {
+return 0;
+}
+}
+
+/**
+ * Specifies the paragraph indentation level, between 1 and 9.
+ *
+ * @param level
+ *new indentation level for the paragraph.
+ *Use null to unset the indentation level.
+ */
+public void setIndentationLevel(Integer level) {
+if (_p.isSetPPr()) {
+getProperties().setLevel(level);
+}
+}
+
+/**
  * Returns the alignment that is applied to the paragraph.
  *
  * If this attribute is omitted, then a value of left is implied.



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875977 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java

2020-03-31 Thread abearez
Author: abearez
Date: Wed Apr  1 01:40:49 2020
New Revision: 1875977

URL: http://svn.apache.org/viewvc?rev=1875977=rev
Log:
Keep last run properties when resetting paragraph text

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java?rev=1875977=1875976=1875977=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
 Wed Apr  1 01:40:49 2020
@@ -60,7 +60,7 @@ public class XDDFTextParagraph {
 final int count = paragraph.sizeOfBrArray() + 
paragraph.sizeOfFldArray() + paragraph.sizeOfRArray();
 this._runs = new ArrayList<>(count);
 
-for (XmlObject xo : _p.selectChildren(QNameSet.ALL)) {
+for (XmlObject xo : paragraph.selectChildren(QNameSet.ALL)) {
 if (xo instanceof CTTextLineBreak) {
 _runs.add(new XDDFTextRun((CTTextLineBreak) xo, this));
 } else if (xo instanceof CTTextField) {
@@ -75,6 +75,11 @@ public class XDDFTextParagraph {
 }
 
 public void setText(String text) {
+// keep the properties of current last run
+XmlObject existing = null;
+if (_runs.size() > 0) {
+existing = _runs.get(_runs.size() - 1).getProperties().copy();
+}
 // remove all runs
 for (int i = _p.sizeOfBrArray() - 1; i >= 0; i--) {
 _p.removeBr(i);
@@ -86,7 +91,10 @@ public class XDDFTextParagraph {
 _p.removeR(i);
 }
 _runs.clear();
-appendRegularRun(text);
+XDDFTextRun run = appendRegularRun(text);
+if (existing != null) {
+run.getProperties().set(existing);
+}
 }
 
 public String getText() {
@@ -119,7 +127,7 @@ public class XDDFTextParagraph {
 // by default, line break has the font properties of the last text run
 for (XDDFTextRun tr : new IteratorIterable<>(new 
ReverseListIterator<>(_runs))) {
 CTTextCharacterProperties prevProps = tr.getProperties();
-// let's find one that is not undefined
+// let's find one which is not undefined
 if (prevProps != null) {
 br.setRPr((CTTextCharacterProperties) prevProps.copy());
 break;



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875979 - in /poi/trunk/src/ooxml/java/org/apache/poi: xddf/usermodel/chart/ xddf/usermodel/text/ xslf/usermodel/ xssf/usermodel/

2020-03-31 Thread abearez
Author: abearez
Date: Wed Apr  1 01:40:57 2020
New Revision: 1875979

URL: http://svn.apache.org/viewvc?rev=1875979=rev
Log:
Sonar Fixes - code smells

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartLegend.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLegendEntry.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/TextContainer.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSimpleShape.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1875979=1875978=1875979=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Wed Apr  1 01:40:57 2020
@@ -31,6 +31,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.function.Function;
+import java.util.function.Predicate;
 
 import javax.xml.namespace.QName;
 
@@ -115,8 +116,6 @@ public abstract class XDDFChart extends
 
 private int chartIndex = 0;
 
-private POIXMLDocumentPart documentPart = null;
-
 protected List axes = new ArrayList<>();
 
 /**
@@ -362,14 +361,14 @@ public abstract class XDDFChart extends
 }
 
 @Override
-public  Optional 
findDefinedParagraphProperty(Function isSet,
+public  Optional 
findDefinedParagraphProperty(Predicate isSet,
 Function getter) {
 // TODO Auto-generated method stub
 return Optional.empty();
 }
 
 @Override
-public  Optional 
findDefinedRunProperty(Function isSet,
+public  Optional 
findDefinedRunProperty(Predicate isSet,
 Function getter) {
 // TODO Auto-generated method stub
 return Optional.empty();
@@ -578,23 +577,23 @@ public abstract class XDDFChart extends
 private Map getCategoryAxes() {
 CTPlotArea plotArea = getCTPlotArea();
 int sizeOfArray = plotArea.sizeOfCatAxArray();
-Map axes = new HashMap<>(sizeOfArray);
+Map axesMap = new HashMap<>(sizeOfArray);
 for (int i = 0; i < sizeOfArray; i++) {
 CTCatAx category = plotArea.getCatAxArray(i);
-axes.put(category.getAxId().getVal(), new 
XDDFCategoryAxis(category));
+axesMap.put(category.getAxId().getVal(), new 
XDDFCategoryAxis(category));
 }
-return axes;
+return axesMap;
 }
 
 private Map getValueAxes() {
 CTPlotArea plotArea = getCTPlotArea();
 int sizeOfArray = plotArea.sizeOfValAxArray();
-Map axes = new HashMap<>(sizeOfArray);
+Map axesMap = new HashMap<>(sizeOfArray);
 for (int i = 0; i < sizeOfArray; i++) {
 CTValAx values = plotArea.getValAxArray(i);
-axes.put(values.getAxId().getVal(), new XDDFValueAxis(values));
+axesMap.put(values.getAxId().getVal(), new XDDFValueAxis(values));
 }
-return axes;
+return axesMap;
 }
 
 public XDDFValueAxis createValueAxis(AxisPosition pos) {
@@ -767,15 +766,14 @@ public abstract class XDDFChart extends
  */
 public PackageRelationship createRelationshipInChart(POIXMLRelation 
chartRelation, POIXMLFactory chartFactory,
 int chartIndex) {
-documentPart = createRelationship(chartRelation, chartFactory, 
chartIndex, true).getDocumentPart();
+POIXMLDocumentPart documentPart =
+createRelationship(chartRelation, chartFactory, chartIndex, 
true).getDocumentPart();
 return addRelation(null, chartRelation, 
documentPart).getRelationship();
 }
 
 /**
  * if embedded part was null then create new part
  *
- * @param chartRelation
- *chart relation object
  * @param chartWorkbookRelation
  *chart workbook relation object
  * @param chartFactory
@@ -784,8 +782,8 @@ public abstract class XDDFChart extends
  * @throws InvalidFormatException
  * @since POI 4.0.0
  */
-private PackagePart createWorksheetPart(POIXMLRelation chartRelation, 
POIXMLRelation chartWorkbookRelation,
-POIXMLFactory chartFactory) throws InvalidFormatException {
+private PackagePar

svn commit: r1875978 - in /poi/trunk/src/ooxml: java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java

2020-03-31 Thread abearez
Author: abearez
Date: Wed Apr  1 01:40:52 2020
New Revision: 1875978

URL: http://svn.apache.org/viewvc?rev=1875978=rev
Log:
Remove chart title

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1875978=1875977=1875978=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Wed Apr  1 01:40:52 2020
@@ -253,6 +253,9 @@ public abstract class XDDFChart extends
 chart.setAutoTitleDeleted(CTBoolean.Factory.newInstance());
 }
 chart.getAutoTitleDeleted().setVal(deleted);
+if (deleted && chart.isSetTitle()) {
+chart.unsetTitle();
+}
 }
 
 /**
@@ -321,7 +324,15 @@ public abstract class XDDFChart extends
 }
 }
 
-   /**
+/**
+ * Remove the chart title.
+ * @since POI 4.1.3
+ */
+public void removeTitle() {
+setAutoTitleDeleted(true);
+}
+
+/**
 * Get or Add chart 3D view into chart
 *
 * @return this method will add 3D view

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java?rev=1875978=1875977=1875978=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java
 Wed Apr  1 01:40:52 2020
@@ -137,6 +137,7 @@ public class TestXSSFChartTitle {
 XSSFWorkbook wb = 
XSSFTestDataSamples.openSampleWorkbook("chartTitle_withTitle.xlsx");
 XSSFChart chart = getChartFromWorkbook(wb, "Sheet1");
 assertNotNull(chart);
+assertNotNull(chart.getTitle());
 XSSFRichTextString originalTitle = chart.getTitleText();
 assertNotNull(originalTitle);
 final String myTitle = "My chart title";
@@ -154,6 +155,7 @@ public class TestXSSFChartTitle {
 XSSFChart chart = getChartFromWorkbook(wb, "Sheet1");
 assertNotNull(chart);
 assertNull(chart.getTitleText());
+assertNull(chart.getTitle());
 final String myTitle = "My chart title";
 chart.setTitleText(myTitle);
 XSSFRichTextString queryTitle = chart.getTitleText();
@@ -176,4 +178,30 @@ public class TestXSSFChartTitle {
 wb.close();
 }
 
+@Test
+public void testRemovingFromExistingChartNoTitle() throws IOException {
+XSSFWorkbook wb = 
XSSFTestDataSamples.openSampleWorkbook("chartTitle_noTitle.xlsx");
+XSSFChart chart = getChartFromWorkbook(wb, "Sheet1");
+assertNotNull(chart);
+assertNull(chart.getTitleText());
+assertNull(chart.getTitle());
+chart.removeTitle();
+assertNull(chart.getTitleText());
+assertNull(chart.getTitle());
+wb.close();
+}
+
+@Test
+public void testRemovingFromExistingChartWithTitle() throws IOException {
+XSSFWorkbook wb = 
XSSFTestDataSamples.openSampleWorkbook("chartTitle_withTitle.xlsx");
+XSSFChart chart = getChartFromWorkbook(wb, "Sheet1");
+assertNotNull(chart);
+assertNotNull(chart.getTitleText());
+assertNotNull(chart.getTitle());
+chart.removeTitle();
+assertNull(chart.getTitleText());
+assertNull(chart.getTitle());
+wb.close();
+}
+
 }



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875902 - in /poi/trunk/src/examples/src/org/apache/poi: xslf/usermodel/ xslf/usermodel/tutorial/ xssf/usermodel/examples/ xwpf/usermodel/examples/

2020-03-30 Thread abearez
Author: abearez
Date: Tue Mar 31 01:16:39 2020
New Revision: 1875902

URL: http://svn.apache.org/viewvc?rev=1875902=rev
Log:
Sonar Fixes - public final class with private constructor for examples

Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/DataExtraction.java

poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/MergePresentations.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial1.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial2.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial3.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial4.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial5.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial6.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial7.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/tutorial/Step1.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/tutorial/Step2.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/DataExtraction.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/DataExtraction.java?rev=1875902=1875901=1875902=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/DataExtraction.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/DataExtraction.java 
Tue Mar 31 01:16:39 2020
@@ -32,6 +32,7 @@ import org.apache.poi.openxml4j.opc.Pack
  * Demonstrates how you can extract data from a .pptx file
  */
 public final class DataExtraction {
+private DataExtraction() {}
 
 public static void main(String[] args) throws IOException, 
OpenXML4JException {
 

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/MergePresentations.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/MergePresentations.java?rev=1875902=1875901=1875902=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/MergePresentations.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/MergePresentations.java
 Tue Mar 31 01:16:39 2020
@@ -26,6 +26,7 @@ import java.io.FileOutputStream;
  * Merge multiple pptx presentations together
  */
 public final class MergePresentations {
+private MergePresentations() {}
 
 public static void main(String[] args) throws Exception {
 try (XMLSlideShow ppt = new XMLSlideShow()) {

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java?rev=1875902=1875901=1875902=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java 
Tue Mar 31 01:16:39 2020
@@ -38,7 +38,9 @@ import org.apache.poi.xddf.usermodel.cha
 /**
  * Build a pie chart from a template pptx
  */
-public class PieChartDemo {
+public final class PieChartDemo {
+private PieChartDemo() {}
+
 private static void usage(){
 System.out.println("Usage: PieChartDemo  
");
 System.out.println("pie-chart-template.pptx template with a 
pie chart");

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial1.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial1.java?rev=1875902=1875901=1875902=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial1.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/Tutorial1.java Tue 
Mar 31 01:16:39 2020
@@ -26,7 +26,8 @@ import java.io.IOException;
  * Demonstrates how to create slides with predefined layout
  * and fill the placeholder shapes
  */
-public class Tutorial1 {
+public final class Tutorial1 {
+private Tutorial1() {}
 
 public static void main(String[] args) throws IOException{
 try (XMLSlideShow ppt = new XMLSlideShow()) {

Modi

svn commit: r1875901 - in /poi/trunk/src/ooxml: java/org/apache/poi/xslf/usermodel/XSLFTable.java java/org/apache/poi/xslf/usermodel/XSLFTableRow.java testcases/org/apache/poi/xslf/usermodel/TestXSLFT

2020-03-30 Thread abearez
Author: abearez
Date: Tue Mar 31 00:47:45 2020
New Revision: 1875901

URL: http://svn.apache.org/viewvc?rev=1875901=rev
Log:
Insert a new row in XSLFTable

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java

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=1875901=1875900=1875901=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 
Mar 31 00:47:45 2020
@@ -153,19 +153,41 @@ public class XSLFTable extends XSLFGraph
 
 public XSLFTableRow addRow(){
 CTTableRow tr = _table.addNewTr();
+return initializeRow(tr);
+}
+
+private XSLFTableRow initializeRow(CTTableRow tr) {
 XSLFTableRow row = new XSLFTableRow(tr, this);
 // default height is 20 points
 row.setHeight(20.0);
 _rows.add(row);
-updateRowColIndexes();
+for (int i = 0;  i < getNumberOfColumns(); i++) {
+row.addCell();
+}
 return row;
 }
 
 /**
+ * Insert a new row at the given index.
+ * @param rowIdx the row index.
+ * @since POI 4.1.3
+ */
+public XSLFTableRow insertRow(int rowIdx) {
+if (getNumberOfRows() < rowIdx) {
+throw new IndexOutOfBoundsException("Cannot insert row at " + 
rowIdx + "; table has only " + getNumberOfRows() + "rows.");
+}
+CTTableRow tr = _table.insertNewTr(rowIdx);
+return initializeRow(tr);
+}
+
+/**
  * Remove the row on the given index
  * @param rowIdx the row index
  */
 public void removeRow(int rowIdx) {
+if (getNumberOfRows() < rowIdx) {
+throw new IndexOutOfBoundsException("Cannot remove row at " + 
rowIdx + "; table has only " + getNumberOfRows() + "rows.");
+}
 _table.removeTr(rowIdx);
 _rows.remove(rowIdx);
 updateRowColIndexes();
@@ -176,14 +198,13 @@ public class XSLFTable extends XSLFGraph
  * @since POI 4.1.2
  */
 public void addColumn() {
-long width = 
_table.getTblGrid().getGridColArray(_table.getTblGrid().sizeOfGridColArray() - 
1).getW();
+long width = _table.getTblGrid().getGridColArray(getNumberOfColumns() 
- 1).getW();
 CTTableCol col = _table.getTblGrid().addNewGridCol();
 col.setW(width);
-for(XSLFTableRow row : _rows) {
+for (XSLFTableRow row : _rows) {
 XSLFTableCell cell = row.addCell();
 new XDDFTextBody(cell, cell.getTextBody(true)).initialize();
 }
-updateRowColIndexes();
 }
 
 /**
@@ -192,17 +213,16 @@ public class XSLFTable extends XSLFGraph
  * @since POI 4.1.2
  */
 public void insertColumn(int colIdx) {
-if (_table.getTblGrid().sizeOfGridColArray() < colIdx) {
-throw new IndexOutOfBoundsException("Cannot insert column at " + 
colIdx + "; table has only " + _table.getTblGrid().sizeOfGridColArray() + 
"columns.");
+if (getNumberOfColumns() < colIdx) {
+throw new IndexOutOfBoundsException("Cannot insert column at " + 
colIdx + "; table has only " + getNumberOfColumns() + "columns.");
 }
 long width = _table.getTblGrid().getGridColArray(colIdx).getW();
 CTTableCol col = _table.getTblGrid().insertNewGridCol(colIdx);
 col.setW(width);
-for(XSLFTableRow row : _rows) {
+for (XSLFTableRow row : _rows) {
 XSLFTableCell cell = row.insertCell(colIdx);
 new XDDFTextBody(cell, cell.getTextBody(true)).initialize();
 }
-updateRowColIndexes();
 }
 
 /**
@@ -211,11 +231,13 @@ public class XSLFTable extends XSLFGraph
  * @since POI 4.1.2
  */
 public void removeColumn(int colIdx) {
+if (getNumberOfColumns() < colIdx) {
+throw new IndexOutOfBoundsException("Cannot remove column at " + 
colIdx + "; table has only " + getNumberOfColumns() + "columns.");
+}
 _table.getTblGrid().removeGridCol(colIdx);
-for(XSLFTableRow row : _rows) {
+for (XSLFTableRow row : _rows) {
 row.removeCell(colIdx);
 }
-updateRowColIndexes();
 }
 
 static CTGraphicalObjectFrame prototype(int shapeId){

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apach

svn commit: r1875862 - in /poi/trunk/src: examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java ooxml/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java ooxml/testcases/org/apache

2020-03-29 Thread abearez
Author: abearez
Date: Sun Mar 29 22:21:35 2020
New Revision: 1875862

URL: http://svn.apache.org/viewvc?rev=1875862=rev
Log:
allow add and remove a HyperlinkRun or a FieldRun

Modified:

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFParagraph.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java?rev=1875862=1875861=1875862=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java
 Sun Mar 29 22:21:35 2020
@@ -27,6 +27,7 @@ import org.apache.poi.xwpf.usermodel.Tex
 import org.apache.poi.xwpf.usermodel.UnderlinePatterns;
 import org.apache.poi.xwpf.usermodel.VerticalAlign;
 import org.apache.poi.xwpf.usermodel.XWPFDocument;
+import org.apache.poi.xwpf.usermodel.XWPFHyperlinkRun;
 import org.apache.poi.xwpf.usermodel.XWPFParagraph;
 import org.apache.poi.xwpf.usermodel.XWPFRun;
 
@@ -78,6 +79,11 @@ public class SimpleDocument {
 r3.setFontSize(20);
 r3.setSubscript(VerticalAlign.SUPERSCRIPT);
 
+// hyperlink
+XWPFHyperlinkRun hyperlink = p2.insertNewHyperlinkRun(0, 
"http://poi.apache.org/;);
+hyperlink.setUnderline(UnderlinePatterns.SINGLE);
+hyperlink.setColor("ff");
+hyperlink.setText("Apache POI");
 
 XWPFParagraph p3 = doc.createParagraph();
 p3.setWordWrapped(true);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java?rev=1875862=1875861=1875862=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java 
Sun Mar 29 22:21:35 2020
@@ -20,6 +20,7 @@ import java.math.BigInteger;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
+import java.util.function.Function;
 
 import org.apache.poi.ooxml.POIXMLDocumentPart;
 import org.apache.poi.util.Internal;
@@ -1478,50 +1479,144 @@ public class XWPFParagraph implements IB
 }
 
 /**
- * insert a new Run in RunArray
+ * Appends a new field run to this paragraph
+ * 
+ * @return a new field run
+ */
+public XWPFFieldRun createFieldRun() {
+CTSimpleField ctSimpleField = paragraph.addNewFldSimple();
+XWPFFieldRun newRun = new XWPFFieldRun(ctSimpleField, 
ctSimpleField.addNewR(), this);
+runs.add(newRun);
+iruns.add(newRun);
+return newRun;
+}
+
+/**
+ * insert a new Run in all runs
  *
  * @param pos The position at which the new run should be added.
  *
  * @return the inserted run or null if the given pos is out of bounds.
  */
 public XWPFRun insertNewRun(int pos) {
-if (pos >= 0 && pos <= runs.size()) {
-// calculate the correct pos as our run/irun list contains
-// hyperlinks
-// and fields so it is different to the paragraph R array.
-int rPos = 0;
-for (int i = 0; i < pos; i++) {
-XWPFRun currRun = runs.get(i);
-if (!(currRun instanceof XWPFHyperlinkRun
-|| currRun instanceof XWPFFieldRun)) {
-rPos++;
-}
-}
+if (pos == runs.size()) {
+return createRun();
+}
+return insertNewProvidedRun(pos, newCursor -> {
+String uri = CTR.type.getName().getNamespaceURI();
+String localPart = "r";
+// creates a new run, cursor is positioned inside the new
+// element
+newCursor.beginElement(localPart, uri);
+// move the cursor to the START token to the run just created
+newCursor.toParent();
+CTR r = (CTR) newCursor.getObject();
+return new XWPFRun(r, (IRunBody)this);
+});
+}
+
+/**
+ * insert a new hyperlink Run in all runs
+ *
+ * @param pos The position at which the new run should be added.
+ * @param uri hyperlink uri
+ *
+ * @return the inserted run or null if the given pos is out of bounds.
+ */
+public XWPFHyperlinkRun insertNewHyperlinkRun(int pos, String uri) {
+if (pos == ru

svn commit: r1875749 - /poi/site/src/documentation/content/xdocs/changes.xml

2020-03-26 Thread abearez
Author: abearez
Date: Fri Mar 27 03:34:56 2020
New Revision: 1875749

URL: http://svn.apache.org/viewvc?rev=1875749=rev
Log:
Merged three pull requests from  Sayi

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1875749=1875748=1875749=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Fri Mar 27 03:34:56 
2020
@@ -82,6 +82,9 @@
 Picture.resize(double scale) scales width wrong for small 
pictures and when dx1 is set
 upgrading 
xmlsec causes junit tests to fail
 XSLF - Wrong 
scheme colors used when rendering
+setText in 
XWPFTableCell updates the xml and also updates the runs and iruns
+XWPFTableCell does not process bodyElements when handle 
paragraph
+XWPFNumbering.addAbstractNum will definitely throw an 
exception
 
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875747 - in /poi/trunk/src/ooxml: java/org/apache/poi/xwpf/usermodel/XWPFAbstractNum.java java/org/apache/poi/xwpf/usermodel/XWPFNumbering.java testcases/org/apache/poi/xwpf/usermodel/Te

2020-03-26 Thread abearez
Author: abearez
Date: Fri Mar 27 03:13:40 2020
New Revision: 1875747

URL: http://svn.apache.org/viewvc?rev=1875747=rev
Log:
XWPFNumbering.addAbstractNum will definitely throw an exception

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFAbstractNum.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFNumbering.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFNumbering.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFAbstractNum.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFAbstractNum.java?rev=1875747=1875746=1875747=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFAbstractNum.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFAbstractNum.java 
Fri Mar 27 03:13:40 2020
@@ -57,4 +57,8 @@ public class XWPFAbstractNum {
 return ctAbstractNum;
 }
 
+public void setCtAbstractNum(CTAbstractNum ctAbstractNum) {
+this.ctAbstractNum = ctAbstractNum;
+}
+
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFNumbering.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFNumbering.java?rev=1875747=1875746=1875747=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFNumbering.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFNumbering.java 
Fri Mar 27 03:13:40 2020
@@ -23,6 +23,7 @@ import java.io.InputStream;
 import java.io.OutputStream;
 import java.math.BigInteger;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 import javax.xml.namespace.QName;
@@ -237,7 +238,7 @@ public class XWPFNumbering extends POIXM
 if (abstractNum.getAbstractNum() != null) { // Use the current 
CTAbstractNum if it exists
 ctNumbering.addNewAbstractNum().set(abstractNum.getAbstractNum());
 } else {
-ctNumbering.addNewAbstractNum();
+abstractNum.setCtAbstractNum(ctNumbering.addNewAbstractNum());
 
abstractNum.getAbstractNum().setAbstractNumId(BigInteger.valueOf(pos));
 ctNumbering.setAbstractNumArray(pos, abstractNum.getAbstractNum());
 }
@@ -283,5 +284,20 @@ public class XWPFNumbering extends POIXM
 return null;
 return num.getCTNum().getAbstractNumId().getVal();
 }
+
+/**
+ * @return all abstractNums
+ */
+public List getAbstractNums() {
+return Collections.unmodifiableList(abstractNums);
+}
+
+/**
+ * @return all nums
+ */
+public List getNums() {
+return Collections.unmodifiableList(nums);
+}
+
 }
 

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFNumbering.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFNumbering.java?rev=1875747=1875746=1875747=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFNumbering.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFNumbering.java
 Fri Mar 27 03:13:40 2020
@@ -26,6 +26,7 @@ import java.math.BigInteger;
 
 import org.apache.poi.xwpf.XWPFTestDataSamples;
 import org.junit.Test;
+import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTAbstractNum;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTNum;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTNumLvl;
 
@@ -61,6 +62,45 @@ public class TestXWPFNumbering {
 XWPFNum num = numbering.getNum(numId);
 
 BigInteger compareAbstractNum = 
num.getCTNum().getAbstractNumId().getVal();
+assertEquals(abstractNumId, compareAbstractNum);
+}
+
+@Test
+public void testAddAbstractNumIfAbstractNumNotEqualNull() throws 
IOException {
+BigInteger abstractNumId = BigInteger.valueOf(1);
+XWPFDocument docOut = new XWPFDocument();
+XWPFNumbering numbering = docOut.createNumbering();
+
+CTAbstractNum cTAbstractNum = CTAbstractNum.Factory.newInstance();
+// must set the AbstractNumId, Otherwise fail
+cTAbstractNum.setAbstractNumId(abstractNumId);
+XWPFAbstractNum abstractNum = new XWPFAbstractNum(cTAbstractNum);
+abstractNumId = numbering.addAbstractNum(abstractNum);
+BigInteger numId = numbering.addNum(abstractNumId);
+
+XWPFDocument docIn = XWPFTestDataSamples.writeOutAndReadBack(docOut);
+
+numbering = docIn.getNumbering();
+XWPFNum num = numbering.getNum(numId);
+BigInteger compareAbstractNum = 
num.getCTNum().getAbstractNumId().getVal();
+assertEquals(abstractNumId

svn commit: r1875748 - in /poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel: XSLFTable.java XSLFTableCell.java

2020-03-26 Thread abearez
Author: abearez
Date: Fri Mar 27 03:13:43 2020
New Revision: 1875748

URL: http://svn.apache.org/viewvc?rev=1875748=rev
Log:
Access table cell border style as line properties

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java

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=1875748=1875747=1875748=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 Fri 
Mar 27 03:13:43 2020
@@ -90,11 +90,10 @@ public class XSLFTable extends XSLFGraph
 
 @Override
 public XSLFTableCell getCell(int row, int col) {
-List rows = getRows();
-if (row < 0 || rows.size() <= row) {
+if (row < 0 || _rows.size() <= row) {
 return null;
 }
-XSLFTableRow r = rows.get(row);
+XSLFTableRow r = _rows.get(row);
 if (r == null) {
 // empty row
 return null;

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java?rev=1875748=1875747=1875748=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java 
Fri Mar 27 03:13:43 2020
@@ -33,6 +33,7 @@ import org.apache.poi.sl.usermodel.Strok
 import org.apache.poi.sl.usermodel.TableCell;
 import org.apache.poi.sl.usermodel.VerticalAlignment;
 import org.apache.poi.util.Units;
+import org.apache.poi.xddf.usermodel.XDDFLineProperties;
 import org.apache.poi.xddf.usermodel.text.XDDFTextBody;
 import org.apache.poi.xslf.usermodel.XSLFPropertiesDelegate.XSLFFillProperties;
 import org.apache.poi.xslf.usermodel.XSLFTableStyle.TablePartStyle;
@@ -139,6 +140,18 @@ public class XSLFTableCell extends XSLFT
 }
 }
 
+public XDDFLineProperties getBorderProperties(BorderEdge edge) {
+CTLineProperties props = getCTLine(edge, false);
+return (props == null) ? null : new XDDFLineProperties(props);
+}
+
+public void setBorderProperties(BorderEdge edge, XDDFLineProperties 
properties) {
+CTLineProperties props = getCTLine(edge, true);
+if (props != null) {
+props.set(properties.getXmlObject().copy());
+}
+}
+
 @Override
 public void removeBorder(BorderEdge edge) {
 CTTableCellProperties pr = getCellProperties(false);



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875745 - /poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java

2020-03-26 Thread abearez
Author: abearez
Date: Fri Mar 27 03:13:34 2020
New Revision: 1875745

URL: http://svn.apache.org/viewvc?rev=1875745=rev
Log:
like getTables, returns a collection that cannot be modified

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java?rev=1875745=1875744=1875745=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java 
Fri Mar 27 03:13:34 2020
@@ -139,7 +139,7 @@ public class XWPFTableCell implements IB
  * returns a list of paragraphs
  */
 public List getParagraphs() {
-return paragraphs;
+return Collections.unmodifiableList(paragraphs);
 }
 
 /**



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875746 - in /poi/trunk/src/ooxml: java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java

2020-03-26 Thread abearez
Author: abearez
Date: Fri Mar 27 03:13:37 2020
New Revision: 1875746

URL: http://svn.apache.org/viewvc?rev=1875746=rev
Log:
XWPFTableCell does not process bodyElements when handle paragraph

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java?rev=1875746=1875745=1875746=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java 
Fri Mar 27 03:13:37 2020
@@ -160,6 +160,7 @@ public class XWPFTableCell implements IB
  */
 public void addParagraph(XWPFParagraph p) {
 paragraphs.add(p);
+bodyElements.add(p);
 }
 
 /**
@@ -168,8 +169,10 @@ public class XWPFTableCell implements IB
  * @param pos The position in the list of paragraphs, 0-based
  */
 public void removeParagraph(int pos) {
+XWPFParagraph removedParagraph = paragraphs.get(pos);
 paragraphs.remove(pos);
 ctTc.removeP(pos);
+bodyElements.remove(removedParagraph);
 }
 
 /**

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java?rev=1875746=1875745=1875746=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java
 Fri Mar 27 03:13:37 2020
@@ -151,6 +151,58 @@ public class TestXWPFTableCell {
 }
 
 @Test
+public void testAddParagraph() throws Exception {
+XWPFDocument doc = new XWPFDocument();
+XWPFTable table = doc.createTable();
+XWPFTableRow tr = table.createRow();
+XWPFTableCell cell = tr.addNewTableCell();
+
+// cell have at least one paragraph by default
+assertEquals(1, cell.getParagraphs().size());
+assertEquals(1, cell.getBodyElements().size());
+assertEquals(cell.getParagraphArray(0), cell.getBodyElements().get(0));
+
+XWPFParagraph p = cell.addParagraph();
+assertEquals(2, cell.getParagraphs().size());
+assertEquals(2, cell.getBodyElements().size());
+assertEquals(p, cell.getParagraphArray(1));
+assertEquals(cell.getParagraphArray(1), cell.getBodyElements().get(1));
+
+doc.close();
+}
+
+@Test
+public void testRemoveParagraph() throws Exception {
+XWPFDocument doc = new XWPFDocument();
+XWPFTable table = doc.createTable();
+XWPFTableRow tr = table.createRow();
+XWPFTableCell cell = tr.addNewTableCell();
+
+// cell have at least one paragraph by default
+XWPFParagraph p0 = cell.getParagraphArray(0);
+XWPFParagraph p1 = cell.addParagraph();
+cell.addParagraph();
+
+// remove 3rd
+cell.removeParagraph(2);
+assertEquals(2, cell.getParagraphs().size());
+assertEquals(2, cell.getBodyElements().size());
+assertEquals(p0, cell.getParagraphArray(0));
+assertEquals(p1, cell.getParagraphArray(1));
+assertEquals(p0, cell.getBodyElements().get(0));
+assertEquals(p1, cell.getBodyElements().get(1));
+
+// remove 2nd
+cell.removeParagraph(1);
+assertEquals(1, cell.getParagraphs().size());
+assertEquals(1, cell.getBodyElements().size());
+assertEquals(p0, cell.getParagraphArray(0));
+assertEquals(p0, cell.getBodyElements().get(0));
+
+doc.close();
+}
+
+@Test
 public void testBug63624() throws Exception {
 XWPFDocument doc = new XWPFDocument();
 XWPFTable table = doc.createTable(1, 1);



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1875744 - in /poi/trunk/src/ooxml: java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java

2020-03-26 Thread abearez
Author: abearez
Date: Fri Mar 27 03:13:31 2020
New Revision: 1875744

URL: http://svn.apache.org/viewvc?rev=1875744=rev
Log:
#63624: setText in XWPFTableCell updates the xml and also updates the runs and 
iruns

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java?rev=1875744=1875743=1875744=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java 
Fri Mar 27 03:13:31 2020
@@ -427,8 +427,7 @@ public class XWPFTableCell implements IB
 }
 
 public void setText(String text) {
-CTP ctP = (ctTc.sizeOfPArray() == 0) ? ctTc.addNewP() : 
ctTc.getPArray(0);
-XWPFParagraph par = new XWPFParagraph(ctP, this);
+XWPFParagraph par = (paragraphs.size() == 0) ? addParagraph() : 
paragraphs.get(0);
 par.createRun().setText(text);
 }
 

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java?rev=1875744=1875743=1875744=diff
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFTableCell.java
 Fri Mar 27 03:13:31 2020
@@ -149,4 +149,18 @@ public class TestXWPFTableCell {
 assertEquals(2500, cell.getWidth());
 doc.close();
 }
+
+@Test
+public void testBug63624() throws Exception {
+XWPFDocument doc = new XWPFDocument();
+XWPFTable table = doc.createTable(1, 1);
+XWPFTableRow row = table.getRow(0);
+XWPFTableCell cell = row.getCell(0);
+
+String expected = "this must not be empty";
+cell.setText(expected);
+String actual = cell.getText();
+assertEquals(expected, actual);
+doc.close();
+}
 }



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1874705 - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart: XDDFChartData.java XDDFDataSource.java XDDFDataSourcesFactory.java XDDFNumericalDataSource.java

2020-03-02 Thread abearez
Author: abearez
Date: Mon Mar  2 23:57:05 2020
New Revision: 1874705

URL: http://svn.apache.org/viewvc?rev=1874705=rev
Log:
Allow for numerical category in charts

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFNumericalDataSource.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java?rev=1874705=1874704=1874705=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java 
Mon Mar  2 23:57:05 2020
@@ -211,7 +211,7 @@ public abstract class XDDFChartData {
 public void plot() {
 if (categoryData.isNumeric()) {
 CTNumData cache = retrieveNumCache(getAxDS(), categoryData);
-((XDDFNumericalDataSource) 
categoryData).fillNumericalCache(cache);
+categoryData.fillNumericalCache(cache);
 } else {
 CTStrData cache = retrieveStrCache(getAxDS(), categoryData);
 categoryData.fillStringCache(cache);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java?rev=1874705=1874704=1874705=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
 Mon Mar  2 23:57:05 2020
@@ -21,6 +21,8 @@ package org.apache.poi.xddf.usermodel.ch
 
 import org.apache.poi.util.Beta;
 import org.apache.poi.util.Internal;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumData;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumVal;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTStrData;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTStrVal;
 
@@ -50,6 +52,44 @@ public interface XDDFDataSource {
 
 String getFormula();
 
+String getFormatCode();
+
+/**
+ * @since POI 4.1.3
+ */
+@Internal
+default void fillNumericalCache(CTNumData cache) {
+String formatCode = getFormatCode();
+if (formatCode == null) {
+if (cache.isSetFormatCode()) {
+cache.unsetFormatCode();
+}
+} else {
+cache.setFormatCode(formatCode);
+}
+cache.setPtArray(null); // unset old values
+final int numOfPoints = getPointCount();
+int effectiveNumOfPoints = 0;
+for (int i = 0; i < numOfPoints; ++i) {
+Object value = getPointAt(i);
+if (value != null) {
+CTNumVal ctNumVal = cache.addNewPt();
+ctNumVal.setIdx(i);
+ctNumVal.setV(value.toString());
+effectiveNumOfPoints++;
+}
+}
+if (effectiveNumOfPoints == 0) {
+cache.unsetPtCount();
+} else {
+if (cache.isSetPtCount()) {
+cache.getPtCount().setVal(numOfPoints);
+} else {
+cache.addNewPtCount().setVal(numOfPoints);
+}
+}
+}
+
 /**
  * @since POI 4.1.2
  */

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java?rev=1874705=1874704=1874705=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
 Mon Mar  2 23:57:05 2020
@@ -45,6 +45,7 @@ public class XDDFDataSourcesFactory {
 if (categoryDS.getStrRef() == null) {
 return new XDDFCategoryDataSource() {
 private CTNumData category = (CTNumData) 
categoryDS.getNumRef().getNumCache().copy();
+private String formatCode = category.isSetFormatCode() ? 
category.getFormatCode() : null;
 
 @Override
 public boolean isCellRange() {
@@ -70,6 +71,9 @@ public class XDDFDataSourcesFactory {
 public String getPointAt(int index) {
 return category.getPtArray(index).g

svn commit: r1874704 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java

2020-03-02 Thread abearez
Author: abearez
Date: Mon Mar  2 23:57:01 2020
New Revision: 1874704

URL: http://svn.apache.org/viewvc?rev=1874704=rev
Log:
Remove chart title when given text is null

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java?rev=1874704=1874703=1874704=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java 
Mon Mar  2 23:57:01 2020
@@ -58,10 +58,16 @@ public class XDDFTitle {
 }
 
 public void setText(String text) {
-if (!title.isSetLayout()) {
-title.addNewLayout();
+if (text == null) {
+if (title.isSetTx()) {
+title.unsetTx();
+}
+} else{
+if (!title.isSetLayout()) {
+title.addNewLayout();
+}
+getBody().setText(text);
 }
-getBody().setText(text);
 }
 
 public void setOverlay(Boolean overlay) {



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1873283 - /poi/site/src/documentation/content/xdocs/changes.xml

2020-01-28 Thread abearez
Author: abearez
Date: Wed Jan 29 06:42:17 2020
New Revision: 1873283

URL: http://svn.apache.org/viewvc?rev=1873283=rev
Log:
Invert bar chart if negative by Niklas Mollenhauer

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1873283=1873282=1873283=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed Jan 29 06:42:17 
2020
@@ -113,6 +113,7 @@
 Fix issue with setCellValue(LocalDate) not supporting 
nulls properly
 SlideShow rendering fixes
 XWPFRun: 
Whitespace in text not preserved if starting with tab character.
+Expose invert if negative on bar charts
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1873282 - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart: XDDFBar3DChartData.java XDDFBarChartData.java

2020-01-28 Thread abearez
Author: abearez
Date: Wed Jan 29 06:38:22 2020
New Revision: 1873282

URL: http://svn.apache.org/viewvc?rev=1873282=rev
Log:
Invert bar chart if negative by Niklas Mollenhauer

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java?rev=1873282=1873281=1873282=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
 Wed Jan 29 06:38:22 2020
@@ -251,6 +251,27 @@ public class XDDFBar3DChartData extends
 }
 }
 
+/**
+ * @since 4.1.2
+ */
+public boolean getInvertIfNegative() {
+if (series.isSetInvertIfNegative()) {
+return series.getInvertIfNegative().getVal();
+}
+return false;
+}
+
+/**
+ * @since 4.1.2
+ */
+public void setInvertIfNegative(boolean invertIfNegative) {
+if (series.isSetInvertIfNegative()) {
+series.getInvertIfNegative().setVal(invertIfNegative);
+} else {
+series.addNewInvertIfNegative().setVal(invertIfNegative);
+}
+}
+
 @Override
 public void setShowLeaderLines(boolean showLeaderLines) {
 if (!series.isSetDLbls()) {

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java?rev=1873282=1873281=1873282=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
 Wed Jan 29 06:38:22 2020
@@ -241,6 +241,27 @@ public class XDDFBarChartData extends XD
 }
 }
 
+/**
+ * @since 4.1.2
+ */
+public boolean getInvertIfNegative() {
+if (series.isSetInvertIfNegative()) {
+return series.getInvertIfNegative().getVal();
+}
+return false;
+}
+
+/**
+ * @since 4.1.2
+ */
+public void setInvertIfNegative(boolean invertIfNegative) {
+if (series.isSetInvertIfNegative()) {
+series.getInvertIfNegative().setVal(invertIfNegative);
+} else {
+series.addNewInvertIfNegative().setVal(invertIfNegative);
+}
+}
+
 @Override
 public void setShowLeaderLines(boolean showLeaderLines) {
 if (!series.isSetDLbls()) {



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1872690 - in /poi/trunk/src/ooxml: java/org/apache/poi/xddf/usermodel/chart/ testcases/org/apache/poi/xddf/usermodel/

2020-01-12 Thread abearez
Author: abearez
Date: Mon Jan 13 00:26:59 2020
New Revision: 1872690

URL: http://svn.apache.org/viewvc?rev=1872690=rev
Log:
Implement error bars for bar and line charts

Added:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorBarType.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorDirection.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorValueType.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFErrorBars.java
Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLine3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/TestNecessaryOOXMLClasses.java

Added: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorBarType.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorBarType.java?rev=1872690=auto
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorBarType.java 
(added)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorBarType.java 
Mon Jan 13 00:26:59 2020
@@ -0,0 +1,45 @@
+/* 
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+ */
+
+package org.apache.poi.xddf.usermodel.chart;
+
+import java.util.HashMap;
+
+import org.openxmlformats.schemas.drawingml.x2006.chart.STErrBarType;;
+
+public enum ErrorBarType {
+BOTH(STErrBarType.BOTH),
+MINUS(STErrBarType.MINUS),
+PLUS(STErrBarType.PLUS);
+
+final STErrBarType.Enum underlying;
+
+ErrorBarType(STErrBarType.Enum barType) {
+this.underlying = barType;
+}
+
+private final static HashMap reverse = 
new HashMap<>();
+static {
+for (ErrorBarType value : values()) {
+reverse.put(value.underlying, value);
+}
+}
+
+static ErrorBarType valueOf(STErrBarType.Enum barType) {
+return reverse.get(barType);
+}
+}

Added: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorDirection.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorDirection.java?rev=1872690=auto
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorDirection.java
 (added)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ErrorDirection.java
 Mon Jan 13 00:26:59 2020
@@ -0,0 +1,44 @@
+/* 
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+ */
+
+package org.apache.poi.xddf.usermodel.chart;
+
+import java.util.HashMap;
+
+import org.openxmlformats.schemas.drawingml.x2006.chart.STErrDir;;
+
+public enum ErrorDirection {
+X(STErrDir.X),
+Y(STErrDir.Y);
+
+final STErrDir.Enum underlying;
+
+ErrorDirection(STErrDir.Enum direction) {
+this.underlying = direction;
+}
+
+private final static H

svn commit: r1872691 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

2020-01-12 Thread abearez
Author: abearez
Date: Mon Jan 13 00:27:03 2020
New Revision: 1872691

URL: http://svn.apache.org/viewvc?rev=1872691=rev
Log:
Implement error bars on scatter chart data series

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java?rev=1872691=1872690=1872691=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java
 Mon Jan 13 00:27:03 2020
@@ -202,6 +202,41 @@ public class XDDFScatterChartData extend
 }
 }
 
+/**
+ * @since POI 4.1.2
+ */
+public int getErrorBarsCount() {
+return series.sizeOfErrBarsArray();
+}
+
+/**
+ * @since POI 4.1.2
+ */
+public XDDFErrorBars getErrorBars(int index) {
+return new XDDFErrorBars(series.getErrBarsArray(index));
+}
+
+/**
+ * @since POI 4.1.2
+ */
+public XDDFErrorBars addNewErrorBars() {
+return new XDDFErrorBars(series.addNewErrBars());
+}
+
+/**
+ * @since POI 4.1.2
+ */
+public XDDFErrorBars insertNewErrorBars(int index) {
+return new XDDFErrorBars(series.insertNewErrBars(index));
+}
+
+/**
+ * @since POI 4.1.2
+ */
+public void removeErrorBars(int index) {
+series.removeErrBars(index);
+}
+
 @Override
 public void setShowLeaderLines(boolean showLeaderLines) {
 if (!series.isSetDLbls()) {



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1872692 - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart: XDDFChartData.java XDDFDataSource.java XDDFErrorBars.java XDDFNumericalDataSource.java

2020-01-12 Thread abearez
Author: abearez
Date: Mon Jan 13 00:27:06 2020
New Revision: 1872692

URL: http://svn.apache.org/viewvc?rev=1872692=rev
Log:
Error bar minus and plus as numerical data sources

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFErrorBars.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFNumericalDataSource.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java?rev=1872692=1872691=1872692=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java 
Mon Jan 13 00:27:06 2020
@@ -33,11 +33,9 @@ import org.openxmlformats.schemas.drawin
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumData;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumDataSource;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumRef;
-import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumVal;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTSerTx;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTStrData;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTStrRef;
-import org.openxmlformats.schemas.drawingml.x2006.chart.CTStrVal;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTUnsignedInt;
 
 /**
@@ -211,16 +209,15 @@ public abstract class XDDFChartData {
 }
 
 public void plot() {
-int numOfPoints = categoryData.getPointCount();
 if (categoryData.isNumeric()) {
 CTNumData cache = retrieveNumCache(getAxDS(), categoryData);
-fillNumCache(cache, numOfPoints, (XDDFNumericalDataSource) 
categoryData);
+((XDDFNumericalDataSource) 
categoryData).fillNumericalCache(cache);
 } else {
 CTStrData cache = retrieveStrCache(getAxDS(), categoryData);
-fillStringCache(cache, numOfPoints, categoryData);
+categoryData.fillStringCache(cache);
 }
 CTNumData cache = retrieveNumCache(getNumDS(), valuesData);
-fillNumCache(cache, numOfPoints, valuesData);
+valuesData.fillNumericalCache(cache);
 }
 
 /**
@@ -343,61 +340,5 @@ public abstract class XDDFChartData {
 }
 return numCache;
 }
-
-private void fillStringCache(CTStrData cache, int numOfPoints, 
XDDFDataSource data) {
-cache.setPtArray(null); // unset old values
-int effectiveNumOfPoints = 0;
-for (int i = 0; i < numOfPoints; ++i) {
-Object value = data.getPointAt(i);
-if (value != null) {
-CTStrVal ctStrVal = cache.addNewPt();
-ctStrVal.setIdx(i);
-ctStrVal.setV(value.toString());
-effectiveNumOfPoints++;
-}
-}
-if (effectiveNumOfPoints == 0) {
-if (cache.isSetPtCount()) {
-cache.unsetPtCount();
-}
-} else {
-if (cache.isSetPtCount()) {
-cache.getPtCount().setVal(numOfPoints);
-} else {
-cache.addNewPtCount().setVal(numOfPoints);
-}
-}
-}
-
-private void fillNumCache(CTNumData cache, int numOfPoints, 
XDDFNumericalDataSource data) {
-String formatCode = data.getFormatCode();
-if (formatCode == null) {
-if (cache.isSetFormatCode()) {
-cache.unsetFormatCode();
-}
-} else {
-cache.setFormatCode(formatCode);
-}
-cache.setPtArray(null); // unset old values
-int effectiveNumOfPoints = 0;
-for (int i = 0; i < numOfPoints; ++i) {
-Object value = data.getPointAt(i);
-if (value != null) {
-CTNumVal ctNumVal = cache.addNewPt();
-ctNumVal.setIdx(i);
-ctNumVal.setV(value.toString());
-effectiveNumOfPoints++;
-}
-}
-if (effectiveNumOfPoints == 0) {
-cache.unsetPtCount();
-} else {
-if (cache.isSetPtCount()) {
-cache.getPtCount().setVal(numOfPoints);
-} else {
-cache.addNewPtCount().setVal(numOf

svn commit: r1872362 - /poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java

2020-01-05 Thread abearez
Author: abearez
Date: Sun Jan  5 23:54:09 2020
New Revision: 1872362

URL: http://svn.apache.org/viewvc?rev=1872362=rev
Log:
Complete test with cell in newly added column

Modified:

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java

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=1872362=1872361=1872362=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 
Sun Jan  5 23:54:09 2020
@@ -72,7 +72,9 @@ public class TestXSLFTable {
 assertEquals(tab.getColumnWidth(1), tab.getColumnWidth(0), 
0.1);
 assertNotNull(tab.getCell(0, 0).getTextBody());
 tab.addColumn();
-tab.getCell(0, data[0].length + 1);
+XSLFTableCell cell = tab.getCell(0, data[0].length + 1);
+assertEquals(1, cell.getTextBody().getParagraphs().size());
+assertEquals("", cell.getTextBody().getParagraph(0).getText());
 assertEquals(tab.getColumnWidth(tab.getNumberOfColumns() - 2), 
tab.getColumnWidth(tab.getNumberOfColumns() - 1), 0.1);
 assertNotNull(tab.getCell(0, tab.getNumberOfColumns() - 
1).getTextBody());
 tab.removeColumn(0);



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1872361 - in /poi/trunk/src/ooxml/java/org/apache/poi: xddf/usermodel/chart/XDDFBarChartData.java xddf/usermodel/text/XDDFTextRun.java xslf/usermodel/XSLFTextParagraph.java

2020-01-05 Thread abearez
Author: abearez
Date: Sun Jan  5 23:54:06 2020
New Revision: 1872361

URL: http://svn.apache.org/viewvc?rev=1872361=rev
Log:
Fix JavaDoc warnings

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java

poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java?rev=1872361=1872360=1872361=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
 Sun Jan  5 23:54:06 2020
@@ -143,10 +143,13 @@ public class XDDFBarChartData extends XD
 }
 
 /**
- * Minimum inclusive: -100
- * 
- * Maximum inclusive: 100
  * @param overlap
+ *
+ *Minimum inclusive =
+ *-100
+ *Maximum inclusive =
+ *100
+ *
  */
 public void setOverlap(Byte overlap) {
 if (overlap == null) {

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java?rev=1872361=1872360=1872361=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java 
Sun Jan  5 23:54:06 2020
@@ -376,8 +376,8 @@ public class XDDFTextRun {
  *Minimum inclusive =
  *1
  *Maximum inclusive =
- *400
- *
+ *400
+ *
  */
 public void setFontSize(Double size) {
 getOrCreateProperties().setFontSize(size);
@@ -402,7 +402,8 @@ public class XDDFTextRun {
  *Minimum inclusive =
  *0
  *Maximum inclusive =
- *4000
+ *4000
+ *
  */
 public void setCharacterKerning(Double kerning) {
 getOrCreateProperties().setCharacterKerning(kerning);
@@ -435,7 +436,8 @@ public class XDDFTextRun {
  *Minimum inclusive =
  *-4000
  *Maximum inclusive =
- *4000
+ *4000
+ *
  */
 public void setCharacterSpacing(Double spacing) {
 getOrCreateProperties().setCharacterSpacing(spacing);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java?rev=1872361=1872360=1872361=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java 
Sun Jan  5 23:54:06 2020
@@ -93,6 +93,7 @@ public class XSLFTextParagraph implement
 return _p;
 }
 
+@Override
 public XSLFTextShape getParentShape() {
 return _shape;
 
@@ -103,6 +104,7 @@ public class XSLFTextParagraph implement
 return _runs;
 }
 
+@Override
 public Iterator iterator(){
 return _runs.iterator();
 }
@@ -149,6 +151,7 @@ public class XSLFTextParagraph implement
 @Override
 public TextAlign getTextAlign(){
 ParagraphPropertyFetcher fetcher = new 
ParagraphPropertyFetcher(getIndentLevel()){
+@Override
 public boolean fetch(CTTextParagraphProperties props){
 if(props.isSetAlgn()){
 TextAlign val = 
TextAlign.values()[props.getAlgn().intValue() - 1];
@@ -166,7 +169,9 @@ public class XSLFTextParagraph implement
 public void setTextAlign(TextAlign align) {
 CTTextParagraphProperties pr = _p.isSetPPr() ? _p.getPPr() : 
_p.addNewPPr();
 if(align == null) {
-if(pr.isSetAlgn()) pr.unsetAlgn();
+if(pr.isSetAlgn()) {
+pr.unsetAlgn();
+}
 } else {
 pr.setAlgn(STTextAlignType.Enum.forInt(align.ordinal() + 1));
 }
@@ -175,6 +180,7 @@ public class XSLFTextParagraph implement
 @Override
 public FontAlign getFontAlign(){
 ParagraphPropertyFetcher fetcher = new 
ParagraphPropertyFetcher(getIndentLevel()){
+@Override
 public boolean fetch(CTTextParagraphProperties props

svn commit: r1872363 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

2020-01-05 Thread abearez
Author: abearez
Date: Sun Jan  5 23:54:12 2020
New Revision: 1872363

URL: http://svn.apache.org/viewvc?rev=1872363=rev
Log:
Clear all chart's properties as if newly created

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1872363=1872362=1872363=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Sun Jan  5 23:54:12 2020
@@ -189,6 +189,21 @@ public abstract class XDDFChart extends
 }
 
 /**
+ * Clear all properties, as if a new instance had just been created.
+ * @since POI 4.1.2
+ */
+public void clear() {
+axes.clear();
+seriesCount = 0;
+if (workbook != null) {
+workbook.removeSheetAt(0);
+workbook.createSheet();
+}
+chart.set(CTChart.Factory.newInstance());
+chart.addNewPlotArea();
+}
+
+/**
  * @return true if only visible cells will be present on the chart, false
  * otherwise
  */
@@ -477,6 +492,78 @@ public abstract class XDDFChart extends
 return series;
 }
 
+/**
+ * Clear all chart series, as if a new instance had just been created.
+ * @since POI 4.1.2
+ */
+public void clearChartSeries() {
+CTPlotArea plotArea = getCTPlotArea();
+
+for (int i = plotArea.sizeOfAreaChartArray(); i > 0; i--) {
+plotArea.removeAreaChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfArea3DChartArray(); i > 0; i--) {
+plotArea.removeArea3DChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfBarChartArray(); i > 0; i--) {
+plotArea.removeBarChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfBar3DChartArray(); i > 0; i--) {
+plotArea.removeBar3DChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfBubbleChartArray(); i > 0; i--) {
+plotArea.removeBubbleChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfDoughnutChartArray(); i > 0; i--) {
+plotArea.removeDoughnutChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfLineChartArray(); i > 0; i--) {
+plotArea.removeLineChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfLine3DChartArray(); i > 0; i--) {
+plotArea.removeLine3DChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfOfPieChartArray(); i > 0; i--) {
+plotArea.removeOfPieChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfPieChartArray(); i > 0; i--) {
+plotArea.removePieChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfPie3DChartArray(); i > 0; i--) {
+plotArea.removePie3DChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfRadarChartArray(); i > 0; i--) {
+plotArea.removeRadarChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfScatterChartArray(); i > 0; i--) {
+plotArea.removeScatterChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfStockChartArray(); i > 0; i--) {
+plotArea.removeStockChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfSurfaceChartArray(); i > 0; i--) {
+plotArea.removeSurfaceChart(i - 1);
+}
+
+for (int i = plotArea.sizeOfSurface3DChartArray(); i > 0; i--) {
+plotArea.removeSurface3DChart(i - 1);
+}
+}
+
 private Map getCategoryAxes() {
 CTPlotArea plotArea = getCTPlotArea();
 int sizeOfArray = plotArea.sizeOfCatAxArray();



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1871150 - in /poi/trunk/src/ooxml: java/org/apache/poi/xddf/usermodel/text/ java/org/apache/poi/xslf/usermodel/ testcases/org/apache/poi/sl/draw/ testcases/org/apache/poi/xddf/usermodel/t

2019-12-10 Thread abearez
Author: abearez
Date: Wed Dec 11 00:10:09 2019
New Revision: 1871150

URL: http://svn.apache.org/viewvc?rev=1871150=rev
Log:
Fix initialization of text body when used in XSLF

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextBox.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextShape.java

poi/trunk/src/ooxml/testcases/org/apache/poi/sl/draw/TestDrawPictureShape.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextBodyProperties.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFBugs.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestPPTX2PNG.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXMLSlideShow.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFAutoShape.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFPictureShape.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java?rev=1871150=1871149=1871150=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java 
Wed Dec 11 00:10:09 2019
@@ -38,7 +38,6 @@ public class XDDFTextBody {
 
 public XDDFTextBody(TextContainer parent) {
 this(parent, CTTextBody.Factory.newInstance());
-initialize();
 }
 
 @Internal
@@ -64,6 +63,7 @@ public class XDDFTextBody {
 bp.setRightToLeft(false);
 XDDFTextParagraph p = addNewParagraph();
 p.setTextAlignment(TextAlignment.LEFT);
+p.appendRegularRun("");
 XDDFRunProperties end = p.addAfterLastRunProperties();
 end.setLanguage(Locale.US);
 end.setFontSize(11.0);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java?rev=1871150=1871149=1871150=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java 
Wed Dec 11 00:10:09 2019
@@ -78,10 +78,8 @@ public class XSLFAutoShape extends XSLFT
 CTTextBody txBody = shape.getTxBody();
 if (txBody == null && create) {
 XDDFTextBody body = new XDDFTextBody(this);
-initTextBody(body);
 shape.setTxBody(body.getXmlObject());
 txBody = shape.getTxBody();
-getTextParagraphs().add(newTextParagraph(txBody.getPArray(0)));
 }
 return txBody;
 }

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=1871150=1871149=1871150=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 Wed 
Dec 11 00:10:09 2019
@@ -33,6 +33,7 @@ import org.apache.poi.sl.draw.DrawTextSh
 import org.apache.poi.sl.usermodel.TableShape;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.Units;
+import org.apache.poi.xddf.usermodel.text.XDDFTextBody;
 import org.apache.xmlbeans.XmlCursor;
 import org.apache.xmlbeans.XmlObject;
 import org.apache.xmlbeans.impl.values.XmlAnyTypeImpl;
@@ -181,7 +182,7 @@ public class XSLFTable extends XSLFGraph
 col.setW(width);
 for(XSLFTableRow row : _rows) {
 XSLFTableCell cell = row.addCell();
-cell.getTextBody(true);
+new XDDFTextBody(cell, cell.getTextBody(true)).initialize();
 }
 updateRowColIndexes();
 }
@@ -200,7 +201,7 @@ public class XSLFTable extends XSLFGraph
 col.setW(width);
 for(XSLFTableRow row : _rows) {
 XSLFTableCell cell = row.insertCell(colIdx);
-cell.getTextBody(true);
+new XDDFTextBody(cell, cell.getTextBody(true)).initialize();
 }
 updateRowColIndexes()

svn commit: r1871112 - in /poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel: XSLFAutoShape.java XSLFTableCell.java

2019-12-09 Thread abearez
Author: abearez
Date: Tue Dec 10 00:10:52 2019
New Revision: 1871112

URL: http://svn.apache.org/viewvc?rev=1871112=rev
Log:
Correctly initialize text shapes' first paragraph

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java?rev=1871112=187=1871112=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java 
Tue Dec 10 00:10:52 2019
@@ -81,6 +81,7 @@ public class XSLFAutoShape extends XSLFT
 initTextBody(body);
 shape.setTxBody(body.getXmlObject());
 txBody = shape.getTxBody();
+getTextParagraphs().add(newTextParagraph(txBody.getPArray(0)));
 }
 return txBody;
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java?rev=1871112=187=1871112=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java 
Tue Dec 10 00:10:52 2019
@@ -92,6 +92,7 @@ public class XSLFTableCell extends XSLFT
 initTextBody(body);
 cell.setTxBody(body.getXmlObject());
 txBody = cell.getTxBody();
+getTextParagraphs().add(newTextParagraph(txBody.getPArray(0)));
 }
 return txBody;
 }



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1871063 - in /poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel: XSSFDrawing.java XSSFWorkbook.java

2019-12-08 Thread abearez
Author: abearez
Date: Sun Dec  8 23:18:31 2019
New Revision: 1871063

URL: http://svn.apache.org/viewvc?rev=1871063=rev
Log:
Attempt to fix bug 63901

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java?rev=1871063=1871062=1871063=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java Sun 
Dec  8 23:18:31 2019
@@ -273,7 +273,7 @@ public final class XSSFDrawing extends P
 destAnchor.setAnchorType(ClientAnchor.AnchorType.MOVE_AND_RESIZE);
 XSSFChart destChart = createChart(destAnchor);
 destChart.getCTChartSpace().set(srcChart.getCTChartSpace().copy());
-destChart.getCTChart().set(srcChart.getCTChart().copy());
+destChart.getCTChart().set(destChart.getCTChartSpace().getChart());
 return destChart;
 }
 

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java?rev=1871063=1871062=1871063=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java 
Sun Dec  8 23:18:31 2019
@@ -43,11 +43,12 @@ import javax.xml.namespace.QName;
 
 import org.apache.commons.collections4.ListValuedMap;
 import org.apache.commons.collections4.multimap.ArrayListValuedHashMap;
+import org.apache.poi.hpsf.ClassIDPredefined;
 import org.apache.poi.ooxml.POIXMLDocument;
 import org.apache.poi.ooxml.POIXMLDocumentPart;
 import org.apache.poi.ooxml.POIXMLException;
 import org.apache.poi.ooxml.POIXMLProperties;
-import org.apache.poi.hpsf.ClassIDPredefined;
+import org.apache.poi.ooxml.util.PackageHelper;
 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 import org.apache.poi.openxml4j.exceptions.OpenXML4JException;
 import org.apache.poi.openxml4j.opc.OPCPackage;
@@ -67,8 +68,13 @@ import org.apache.poi.ss.formula.SheetNa
 import org.apache.poi.ss.formula.udf.AggregatingUDFFinder;
 import org.apache.poi.ss.formula.udf.IndexedUDFFinder;
 import org.apache.poi.ss.formula.udf.UDFFinder;
-import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.usermodel.Date1904Support;
+import org.apache.poi.ss.usermodel.Name;
+import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Row.MissingCellPolicy;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.SheetVisibility;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.ss.util.CellReference;
 import org.apache.poi.ss.util.WorkbookUtil;
 import org.apache.poi.util.Beta;
@@ -77,7 +83,6 @@ import org.apache.poi.util.Internal;
 import org.apache.poi.util.NotImplemented;
 import org.apache.poi.util.POILogFactory;
 import org.apache.poi.util.POILogger;
-import org.apache.poi.ooxml.util.PackageHelper;
 import org.apache.poi.util.Removal;
 import org.apache.poi.util.Units;
 import org.apache.poi.xssf.XLSBUnsupportedException;
@@ -123,6 +128,7 @@ public class XSSFWorkbook extends POIXML
  * @deprecated POI 3.17 beta 1
  * @see Units#DEFAULT_CHARACTER_WIDTH
  */
+@Deprecated
 @Removal(version="4.1")
 public static final float DEFAULT_CHARACTER_WIDTH = 
Units.DEFAULT_CHARACTER_WIDTH;
 
@@ -668,9 +674,7 @@ public class XSSFWorkbook extends POIXML
 }
 XSSFDrawing clonedDg = clonedSheet.createDrawingPatriarch();
 // copy drawing contents
-clonedDg.getCTDrawing().set(dg.getCTDrawing());
-
-clonedDg = clonedSheet.createDrawingPatriarch();
+clonedDg.getCTDrawing().set(dg.getCTDrawing().copy());
 
 // Clone drawing relations
 List srcRels = 
srcSheet.createDrawingPatriarch().getRelationParts();



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1871061 - in /poi/trunk/src/ooxml: java/org/apache/poi/xslf/usermodel/XSLFTable.java java/org/apache/poi/xslf/usermodel/XSLFTableRow.java testcases/org/apache/poi/xslf/usermodel/TestXSLFT

2019-12-08 Thread abearez
Author: abearez
Date: Sun Dec  8 22:23:17 2019
New Revision: 1871061

URL: http://svn.apache.org/viewvc?rev=1871061=rev
Log:
Fix column addition and removal in XSLFTable

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTable.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java

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=1871061=1871060=1871061=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 Sun 
Dec  8 22:23:17 2019
@@ -179,8 +179,9 @@ public class XSLFTable extends XSLFGraph
 long width = 
_table.getTblGrid().getGridColArray(_table.getTblGrid().sizeOfGridColArray() - 
1).getW();
 CTTableCol col = _table.getTblGrid().addNewGridCol();
 col.setW(width);
-for(CTTableRow row : _table.getTrList()) {
-row.addNewTc();
+for(XSLFTableRow row : _rows) {
+XSLFTableCell cell = row.addCell();
+cell.getTextBody(true);
 }
 updateRowColIndexes();
 }
@@ -197,8 +198,9 @@ public class XSLFTable extends XSLFGraph
 long width = _table.getTblGrid().getGridColArray(colIdx).getW();
 CTTableCol col = _table.getTblGrid().insertNewGridCol(colIdx);
 col.setW(width);
-for(CTTableRow row : _table.getTrList()) {
-row.insertNewTc(colIdx);
+for(XSLFTableRow row : _rows) {
+XSLFTableCell cell = row.insertCell(colIdx);
+cell.getTextBody(true);
 }
 updateRowColIndexes();
 }
@@ -210,8 +212,8 @@ public class XSLFTable extends XSLFGraph
  */
 public void removeColumn(int colIdx) {
 _table.getTblGrid().removeGridCol(colIdx);
-for(CTTableRow row : _table.getTrList()) {
-row.removeTc(colIdx);
+for(XSLFTableRow row : _rows) {
+row.removeCell(colIdx);
 }
 updateRowColIndexes();
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java?rev=1871061=1871060=1871061=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableRow.java 
Sun Dec  8 22:23:17 2019
@@ -51,6 +51,7 @@ public class XSLFTableRow implements Ite
 return _row;
 }
 
+@Override
 public Iterator iterator(){
 return _cells.iterator();
 }
@@ -74,12 +75,41 @@ public class XSLFTableRow implements Ite
 _cells.add(cell);
 
 if(_table.getNumberOfColumns() < _row.sizeOfTcArray()) {
-
_table.getCTTable().getTblGrid().addNewGridCol().setW(Units.toEMU(100.0));
+
_table.getCTTable().getTblGrid().addNewGridCol().setW(Units.toEMU(100.0));
 }
 _table.updateRowColIndexes();
 return cell;
 }
-
+
+/**
+ * Insert a new cell at the given index.
+ * @param colIdx the column index.
+ * @since POI 4.1.2
+ */
+public XSLFTableCell insertCell(int colIdx){
+CTTableCell c = _row.insertNewTc(colIdx);
+c.set(XSLFTableCell.prototype());
+XSLFTableCell cell = new XSLFTableCell(c, _table);
+_cells.add(colIdx, cell);
+
+if(_table.getNumberOfColumns() < _row.sizeOfTcArray()) {
+
_table.getCTTable().getTblGrid().insertNewGridCol(colIdx).setW(Units.toEMU(100.0));
+}
+_table.updateRowColIndexes();
+return cell;
+}
+
+/**
+ * Remove the cell at the given index.
+ * @param colIdx the column index.
+ * @since POI 4.1.2
+ */
+public void removeCell(int colIdx){
+_row.removeTc(colIdx);
+_cells.remove(colIdx);
+_table.updateRowColIndexes();
+}
+
 /**
  * Merge cells of a table row, inclusive.
  * Indices are 0-based.

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=1871061=1871060=1871061=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 
Sun Dec  8 22:23:17 2019
@@ -70,9 +70,11 @@ public class TestXSLFTable {
 
 tab.insertCo

svn commit: r1871012 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java ooxml/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java

2019-12-07 Thread abearez
Author: abearez
Date: Sat Dec  7 23:39:20 2019
New Revision: 1871012

URL: http://svn.apache.org/viewvc?rev=1871012=rev
Log:
Retrieve chart from graphical frame

Modified:

poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java?rev=1871012=1871011=1871012=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
Sat Dec  7 23:39:20 2019
@@ -21,6 +21,7 @@ package org.apache.poi.xslf.usermodel;
 
 import java.awt.geom.Rectangle2D;
 import java.io.BufferedReader;
+import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.FileReader;
 import java.io.OutputStream;
@@ -95,6 +96,20 @@ public class ChartFromScratch {
 ppt.write(out);
 }
 }
+try (FileInputStream is = new 
FileInputStream("chart-from-scratch.pptx")) {
+try (XMLSlideShow ppt = new XMLSlideShow(is)) {
+for (XSLFSlide slide : ppt.getSlides()) {
+for (XSLFShape shape : slide.getShapes()) {
+if (shape instanceof XSLFGraphicFrame) {
+XSLFGraphicFrame frame = (XSLFGraphicFrame) 
shape;
+if (frame.hasChart()) {
+
System.out.println(frame.getChart().getTitleShape().getText());
+}
+}
+}
+}
+}
+}
 }
 System.out.println("Done");
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java?rev=1871012=1871011=1871012=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java 
Sat Dec  7 23:39:20 2019
@@ -47,6 +47,7 @@ import org.openxmlformats.schemas.presen
 
 @Beta
 public class XSLFGraphicFrame extends XSLFShape implements 
GraphicalFrame {
+private static final String DRAWINGML_CHART_URI = 
"http://schemas.openxmlformats.org/drawingml/2006/chart;;
 private static final POILogger LOG = 
POILogFactory.getLogger(XSLFGraphicFrame.class);
 
 /*package*/ XSLFGraphicFrame(CTGraphicalObjectFrame shape, XSLFSheet 
sheet){
@@ -97,7 +98,7 @@ public class XSLFGraphicFrame extends XS
 return new XSLFGraphicFrame(shape, sheet);
 }
 }
-
+
 private static String getUri(CTGraphicalObjectFrame shape) {
 final CTGraphicalObject g = shape.getGraphic();
 if (g == null) {
@@ -160,15 +161,45 @@ public class XSLFGraphicFrame extends XS
return false;
 }
 
+public boolean hasChart() {
+String uri = getGraphicalData().getUri();
+return uri.equals(DRAWINGML_CHART_URI);
+}
+
+private CTGraphicalObjectData getGraphicalData() {
+return 
((CTGraphicalObjectFrame)getXmlObject()).getGraphic().getGraphicData();
+}
+
+public XSLFChart getChart() {
+if (hasChart()) {
+String id = null;
+String xpath = "declare namespace c='" + DRAWINGML_CHART_URI + "' 
c:chart";
+XmlObject[] obj = getGraphicalData().selectPath(xpath);
+if (obj != null && obj.length == 1) {
+XmlCursor c = obj[0].newCursor();
+QName idQualifiedName = new 
QName("http://schemas.openxmlformats.org/officeDocument/2006/relationships;, 
"id");
+id = c.getAttributeText(idQualifiedName);
+c.dispose();
+}
+if (id == null) {
+return null;
+} else {
+return (XSLFChart) getSheet().getRelationById(id);
+}
+} else {
+return null;
+}
+}
+
 @Override
 void copy(XSLFShape sh){
 super.copy(sh);
 
-CTGraphicalObjectData data = 
((CTGraphicalObjectFrame)getXmlObject()).getGraphic().getGraphicData();
+CTGraphicalObjectData data = getGraphicalData();
 String uri = data.getUri();
 
if(uri.equals("http://schemas.openxmlformats.org/drawingml/2006/diagram;)){
 copyDiagram(data, (XSLFGraphicFrame)sh);
-   

svn commit: r1871010 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/java/org/apache/poi/xwpf/usermodel/

2019-12-07 Thread abearez
Author: abearez
Date: Sat Dec  7 23:10:32 2019
New Revision: 1871010

URL: http://svn.apache.org/viewvc?rev=1871010=rev
Log:
Miscellaneous fixes for chart functionalities

Modified:

poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFDocument.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java?rev=1871010=1871009=1871010=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
Sat Dec  7 23:10:32 2019
@@ -87,11 +87,9 @@ public class ChartFromScratch {
 Double[] values2 = listSpeakers.toArray(new Double[0]);
 
 try (XMLSlideShow ppt = new XMLSlideShow()) {
-XSLFSlide slide = ppt.createSlide();
-XSLFChart chart = ppt.createChart();
-Rectangle2D rect2D = new java.awt.Rectangle(fromCM(1.5), 
fromCM(4), fromCM(22), fromCM(14));
-slide.addChart(chart, rect2D);
-setBarData(chart, chartTitle, series, categories, values1, 
values2);
+createSlideWithChart(ppt, chartTitle, series, categories, 
values1, values2);
+createSlideWithChart(ppt, chartTitle, series, categories, 
values1, values2);
+createSlideWithChart(ppt, chartTitle, series, categories, 
values1, values2);
 // save the result
 try (OutputStream out = new 
FileOutputStream("chart-from-scratch.pptx")) {
 ppt.write(out);
@@ -101,6 +99,15 @@ public class ChartFromScratch {
 System.out.println("Done");
 }
 
+private static void createSlideWithChart(XMLSlideShow ppt, String 
chartTitle, String[] series, String[] categories,
+Double[] values1, Double[] values2) {
+XSLFSlide slide = ppt.createSlide();
+XSLFChart chart = ppt.createChart();
+Rectangle2D rect2D = new java.awt.Rectangle(fromCM(1.5), fromCM(4), 
fromCM(22), fromCM(14));
+slide.addChart(chart, rect2D);
+setBarData(chart, chartTitle, series, categories, values1, values2);
+}
+
 private static int fromCM(double cm) {
 return (int) (Math.rint(cm * Units.EMU_PER_CENTIMETER));
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java?rev=1871010=1871009=1871010=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
 Sat Dec  7 23:10:32 2019
@@ -212,6 +212,7 @@ public class XDDFCategoryAxis extends XD
 final long id = getNextAxId(plotArea);
 ctCatAx = plotArea.addNewCatAx();
 ctCatAx.addNewAxId().setVal(id);
+ctCatAx.addNewAuto().setVal(false);
 ctCatAx.addNewAxPos();
 ctCatAx.addNewScaling();
 ctCatAx.addNewCrosses();
@@ -220,6 +221,8 @@ public class XDDFCategoryAxis extends XD
 ctCatAx.addNewDelete();
 ctCatAx.addNewMajorTickMark();
 ctCatAx.addNewMinorTickMark();
+ctCatAx.addNewNumFmt().setSourceLinked(true);
+ctCatAx.getNumFmt().setFormatCode("");
 
 setPosition(position);
 setOrientation(AxisOrientation.MIN_MAX);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java?rev=1871010=1871009=1871010=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java 
Sat Dec  7 23:10:32 2019
@@ -236,6 +236,7 @@ public class XDDFDateAxis extends XDDFCh
 final long id = getNextAxId(plotArea);
 ctDateAx = plotArea.addNewDateAx();
 ctDateAx.addNewAxId().setVal(id);
+ctDateAx.addNewAuto().setVal(false);
 ctDateAx.addNewAxPos();
 ctDateAx.addNewScaling();
 ctDateAx.addNewCrosses();
@@ -244,6 +245,8 @@ public class XDDFDateAxis extends XDDFCh
 ctDateAx.addNewDelete();
   

svn commit: r1870696 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/chart/

2019-12-01 Thread abearez
Author: abearez
Date: Mon Dec  2 00:15:34 2019
New Revision: 1870696

URL: http://svn.apache.org/viewvc?rev=1870696=rev
Log:
Fix examples to build chart from scratch

Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/ChartFromScratch.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1870696=1870695=1870696=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Mon Dec  2 00:15:34 2019
@@ -105,7 +105,7 @@ public class BarChartDemo {
 final String valuesDataRange2 = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, columnSpeakers, columnSpeakers));
 final XDDFDataSource categoriesData = 
XDDFDataSourcesFactory.fromArray(categories, categoryDataRange, 
columnLanguages);
 final XDDFNumericalDataSource valuesData = 
XDDFDataSourcesFactory.fromArray(values1, valuesDataRange, columnCountries);
-values1[6] = 16.0; // if you ever want to change the underlying data
+values1[6] = 16.0; // if you ever want to change the underlying data, 
it has to be done before building the data source
 final XDDFNumericalDataSource valuesData2 = 
XDDFDataSourcesFactory.fromArray(values2, valuesDataRange2, columnSpeakers);
 
 XDDFChartData.Series series1 = bar.getSeries(0);

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java?rev=1870696=1870695=1870696=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
Mon Dec  2 00:15:34 2019
@@ -28,13 +28,16 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.util.Units;
+import org.apache.poi.xddf.usermodel.chart.AxisCrossBetween;
 import org.apache.poi.xddf.usermodel.chart.AxisCrosses;
 import org.apache.poi.xddf.usermodel.chart.AxisPosition;
+import org.apache.poi.xddf.usermodel.chart.AxisTickMark;
 import org.apache.poi.xddf.usermodel.chart.BarDirection;
+import org.apache.poi.xddf.usermodel.chart.BarGrouping;
 import org.apache.poi.xddf.usermodel.chart.ChartTypes;
 import org.apache.poi.xddf.usermodel.chart.LegendPosition;
 import org.apache.poi.xddf.usermodel.chart.XDDFBarChartData;
-import org.apache.poi.xddf.usermodel.chart.XDDFChart;
 import org.apache.poi.xddf.usermodel.chart.XDDFChartAxis;
 import org.apache.poi.xddf.usermodel.chart.XDDFChartLegend;
 import org.apache.poi.xddf.usermodel.chart.XDDFDataSource;
@@ -47,7 +50,7 @@ import org.apache.poi.xddf.usermodel.cha
  */
 public class ChartFromScratch {
 private static void usage(){
-System.out.println("Usage: BarChartExample ");
+System.out.println("Usage: ChartFromScratch ");
 System.out.println("bar-chart-data.txt  the model to set. 
First line is chart title, " +
 "then go pairs {axis-label value}");
 }
@@ -86,8 +89,7 @@ public class ChartFromScratch {
 try (XMLSlideShow ppt = new XMLSlideShow()) {
 XSLFSlide slide = ppt.createSlide();
 XSLFChart chart = ppt.createChart();
-Rectangle2D rect2D = new 
java.awt.Rectangle(XDDFChart.DEFAULT_X, XDDFChart.DEFAULT_Y,
-XDDFChart.DEFAULT_WIDTH, XDDFChart.DEFAULT_HEIGHT);
+Rectangle2D rect2D = new java.awt.Rectangle(fromCM(1.5), 
fromCM(4), fromCM(22), fromCM(14));
 slide.addChart(chart, rect2D);
 setBarData(chart, chartTitle, series, categories, values1, 
values2);
 // save the result
@@ -99,6 +101,10 @@ public class ChartFromScratch {
 System.out.println("Done");
 }
 
+private static int fromCM(double cm) {
+return (int) (Math.rint(cm * Units.EMU_PER_CENTIMETER));
+}
+
 private static void setBarData(XSLFChart chart, String chartTitle, 
String[] series, String[] categories, Double[] values1, Double[] values2) {
 

svn commit: r1870627 - /poi/site/src/documentation/content/xdocs/changes.xml

2019-11-30 Thread abearez
Author: abearez
Date: Sat Nov 30 15:46:24 2019
New Revision: 1870627

URL: http://svn.apache.org/viewvc?rev=1870627=rev
Log:
Add Doughnut chart data series support

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1870627=1870626=1870627=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Sat Nov 30 15:46:24 
2019
@@ -91,6 +91,7 @@
 Fix 
texture fill - scale stretched images correctly
 Add, insert and remove 
columns on XSLFTable
 Produce 
valid PPTX file with several chart series
+Add Doughnut chart data 
series support
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1870628 - in /poi/trunk/src/ooxml: java/org/apache/poi/xddf/usermodel/chart/ testcases/org/apache/poi/xddf/usermodel/

2019-11-30 Thread abearez
Author: abearez
Date: Sat Nov 30 15:46:48 2019
New Revision: 1870628

URL: http://svn.apache.org/viewvc?rev=1870628=rev
Log:
Add Doughnut chart data series to XDDF

Added:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java
Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/TestNecessaryOOXMLClasses.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java?rev=1870628=1870627=1870628=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java 
Sat Nov 30 15:46:48 2019
@@ -21,6 +21,7 @@ public enum ChartTypes {
 AREA3D,
 BAR,
 BAR3D,
+DOUGHNUT,
 LINE,
 LINE3D,
 PIE,

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1870628=1870627=1870628=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Sat Nov 30 15:46:48 2019
@@ -65,6 +65,7 @@ import org.openxmlformats.schemas.drawin
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTChart;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpace;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTDateAx;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTDoughnutChart;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTLine3DChart;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTLineChart;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTPie3DChart;
@@ -426,6 +427,11 @@ public abstract class XDDFChart extends
 series.add(new XDDFBar3DChartData(this, barChart, categories, 
values));
 }
 
+for (int i = 0; i < plotArea.sizeOfDoughnutChartArray(); i++) {
+CTDoughnutChart doughnutChart = plotArea.getDoughnutChartArray(i);
+series.add(new XDDFDoughnutChartData(this, doughnutChart));
+}
+
 for (int i = 0; i < plotArea.sizeOfLineChartArray(); i++) {
 CTLineChart lineChart = plotArea.getLineChartArray(i);
 series.add(new XDDFLineChartData(this, lineChart, categories, 
values));
@@ -465,7 +471,7 @@ public abstract class XDDFChart extends
 CTSurface3DChart surfaceChart = plotArea.getSurface3DChartArray(i);
 series.add(new XDDFSurface3DChartData(this, surfaceChart, 
categories, values));
 }
-// TODO repeat above code for missing charts: Bubble, Doughnut, OfPie 
and Stock
+// TODO repeat above code for missing charts: Bubble, OfPie and Stock
 
 seriesCount = series.size();
 return series;
@@ -578,6 +584,8 @@ public abstract class XDDFChart extends
 return new XDDFBarChartData(this, plotArea.addNewBarChart(), 
categories, mapValues);
 case BAR3D:
 return new XDDFBar3DChartData(this, plotArea.addNewBar3DChart(), 
categories, mapValues);
+case DOUGHNUT:
+return new XDDFDoughnutChartData(this, 
plotArea.addNewDoughnutChart());
 case LINE:
 return new XDDFLineChartData(this, plotArea.addNewLineChart(), 
categories, mapValues);
 case LINE3D:
@@ -594,7 +602,7 @@ public abstract class XDDFChart extends
 return new XDDFSurfaceChartData(this, 
plotArea.addNewSurfaceChart(), categories, mapValues);
 case SURFACE3D:
 return new XDDFSurface3DChartData(this, 
plotArea.addNewSurface3DChart(), categories, mapValues);
-// TODO repeat above code for missing charts: Bubble, Doughnut, OfPie 
and Stock
+// TODO repeat above code for missing charts: Bubble, OfPie and Stock
 default:
 return null;
 }

Added: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java?rev=1870628=auto
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java
 (added)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDoughnutChartData.java
 Sat Nov 30 15:46:48 2019
@@ -0,0 

svn commit: r1870617 - /poi/site/src/documentation/content/xdocs/changes.xml

2019-11-30 Thread abearez
Author: abearez
Date: Sat Nov 30 10:51:33 2019
New Revision: 1870617

URL: http://svn.apache.org/viewvc?rev=1870617=rev
Log:
Fix 63889 for valid PPTX file with various series

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1870617=1870616=1870617=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Sat Nov 30 10:51:33 
2019
@@ -90,6 +90,7 @@
   
 Fix 
texture fill - scale stretched images correctly
 Add, insert and remove 
columns on XSLFTable
+Produce 
valid PPTX file with several chart series
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1870604 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ ooxml/java/org/apache/poi/xddf/usermodel/chart/

2019-11-29 Thread abearez
Author: abearez
Date: Sat Nov 30 01:20:23 2019
New Revision: 1870604

URL: http://svn.apache.org/viewvc?rev=1870604=rev
Log:
Bug 63889: BarChartDemo now produces a valid file

Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1870604=1870603=1870604=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Sat Nov 30 01:20:23 2019
@@ -100,23 +100,27 @@ public class BarChartDemo {
 final XDDFBarChartData bar = (XDDFBarChartData) data.get(0);
 
 final int numOfPoints = categories.length;
-final String categoryDataRange = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, 0, 0));
-final String valuesDataRange = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, 1, 1));
-final String valuesDataRange2 = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, 2, 2));
-final XDDFDataSource categoriesData = 
XDDFDataSourcesFactory.fromArray(categories, categoryDataRange, 0);
-final XDDFNumericalDataSource valuesData = 
XDDFDataSourcesFactory.fromArray(values1, valuesDataRange, 1);
+final String categoryDataRange = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, columnLanguages, columnLanguages));
+final String valuesDataRange = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, columnCountries, columnCountries));
+final String valuesDataRange2 = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, columnSpeakers, columnSpeakers));
+final XDDFDataSource categoriesData = 
XDDFDataSourcesFactory.fromArray(categories, categoryDataRange, 
columnLanguages);
+final XDDFNumericalDataSource valuesData = 
XDDFDataSourcesFactory.fromArray(values1, valuesDataRange, columnCountries);
 values1[6] = 16.0; // if you ever want to change the underlying data
-final XDDFNumericalDataSource valuesData2 = 
XDDFDataSourcesFactory.fromArray(values2, valuesDataRange2, 2);
+final XDDFNumericalDataSource valuesData2 = 
XDDFDataSourcesFactory.fromArray(values2, valuesDataRange2, columnSpeakers);
 
 XDDFChartData.Series series1 = bar.getSeries(0);
 series1.replaceData(categoriesData, valuesData);
-series1.setTitle(series[0], chart.setSheetTitle(series[0], 0));
+series1.setTitle(series[0], chart.setSheetTitle(series[0], 
columnCountries));
 XDDFChartData.Series series2 = bar.addSeries(categoriesData, 
valuesData2);
-series2.setTitle(series[1], chart.setSheetTitle(series[1], 1));
+series2.setTitle(series[1], chart.setSheetTitle(series[1], 
columnSpeakers));
 
 chart.plot(bar);
 chart.setTitleText(chartTitle); // 
https://stackoverflow.com/questions/30532612
 // chart.setTitleOverlay(overlay);
+
+// adjust font size for readability
+bar.getCategoryAxis().getOrAddTextProperties().setFontSize(11.5);
+chart.getTitle().getOrAddTextProperties().setFontSize(18.2);
 }
 
 private static void setColumnData(XSLFChart chart, String chartTitle) {
@@ -150,4 +154,8 @@ public class BarChartDemo {
 }
 return chart;
 }
+
+private static final int columnLanguages = 0;
+private static final int columnCountries = 1;
+private static final int columnSpeakers = 2;
 }

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java?rev=1870604=1870603=1870604=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
Sat Nov 30 01:20:23 2019
@@ -93,7 +93,7 @@ public class ChartFromScratch {
 slide.addChart(chart, rect2D);
 setBarData(chart, chartTitle, series, categories, values1, 
values2);
 // save the result
-try (OutputStream out = new 
FileOutputStream("bar-chart-demo-output.pptx")) {
+try (OutputStream out = new 
FileOutputStream("chart-from-scratch.pptx")) {
 ppt.write(out);
 }
 }
@@ -114,21 +114,21 @@ public cl

svn commit: r1870603 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/

2019-11-29 Thread abearez
Author: abearez
Date: Sat Nov 30 01:20:20 2019
New Revision: 1870603

URL: http://svn.apache.org/viewvc?rev=1870603=rev
Log:
Clean-up code for more recent chart types

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLine3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPie3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurface3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurfaceChartData.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java?rev=1870603=1870602=1870603=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java
 Sat Nov 30 01:20:20 2019
@@ -126,7 +126,7 @@ public class XDDFArea3DChartData extends
 @Override
 public XDDFChartData.Series addSeries(XDDFDataSource category,
 XDDFNumericalDataSource values) {
-final int index = this.series.size();
+final long index = this.parent.incrementSeriesCount();
 final CTAreaSer ctSer = this.chart.addNewSer();
 ctSer.addNewCat();
 ctSer.addNewVal();

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java?rev=1870603=1870602=1870603=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java
 Sat Nov 30 01:20:20 2019
@@ -104,7 +104,7 @@ public class XDDFAreaChartData extends X
 @Override
 public XDDFChartData.Series addSeries(XDDFDataSource category,
 XDDFNumericalDataSource values) {
-final int index = this.series.size();
+final long index = this.parent.incrementSeriesCount();
 final CTAreaSer ctSer = this.chart.addNewSer();
 ctSer.addNewCat();
 ctSer.addNewVal();

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java?rev=1870603=1870602=1870603=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
 Sat Nov 30 01:20:20 2019
@@ -181,7 +181,7 @@ public class XDDFBar3DChartData extends
 @Override
 public XDDFChartData.Series addSeries(XDDFDataSource category,
 XDDFNumericalDataSource values) {
-final int index = this.series.size();
+final long index = this.parent.incrementSeriesCount();
 final CTBarSer ctSer = this.chart.addNewSer();
 ctSer.addNewTx();
 ctSer.addNewCat();

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1870603=1870602=1870603=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Sat Nov 30 01:20:20 2019
@@ -380,7 +380,7 @@ public abstract class XDDFChart extends
 }
 
 public XDDFManualLayout getOrAddManualLayout() {
-return new XDDFManualLayout(chart.getPlotArea());
+return new XDDFManualLayout(getCTPlotArea());
 }
 
 private long seriesCount = 0;
@@ -390,7 +390,8 @@ public abstract class XDDFChart extends
 
 public void plot(XDDFChartData data) {
 XSSFSheet sheet = getSheet();
-for (XDDFChartData.Series series : data.getSeries()) {
+for (int idx = 0; idx < data.getSeriesCount(); idx++) {
+XDDFChartData.Series series = data.getSeries(

svn commit: r1870602 - in /poi/trunk/src/ooxml: java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java

2019-11-29 Thread abearez
Author: abearez
Date: Sat Nov 30 01:20:16 2019
New Revision: 1870602

URL: http://svn.apache.org/viewvc?rev=1870602=rev
Log:
Add test to remove chart data series

Added:

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java?rev=1870602=1870601=1870602=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java 
Sat Nov 30 01:20:16 2019
@@ -99,7 +99,7 @@ public abstract class XDDFChartData {
  */
 @Deprecated
 public List getSeries() {
-return series;
+return Collections.unmodifiableList(series);
 }
 
 public final int getSeriesCount() {

Added: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java?rev=1870602=auto
==
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
 (added)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/chart/TestXDDFChartRemoveSeries.java
 Sat Nov 30 01:20:16 2019
@@ -0,0 +1,191 @@
+/* 
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+ */
+package org.apache.poi.xddf.usermodel.chart;
+
+import static org.junit.Assert.assertEquals;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Locale;
+
+import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
+import org.apache.poi.xssf.usermodel.XSSFDrawing;
+import org.apache.poi.xssf.usermodel.XSSFSheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Test case for bug 63153
+ */
+public class TestXDDFChartRemoveSeries {
+final File resultDir = new File("build/custom-reports-test");
+String procName = null;
+String fileName = null;
+XSSFWorkbook workbook = null;
+XSSFSheet sheet = null;
+XDDFScatterChartData chartData = null;
+XDDFChart chart = null;
+final int MAX_NUM_SERIES = 1;
+
+public TestXDDFChartRemoveSeries() {
+resultDir.mkdirs();
+}
+
+/**
+ * This creates a workbook with one worksheet, which contains a single
+ * scatter chart.
+ */
+@Before
+public void setup() {
+final boolean bDebug = false;
+workbook = new XSSFWorkbook();
+sheet = workbook.createSheet();
+
+final XSSFDrawing xssfDrawing = sheet.createDrawingPatriarch();
+final XSSFClientAnchor anchor = xssfDrawing.createAnchor(0, 0, 0, 0, 
1, 5, 20, 20);
+if (bDebug) {
+return;
+}
+chart = xssfDrawing.createChart(anchor);
+final XDDFValueAxis bottomAxis = 
chart.createValueAxis(AxisPosition.BOTTOM);
+final XDDFValueAxis leftAxis = 
chart.createValueAxis(AxisPosition.LEFT);
+
+// Initialize data data sources
+
+final Double dX[] = new Double[5];
+final Double dY1[] = new Double[5];
+final Double dY2[] = new Double[5];
+
+for (int n = 0; n < 5; ++n) {
+dX[n] = (double) n;
+dY1[n] = 2.0 * n;
+dY2[n] = (double) (n * n);
+
+}
+
+final XDDFNumericalDataSource xData = 
XDDFDataSourcesFactory.fromArray(dX, null);
+final XDDFNumericalDataSource yData1 = 
XDDFDataSourcesFactory.fromArray(dY1, null);
+final XDDFNumericalDataSource yData2 = 
XDDFDataS

svn commit: r1870523 - in /poi/trunk/src/ooxml: java/org/apache/poi/xslf/usermodel/XSLFTable.java testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java

2019-11-27 Thread abearez
Author: abearez
Date: Thu Nov 28 00:51:43 2019
New Revision: 1870523

URL: http://svn.apache.org/viewvc?rev=1870523=rev
Log:
Fix addition and removal of columns in XSLTTable

Modified:
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/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=1870523=1870522=1870523=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 Thu 
Nov 28 00:51:43 2019
@@ -179,6 +179,9 @@ public class XSLFTable extends XSLFGraph
 long width = 
_table.getTblGrid().getGridColArray(_table.getTblGrid().sizeOfGridColArray() - 
1).getW();
 CTTableCol col = _table.getTblGrid().addNewGridCol();
 col.setW(width);
+for(CTTableRow row : _table.getTrList()) {
+row.addNewTc();
+}
 updateRowColIndexes();
 }
 
@@ -194,6 +197,9 @@ public class XSLFTable extends XSLFGraph
 long width = _table.getTblGrid().getGridColArray(colIdx).getW();
 CTTableCol col = _table.getTblGrid().insertNewGridCol(colIdx);
 col.setW(width);
+for(CTTableRow row : _table.getTrList()) {
+row.insertNewTc(colIdx);
+}
 updateRowColIndexes();
 }
 
@@ -204,6 +210,9 @@ public class XSLFTable extends XSLFGraph
  */
 public void removeColumn(int colIdx) {
 _table.getTblGrid().removeGridCol(colIdx);
+for(CTTableRow row : _table.getTrList()) {
+row.removeTc(colIdx);
+}
 updateRowColIndexes();
 }
 

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=1870523=1870522=1870523=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 
Thu Nov 28 00:51:43 2019
@@ -71,6 +71,7 @@ public class TestXSLFTable {
 tab.insertColumn(0);
 assertEquals(tab.getColumnWidth(1), tab.getColumnWidth(0), 
0.1);
 tab.addColumn();
+tab.getCell(0, data[0].length + 1);
 assertEquals(tab.getColumnWidth(tab.getNumberOfColumns() - 2), 
tab.getColumnWidth(tab.getNumberOfColumns() - 1), 0.1);
 tab.removeColumn(0);
 tab.removeColumn(tab.getNumberOfColumns() - 1);



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1870487 - /poi/site/src/documentation/content/xdocs/changes.xml

2019-11-26 Thread abearez
Author: abearez
Date: Wed Nov 27 04:55:31 2019
New Revision: 1870487

URL: http://svn.apache.org/viewvc?rev=1870487=rev
Log:
Add, insert and remove columns on XSLFTable

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1870487=1870486=1870487=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed Nov 27 04:55:31 
2019
@@ -89,6 +89,7 @@
 
   
 Fix 
texture fill - scale stretched images correctly
+Add, insert and remove 
columns on XSLFTable
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1870486 - in /poi/trunk/src/ooxml: java/org/apache/poi/xslf/usermodel/XSLFTable.java testcases/org/apache/poi/xslf/usermodel/TestXSLFTable.java

2019-11-26 Thread abearez
Author: abearez
Date: Wed Nov 27 04:54:34 2019
New Revision: 1870486

URL: http://svn.apache.org/viewvc?rev=1870486=rev
Log:
Add, insert and remove columns on XSLFTable

Modified:
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/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=1870486=1870485=1870486=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 Wed 
Nov 27 04:54:34 2019
@@ -39,6 +39,7 @@ import org.apache.xmlbeans.impl.values.X
 import org.openxmlformats.schemas.drawingml.x2006.main.CTGraphicalObjectData;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTNonVisualDrawingProps;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTTable;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTableCol;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTTableRow;
 import 
org.openxmlformats.schemas.presentationml.x2006.main.CTGraphicalObjectFrame;
 import 
org.openxmlformats.schemas.presentationml.x2006.main.CTGraphicalObjectFrameNonVisual;
@@ -62,7 +63,7 @@ public class XSLFTable extends XSLFGraph
 if (!xc.toChild(XSLFRelation.NS_DRAWINGML, "tbl")) {
 throw new IllegalStateException("a:tbl element was not found 
in\n " + god);
 }
-
+
 XmlObject xo = xc.getObject();
 // Pesky XmlBeans bug - see Bugzilla #49934
 // it never happens when using the full ooxml-schemas jar but may 
happen with the abridged poi-ooxml-schemas
@@ -104,7 +105,7 @@ public class XSLFTable extends XSLFGraph
 // cell can be potentially empty ...
 return cells.get(col);
 }
-
+
 @Internal
 public CTTable getCTTable(){
 return _table;
@@ -135,12 +136,13 @@ public class XSLFTable extends XSLFGraph
 public double getRowHeight(int row) {
 return Units.toPoints(_table.getTrArray(row).getH());
 }
-
+
 @Override
 public void setRowHeight(int row, double height) {
 _table.getTrArray(row).setH(Units.toEMU(height));
 }
-
+
+@Override
 public Iterator iterator(){
 return _rows.iterator();
 }
@@ -153,7 +155,7 @@ public class XSLFTable extends XSLFGraph
 CTTableRow tr = _table.addNewTr();
 XSLFTableRow row = new XSLFTableRow(tr, this);
 // default height is 20 points
-row.setHeight(20.0);
+row.setHeight(20.0);
 _rows.add(row);
 updateRowColIndexes();
 return row;
@@ -169,6 +171,42 @@ public class XSLFTable extends XSLFGraph
 updateRowColIndexes();
 }
 
+/**
+ * Add a new column at the end of the table.
+ * @since POI 4.1.2
+ */
+public void addColumn() {
+long width = 
_table.getTblGrid().getGridColArray(_table.getTblGrid().sizeOfGridColArray() - 
1).getW();
+CTTableCol col = _table.getTblGrid().addNewGridCol();
+col.setW(width);
+updateRowColIndexes();
+}
+
+/**
+ * Insert a new column at the given index.
+ * @param colIdx the column index.
+ * @since POI 4.1.2
+ */
+public void insertColumn(int colIdx) {
+if (_table.getTblGrid().sizeOfGridColArray() < colIdx) {
+throw new IndexOutOfBoundsException("Cannot insert column at " + 
colIdx + "; table has only " + _table.getTblGrid().sizeOfGridColArray() + 
"columns.");
+}
+long width = _table.getTblGrid().getGridColArray(colIdx).getW();
+CTTableCol col = _table.getTblGrid().insertNewGridCol(colIdx);
+col.setW(width);
+updateRowColIndexes();
+}
+
+/**
+ * Remove the column at the given index.
+ * @param colIdx the column index.
+ * @since POI 4.1.2
+ */
+public void removeColumn(int colIdx) {
+_table.getTblGrid().removeGridCol(colIdx);
+updateRowColIndexes();
+}
+
 static CTGraphicalObjectFrame prototype(int shapeId){
 CTGraphicalObjectFrame frame = 
CTGraphicalObjectFrame.Factory.newInstance();
 CTGraphicalObjectFrameNonVisual nvGr = frame.addNewNvGraphicFramePr();
@@ -184,12 +222,12 @@ public class XSLFTable extends XSLFGraph
 XmlCursor grCur = gr.newCursor();
 grCur.toNextToken();
 grCur.beginElement(new QName(XSLFRelation.NS_DRAWINGML, "tbl"));
-
+
 CTTable tbl = CTTable.Factory.newInstance();
 tbl.addNewTblPr();
 tbl.addNewTblGrid();
 XmlCursor tblCur = tbl.newCursor();
-
+
 tblCur.moveXmlContents(grCur);
 tblCur.dispose(

svn commit: r1860311 - in /poi/trunk/src: examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

2019-05-28 Thread abearez
Author: abearez
Date: Wed May 29 01:05:26 2019
New Revision: 1860311

URL: http://svn.apache.org/viewvc?rev=1860311=rev
Log:
remove code smells

Modified:

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java?rev=1860311=1860310=1860311=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java
 Wed May 29 01:05:26 2019
@@ -183,48 +183,51 @@ class ExcelChartWithTargetLine {
 
barCategories.getOrAddShapeProperties().setLineProperties(categoriesProps);
 }
 
-public static void main(String[] args) throws Exception {
-
-XSSFWorkbook workbook = new XSSFWorkbook();
-XSSFSheet sheet = workbook.createSheet("targetline");
-final int NUM_OF_COLUMNS = 4;
-
-// create some data
-XSSFRow row;
-XSSFCell cell;
-String[] headings = new String[] { "Year", "Male", "Female", "Other" };
-int rowIndex = 0;
-row = sheet.createRow(rowIndex);
-for (int colIndex = 0; colIndex < NUM_OF_COLUMNS; colIndex++) {
-cell = row.createCell(colIndex);
-cell.setCellValue(headings[colIndex]);
+private static XSSFClientAnchor createAnchor(XSSFDrawing drawing, int[] 
chartedCols) {
+if (chartedCols.length > 1) {
+return drawing.createAnchor(0, 0, 0, 0, 0, 8, 10, 23);
+} else {
+return drawing.createAnchor(0, 0, 0, 0, 0, 8, 5, 23);
 }
-double[][] values = new double[][] { new double[] { 1980, 56.0, 44.1, 
12.2 },
-new double[] { 1985, 34.5, 41.0, 4 }, new double[] { 1990, 
65.0, 68.5, 9.1 },
-new double[] { 1995, 34.7, 47.6, 4.9 }, new double[] { 2000, 
23.0, 64.5, 11.1 },
-new double[] { 2005, 56.3, 69.8, 9.5 } };
-for (; rowIndex < NUM_OF_ROWS; rowIndex++) {
-row = sheet.createRow(rowIndex + 1);
+}
+
+public static void main(String[] args) throws Exception {
+try (XSSFWorkbook workbook = new XSSFWorkbook()) {
+XSSFSheet sheet = workbook.createSheet("targetline");
+final int NUM_OF_COLUMNS = 4;
+
+// create some data
+XSSFRow row;
+XSSFCell cell;
+String[] headings = new String[] { "Year", "Male", "Female", 
"Other" };
+int rowIndex = 0;
+row = sheet.createRow(rowIndex);
 for (int colIndex = 0; colIndex < NUM_OF_COLUMNS; colIndex++) {
 cell = row.createCell(colIndex);
-cell.setCellValue(values[rowIndex][colIndex]);
+cell.setCellValue(headings[colIndex]);
+}
+double[][] values = new double[][] { new double[] { 1980, 56.0, 
44.1, 12.2 },
+new double[] { 1985, 34.5, 41.0, 4 }, new double[] { 1990, 
65.0, 68.5, 9.1 },
+new double[] { 1995, 34.7, 47.6, 4.9 }, new double[] { 
2000, 23.0, 64.5, 11.1 },
+new double[] { 2005, 56.3, 69.8, 9.5 } };
+for (; rowIndex < NUM_OF_ROWS; rowIndex++) {
+row = sheet.createRow(rowIndex + 1);
+for (int colIndex = 0; colIndex < NUM_OF_COLUMNS; colIndex++) {
+cell = row.createCell(colIndex);
+cell.setCellValue(values[rowIndex][colIndex]);
+}
 }
-}
 
-int[] chartedCols = new int[] {  1,  2  , 3  };
+int[] chartedCols = new int[] {  1,  2  , 3  };
 
-XSSFDrawing drawing = sheet.createDrawingPatriarch();
-XSSFClientAnchor anchor = null;
-if (chartedCols.length > 1) {
-anchor = drawing.createAnchor(0, 0, 0, 0, 0, 8, 10, 23);
-} else {
-anchor = drawing.createAnchor(0, 0, 0, 0, 0, 8, 5, 23);
-}
-XSSFChart chart = drawing.createChart(anchor);
-createChart(chart, sheet, chartedCols, 42.0);
-
-workbook.write(new FileOutputStream("ExcelChartWithTargetLine.xlsx"));
-workbook.close();
+XSSFDrawing drawing = sheet.createDrawingPatriarch();
+XSSFClientAnchor anchor = createAnchor(drawing, chartedCols);
+XSSFChart chart = drawing.createChart(anchor);
+createChart(chart, sheet, chartedCols, 42.0);
 
+  

svn commit: r1859676 - in /poi/trunk/src: examples/src/org/apache/poi/xssf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/java/org/

2019-05-21 Thread abearez
Author: abearez
Date: Tue May 21 23:28:15 2019
New Revision: 1859676

URL: http://svn.apache.org/viewvc?rev=1859676=rev
Log:
code inspired from Axel Richter on StackOverflow

closes #139
closes #144

Added:

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ExcelChartWithTargetLine.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/Angles.java
Modified:

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFLineProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFLinearShadeProperties.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFTransform2D.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLegendEntry.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLine3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFNumericalDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPie3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSeriesAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurface3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurfaceChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFValueAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFRunProperties.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java?rev=1859676=1859675=1859676=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 Tue May 21 23:28:15 2019
@@ -27,8 +27,8 @@ import org.apache.poi.ss.util.CellRangeA
 import org.apache.poi.ss.util.CellReference;
 import org.apache.poi.xddf.usermodel.PresetColor;
 import org.apache.poi.xddf.usermodel.XDDFColor;
+import org.apache.poi.xddf.usermodel.XDDFFillProperties;
 import org.apache.poi.xddf.usermodel.XDDFLineProperties;
-import org.apache.poi.xddf.usermodel.XDDFShapeProperties;
 import org.apache.poi.xddf.usermodel.XDDFSolidFillProperties;
 import org.apache.poi.xddf.usermodel.chart.AxisCrosses;
 import org.apache.poi.xddf.usermodel.chart.AxisPosition;
@@ -36,10 +36,10 @@ import org.apache.poi.xddf.usermodel.cha
 import org.apache.poi.xddf.usermodel.chart.ChartTypes;
 import org.apache.poi.xddf.usermodel.chart.LayoutMode;
 import org.apache.poi.xddf.usermodel.chart.LegendPosition;
+import org.apache.poi.xddf.usermodel.chart.MarkerStyle;
 import org.apache.poi.xddf.usermodel.chart.XDDFBarChartData;
 import org.apache.poi.xddf.usermodel.chart.XDDFCategoryAxis;
 import org.apache.poi.xddf.usermodel.chart.XDDFCategoryDataSource;
-import org.apache.poi.xddf.usermodel.chart.XDDFChartData;
 import org.apache.poi.xddf.usermodel.chart.XDDFChartLegend;
 import org.apache.poi.xddf.usermodel.chart.XDDFDataSourcesFactory;
 import org.apache.poi.xddf.usermodel.chart.XDDFLineChartData;
@@ -97,12 +97,13 @@ public class BarAndLineChart {
 properties.setItalic(true);
 properties.setUnderline(UnderlineType.DOT_DOT_DASH_HEAVY

svn commit: r1859677 - /poi/site/src/documentation/content/xdocs/changes.xml

2019-05-21 Thread abearez
Author: abearez
Date: Tue May 21 23:28:50 2019
New Revision: 1859677

URL: http://svn.apache.org/viewvc?rev=1859677=rev
Log:
Some XDDF improvements and seven new chart types

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1859677=1859676=1859677=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Tue May 21 23:28:50 
2019
@@ -87,6 +87,9 @@
 -->
 
 
+  
+Improved chart support: more types and some API changes 
around angles and width units
+  
   
 HSLF 
rendering - adjust values for presetShapeDefinition differs in 
HSLF/XSLF
 Don't fallback to master 
shape properties, if master shape is not assigned
@@ -95,6 +98,10 @@
 Return 
value of XSSFSheet.addMergedRegion is off by one
 Error 
opening XLSX after saving with a Drawing using POI
 MAPIType.isFixedLength: not true in case of length > 8
+Support to create new chart without reading template
+Support for seven new chart types
+Enable 
safe removal of data series from charts
+Provide 
example of threshold line in bar chart
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1859596 - /poi/trunk/src/java/org/apache/poi/hpsf/CodePageString.java

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:14:15 2019
New Revision: 1859596

URL: http://svn.apache.org/viewvc?rev=1859596=rev
Log:
fix missing space in string literal (LGTM)

Modified:
poi/trunk/src/java/org/apache/poi/hpsf/CodePageString.java

Modified: poi/trunk/src/java/org/apache/poi/hpsf/CodePageString.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hpsf/CodePageString.java?rev=1859596=1859595=1859596=diff
==
--- poi/trunk/src/java/org/apache/poi/hpsf/CodePageString.java (original)
+++ poi/trunk/src/java/org/apache/poi/hpsf/CodePageString.java Tue May 21 
00:14:15 2019
@@ -54,8 +54,8 @@ public class CodePageString {
 // CodePage property has any other value, it MUST be a null-terminated 
array of 8-bit characters
 // from the code page identified by the CodePage property, followed by 
zero padding to a
 // multiple of 4 bytes. The string represented by this field MAY 
contain embedded or additional
-// trailing null characters and an OLEPS implementation MUST be able 
to handle such strings.
-
+// trailing null characters and an OLEPS implementation MUST be able 
to handle such strings.
+
 lei.readFully(_value);
 if (_value[size - 1] != 0 ) {
 // TODO Some files, such as TestVisioWithCodepage.vsd, are 
currently
@@ -72,17 +72,17 @@ public class CodePageString {
 int cp = ( codepage == -1 ) ? Property.DEFAULT_CODEPAGE : codepage;
 String result = CodePageUtil.getStringFromCodePage(_value, cp);
 
-
+
 final int terminator = result.indexOf( '\0' );
 if ( terminator == -1 ) {
-String msg = 
-"String terminator (\\0) for CodePageString property value not 
found." +
+String msg =
+"String terminator (\\0) for CodePageString property value not 
found. " +
 "Continue without trimming and hope for the best.";
 LOG.log(POILogger.WARN, msg);
 return result;
 }
 if ( terminator != result.length() - 1 ) {
-String msg = 
+String msg =
 "String terminator (\\0) for CodePageString property value 
occured before the end of string. "+
 "Trimming and hope for the best.";
 LOG.log(POILogger.WARN, msg );



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1859592 - in /poi/trunk/src/java/org/apache/poi: hssf/record/FilePassRecord.java hssf/record/ObjRecord.java hssf/record/StandardRecord.java hssf/record/cont/ContinuableRecord.java ss/util

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:13:51 2019
New Revision: 1859592

URL: http://svn.apache.org/viewvc?rev=1859592=rev
Log:
fix potential output resource leaks (LGTM)

Modified:
poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ObjRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/StandardRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/cont/ContinuableRecord.java
poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddressList.java

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java?rev=1859592=1859591=1859592=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java Tue May 
21 00:13:51 2019
@@ -43,10 +43,10 @@ public final class FilePassRecord extend
public static final short sid = 0x002F;
 private static final int ENCRYPTION_XOR = 0;
 private static final int ENCRYPTION_OTHER = 1;
-   
+
private final int encryptionType;
 private EncryptionInfo encryptionInfo;
-   
+
private FilePassRecord(FilePassRecord other) {
encryptionType = other.encryptionType;
 try {
@@ -55,15 +55,15 @@ public final class FilePassRecord extend
 throw new EncryptedDocumentException(e);
 }
}
-   
+
public FilePassRecord(EncryptionMode encryptionMode) {
encryptionType = (encryptionMode == EncryptionMode.xor) ? 
ENCRYPTION_XOR : ENCRYPTION_OTHER;
encryptionInfo = new EncryptionInfo(encryptionMode);
}
-   
+
public FilePassRecord(RecordInputStream in) {
encryptionType = in.readUShort();
-   
+
EncryptionMode preferredMode;
 switch (encryptionType) {
 case ENCRYPTION_XOR:
@@ -75,7 +75,7 @@ public final class FilePassRecord extend
 default:
 throw new EncryptedDocumentException("invalid encryption 
type");
 }
-   
+
try {
 encryptionInfo = new EncryptionInfo(in, preferredMode);
 } catch (IOException e) {
@@ -88,32 +88,37 @@ public final class FilePassRecord extend
 public void serialize(LittleEndianOutput out) {
 out.writeShort(encryptionType);
 
-byte[] data = new byte[1024];
-LittleEndianByteArrayOutputStream bos = new 
LittleEndianByteArrayOutputStream(data, 0); // NOSONAR
-
-switch (encryptionInfo.getEncryptionMode()) {
-case xor:
-((XOREncryptionHeader)encryptionInfo.getHeader()).write(bos);
-
((XOREncryptionVerifier)encryptionInfo.getVerifier()).write(bos);
-break;
-case binaryRC4:
-out.writeShort(encryptionInfo.getVersionMajor());
-out.writeShort(encryptionInfo.getVersionMinor());
-
((BinaryRC4EncryptionHeader)encryptionInfo.getHeader()).write(bos);
-
((BinaryRC4EncryptionVerifier)encryptionInfo.getVerifier()).write(bos);
-break;
-case cryptoAPI:
-out.writeShort(encryptionInfo.getVersionMajor());
-out.writeShort(encryptionInfo.getVersionMinor());
-out.writeInt(encryptionInfo.getEncryptionFlags());
-
((CryptoAPIEncryptionHeader)encryptionInfo.getHeader()).write(bos);
-
((CryptoAPIEncryptionVerifier)encryptionInfo.getVerifier()).write(bos);
-break;
-default:
-throw new EncryptedDocumentException("not supported");
+byte data[] = new byte[1024];
+try (LittleEndianByteArrayOutputStream bos =
+new LittleEndianByteArrayOutputStream(data, 0)) { // NOSONAR
+
+switch (encryptionInfo.getEncryptionMode()) {
+case xor:
+
((XOREncryptionHeader)encryptionInfo.getHeader()).write(bos);
+
((XOREncryptionVerifier)encryptionInfo.getVerifier()).write(bos);
+break;
+case binaryRC4:
+out.writeShort(encryptionInfo.getVersionMajor());
+out.writeShort(encryptionInfo.getVersionMinor());
+
((BinaryRC4EncryptionHeader)encryptionInfo.getHeader()).write(bos);
+
((BinaryRC4EncryptionVerifier)encryptionInfo.getVerifier()).write(bos);
+break;
+case cryptoAPI:
+out.writeShort(encryptionInfo.getVersionMajor());
+out.writeShort(encryptionInfo.getVersionMinor());
+out.writeInt(encryptionInf

svn commit: r1859595 - in /poi/trunk/src: examples/src/org/apache/poi/hssf/usermodel/examples/ java/org/apache/poi/poifs/filesystem/ java/org/apache/poi/ss/formula/atp/ java/org/apache/poi/ss/formula/

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:14:12 2019
New Revision: 1859595

URL: http://svn.apache.org/viewvc?rev=1859595=rev
Log:
fix result of multiplication cast to wider type

Modified:

poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/BigExample.java

poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/HSSFReadWrite.java
poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java
poi/trunk/src/java/org/apache/poi/ss/formula/atp/YearFracCalculator.java
poi/trunk/src/java/org/apache/poi/ss/formula/functions/Days360.java
poi/trunk/src/java/org/apache/poi/ss/usermodel/DateUtil.java
poi/trunk/src/java/org/apache/poi/ss/usermodel/ExcelStyleDateFormatter.java
poi/trunk/src/java/org/apache/poi/ss/util/ImageUtils.java
poi/trunk/src/java/org/apache/poi/ss/util/cellwalk/CellWalk.java
poi/trunk/src/java/org/apache/poi/util/StringUtil.java
poi/trunk/src/scratchpad/src/org/apache/poi/hemf/record/emf/HemfComment.java
poi/trunk/src/scratchpad/src/org/apache/poi/hpbf/model/qcbits/QCTextBit.java
poi/trunk/src/scratchpad/src/org/apache/poi/hslf/record/CurrentUserAtom.java

poi/trunk/src/scratchpad/src/org/apache/poi/hslf/record/MasterTextPropAtom.java
poi/trunk/src/scratchpad/src/org/apache/poi/hslf/record/TextCharsAtom.java
poi/trunk/src/scratchpad/src/org/apache/poi/hslf/record/TextSpecInfoRun.java
poi/trunk/src/scratchpad/src/org/apache/poi/hwmf/record/HwmfDraw.java

poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java
poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/sprm/SprmUtils.java

poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/sprm/TableSprmCompressor.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/BigExample.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/BigExample.java?rev=1859595=1859594=1859595=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/BigExample.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/BigExample.java
 Tue May 21 00:14:12 2019
@@ -102,9 +102,9 @@ public class BigExample {
 // create a numeric cell
 c = r.createCell(cellnum);
 // do some goofy math to demonstrate decimals
-c.setCellValue(rownum * 1 + cellnum
-+ (((double) rownum / 1000)
-+ ((double) cellnum / 1)));
+c.setCellValue((rownum * 1.0) + cellnum
++ (rownum / 1000.0)
++ (cellnum / 1.0));
 
 // on every other row
 if ((rownum % 2) == 0) {

Modified: 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/HSSFReadWrite.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/HSSFReadWrite.java?rev=1859595=1859594=1859595=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/HSSFReadWrite.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/HSSFReadWrite.java
 Tue May 21 00:14:12 2019
@@ -87,8 +87,8 @@ public final class HSSFReadWrite {
 
for (int cellnum = 0; cellnum < 50; cellnum += 
2) {
HSSFCell c = r.createCell(cellnum);
-   c.setCellValue(rownum * 1 + cellnum
-   + (((double) rownum / 
1000) + ((double) cellnum / 1)));
+   c.setCellValue((rownum * 1.0) + 
cellnum
+   + (rownum / 1000.0) + 
(cellnum / 1.0));
if ((rownum % 2) == 0) {
c.setCellStyle(cs);
}

Modified: 
poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java?rev=1859595=1859594=1859595=diff
==
--- poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java Tue 
May 21 00:14:12 2019
@@ -759,6 +759,7 @@ public class POIFSFileSystem extends Blo
  * and buffers. After this, you will be unable to read or
  * write from the FileSystem.
  */
+@Override
 public void close() throws IOException {
 _data.close();
 }
@@ -834,6 +83

svn commit: r1859593 - in /poi/trunk/src: java/org/apache/poi/hssf/usermodel/HSSFRow.java java/org/apache/poi/ss/formula/functions/Rank.java java/org/apache/poi/util/StringUtil.java scratchpad/src/org

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:13:56 2019
New Revision: 1859593

URL: http://svn.apache.org/viewvc?rev=1859593=rev
Log:
fix boxed variable is never null

Modified:
poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFRow.java
poi/trunk/src/java/org/apache/poi/ss/formula/functions/Rank.java
poi/trunk/src/java/org/apache/poi/util/StringUtil.java
poi/trunk/src/scratchpad/src/org/apache/poi/hslf/dev/SlideIdListing.java

Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFRow.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFRow.java?rev=1859593=1859592=1859593=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFRow.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFRow.java Tue May 21 
00:13:56 2019
@@ -85,12 +85,12 @@ public final class HSSFRow implements Ro
 this.sheet = sheet;
 row = record;
 setRowNum(record.getRowNumber());
-
+
 // Size the initial cell list such that a read only case won't waste
 //  lots of memory, and a create/read followed by adding new cells can
 //  add a bit without needing a resize
 cells = new HSSFCell[record.getLastCol()+INITIAL_CAPACITY];
-
+
 // Don't trust colIx boundaries as read by other apps
 // set the RowRecord empty for the moment
 record.setEmpty();
@@ -119,7 +119,7 @@ public final class HSSFRow implements Ro
  * Use this to create new cells within the row and return it.
  * 
  * The cell that is returned will be of the requested type.
- * The type can be changed either through calling setCellValue 
+ * The type can be changed either through calling setCellValue
  *  or setCellType, but there is a small overhead to doing this,
  *  so it is best to create the required type up front.
  *
@@ -429,7 +429,9 @@ public final class HSSFRow implements Ro
 {
 int count = 0;
 for (HSSFCell cell : cells) {
-if (cell != null) count++;
+if (cell != null) {
+count++;
+}
 }
 return count;
 }
@@ -499,8 +501,11 @@ public final class HSSFRow implements Ro
 
 //The low-order 15 bits contain the row height.
 //The 0x8000 bit indicates that the row is standard height (optional)
-if ((height & 0x8000) != 0) height = 
sheet.getSheet().getDefaultRowHeight();
-else height &= 0x7FFF;
+if ((height & 0x8000) != 0) {
+height = sheet.getSheet().getDefaultRowHeight();
+} else {
+height &= 0x7FFF;
+}
 
 return height;
 }
@@ -627,45 +632,46 @@ public final class HSSFRow implements Ro
   int thisId=-1;
   int nextId=-1;
 
-  public CellIterator()
-  {
-findNext();
+  public CellIterator() {
+  findNext();
   }
 
   @Override
-public boolean hasNext() {
-return nextIdHSSFRow objects.  Two rows are equal if they 
belong to the same worksheet and
  * their row indexes are equal.
@@ -688,22 +694,19 @@ public final class HSSFRow implements Ro
  * @throws IllegalArgumentException if the argument row belongs to a 
different worksheet
  */
 @Override
-public int compareTo(HSSFRow other)
-{
+public int compareTo(HSSFRow other) {
 if (this.getSheet() != other.getSheet()) {
 throw new IllegalArgumentException("The compared rows must belong 
to the same sheet");
 }
 
-Integer thisRow = this.getRowNum();
-Integer otherRow = other.getRowNum();
-return thisRow.compareTo(otherRow);
+int thisRow = this.getRowNum();
+int otherRow = other.getRowNum();
+return Integer.compare(thisRow, otherRow);
 }
 
 @Override
-public boolean equals(Object obj)
-{
-if (!(obj instanceof HSSFRow))
-{
+public boolean equals(Object obj) {
+if (!(obj instanceof HSSFRow)) {
 return false;
 }
 HSSFRow other = (HSSFRow) obj;
@@ -716,7 +719,7 @@ public final class HSSFRow implements Ro
 public int hashCode() {
 return row.hashCode();
 }
-
+
 /**
  * Shifts column range [firstShiftColumnIndex-lastShiftColumnIndex] step 
places to the right.
  * @param firstShiftColumnIndex the column to start shifting
@@ -727,20 +730,25 @@ public final class HSSFRow implements Ro
 public void shiftCellsRight(int firstShiftColumnIndex, int 
lastShiftColumnIndex, int step) {
 RowShifter.validateShiftParameters(firstShiftColumnIndex, 
lastShiftColumnIndex, step);
 
-if(lastShiftColumnIndex + step + 1> cells.length)
+if (lastShiftColumnIndex + step + 1 > cells.length) {
 extend(lastShiftColumnIndex + step + 1);
-for (int columnIndex = l

svn commit: r1859594 - in /poi/trunk/src/java/org/apache/poi/ss/util: CellAddress.java NumberToTextConverter.java

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:13:59 2019
New Revision: 1859594

URL: http://svn.apache.org/viewvc?rev=1859594=rev
Log:
fix whitespace contradicts operator precedence

Modified:
poi/trunk/src/java/org/apache/poi/ss/util/CellAddress.java
poi/trunk/src/java/org/apache/poi/ss/util/NumberToTextConverter.java

Modified: poi/trunk/src/java/org/apache/poi/ss/util/CellAddress.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/util/CellAddress.java?rev=1859594=1859593=1859594=diff
==
--- poi/trunk/src/java/org/apache/poi/ss/util/CellAddress.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/util/CellAddress.java Tue May 21 
00:13:59 2019
@@ -25,9 +25,9 @@ import org.apache.poi.ss.usermodel.Cell;
  * This class is a container for POI usermodel row=0 column=0 cell 
references.
  * It is barely a container for these two coordinates. The implementation
  * of the Comparable interface sorts by "natural" order top left to bottom 
right.
- * 
+ *
  * Use CellAddress when you want to refer to the location of a 
cell in a sheet
- * when the concept of relative/absolute does not apply (such as the anchor 
location 
+ * when the concept of relative/absolute does not apply (such as the anchor 
location
  * of a cell comment). Use {@link CellReference} when the concept of
  * relative/absolute does apply (such as a cell reference in a formula).
  * CellAddresses do not have a concept of "sheet", while 
CellReferences do.
@@ -35,10 +35,10 @@ import org.apache.poi.ss.usermodel.Cell;
 public class CellAddress implements Comparable {
 /** A constant for references to the first cell in a sheet. */
 public static final CellAddress A1 = new CellAddress(0, 0);
-
+
 private final int _row;
 private final int _col;
-
+
 /**
  * Create a new CellAddress object.
  *
@@ -50,7 +50,7 @@ public class CellAddress implements Comp
 this._row = row;
 this._col = column;
 }
-
+
 /**
  * Create a new CellAddress object.
  *
@@ -77,7 +77,7 @@ public class CellAddress implements Comp
 this._row = Integer.parseInt(sRow)-1;
 this._col = CellReference.convertColStringToIndex(sCol);
 }
-
+
 /**
  * Create a new CellAddress object.
  *
@@ -86,16 +86,16 @@ public class CellAddress implements Comp
 public CellAddress(CellReference reference) {
 this(reference.getRow(), reference.getCol());
 }
-
+
 /**
  * Create a new CellAddress object
- * 
+ *
  * @param address a CellAddress
  */
 public CellAddress(CellAddress address) {
 this(address.getRow(), address.getColumn());
 }
-
+
 /**
  * Create a new CellAddress object.
  *
@@ -104,7 +104,7 @@ public class CellAddress implements Comp
 public CellAddress(Cell cell) {
 this(cell.getRowIndex(), cell.getColumnIndex());
 }
-
+
 /**
  * Get the cell address row
  *
@@ -126,7 +126,7 @@ public class CellAddress implements Comp
 /**
  * Compare this CellAddress using the "natural" row-major, column-minor 
ordering.
  * That is, top-left to bottom-right ordering.
- * 
+ *
  * @param other
  * @return 
  * -1 if this CellAddress is before (above/left) of other
@@ -137,10 +137,14 @@ public class CellAddress implements Comp
 @Override
 public int compareTo(CellAddress other) {
 int r = this._row-other._row;
-if (r!=0) return r;
+if (r!=0) {
+return r;
+}
 
 r = this._col-other._col;
-if (r!=0) return r;
+if (r!=0) {
+return r;
+}
 
 return 0;
 }
@@ -153,7 +157,7 @@ public class CellAddress implements Comp
 if(!(o instanceof CellAddress)) {
 return false;
 }
-
+
 CellAddress other = (CellAddress) o;
 return _row == other._row &&
_col == other._col;
@@ -161,14 +165,14 @@ public class CellAddress implements Comp
 
 @Override
 public int hashCode() {
-return this._row + this._col<<16;
+return (this._row + this._col) << 16;
 }
 
 @Override
 public String toString() {
 return formatAsString();
 }
-
+
 /**
  * Same as {@link #toString()}
  * @return A1-style cell address string representation

Modified: poi/trunk/src/java/org/apache/poi/ss/util/NumberToTextConverter.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/util/NumberToTextConverter.java?rev=1859594=1859593=1859594=diff
==
--- poi/trunk/src/java/org/apache/poi/ss/util/NumberToTextConverter.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/ss/util/NumberToTextConverter.java Tue 
May 21 00:13:59 2019
@@ -220,7 

svn commit: r1859591 - in /poi/trunk/src: examples/src/org/apache/poi/hssf/usermodel/examples/ java/org/apache/poi/poifs/dev/ scratchpad/src/org/apache/poi/hdgf/extractor/ scratchpad/src/org/apache/po

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:13:47 2019
New Revision: 1859591

URL: http://svn.apache.org/viewvc?rev=1859591=rev
Log:
fix potential input resource leaks (LGTM)

Modified:

poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/EmbeddedObjects.java
poi/trunk/src/java/org/apache/poi/poifs/dev/POIFSLister.java

poi/trunk/src/scratchpad/src/org/apache/poi/hdgf/extractor/VisioTextExtractor.java
poi/trunk/src/scratchpad/src/org/apache/poi/hpbf/dev/PLCDumper.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/EmbeddedObjects.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/EmbeddedObjects.java?rev=1859591=1859590=1859591=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/EmbeddedObjects.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/hssf/usermodel/examples/EmbeddedObjects.java
 Tue May 21 00:13:47 2019
@@ -33,8 +33,11 @@ import org.apache.poi.poifs.filesystem.P
 public class EmbeddedObjects {
 @SuppressWarnings("unused")
 public static void main(String[] args) throws Exception {
-POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(args[0]));
-try (HSSFWorkbook workbook = new HSSFWorkbook(fs)) {
+try (
+FileInputStream fis = new FileInputStream(args[0]);
+POIFSFileSystem fs = new POIFSFileSystem(fis);
+HSSFWorkbook workbook = new HSSFWorkbook(fs)
+) {
 for (HSSFObjectData obj : workbook.getAllEmbeddedObjects()) {
 //the OLE2 Class Name of the object
 String oleName = obj.getOLE2ClassName();

Modified: poi/trunk/src/java/org/apache/poi/poifs/dev/POIFSLister.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/dev/POIFSLister.java?rev=1859591=1859590=1859591=diff
==
--- poi/trunk/src/java/org/apache/poi/poifs/dev/POIFSLister.java (original)
+++ poi/trunk/src/java/org/apache/poi/poifs/dev/POIFSLister.java Tue May 21 
00:13:47 2019
@@ -68,9 +68,11 @@ public class POIFSLister {
}
 
public static void viewFileOld(final String filename, boolean withSizes) 
throws IOException {
-  POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(filename));
-  displayDirectory(fs.getRoot(), "", withSizes);
-  fs.close();
+  try (FileInputStream fis = new FileInputStream(filename)) {
+ POIFSFileSystem fs = new POIFSFileSystem(fis);
+ displayDirectory(fs.getRoot(), "", withSizes);
+ fs.close();
+  }
}
 
public static void displayDirectory(DirectoryNode dir, String indent, 
boolean withSizes) {
@@ -92,7 +94,7 @@ public class POIFSLister {
name = name.substring(1) + " <" + altname + ">";
 }
 if (withSizes) {
-   size = " [" + doc.getSize() + " / 0x" + 
+   size = " [" + doc.getSize() + " / 0x" +
   Integer.toHexString(doc.getSize()) + "]";
 }
 System.out.println(newIndent + name + size);

Modified: 
poi/trunk/src/scratchpad/src/org/apache/poi/hdgf/extractor/VisioTextExtractor.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hdgf/extractor/VisioTextExtractor.java?rev=1859591=1859590=1859591=diff
==
--- 
poi/trunk/src/scratchpad/src/org/apache/poi/hdgf/extractor/VisioTextExtractor.java
 (original)
+++ 
poi/trunk/src/scratchpad/src/org/apache/poi/hdgf/extractor/VisioTextExtractor.java
 Tue May 21 00:13:47 2019
@@ -60,7 +60,7 @@ public final class VisioTextExtractor ex
/**
 * Locates all the text entries in the file, and returns their
 *  contents.
-* 
+*
 * @return An array of each Text item in the document
 */
public String[] getAllText() {
@@ -106,7 +106,7 @@ public final class VisioTextExtractor ex
 * Returns the textual contents of the file.
 * Each textual object's text will be separated
 *  by a newline
-*  
+*
 * @return All text contained in this document, separated by 
\n
 */
@Override
@@ -128,12 +128,14 @@ public final class VisioTextExtractor ex
System.exit(1);
}
 
-   VisioTextExtractor extractor =
-   new VisioTextExtractor(new FileInputStream(args[0]));
+   try (FileInputStream fis = new FileInputStream(args[0])) {
+   VisioTextExtractor extractor =
+   new VisioTextExtractor(fis);
 
-  

svn commit: r1859590 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xssf/usermodel/examples/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/ja

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:13:40 2019
New Revision: 1859590

URL: http://svn.apache.org/viewvc?rev=1859590=rev
Log:
code cleanup plus fix for bug 63153

Added:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/Shape.java
Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFLinearShadeProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLine3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPie3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurface3DChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurfaceChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFView3D.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFChart.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1859590=1859589=1859590=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Tue May 21 00:13:40 2019
@@ -108,7 +108,7 @@ public class BarChartDemo {
 values1[6] = 16.0; // if you ever want to change the underlying data
 final XDDFNumericalDataSource valuesData2 = 
XDDFDataSourcesFactory.fromArray(values2, valuesDataRange2, 2);
 
-XDDFChartData.Series series1 = bar.getSeries().get(0);
+XDDFChartData.Series series1 = bar.getSeries(0);
 series1.replaceData(categoriesData, valuesData);
 series1.setTitle(series[0], chart.setSheetTitle(series[0], 0));
 XDDFChartData.Series series2 = bar.addSeries(categoriesData, 
valuesData2);

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java?rev=1859590=1859589=1859590=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java 
Tue May 21 00:13:40 2019
@@ -98,10 +98,10 @@ public class PieChartDemo {
final XDDFDataSource categoriesData = 
XDDFDataSourcesFactory.fromArray(categories, categoryDataRange);
final XDDFNumericalDataSource valuesData 
= XDDFDataSourcesFactory.fromArray(values, valuesDataRange);
 
-   XDDFPieChartData.Series firstSeries = 
(XDDFPieChartData.Series) pie.getSeries().get(0);
+   XDDFPieChartData.Series firstSeries = 
(XDDFPieChartData.Series) pie.getSeries(0);
firstSeries.replaceData(categoriesData, valuesData);
firstSeries.setTitle(chartTitle, 
chart.setSheetTitle(chartTitle, 0));
-   firstSeries.setExplosion(25);
+   firstSeries.setExplosion(25L);
chart.plot(pie);
 
 // save the result

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java?rev=1859590=1859589=1859590=diff
==
--- 
poi/trunk/src/examples/src

svn commit: r1859589 - in /poi/trunk/src: examples/src/org/apache/poi/xssf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/chart/

2019-05-20 Thread abearez
Author: abearez
Date: Tue May 21 00:13:28 2019
New Revision: 1859589

URL: http://svn.apache.org/viewvc?rev=1859589=rev
Log:
Added more chart supports.
fixed bug while creating chart with bar and line series.

Added:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFArea3DChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFAreaChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBar3DChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLine3DChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPie3DChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurface3DChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSurfaceChartData.java
  - copied, changed from r1859575, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFView3D.java
Modified:

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java?rev=1859589=1859588=1859589=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 Tue May 21 00:13:28 2019
@@ -134,17 +134,26 @@ public class BarAndLineChart {
 lineCategories.crossAxis(rightValues);
 
 // the bar chart
-XDDFBarChartData bar = (XDDFBarChartData) 
chart.createData(ChartTypes.BAR, lineCategories, rightValues);
+XDDFBarChartData bar = (XDDFBarChartData) 
chart.createData(ChartTypes.BAR, barCategories, leftValues);
 XDDFBarChartData.Series series1 = (XDDFBarChartData.Series) 
bar.addSeries(xs, ys1);
 series1.setTitle("Bars", new CellReference("Sheet1!$B$1"));
 bar.setVaryColors(true);
 bar.setBarDirection(BarDirection.COL);
 chart.plot(bar);
 
-// the line chart
+// the line chart on secondary axis
 XDDFLineChartData lines = (XDDFLineChartData) 
chart.createData(ChartTypes.LINE, lineCategories,
 rightValues);
+
+//uncomment below line if only primary axis required and comment 
above line 
+// the line chart on primary axis
+/*XDDFLineChartData lines = (XDDFLineChartData) 
chart.createData(ChartTypes.LINE, lineCategories,
+leftValues);*/
+
+
 XDDFLineChartData.Series series2 = (XDDFLineChartData.Series) 
lines.addSeries(xs, ys2);
+series2.updateIdXVal(1);
+series2.updateOrderVal(1);
 series2.setTitle("Lines", new CellReference("Sheet1!$C$1"));
 lines.setVaryColors(true);
 chart.plot(lines);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTypes.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ChartTyp

svn commit: r1848432 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/java/or

2018-12-07 Thread abearez
Author: abearez
Date: Sat Dec  8 02:44:22 2018
New Revision: 1848432

URL: http://svn.apache.org/viewvc?rev=1848432=rev
Log:
create chart from scratch by sandeeptiwari32

Added:

poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/ChartFromScratch.java
Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFDrawing.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSheet.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFDocument.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFSlide.java

Added: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java?rev=1848432=auto
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
(added)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/ChartFromScratch.java 
Sat Dec  8 02:44:22 2018
@@ -0,0 +1,145 @@
+/*
+ *  
+ *Licensed to the Apache Software Foundation (ASF) under one or more
+ *contributor license agreements.  See the NOTICE file distributed with
+ *this work for additional information regarding copyright ownership.
+ *The ASF licenses this file to You under the Apache License, Version 2.0
+ *(the "License"); you may not use this file except in compliance with
+ *the License.  You may obtain a copy of the License at
+ *
+ *http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *Unless required by applicable law or agreed to in writing, software
+ *distributed under the License is distributed on an "AS IS" BASIS,
+ *WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *See the License for the specific language governing permissions and
+ *limitations under the License.
+ * 
+ */
+
+package org.apache.poi.xslf.usermodel;
+
+import java.awt.geom.Rectangle2D;
+import java.io.BufferedReader;
+import java.io.FileOutputStream;
+import java.io.FileReader;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.xddf.usermodel.chart.AxisCrosses;
+import org.apache.poi.xddf.usermodel.chart.AxisPosition;
+import org.apache.poi.xddf.usermodel.chart.BarDirection;
+import org.apache.poi.xddf.usermodel.chart.ChartTypes;
+import org.apache.poi.xddf.usermodel.chart.LegendPosition;
+import org.apache.poi.xddf.usermodel.chart.XDDFBarChartData;
+import org.apache.poi.xddf.usermodel.chart.XDDFChart;
+import org.apache.poi.xddf.usermodel.chart.XDDFChartAxis;
+import org.apache.poi.xddf.usermodel.chart.XDDFChartLegend;
+import org.apache.poi.xddf.usermodel.chart.XDDFDataSource;
+import org.apache.poi.xddf.usermodel.chart.XDDFDataSourcesFactory;
+import org.apache.poi.xddf.usermodel.chart.XDDFNumericalDataSource;
+import org.apache.poi.xddf.usermodel.chart.XDDFValueAxis;
+
+/**
+ * Build a chart without reading template file
+ */
+public class ChartFromScratch {
+private static void usage(){
+System.out.println("Usage: BarChartExample ");
+System.out.println("bar-chart-data.txt  the model to set. 
First line is chart title, " +
+"then go pairs {axis-label value}");
+}
+
+public static void main(String[] args) throws Exception {
+if(args.length < 1) {
+usage();
+return;
+}
+
+try (BufferedReader modelReader = new BufferedReader(new 
FileReader(args[0]))) {
+
+String chartTitle = modelReader.readLine();  // first line is 
chart title
+String[] series = modelReader.readLine().split(",");
+
+// Category Axis Data
+List listLanguages = new ArrayList<>(10);
+
+// Values
+List listCountries = new ArrayList<>(10);
+List listSpeakers = new ArrayList<>(10);
+
+// set model
+String ln;
+while((ln = modelReader.readLine()) != null) {
+String[] vals = ln.split(",");
+listCountries.add(Double.valueOf(vals[0]));
+listSpeakers.add(Double.valueOf(vals[1]));
+listLanguages.add(vals

svn commit: r1843557 - in /poi/trunk/src/ooxml/testcases/org/apache/poi: ooxml/util/ openxml4j/opc/ xslf/usermodel/ xssf/ xssf/usermodel/ xssf/usermodel/charts/ xssf/util/

2018-10-11 Thread abearez
Author: abearez
Date: Thu Oct 11 14:50:27 2018
New Revision: 1843557

URL: http://svn.apache.org/viewvc?rev=1843557=rev
Log:
fix more LGTM alerts, in tests

Modified:
poi/trunk/src/ooxml/testcases/org/apache/poi/ooxml/util/OOXMLLite.java

poi/trunk/src/ooxml/testcases/org/apache/poi/openxml4j/opc/ZipFileAssert.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextParagraph.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/XSSFTestDataSamples.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFColGrouping.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDataValidation.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFChartTitle.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/util/MemoryUsage.java

Modified: poi/trunk/src/ooxml/testcases/org/apache/poi/ooxml/util/OOXMLLite.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/ooxml/util/OOXMLLite.java?rev=1843557=1843556=1843557=diff
==
--- poi/trunk/src/ooxml/testcases/org/apache/poi/ooxml/util/OOXMLLite.java 
(original)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/ooxml/util/OOXMLLite.java Thu 
Oct 11 14:50:27 2018
@@ -17,18 +17,6 @@
 
 package org.apache.poi.ooxml.util;
 
-import junit.framework.TestCase;
-import org.apache.poi.util.IOUtils;
-import org.apache.poi.util.StringUtil;
-import org.apache.poi.util.SuppressForbidden;
-import org.apache.xmlbeans.StringEnumAbstractBase;
-import org.junit.Test;
-import org.junit.internal.TextListener;
-import org.junit.runner.Description;
-import org.junit.runner.JUnitCore;
-import org.junit.runner.Result;
-import org.reflections.Reflections;
-
 import java.io.File;
 import java.io.IOException;
 import java.lang.reflect.Field;
@@ -38,11 +26,29 @@ import java.security.AccessController;
 import java.security.CodeSource;
 import java.security.PrivilegedAction;
 import java.security.ProtectionDomain;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.Vector;
 import java.util.jar.JarEntry;
 import java.util.jar.JarFile;
 import java.util.regex.Pattern;
 
+import org.apache.poi.util.IOUtils;
+import org.apache.poi.util.StringUtil;
+import org.apache.poi.util.SuppressForbidden;
+import org.apache.xmlbeans.StringEnumAbstractBase;
+import org.junit.Test;
+import org.junit.internal.TextListener;
+import org.junit.runner.Description;
+import org.junit.runner.JUnitCore;
+import org.junit.runner.Result;
+import org.reflections.Reflections;
+
+import junit.framework.TestCase;
+
 /**
  * Build a 'lite' version of the ooxml-schemas.jar
  *
@@ -74,12 +80,12 @@ public final class OOXMLLite {
 }
 
 public static void main(String[] args) throws IOException {
-System.out.println("Free memory (bytes): " + 
+System.out.println("Free memory (bytes): " +
 Runtime.getRuntime().freeMemory());
 long maxMemory = Runtime.getRuntime().maxMemory();
-System.out.println("Maximum memory (bytes): " + 
+System.out.println("Maximum memory (bytes): " +
 (maxMemory == Long.MAX_VALUE ? "no limit" : maxMemory));
-System.out.println("Total memory (bytes): " + 
+System.out.println("Total memory (bytes): " +
 Runtime.getRuntime().totalMemory());
 
 String dest = null, test = null, ooxml = null;
@@ -87,13 +93,13 @@ public final class OOXMLLite {
 for (int i = 0; i < args.length; i++) {
 switch (args[i]) {
 case "-dest":
-dest = args[++i];
+dest = args[++i]; // lgtm[java/index-out-of-bounds]
 break;
 case "-test":
-test = args[++i];
+test = args[++i]; // lgtm[java/index-out-of-bounds]
 break;
 case "-ooxml":
-ooxml = args[++i];
+ooxml = args[++i]; // lgtm[java/index-out-of-bounds]
 break;
 }
 }
@@ -248,7 +254,7 @@ public final class OOXMLLite {
 return true;
 }
 }
-
+
 // also check super classes
 if(testclass.getSuperclass() != null) {
 for (Method m : testclass.getSuperclass().getDeclaredMethods()) {
@@ -257,7 +263,7 @@ public final class OOXMLLite {
 }
 }

svn commit: r1843481 [2/2] - in /poi/trunk/src/ooxml/java/org/apache/poi: poifs/crypt/dsig/ xdgf/usermodel/ xdgf/util/ xslf/usermodel/ xslf/util/ xssf/binary/ xssf/streaming/ xssf/usermodel/ xwpf/user

2018-10-10 Thread abearez
Modified: poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTable.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTable.java?rev=1843481=1843480=1843481=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTable.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTable.java Wed 
Oct 10 17:49:53 2018
@@ -161,8 +161,9 @@ public class XWPFTable implements IBodyE
 this.ctTbl = table;
 
 // is an empty table: I add one row and one column as default
-if (table.sizeOfTrArray() == 0)
+if (table.sizeOfTrArray() == 0) {
 createEmptyTable(table);
+}
 
 for (CTRow row : table.getTrList()) {
 StringBuilder rowText = new StringBuilder();
@@ -233,7 +234,7 @@ public class XWPFTable implements IBodyE
 return text.toString();
 }
 
-
+
 /**
  * This method has existed since 2008 without an implementation.
  * It will be removed unless an implementation is provided.
@@ -288,7 +289,7 @@ public class XWPFTable implements IBodyE
 /**
  * Get the width value as an integer.
  * If the width type is AUTO, DXA, or NIL, the value is 20ths of a 
point. If
- * the width type is PCT, the value is the percentage times 50 (e.g., 2500 
for 50%). 
+ * the width type is PCT, the value is the percentage times 50 (e.g., 2500 
for 50%).
  * @return width value as an integer
  */
 public int getWidth() {
@@ -322,7 +323,7 @@ public class XWPFTable implements IBodyE
 }
 
 /**
- * Returns CTTblPr object for table. If force parameter is true, will 
+ * Returns CTTblPr object for table. If force parameter is true, will
  * create the element if necessary. If force parameter is false, returns
  * null when CTTblPr element is missing.
  *
@@ -343,7 +344,7 @@ public class XWPFTable implements IBodyE
 private CTTblBorders getTblBorders(boolean force) {
 CTTblPr tblPr = getTblPr(force);
 return tblPr == null ? null
-   : tblPr.isSetTblBorders() ? tblPr.getTblBorders() 
+   : tblPr.isSetTblBorders() ? tblPr.getTblBorders()
: force ? tblPr.addNewTblBorders()
: null;
 }
@@ -413,18 +414,18 @@ public class XWPFTable implements IBodyE
 : tPr.isSetJc() ? 
TableRowAlign.valueOf(tPr.getJc().getVal().intValue())
 : null;
 }
-
+
 /**
  * Set table alignment to specified {@link TableRowAlign}
  *
- * @param ha {@link TableRowAlign} to set
+ * @param tra {@link TableRowAlign} to set
  */
 public void setTableAlignment(TableRowAlign tra) {
 CTTblPr tPr = getTblPr(true);
 CTJc jc = tPr.isSetJc() ? tPr.getJc() : tPr.addNewJc();
 jc.setVal(STJc.Enum.forInt(tra.getValue()));
 }
-
+
 /**
  * Removes the table alignment attribute from a table
  */
@@ -434,7 +435,7 @@ public class XWPFTable implements IBodyE
 tPr.unsetJc();
 }
 }
-
+
 private void addColumn(XWPFTableRow tabRow, int sizeCol) {
 if (sizeCol > 0) {
 for (int i = 0; i < sizeCol; i++) {
@@ -486,7 +487,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get inside horizontal border size
- * 
+ *
  * @return The width of the Inside Horizontal borders in 1/8th points,
  * -1 if missing.
  */
@@ -496,7 +497,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get inside horizontal border spacing
- * 
+ *
  * @return The offset to the Inside Horizontal borders in points,
  * -1 if missing.
  */
@@ -506,7 +507,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get inside horizontal border color
- * 
+ *
  * @return The color of the Inside Horizontal borders, null if missing.
  */
 public String getInsideHBorderColor() {
@@ -524,7 +525,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get inside vertical border size
- * 
+ *
  * @return The width of the Inside vertical borders in 1/8th points,
  * -1 if missing.
  */
@@ -534,7 +535,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get inside vertical border spacing
- * 
+ *
  * @return The offset to the Inside vertical borders in points,
  * -1 if missing.
  */
@@ -544,7 +545,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get inside vertical border color
- * 
+ *
  * @return The color of the Inside vertical borders, null if missing.
  */
 public String getInsideVBorderColor() {
@@ -562,7 +563,7 @@ public class XWPFTable implements IBodyE
 
 /**
  * Get top border size
- * 
+ *
  * @return The width of the top borders in 1/8th points,
  * -1 if missing.
  */
@@ 

svn commit: r1843481 [1/2] - in /poi/trunk/src/ooxml/java/org/apache/poi: poifs/crypt/dsig/ xdgf/usermodel/ xdgf/util/ xslf/usermodel/ xslf/util/ xssf/binary/ xssf/streaming/ xssf/usermodel/ xwpf/user

2018-10-10 Thread abearez
Author: abearez
Date: Wed Oct 10 17:49:53 2018
New Revision: 1843481

URL: http://svn.apache.org/viewvc?rev=1843481=rev
Log:
fix most alerts reported by LGTM on OOXML

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java
poi/trunk/src/ooxml/java/org/apache/poi/xdgf/usermodel/XDGFShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xdgf/usermodel/XDGFText.java
poi/trunk/src/ooxml/java/org/apache/poi/xdgf/util/HierarchyPrinter.java
poi/trunk/src/ooxml/java/org/apache/poi/xdgf/util/VsdxToPng.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFColor.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFNotes.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/util/PPTX2PNG.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/binary/XSSFBUtils.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFRow.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFRow.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFSDTContent.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTable.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java?rev=1843481=1843480=1843481=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java 
(original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java 
Wed Oct 10 17:49:53 2018
@@ -63,7 +63,7 @@ import org.w3c.dom.events.EventListener;
  * This class bundles the configuration options used for the existing
  * signature facets.
  * Apart of the thread local members (e.g. opc-package) most values will 
probably be constant, so
- * it might be configured centrally (e.g. by spring) 
+ * it might be configured centrally (e.g. by spring)
  */
 @SuppressWarnings({"unused","WeakerAccess"})
 public class SignatureConfig {
@@ -76,14 +76,14 @@ public class SignatureConfig {
 
 
 public interface SignatureConfigurable {
-void setSignatureConfig(SignatureConfig signatureConfig);
+void setSignatureConfig(SignatureConfig signatureConfig);
 }
 
 private ThreadLocal opcPackage = new ThreadLocal<>();
 private ThreadLocal signatureFactory = new 
ThreadLocal<>();
 private ThreadLocal keyInfoFactory = new ThreadLocal<>();
 private ThreadLocal provider = new ThreadLocal<>();
-
+
 private List signatureFacets = new ArrayList<>();
 private HashAlgorithm digestAlgo = HashAlgorithm.sha256;
 private Date executionTime = new Date();
@@ -96,11 +96,11 @@ public class SignatureConfig {
 private SignaturePolicyService signaturePolicyService;
 private URIDereferencer uriDereferencer;
 private String canonicalizationMethod = CanonicalizationMethod.INCLUSIVE;
-
+
 private boolean includeEntireCertificateChain = true;
 private boolean includeIssuerSerial;
 private boolean includeKeyValue;
-
+
 /**
  * the time-stamp service used for XAdES-T and XAdES-X.
  */
@@ -123,7 +123,7 @@ public class SignatureConfig {
 private String tspRequestPolicy = "1.3.6.1.4.1.13762.3";
 private String userAgent = "POI XmlSign Service TSP Client";
 private String proxyUrl;
-
+
 /**
  * the optional revocation data service used for XAdES-C and XAdES-X-L.
  * When null the signature will be limited to XAdES-T only.
@@ -148,16 +148,16 @@ public class SignatureConfig {
  * null value will trigger an automatically generated 
signature Id.
  */
 private String packageSignatureId = "idPackageSignature";
-
+
 /**
  * Gives back the human-readable description of what the citizen will be
  * signing. The default value is "Office OpenXML Document".
  */
 private String signatureDescription = "Office OpenXML Document";
-
+
 /**
  * The process of signing includes the marshalling of xml structures.
- * This also includes the canonicalization. Currently this leads to 
problems 
+ * This also includes the canonicalization. Currently this leads to 
problems
  * with certain namespaces, so this EventListener is used to interfere
  * with the marshalling process.
  */
@@ -177,7 +177,7 @@ public class SignatureConfig {
 
 /**
  * Inits and checks the config object.
- * If not set previously, complex configuration properties also get 
+ * If not set previously, complex configuration 

svn commit: r1842959 - in /poi/trunk/src: examples/src/org/apache/poi/xssf/usermodel/examples/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxm

2018-10-05 Thread abearez
Author: abearez
Date: Fri Oct  5 18:07:55 2018
New Revision: 1842959

URL: http://svn.apache.org/viewvc?rev=1842959=rev
Log:
adding tricks from other answers on StackOverflow

Modified:

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java?rev=1842959=1842958=1842959=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 Fri Oct  5 18:07:55 2018
@@ -22,6 +22,7 @@ package org.apache.poi.xssf.usermodel.ex
 import java.io.FileOutputStream;
 import java.util.Random;
 
+import org.apache.poi.common.usermodel.fonts.FontGroup;
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.ss.util.CellReference;
 import org.apache.poi.xddf.usermodel.PresetColor;
@@ -33,6 +34,7 @@ import org.apache.poi.xddf.usermodel.cha
 import org.apache.poi.xddf.usermodel.chart.AxisPosition;
 import org.apache.poi.xddf.usermodel.chart.BarDirection;
 import org.apache.poi.xddf.usermodel.chart.ChartTypes;
+import org.apache.poi.xddf.usermodel.chart.LayoutMode;
 import org.apache.poi.xddf.usermodel.chart.LegendPosition;
 import org.apache.poi.xddf.usermodel.chart.XDDFBarChartData;
 import org.apache.poi.xddf.usermodel.chart.XDDFCategoryAxis;
@@ -41,8 +43,13 @@ import org.apache.poi.xddf.usermodel.cha
 import org.apache.poi.xddf.usermodel.chart.XDDFChartLegend;
 import org.apache.poi.xddf.usermodel.chart.XDDFDataSourcesFactory;
 import org.apache.poi.xddf.usermodel.chart.XDDFLineChartData;
+import org.apache.poi.xddf.usermodel.chart.XDDFManualLayout;
 import org.apache.poi.xddf.usermodel.chart.XDDFNumericalDataSource;
 import org.apache.poi.xddf.usermodel.chart.XDDFValueAxis;
+import org.apache.poi.xddf.usermodel.text.UnderlineType;
+import org.apache.poi.xddf.usermodel.text.XDDFFont;
+import org.apache.poi.xddf.usermodel.text.XDDFRunProperties;
+import org.apache.poi.xddf.usermodel.text.XDDFTextParagraph;
 import org.apache.poi.xssf.usermodel.XSSFCell;
 import org.apache.poi.xssf.usermodel.XSSFChart;
 import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
@@ -51,6 +58,10 @@ import org.apache.poi.xssf.usermodel.XSS
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 
+// original contributions by Axel Richter on 
https://stackoverflow.com/questions/47065690
+// additional title formatting from 
https://stackoverflow.com/questions/50418856
+// and legend positioning from https://stackoverflow.com/questions/49615379
+// this would probably be an answer for 
https://stackoverflow.com/questions/36447925 too
 public class BarAndLineChart {
 private static final int NUM_OF_ROWS = 7;
 private static final Random RNG = new Random();
@@ -79,6 +90,21 @@ public class BarAndLineChart {
 XSSFClientAnchor anchor = drawing.createAnchor(0, 0, 0, 0, 4, 0, 
11, 15);
 
 XSSFChart chart = drawing.createChart(anchor);
+chart.setTitleText("This is my title");
+chart.setTitleOverlay(true);
+XDDFRunProperties properties = new XDDFRunProperties();
+properties.setBold(true);
+properties.setItalic(true);
+properties.setUnderline(UnderlineType.DOT_DOT_DASH_HEAVY);
+properties.setFontSize(22.5);
+XDDFFont[] fonts = new XDDFFont[]{
+new XDDFFont(FontGroup.LATIN, "Calibri", null, null, null),
+new XDDFFont(FontGroup.COMPLEX_SCRIPT, "Liberation Sans", 
null, null, null)
+};
+properties.setFonts(fonts);
+properties.setLineProperties(solidLine(PresetColor.SIENNA));
+XDDFTextParagraph paragraph = 
chart.getTitle().getBody().getParagraph(0);
+paragraph.setDefaultRunProperties(properties);
 
 // the data sources
 XDDFCategoryDataSource xs = 
XDDFDataSourcesFactory.fromStringCellRange(sheet,
@@ -129,8 +155,13 @@ public class BarAndLineChart {
 
 // legend
 XDDFChartLegend legend = chart.getOrAddLegend();
-legend.setPosition(LegendPosition.BOTTOM);
+legend.setPosition(LegendPosition.LEFT);
  

svn commit: r1842925 - in /poi/trunk/src: examples/src/org/apache/poi/xssf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/java/org/apache/poi/xslf/usermodel/ ooxml/java/org/

2018-10-05 Thread abearez
Author: abearez
Date: Fri Oct  5 14:36:18 2018
New Revision: 1842925

URL: http://svn.apache.org/viewvc?rev=1842925=rev
Log:
example from StackOverflow question 47065690

Added:

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSeriesAxis.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java

Added: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java?rev=1842925=auto
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 (added)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarAndLineChart.java
 Fri Oct  5 14:36:18 2018
@@ -0,0 +1,164 @@
+/*
+ *  
+ *Licensed to the Apache Software Foundation (ASF) under one or more
+ *contributor license agreements.  See the NOTICE file distributed with
+ *this work for additional information regarding copyright ownership.
+ *The ASF licenses this file to You under the Apache License, Version 2.0
+ *(the "License"); you may not use this file except in compliance with
+ *the License.  You may obtain a copy of the License at
+ *
+ *http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *Unless required by applicable law or agreed to in writing, software
+ *distributed under the License is distributed on an "AS IS" BASIS,
+ *WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *See the License for the specific language governing permissions and
+ *limitations under the License.
+ * 
+ */
+
+package org.apache.poi.xssf.usermodel.examples;
+
+import java.io.FileOutputStream;
+import java.util.Random;
+
+import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.ss.util.CellReference;
+import org.apache.poi.xddf.usermodel.PresetColor;
+import org.apache.poi.xddf.usermodel.XDDFColor;
+import org.apache.poi.xddf.usermodel.XDDFLineProperties;
+import org.apache.poi.xddf.usermodel.XDDFShapeProperties;
+import org.apache.poi.xddf.usermodel.XDDFSolidFillProperties;
+import org.apache.poi.xddf.usermodel.chart.AxisCrosses;
+import org.apache.poi.xddf.usermodel.chart.AxisPosition;
+import org.apache.poi.xddf.usermodel.chart.BarDirection;
+import org.apache.poi.xddf.usermodel.chart.ChartTypes;
+import org.apache.poi.xddf.usermodel.chart.LegendPosition;
+import org.apache.poi.xddf.usermodel.chart.XDDFBarChartData;
+import org.apache.poi.xddf.usermodel.chart.XDDFCategoryAxis;
+import org.apache.poi.xddf.usermodel.chart.XDDFCategoryDataSource;
+import org.apache.poi.xddf.usermodel.chart.XDDFChartData;
+import org.apache.poi.xddf.usermodel.chart.XDDFChartLegend;
+import org.apache.poi.xddf.usermodel.chart.XDDFDataSourcesFactory;
+import org.apache.poi.xddf.usermodel.chart.XDDFLineChartData;
+import org.apache.poi.xddf.usermodel.chart.XDDFNumericalDataSource;
+import org.apache.poi.xddf.usermodel.chart.XDDFValueAxis;
+import org.apache.poi.xssf.usermodel.XSSFCell;
+import org.apache.poi.xssf.usermodel.XSSFChart;
+import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
+import org.apache.poi.xssf.usermodel.XSSFDrawing;
+import org.apache.poi.xssf.usermodel.XSSFRow;
+import org.apache.poi.xssf.usermodel.XSSFSheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
+public class BarAndLineChart {
+private static final int NUM_OF_ROWS = 7;
+private static final Random RNG = new Random();
+
+public static void main(String[] args) throws Exception {
+try (XSSFWorkbook wb = new XSSFWorkbook()) {
+XSSFSheet sheet = wb.createSheet("Sheet1");
+
+XSSFRow row = sheet.createRow(0);
+row.createCell(0);
+row.createCell(1).setCellValue("Bars");
+row.createCell(2).setCellValue("Lines");
+
+XSSFCell cell;
+for (int r = 1; r < NUM_OF_ROWS; r++) {
+row = sheet.createRow(r);
+cell = row.createCell(0);
+cell.setCellValue("C" + r);
+cell = row.createCell(1);
+cell.setCellValue(RNG.nextDouble());
+cell = row.createCell(2);
+cell.setCellValue(RNG.nextDouble() * 10);
+}
+
+XSSFDrawing drawing = sheet.createDrawingPatriarch();
+XSSFClientAnchor anchor = drawing.createAnchor(0, 0, 0, 0, 4, 0, 
11, 1

svn commit: r1842876 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xssf/usermodel/examples/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/ja

2018-10-05 Thread abearez
Author: abearez
Date: Fri Oct  5 09:59:32 2018
New Revision: 1842876

URL: http://svn.apache.org/viewvc?rev=1842876=rev
Log:
more XDDF improvements based on SO examples

Added:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFTitle.java
Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFValueAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1842876=1842875=1842876=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Fri Oct  5 09:59:32 2018
@@ -115,6 +115,8 @@ public class BarChartDemo {
 series2.setTitle(series[1], chart.setSheetTitle(series[1], 1));
 
 chart.plot(bar);
+chart.setTitleText(chartTitle); // 
https://stackoverflow.com/questions/30532612
+// chart.setTitleOverlay(overlay);
 }
 
 private static void setColumnData(XSLFChart chart, String chartTitle) {

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java?rev=1842876=1842875=1842876=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java 
Fri Oct  5 09:59:32 2018
@@ -76,7 +76,9 @@ public class BarChart {
 
 // Use a category axis for the bottom axis.
 XDDFCategoryAxis bottomAxis = 
chart.createCategoryAxis(AxisPosition.BOTTOM);
+bottomAxis.setTitle("x"); // 
https://stackoverflow.com/questions/32010765
 XDDFValueAxis leftAxis = chart.createValueAxis(AxisPosition.LEFT);
+leftAxis.setTitle("f(x)");
 leftAxis.setCrosses(AxisCrosses.AUTO_ZERO);
 
 XDDFDataSource xs = 
XDDFDataSourcesFactory.fromNumericCellRange(sheet, new CellRangeAddress(0, 0, 
0, NUM_OF_COLUMNS - 1));

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java?rev=1842876=1842875=1842876=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java
 Fri Oct  5 09:59:32 2018
@@ -77,7 +77,9 @@ public class LineChart {
 
 // Use a category axis for the bottom axis.
 XDDFCategoryAxis bottomAxis = 
chart.createCategoryAxis(AxisPosition.BOTTOM);
+bottomAxis.setTitle("x"); // 
https://stackoverflow.com/questions/32010765
 XDDFValueAxis leftAxis = chart.createValueAxis(AxisPosition.LEFT);
+leftAxis.setTitle("f(x)");
 leftAxis.setCrosses(AxisCrosses.AUTO_ZERO);
 
 XDDFDataSource xs = 
XDDFDataSourcesFactory.fromNumericCellRange(sheet, new CellRangeAddress(0, 0, 
0, NUM_OF_COLUMNS - 1));

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java?rev=1842876=1842875=1842876=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java
 (original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java
 Fri Oct  

svn commit: r1842728 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xssf/usermodel/examples/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/ja

2018-10-03 Thread abearez
Author: abearez
Date: Wed Oct  3 14:32:34 2018
New Revision: 1842728

URL: http://svn.apache.org/viewvc?rev=1842728=rev
Log:
XDDF improvements based on StackOverflow examples

Added:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/DisplayBlanks.java
Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFPieChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1842728=1842727=1842728=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Wed Oct  3 14:32:34 2018
@@ -107,10 +107,13 @@ public class BarChartDemo {
 final XDDFNumericalDataSource valuesData = 
XDDFDataSourcesFactory.fromArray(values1, valuesDataRange, 1);
 values1[6] = 16.0; // if you ever want to change the underlying data
 final XDDFNumericalDataSource valuesData2 = 
XDDFDataSourcesFactory.fromArray(values2, valuesDataRange2, 2);
-bar.getSeries().get(0).replaceData(categoriesData, valuesData);
-bar.addSeries(categoriesData, valuesData2);
-bar.getSeries().get(0).setTitle(series[0], 
chart.setSheetTitle(series[0], 0));
-bar.getSeries().get(1).setTitle(series[1], 
chart.setSheetTitle(series[1], 1));
+
+XDDFChartData.Series series1 = bar.getSeries().get(0);
+series1.replaceData(categoriesData, valuesData);
+series1.setTitle(series[0], chart.setSheetTitle(series[0], 0));
+XDDFChartData.Series series2 = bar.addSeries(categoriesData, 
valuesData2);
+series2.setTitle(series[1], chart.setSheetTitle(series[1], 1));
+
 chart.plot(bar);
 }
 

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java?rev=1842728=1842727=1842728=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java 
Wed Oct  3 14:32:34 2018
@@ -84,8 +84,10 @@ public class BarChart {
 XDDFNumericalDataSource ys2 = 
XDDFDataSourcesFactory.fromNumericCellRange(sheet, new CellRangeAddress(2, 2, 
0, NUM_OF_COLUMNS - 1));
 
 XDDFChartData data = chart.createData(ChartTypes.BAR, bottomAxis, 
leftAxis);
-data.addSeries(xs, ys1);
-data.addSeries(xs, ys2);
+XDDFChartData.Series series1 = data.addSeries(xs, ys1);
+series1.setTitle("2x", null); // 
https://stackoverflow.com/questions/21855842
+XDDFChartData.Series series2 = data.addSeries(xs, ys2);
+series2.setTitle("3x", null);
 chart.plot(data);
 
 // in order to transform a bar chart into a column chart, you just 
need to change the bar direction
@@ -106,12 +108,12 @@ public class BarChart {
 
 private static void solidFillSeries(XDDFChartData data, int index, 
PresetColor color) {
 XDDFSolidFillProperties fill = new 
XDDFSolidFillProperties(XDDFColor.from(color));
-XDDFChartData.Series firstSeries = data.getSeries().get(index);
-XDDFShapeProperties properties = firstSeries.getShapeProperties();
+XDDFChartData.Series series = data.getSeries().get(index);
+XDDFShapeProperties properties = series.getShapeProperties();
 if (properties == null) {
 properties = new XDDFShapeProperties();
 }
 properties.setFillProperties(fill);
-firstSeries.setShapeProperties(properties);
+series.setShapeProperties(properties);
 }
 }

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineC

svn commit: r1842707 - in /poi/trunk/src/examples/src/org/apache/poi: ss/examples/ ss/examples/html/ xssf/usermodel/examples/ xwpf/usermodel/examples/

2018-10-03 Thread abearez
Author: abearez
Date: Wed Oct  3 11:51:41 2018
New Revision: 1842707

URL: http://svn.apache.org/viewvc?rev=1842707=rev
Log:
fix lgtm alerts in examples

Modified:

poi/trunk/src/examples/src/org/apache/poi/ss/examples/ConditionalFormats.java
poi/trunk/src/examples/src/org/apache/poi/ss/examples/html/ToHtml.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BigGridDemo.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/CreateTable.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/IterateCells.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/LineChart.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/ScatterChart.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleDocument.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/SimpleImages.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/ss/examples/ConditionalFormats.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/ss/examples/ConditionalFormats.java?rev=1842707=1842706=1842707=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/ss/examples/ConditionalFormats.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/ss/examples/ConditionalFormats.java 
Wed Oct  3 11:51:41 2018
@@ -53,7 +53,7 @@ import org.apache.poi.xssf.usermodel.XSS
  * Excel Conditional Formatting -- Examples
  *
  * 
- *   Partly based on the code snippets from 
+ *   Partly based on the code snippets from
  *   http://www.contextures.com/xlcondformat03.html
  * 
  */
@@ -89,7 +89,7 @@ public class ConditionalFormats {
 
 // print overlapping rule results
 evaluateRules(wb, "Overlapping");
-
+
 // Write the output to a file
 String file = "cf-poi.xls";
 if(wb instanceof XSSFWorkbook) {
@@ -178,11 +178,11 @@ public class ConditionalFormats {
 
 sheet.getRow(2).createCell(4).setCellValue("<== Condition 1: Formula 
Is =$B2>75   (Blue Fill)");
 }
-
+
 /**
  * Multiple conditional formatting rules can apply to
  *  one cell, some combining, some beating others.
- * Done in order of the rules added to the 
+ * Done in order of the rules added to the
  *  SheetConditionalFormatting object
  */
 static void overlapping(Sheet sheet) {
@@ -210,39 +210,39 @@ public class ConditionalFormats {
 }
 sheet.autoSizeColumn(0);
 sheet.autoSizeColumn(1);
-
+
 sheet.getRow(1).createCell(3).setCellValue("Even rows are blue");
 sheet.getRow(2).createCell(3).setCellValue("Multiples of 3 have a grey 
background");
 sheet.getRow(4).createCell(3).setCellValue("Multiples of 5 are bold");
 sheet.getRow(9).createCell(3).setCellValue("Multiples of 10 are red 
(beats even)");
-
+
 SheetConditionalFormatting sheetCF = 
sheet.getSheetConditionalFormatting();
-
+
 // Condition 1: Row divides by 10, red (will beat #1)
-ConditionalFormattingRule rule1 = 
+ConditionalFormattingRule rule1 =
 sheetCF.createConditionalFormattingRule("MOD(ROW(),10)=0");
 FontFormatting font1 = rule1.createFontFormatting();
 font1.setFontColorIndex(IndexedColors.RED.index);
-
+
 // Condition 2: Row is even, blue
-ConditionalFormattingRule rule2 = 
+ConditionalFormattingRule rule2 =
 sheetCF.createConditionalFormattingRule("MOD(ROW(),2)=0");
 FontFormatting font2 = rule2.createFontFormatting();
 font2.setFontColorIndex(IndexedColors.BLUE.index);
-
+
 // Condition 3: Row divides by 5, bold
-ConditionalFormattingRule rule3 = 
+ConditionalFormattingRule rule3 =
 sheetCF.createConditionalFormattingRule("MOD(ROW(),5)=0");
 FontFormatting font3 = rule3.createFontFormatting();
 font3.setFontStyle(false, true);
-
+
 // Condition 4: Row divides by 3, grey background
-ConditionalFormattingRule rule4 = 
+ConditionalFormattingRule rule4 =
 sheetCF.createConditionalFormattingRule("MOD(ROW(),3)=0");
 PatternFormatting fill4 = rule4.createPatternFormatting();
 fill4.setFillBackgroundColor(IndexedColors.GREY_25_PERCENT.index);
 fill4.setFillPattern(PatternFormatting.SOLID_FOREGROUND);
-
+
 // Apply
 CellRangeAddress[] regions = {
 CellRangeAddress.valueOf("A1:F41")
@@ -441,7 +441,7 @@ public class ConditionalFormats {
 }
 
 /**
- * You can use Excel conditional

svn commit: r1842690 - /poi/site/src/documentation/content/xdocs/changes.xml

2018-10-03 Thread abearez
Author: abearez
Date: Wed Oct  3 08:34:08 2018
New Revision: 1842690

URL: http://svn.apache.org/viewvc?rev=1842690=rev
Log:
fixed bug 59625

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1842690=1842689=1842690=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed Oct  3 08:34:08 
2018
@@ -97,8 +97,9 @@
 Upgrade bouncycastle dependency to 1.60
 Define XDDF user model for text body, its paragraphs and text 
runs
 Import chart on drawing
-Improvements on chart creation and configuration
-XSSFWorkbook.setSheetName() does not update references in 
charts
+Support 
axIds in XDDF
+XSSFWorkbook.setSheetName() does not update references in 
charts
+Localisation (Internationalisation in other languages) when 
applied in charts corrupt the MS Word file
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1842687 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/java/org/apache/poi/xddf/usermodel/chart/ ooxml/testcas

2018-10-03 Thread abearez
Author: abearez
Date: Wed Oct  3 08:20:50 2018
New Revision: 1842687

URL: http://svn.apache.org/viewvc?rev=1842687=rev
Log:
change chart data to experiment diverse scripts

Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/PieChartDemo.java
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/bar-chart-data.txt

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/bar-chart-data.txt

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartData.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFChart.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1842687=1842686=1842687=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Wed Oct  3 08:20:50 2018
@@ -59,26 +59,30 @@ public class BarChartDemo {
 BufferedReader modelReader = new BufferedReader(new 
FileReader(args[1]))) {
 
 String chartTitle = modelReader.readLine();  // first line is 
chart title
+String[] series = modelReader.readLine().split(",");
 
 // Category Axis Data
-List listCategories = new ArrayList(3);
+List listLanguages = new ArrayList<>(10);
 
 // Values
-List listValues = new ArrayList(3);
+List listCountries = new ArrayList<>(10);
+List listSpeakers = new ArrayList<>(10);
 
 // set model
 String ln;
-while((ln = modelReader.readLine()) != null){
-String[] vals = ln.split("\\s+");
-listCategories.add(vals[0]);
-listValues.add(Double.valueOf(vals[1]));
+while((ln = modelReader.readLine()) != null) {
+String[] vals = ln.split(",");
+listCountries.add(Double.valueOf(vals[0]));
+listSpeakers.add(Double.valueOf(vals[1]));
+listLanguages.add(vals[2]);
 }
-String[] categories = listCategories.toArray(new 
String[listCategories.size()]);
-Double[] values = listValues.toArray(new 
Double[listValues.size()]);
+String[] categories = listLanguages.toArray(new 
String[listLanguages.size()]);
+Double[] values1 = listCountries.toArray(new 
Double[listCountries.size()]);
+Double[] values2 = listSpeakers.toArray(new 
Double[listSpeakers.size()]);
 
 try (XMLSlideShow pptx = new XMLSlideShow(argIS)) {
 XSLFSlide slide = pptx.getSlides().get(0);
-setBarData(findChart(slide), chartTitle, categories, values);
+setBarData(findChart(slide), chartTitle, series, categories, 
values1, values2);
 
 XSLFChart chart = 
findChart(pptx.createSlide().importContent(slide));
 setColumnData(chart, "Column variant");
@@ -91,18 +95,22 @@ public class BarChartDemo {
 }
 }
 
-private static void setBarData(XSLFChart chart, String chartTitle, 
String[] categories, Double[] values) {
-final List series = chart.getChartSeries();
-final XDDFBarChartData bar = (XDDFBarChartData) series.get(0);
+private static void setBarData(XSLFChart chart, String chartTitle, 
String[] series, String[] categories, Double[] values1, Double[] values2) {
+final List data = chart.getChartSeries();
+final XDDFBarChartData bar = (XDDFBarChartData) data.get(0);
 
 final int numOfPoints = categories.length;
 final String categoryDataRange = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, 0, 0));
 final String valuesDataRange = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, 1, 1));
-final XDDFDataSource categoriesData = 
XDDFDataSourcesFactory.fromArray(categories, categoryDataRange);
-final XDDFNumericalDataSource valuesData = 
XDDFDataSourcesFactory.fromArray(values, valuesDataRange);
-
+final String valuesDataRange2 = chart.formatRange(new 
CellRangeAddress(1, numOfPoints, 2, 2));
+final XDDFDataSource categoriesData = 
XDDFDataSourcesFactory.fromArray(categories, categoryDataRange, 0);
+final XDDFNumericalDataSource valuesData = 
XDDFDataSourcesFactory.fromArray(values1, valuesDataRange, 1);

svn commit: r1842549 - /poi/site/src/documentation/content/xdocs/changes.xml

2018-10-01 Thread abearez
Author: abearez
Date: Mon Oct  1 19:28:26 2018
New Revision: 1842549

URL: http://svn.apache.org/viewvc?rev=1842549=rev
Log:
fix bug 60509

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1842549=1842548=1842549=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Mon Oct  1 19:28:26 
2018
@@ -98,6 +98,7 @@
 Define XDDF user model for text body, its paragraphs and text 
runs
 Import chart on drawing
 Improvements on chart creation and configuration
+XSSFWorkbook.setSheetName() does not update references in 
charts
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1842548 - in /poi/trunk: src/ooxml/java/org/apache/poi/xddf/usermodel/chart/ src/ooxml/java/org/apache/poi/xssf/usermodel/helpers/ src/ooxml/testcases/org/apache/poi/xssf/usermodel/ test-

2018-10-01 Thread abearez
Author: abearez
Date: Mon Oct  1 19:27:32 2018
New Revision: 1842548

URL: http://svn.apache.org/viewvc?rev=1842548=rev
Log:
extract valuable code from 54470 submitted patch

Added:
poi/trunk/test-data/spreadsheet/60509.xlsx   (with props)
Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java

poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/helpers/XSSFFormulaUtils.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java?rev=1842548=1842547=1842548=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryDataSource.java
 Mon Oct  1 19:27:32 2018
@@ -23,4 +23,23 @@ import org.apache.poi.util.Beta;
 
 @Beta
 public interface XDDFCategoryDataSource extends XDDFDataSource {
+@Override
+default int getColIndex() {
+return 0;
+}
+
+@Override
+default boolean isNumeric() {
+return false;
+}
+
+@Override
+default boolean isReference() {
+return true;
+}
+
+@Override
+default String getDataRangeReference() {
+return getFormula();
+}
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java?rev=1842548=1842547=1842548=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSource.java
 Mon Oct  1 19:27:32 2018
@@ -34,4 +34,6 @@ public interface XDDFDataSource {
 int getColIndex();
 
 String getDataRangeReference();
+
+String getFormula();
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java?rev=1842548=1842547=1842548=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDataSourcesFactory.java
 Mon Oct  1 19:27:32 2018
@@ -41,39 +41,50 @@ public class XDDFDataSourcesFactory {
 }
 
 public static XDDFCategoryDataSource fromDataSource(final CTAxDataSource 
categoryDS) {
-return new XDDFCategoryDataSource() {
-private CTStrData category = (CTStrData) 
categoryDS.getStrRef().getStrCache().copy();
-
-@Override
-public boolean isNumeric() {
-return false;
-}
-
-@Override
-public boolean isReference() {
-return true;
-}
-
-@Override
-public int getPointCount() {
-return (int) category.getPtCount().getVal();
-}
-
-@Override
-public String getPointAt(int index) {
-return category.getPtArray(index).getV();
-}
-
-@Override
-public String getDataRangeReference() {
-return categoryDS.getStrRef().getF();
-}
-
-@Override
-public int getColIndex() {
-return 0;
-}
-};
+if (categoryDS.getStrRef() == null) {
+return new XDDFCategoryDataSource() {
+private CTNumData category = (CTNumData) 
categoryDS.getNumRef().getNumCache().copy();
+
+@Override
+public boolean isNumeric() {
+return true;
+}
+
+@Override
+public String getFormula() {
+return categoryDS.getNumRef().getF();
+}
+
+@Override
+public int getPointCount() {
+return (int) category.getPtCount().getVal();
+}
+
+@Override
+public String getPointAt(int index) {
+return category.getPtArray(index).getV();
+}
+};
+} else {
+return new XDDFCategoryDataSource() {
+private

svn commit: r1841989 - /poi/site/src/documentation/content/xdocs/changes.xml

2018-09-25 Thread abearez
Author: abearez
Date: Wed Sep 26 00:39:59 2018
New Revision: 1841989

URL: http://svn.apache.org/viewvc?rev=1841989=rev
Log:
register XDDF changes for 4.0.1

Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1841989=1841988=1841989=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Wed Sep 26 00:39:59 
2018
@@ -85,12 +85,19 @@
   when referring to both H??F and X??F formats.
 -->
 
-
+
+
+
   
 Fixes pom.xml entries for commons-maths3 (missing), 
curvesapi and commons-codec
+Improvements for XDDF charts and text 
manipulation
   
   
 Upgrade bouncycastle dependency to 1.60
+Define XDDF user model for text body, its paragraphs and text 
runs
+Import chart on drawing
+Improvements on chart creation and configuration
   
 
 



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1841988 - in /poi/trunk/src: examples/src/org/apache/poi/xslf/usermodel/ examples/src/org/apache/poi/xssf/usermodel/examples/ examples/src/org/apache/poi/xwpf/usermodel/examples/ ooxml/ja

2018-09-25 Thread abearez
Author: abearez
Date: Wed Sep 26 00:30:33 2018
New Revision: 1841988

URL: http://svn.apache.org/viewvc?rev=1841988=rev
Log:
adapting some contributions by Axel Richter on SO

Added:

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExample.java
  - copied, changed from r1841394, 
poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExampleDOCX.java
Removed:

poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/BarChartExampleDOCX.java
Modified:
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java

poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFBarChartData.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFLineChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFRadarChartData.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFScatterChartData.java

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java?rev=1841988=1841987=1841988=diff
==
--- poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
(original)
+++ poi/trunk/src/examples/src/org/apache/poi/xslf/usermodel/BarChartDemo.java 
Wed Sep 26 00:30:33 2018
@@ -115,6 +115,9 @@ public class BarChartDemo {
 // in order to transform a bar chart into a column chart, you just 
need to change the bar direction
 bar.setBarDirection(BarDirection.COL);
 
+// looking for "Stacked Bar Chart"? uncomment the following line
+// bar.setBarGrouping(BarGrouping.STACKED);
+
 // additionally, you can adjust the axes
 bar.getCategoryAxis().setOrientation(AxisOrientation.MAX_MIN);
 bar.getValueAxes().get(0).setPosition(AxisPosition.TOP);

Modified: 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java?rev=1841988=1841987=1841988=diff
==
--- 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java 
(original)
+++ 
poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/BarChart.java 
Wed Sep 26 00:30:33 2018
@@ -28,8 +28,10 @@ import org.apache.poi.xddf.usermodel.XDD
 import org.apache.poi.xddf.usermodel.XDDFSolidFillProperties;
 import org.apache.poi.xddf.usermodel.chart.AxisCrosses;
 import org.apache.poi.xddf.usermodel.chart.AxisPosition;
+import org.apache.poi.xddf.usermodel.chart.BarDirection;
 import org.apache.poi.xddf.usermodel.chart.ChartTypes;
 import org.apache.poi.xddf.usermodel.chart.LegendPosition;
+import org.apache.poi.xddf.usermodel.chart.XDDFBarChartData;
 import org.apache.poi.xddf.usermodel.chart.XDDFCategoryAxis;
 import org.apache.poi.xddf.usermodel.chart.XDDFChartData;
 import org.apache.poi.xddf.usermodel.chart.XDDFChartLegend;
@@ -86,14 +88,14 @@ public class BarChart {
 data.addSeries(xs, ys2);
 chart.plot(data);
 
-XDDFSolidFillProperties fill = new 
XDDFSolidFillProperties(XDDFColor.from(PresetColor.CHARTREUSE));
-XDDFChartData.Series firstSeries = data.getSeries().get(0);
-XDDFShapeProperties properties = firstSeries.getShapeProperties();
-if (properties == null) {
-properties = new XDDFShapeProperties();
-}
-properties.setFillProperties(fill);
-firstSeries.setShapeProperties(properties);
+// in order to transform a bar chart into a column chart, you just 
need to change the bar direction
+XDDFBarChartData bar = (XDDFBarChartData) data;
+bar.setBarDirection(BarDirection.COL);
+// looking for "Stacked Bar Chart"? uncomment the following line
+// bar.setBarGrouping(BarGrouping.STACKED);
+
+solidFillSeries(data, 0, PresetColor.CHARTREUSE);
+solidFillSeries(data, 1, PresetColor.TURQUOISE);
 
 // Write the output to a file
 try (FileOutputStream fileOut = new 
FileOutputStream("ooxml-bar-chart.xlsx")) {
@@ -101,4 +103,15 @@ public class BarChart {
 }
 }
 }
+
+private static void solidFillSeries(XDDFChartData data, int index, 
PresetColor color) {
+XDDFSolidFillProperties fill = new 
XDDFSolidFillProperties(XDDFColor.from(color));
+XDDFChartData.Series firstSeries = data.getSeries().get(index);
+XDDFShapeProperties properties = 

svn commit: r1840076 - /poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java

2018-09-04 Thread abearez
Author: abearez
Date: Wed Sep  5 01:00:45 2018
New Revision: 1840076

URL: http://svn.apache.org/viewvc?rev=1840076=rev
Log:
import existing chart on current drawing

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java?rev=1840076=1840075=1840076=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java Wed 
Sep  5 01:00:45 2018
@@ -101,40 +101,44 @@ public final class XSSFDrawing extends P
 /**
  * Construct a SpreadsheetML drawing from a package part
  *
- * @param part the package part holding the drawing data,
- * the content type must be 
application/vnd.openxmlformats-officedocument.drawing+xml
+ * @param part
+ *the package part holding the drawing data, the content type
+ *must be
+ *
application/vnd.openxmlformats-officedocument.drawing+xml
  *
  * @since POI 3.14-Beta1
  */
 public XSSFDrawing(PackagePart part) throws IOException, XmlException {
 super(part);
-XmlOptions options  = new XmlOptions(DEFAULT_XML_OPTIONS);
-//Removing root element
+XmlOptions options = new XmlOptions(DEFAULT_XML_OPTIONS);
+// Removing root element
 options.setLoadReplaceDocumentElement(null);
 InputStream is = part.getInputStream();
 try {
-drawing = CTDrawing.Factory.parse(is,options);
+drawing = CTDrawing.Factory.parse(is, options);
 } finally {
 is.close();
 }
 }
 
 /**
- * Construct a new CTDrawing bean. By default, it's just an empty 
placeholder for drawing objects
+ * Construct a new CTDrawing bean. By default, it's just an empty
+ * placeholder for drawing objects
  *
  * @return a new CTDrawing bean
  */
-private static CTDrawing newDrawing(){
+private static CTDrawing newDrawing() {
 return CTDrawing.Factory.newInstance();
 }
 
 /**
- * Return the underlying CTDrawing bean, the root element of the 
SpreadsheetML Drawing part.
+ * Return the underlying CTDrawing bean, the root element of the
+ * SpreadsheetML Drawing part.
  *
  * @return the underlying CTDrawing bean
  */
 @Internal
-public CTDrawing getCTDrawing(){
+public CTDrawing getCTDrawing() {
 return drawing;
 }
 
@@ -143,14 +147,13 @@ public final class XSSFDrawing extends P
 XmlOptions xmlOptions = new XmlOptions(DEFAULT_XML_OPTIONS);
 
 /*
-Saved drawings must have the following namespaces set:
-http://schemas.openxmlformats.org/drawingml/2006/main;
-
xmlns:xdr="http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing;>
-*/
-xmlOptions.setSaveSyntheticDocumentElement(
-new QName(CTDrawing.type.getName().getNamespaceURI(), "wsDr", 
"xdr")
-);
+ * Saved drawings must have the following namespaces set: http://schemas.openxmlformats.org/drawingml/2006/main;
+ * xmlns:xdr=
+ * 
"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing;>
+ */
+xmlOptions
+.setSaveSyntheticDocumentElement(new 
QName(CTDrawing.type.getName().getNamespaceURI(), "wsDr", "xdr"));
 
 PackagePart part = getPackagePart();
 OutputStream out = part.getOutputStream();
@@ -158,20 +161,20 @@ public final class XSSFDrawing extends P
 out.close();
 }
 
-   @Override
-public XSSFClientAnchor createAnchor(int dx1, int dy1, int dx2, int dy2,
-   int col1, int row1, int col2, int row2) {
-   return new XSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, 
col2, row2);
-   }
+@Override
+public XSSFClientAnchor createAnchor(int dx1, int dy1, int dx2, int dy2, 
int col1, int row1, int col2, int row2) {
+return new XSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, col2, 
row2);
+}
 
 /**
  * Constructs a textbox under the drawing.
  *
- * @param anchorthe client anchor describes how this group is attached
- *  to the sheet.
- * @return  the newly created textbox.
+ * @param anchor
+ *the client anchor describes how this group is attached to the
+ *sheet.
+ * @return the newly created textbox.
  */
-public XSSFTextBox createTextbox(XSSFClientAnchor anchor){
+public XSSFTextBox createTextbox(XSSFClientAnchor anchor) {
 long shapeId = newShapeId();
  

svn commit: r1839369 [2/2] - in /poi/trunk/src/ooxml/java/org/apache/poi: openxml4j/opc/internal/ xddf/usermodel/chart/ xddf/usermodel/text/ xslf/usermodel/

2018-08-27 Thread abearez
Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java?rev=1839369=1839368=1839369=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextParagraph.java
 Mon Aug 27 19:25:34 2018
@@ -40,8 +40,8 @@ import org.openxmlformats.schemas.drawin
 import org.openxmlformats.schemas.drawingml.x2006.main.CTTextSpacing;
 
 /**
- * Represents a paragraph of text within the containing text body.
- * The paragraph is the highest level text separation mechanism.
+ * Represents a paragraph of text within the containing text body. The 
paragraph
+ * is the highest level text separation mechanism.
  */
 @Beta
 public class XDDFTextParagraph {
@@ -55,9 +55,7 @@ public class XDDFTextParagraph {
 this._p = paragraph;
 this._parent = parent;
 
-final int count = paragraph.sizeOfBrArray()
-+ paragraph.sizeOfFldArray()
-+ paragraph.sizeOfRArray();
+final int count = paragraph.sizeOfBrArray() + 
paragraph.sizeOfFldArray() + paragraph.sizeOfRArray();
 this._runs = new ArrayList<>(count);
 
 for (XmlObject xo : _p.selectChildren(QNameSet.ALL)) {
@@ -83,11 +81,11 @@ public class XDDFTextParagraph {
 return _parent;
 }
 
-public List getTextRuns(){
+public List getTextRuns() {
 return _runs;
 }
 
-public Iterator iterator(){
+public Iterator iterator() {
 return _runs.iterator();
 }
 
@@ -96,10 +94,10 @@ public class XDDFTextParagraph {
  *
  * @return text run representing this line break ('\n').
  */
-public XDDFTextRun appendLineBreak(){
+public XDDFTextRun appendLineBreak() {
 CTTextLineBreak br = _p.addNewBr();
 // by default, line break has the font properties of the last text run
-for (int i = _runs.size() - 1; i <= 0; i--){
+for (int i = _runs.size() - 1; i <= 0; i--) {
 CTTextCharacterProperties prevProps = _runs.get(i).getProperties();
 // let's find one that is not undefined
 if (prevProps != null) {
@@ -117,7 +115,7 @@ public class XDDFTextParagraph {
  *
  * @return the new text field.
  */
-public XDDFTextRun appendField(String id, String type, String text){
+public XDDFTextRun appendField(String id, String type, String text) {
 CTTextField f = _p.addNewFld();
 f.setId(id);
 f.setType(type);
@@ -134,7 +132,7 @@ public class XDDFTextParagraph {
  *
  * @return the new run of text.
  */
-public XDDFTextRun appendRegularRun(String text){
+public XDDFTextRun appendRegularRun(String text) {
 CTRegularTextRun r = _p.addNewR();
 r.setT(text);
 CTTextCharacterProperties rPr = r.addNewRPr();
@@ -148,19 +146,20 @@ public class XDDFTextParagraph {
  * Returns the alignment that is applied to the paragraph.
  *
  * If this attribute is omitted, then a value of left is implied.
+ *
  * @return alignment that is applied to the paragraph
  */
 public TextAlignment getTextAlignment() {
 return findDefinedParagraphProperty(props -> props.isSetAlgn(), props 
-> props.getAlgn())
-.map(align -> TextAlignment.valueOf(align))
-.orElse(null);
+.map(align -> TextAlignment.valueOf(align)).orElse(null);
 }
 
 /**
- * Specifies the alignment that is to be applied to the paragraph.
- * Possible values for this include left, right, centered, justified and 
distributed,
+ * Specifies the alignment that is to be applied to the paragraph. Possible
+ * values for this include left, right, centered, justified and 
distributed,
  *
- * @param align text alignment
+ * @param align
+ *text alignment
  */
 public void setTextAlignment(TextAlignment align) {
 if (align != null || _p.isSetPPr()) {
@@ -169,25 +168,27 @@ public class XDDFTextParagraph {
 }
 
 /**
- * Returns where vertically on a line of text the actual words are 
positioned. This deals
- * with vertical placement of the characters with respect to the baselines.
+ * Returns where vertically on a line of text the actual words are
+ * positioned. This deals with vertical placement of the characters with
+ * respect to the baselines.
  *
  * If this attribute is omitted, then a value of baseline is implied.
+ *
  * @return alignment that is applied to the paragraph
  */
 public FontAlignment getFontAlignment() {
 return findDefinedParagraphProperty(props -> props.isSetFontAlgn(), 
props -> props.getFontAlgn())
-.map(align -> 

svn commit: r1839259 [2/2] - in /poi/trunk: ./ src/ooxml/java/org/apache/poi/xslf/usermodel/ src/ooxml/java/org/apache/poi/xssf/usermodel/ src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/ src/o

2018-08-26 Thread abearez
Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSimpleShape.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSimpleShape.java?rev=1839259=1839258=1839259=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSimpleShape.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSimpleShape.java 
Sun Aug 26 21:33:16 2018
@@ -21,13 +21,44 @@ import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
+import java.util.Optional;
+import java.util.function.Function;
 
 import org.apache.poi.hssf.util.HSSFColor;
 import org.apache.poi.ss.usermodel.SimpleShape;
 import org.apache.poi.ss.usermodel.VerticalAlignment;
+import org.apache.poi.util.Beta;
 import org.apache.poi.util.Internal;
-import org.apache.poi.util.Units;
-import org.openxmlformats.schemas.drawingml.x2006.main.*;
+import org.apache.poi.xddf.usermodel.XDDFColor;
+import org.apache.poi.xddf.usermodel.XDDFColorRgbBinary;
+import org.apache.poi.xddf.usermodel.XDDFFillProperties;
+import org.apache.poi.xddf.usermodel.XDDFSolidFillProperties;
+import org.apache.poi.xddf.usermodel.text.TextContainer;
+import org.apache.poi.xddf.usermodel.text.XDDFRunProperties;
+import org.apache.poi.xddf.usermodel.text.XDDFTextBody;
+import org.apache.poi.xddf.usermodel.text.XDDFTextParagraph;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTNonVisualDrawingProps;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTPoint2D;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTPositiveSize2D;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTPresetGeometry2D;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTRegularTextRun;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTSRgbColor;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties;
+import 
org.openxmlformats.schemas.drawingml.x2006.main.CTSolidColorFillProperties;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTextBody;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTextBodyProperties;
+import 
org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTextFont;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraph;
+import 
org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraphProperties;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTransform2D;
+import org.openxmlformats.schemas.drawingml.x2006.main.STShapeType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextAnchoringType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextHorzOverflowType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextUnderlineType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextVertOverflowType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextVerticalType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextWrappingType;
 import org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTShape;
 import 
org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTShapeNonVisual;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTRElt;
@@ -36,12 +67,17 @@ import org.openxmlformats.schemas.spread
 
 /**
  * Represents a shape with a predefined geometry in a SpreadsheetML drawing.
- * Possible shape types are defined in {@link 
org.apache.poi.ss.usermodel.ShapeTypes}
+ * Possible shape types are defined in
+ * {@link org.apache.poi.ss.usermodel.ShapeTypes}
  */
-public class XSSFSimpleShape extends XSSFShape implements 
Iterable, SimpleShape {
-   /**
-* List of the paragraphs that make up the text in this shape
-*/
+public class XSSFSimpleShape extends XSSFShape implements 
Iterable, SimpleShape, TextContainer {
+/**
+ * The text body containing the paragraphs for this shape.
+ */
+private final XDDFTextBody _textBody;
+/**
+ * List of the paragraphs that make up the text in this shape
+ */
 private final List _paragraphs;
 /**
  * A default instance of CTShape used for creating new shapes.
@@ -49,22 +85,26 @@ public class XSSFSimpleShape extends XSS
 private static CTShape prototype;
 
 /**
- *  Xml bean that stores properties of this shape
+ * Xml bean that stores properties of this shape
  */
 private CTShape ctShape;
 
 protected XSSFSimpleShape(XSSFDrawing drawing, CTShape ctShape) {
 this.drawing = drawing;
 this.ctShape = ctShape;
-
+
 _paragraphs = new ArrayList<>();
-
-// initialize any existing paragraphs - this will be the default body 
paragraph in a new shape, 
+
+// initialize any existing paragraphs - this will be the default body
+// paragraph in a new shape,

svn commit: r1839259 [1/2] - in /poi/trunk: ./ src/ooxml/java/org/apache/poi/xslf/usermodel/ src/ooxml/java/org/apache/poi/xssf/usermodel/ src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/ src/o

2018-08-26 Thread abearez
Author: abearez
Date: Sun Aug 26 21:33:16 2018
New Revision: 1839259

URL: http://svn.apache.org/viewvc?rev=1839259=rev
Log:
test integration of XDDF text entities

Added:
poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextBodyProperties.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java
Modified:
poi/trunk/build.xml
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTableCell.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextBox.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextShape.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFShapeGroup.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSimpleShape.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextShape.java

poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSimpleShape.java

Modified: poi/trunk/build.xml
URL: 
http://svn.apache.org/viewvc/poi/trunk/build.xml?rev=1839259=1839258=1839259=diff
==
--- poi/trunk/build.xml (original)
+++ poi/trunk/build.xml Sun Aug 26 21:33:16 2018
@@ -1152,10 +1152,8 @@ under the License.
 
 
 
-
 
 
-
  
 
 http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java?rev=1839259=1839258=1839259=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFAutoShape.java 
Sun Aug 26 21:33:16 2018
@@ -21,34 +21,28 @@ package org.apache.poi.xslf.usermodel;
 
 import org.apache.poi.sl.usermodel.AutoShape;
 import org.apache.poi.util.Beta;
+import org.apache.poi.xddf.usermodel.text.XDDFTextBody;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTNonVisualDrawingProps;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTPresetGeometry2D;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTTextBody;
-import org.openxmlformats.schemas.drawingml.x2006.main.CTTextBodyProperties;
-import 
org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties;
-import org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraph;
 import org.openxmlformats.schemas.drawingml.x2006.main.STShapeType;
-import org.openxmlformats.schemas.drawingml.x2006.main.STTextAlignType;
-import org.openxmlformats.schemas.drawingml.x2006.main.STTextAnchoringType;
 import org.openxmlformats.schemas.presentationml.x2006.main.CTShape;
 import org.openxmlformats.schemas.presentationml.x2006.main.CTShapeNonVisual;
 
-
 /**
  * Represents a shape with a preset geometry.
  *
  * @author Yegor Kozlov
  */
 @Beta
-public class XSLFAutoShape extends XSLFTextShape
-implements AutoShape {
+public class XSLFAutoShape extends XSLFTextShape implements 
AutoShape {
 
-/*package*/ XSLFAutoShape(CTShape shape, XSLFSheet sheet) {
+/* package */ XSLFAutoShape(CTShape shape, XSLFSheet sheet) {
 super(shape, sheet);
 }
 
-/*package*/
+/* package */
 static XSLFAutoShape create(CTShape shape, XSLFSheet sheet) {
 if (shape.getSpPr().isSetCustGeom()) {
 return new XSLFFreeformShape(shape, sheet);
@@ -60,7 +54,8 @@ public class XSLFAutoShape extends XSLFT
 }
 
 /**
- * @param shapeId 1-based shapeId
+ * @param shapeId
+ *1-based shapeId
  */
 static CTShape prototype(int shapeId) {
 CTShape ct = CTShape.Factory.newInstance();
@@ -76,22 +71,10 @@ public class XSLFAutoShape extends XSLFT
 prst.addNewAvLst();
 return ct;
 }
-
-protected static void initTextBody(CTTextBody txBody) {
-CTTextBodyProperties bodypr = txBody.addNewBodyPr();
-bodypr.setAnchor(STTextAnchoringType.T);
-bodypr.setRtlCol(false);
-CTTextParagraph p = txBody.addNewP();
-p.addNewPPr().setAlgn(STTextAlignType.L);
-CTTextCharacterProperties endPr = p.addNewEndParaRPr();
-endPr.setLang("en-US");
-endPr.setSz(1100);   
-p.addNewR().setT("");
-txBody.addNewLstStyle();
-}
 
-protected CTTextBody getTextBody(boolean create){
-CTShape shape = (CTShape)getXmlObject();
+@Override
+protected CTTextBody getTextBody(boolean create) {
+CTShape shape = (CTShape) getXmlObject();
 CTTextBody txBody = shape.getTxBody();
 if (txBody == null && c

svn commit: r1839256 - /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java

2018-08-26 Thread abearez
Author: abearez
Date: Sun Aug 26 21:19:07 2018
New Revision: 1839256

URL: http://svn.apache.org/viewvc?rev=1839256=rev
Log:
complete body properties with insets

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java?rev=1839256=1839255=1839256=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java
 Sun Aug 26 21:19:07 2018
@@ -19,6 +19,7 @@ package org.apache.poi.xddf.usermodel.te
 
 import org.apache.poi.util.Beta;
 import org.apache.poi.util.Internal;
+import org.apache.poi.util.Units;
 import org.apache.poi.xddf.usermodel.XDDFExtensionList;
 import org.openxmlformats.schemas.drawingml.x2006.main.CTTextBodyProperties;
 
@@ -75,4 +76,68 @@ public class XDDFBodyProperties {
 props.setExtLst(list.getXmlObject());
 }
 }
+
+public Double getBottomInset() {
+if (props.isSetBIns()) {
+return Units.toPoints(props.getBIns());
+} else {
+return null;
+}
+}
+
+public void setBottomInset(Double points) {
+if (points == null || Double.isNaN(points)) {
+props.unsetBIns();
+} else {
+props.setBIns(Units.toEMU(points));
+}
+}
+
+public Double getLeftInset() {
+if (props.isSetLIns()) {
+return Units.toPoints(props.getLIns());
+} else {
+return null;
+}
+}
+
+public void setLeftInset(Double points) {
+if (points == null || Double.isNaN(points)) {
+props.unsetLIns();
+} else {
+props.setLIns(Units.toEMU(points));
+}
+}
+
+public Double getRightInset() {
+if (props.isSetRIns()) {
+return Units.toPoints(props.getRIns());
+} else {
+return null;
+}
+}
+
+public void setRightInset(Double points) {
+if (points == null || Double.isNaN(points)) {
+props.unsetRIns();
+} else {
+props.setRIns(Units.toEMU(points));
+}
+}
+
+public Double getTopInset() {
+if (props.isSetTIns()) {
+return Units.toPoints(props.getTIns());
+} else {
+return null;
+}
+}
+
+public void setTopInset(Double points) {
+if (points == null || Double.isNaN(points)) {
+props.unsetTIns();
+} else {
+props.setTIns(Units.toEMU(points));
+}
+}
 }



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1839255 [1/3] - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel: ./ chart/ text/

2018-08-26 Thread abearez
Author: abearez
Date: Sun Aug 26 21:18:54 2018
New Revision: 1839255

URL: http://svn.apache.org/viewvc?rev=1839255=rev
Log:
fill in the text body, its paragraphs and text runs

Added:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFPicture.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFEffectList.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/AutonumberScheme.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/CapsType.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/FontAlignment.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/StrikeType.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/TabAlignment.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/TextAlignment.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/TextContainer.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/UnderlineType.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFAutoFit.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFEffectList.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBodyProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletSize.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFEffectList.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletSizeFollowText.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletSizePercent.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletSizePoints.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletStyle.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/XDDFEffectList.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletStyleAutoNumbered.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletStyleCharacter.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletStyleNone.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFBulletStylePicture.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFFont.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFHyperlink.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFNoAutoFit.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFNormalAutoFit.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphBulletProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFRunProperties.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFShapeAutoFit.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextBody.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFSpacing.java
  - copied, changed from r1839252, 
poi/trunk/src/ooxml/java

svn commit: r1839255 [3/3] - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel: ./ chart/ text/

2018-08-26 Thread abearez
Added: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java?rev=1839255=auto
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java 
(added)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java 
Sun Aug 26 21:18:54 2018
@@ -0,0 +1,557 @@
+/* 
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+ */
+
+package org.apache.poi.xddf.usermodel.text;
+
+import java.util.LinkedList;
+import java.util.Locale;
+import java.util.Optional;
+import java.util.function.Function;
+
+import org.apache.poi.POIXMLRelation;
+import org.apache.poi.common.usermodel.fonts.FontGroup;
+import org.apache.poi.openxml4j.opc.PackagePart;
+import org.apache.poi.openxml4j.opc.PackagePartName;
+import org.apache.poi.openxml4j.opc.PackageRelationship;
+import org.apache.poi.openxml4j.opc.TargetMode;
+import org.apache.poi.util.Beta;
+import org.apache.poi.util.Internal;
+import org.apache.poi.xddf.usermodel.XDDFColor;
+import org.apache.poi.xddf.usermodel.XDDFFillProperties;
+import org.apache.poi.xddf.usermodel.XDDFLineProperties;
+import org.apache.poi.xddf.usermodel.XDDFSolidFillProperties;
+import org.apache.poi.xssf.usermodel.XSSFFont;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTRegularTextRun;
+import 
org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTextField;
+import org.openxmlformats.schemas.drawingml.x2006.main.CTTextLineBreak;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextCapsType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextStrikeType;
+import org.openxmlformats.schemas.drawingml.x2006.main.STTextUnderlineType;
+
+@Beta
+public class XDDFTextRun {
+private XDDFTextParagraph _parent;
+private XDDFRunProperties _properties;
+private CTTextLineBreak _tlb;
+private CTTextField _tf;
+private CTRegularTextRun _rtr;
+
+@Internal
+protected XDDFTextRun(CTTextLineBreak run, XDDFTextParagraph parent) {
+this._tlb = run;
+this._parent = parent;
+}
+
+@Internal
+protected XDDFTextRun(CTTextField run, XDDFTextParagraph parent) {
+this._tf = run;
+this._parent = parent;
+}
+
+@Internal
+protected XDDFTextRun(CTRegularTextRun run, XDDFTextParagraph parent) {
+this._rtr = run;
+this._parent = parent;
+}
+
+public XDDFTextParagraph getParentParagraph() {
+return _parent;
+}
+
+public boolean isLineBreak() {
+return _tlb != null;
+}
+
+public boolean isField() {
+return _tf != null;
+}
+
+public boolean isRegularRun() {
+return _rtr != null;
+}
+
+public String getText() {
+if (isLineBreak()) {
+return "\n";
+} else  if (isField()) {
+return _tf.getT();
+} else  {
+return _rtr.getT();
+}
+}
+
+public void setText(String text) {
+if (isField()) {
+_tf.setT(text);
+} else if (isRegularRun()) {
+_rtr.setT(text);
+}
+}
+
+public void setDirty(Boolean dirty) {
+getOrCreateProperties().setDirty(dirty);
+}
+
+public Boolean getDirty() {
+return findDefinedProperty(props -> props.isSetDirty(), props -> 
props.getDirty())
+.orElse(null);
+}
+
+public void setSpellError(Boolean error) {
+getOrCreateProperties().setSpellError(error);
+}
+
+public Boolean getSpellError() {
+return findDefinedProperty(props -> props.isSetErr(), props -> 
props.getErr())
+.orElse(null);
+}
+
+public void setNoProof(Boolean noproof) {
+getOrCreateProperties().setNoProof(noproof);
+}
+
+public Boolean getNoProof() {
+return findDefinedProperty(props -> props.isSetNoProof(), props -> 

svn commit: r1839255 [2/3] - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel: ./ chart/ text/

2018-08-26 Thread abearez
Added: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphProperties.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphProperties.java?rev=1839255=auto
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphProperties.java
 (added)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFParagraphProperties.java
 Sun Aug 26 21:18:54 2018
@@ -0,0 +1,258 @@
+/* 
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+ */
+
+package org.apache.poi.xddf.usermodel.text;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import org.apache.poi.util.Beta;
+import org.apache.poi.util.Internal;
+import org.apache.poi.util.Units;
+import org.apache.poi.xddf.usermodel.XDDFExtensionList;
+import 
org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraphProperties;
+
+@Beta
+public class XDDFParagraphProperties {
+private CTTextParagraphProperties props;
+private XDDFParagraphBulletProperties bullet;
+
+@Internal
+protected XDDFParagraphProperties(CTTextParagraphProperties properties) {
+this.props = properties;
+this.bullet = new XDDFParagraphBulletProperties(properties);
+}
+
+@Internal
+protected CTTextParagraphProperties getXmlObject() {
+return props;
+}
+
+public XDDFParagraphBulletProperties getBulletProperties() {
+return bullet;
+}
+
+public int getLevel() {
+if (props.isSetLvl()) {
+return 1 + props.getLvl();
+} else {
+return 0;
+}
+}
+
+public void setLevel(Integer level) {
+if (level == null) {
+props.unsetLvl();
+} else if (level < 1 || 9 < level) {
+throw new IllegalArgumentException("Minimum inclusive: 1. Maximum 
inclusive: 9.");
+} else {
+props.setLvl(level - 1);
+}
+}
+
+public XDDFRunProperties getDefaultRunProperties() {
+if (props.isSetDefRPr()) {
+return new XDDFRunProperties(props.getDefRPr());
+} else {
+return null;
+}
+}
+
+public void setDefaultRunProperties(XDDFRunProperties properties) {
+if (properties == null) {
+props.unsetDefRPr();
+} else {
+props.setDefRPr(properties.getXmlObject());
+}
+}
+
+public void setEastAsianLineBreak(Boolean value) {
+if (value == null) {
+props.unsetEaLnBrk();
+} else {
+props.setEaLnBrk(value);
+}
+}
+
+public void setLatinLineBreak(Boolean value) {
+if (value == null) {
+props.unsetLatinLnBrk();
+} else {
+props.setLatinLnBrk(value);
+}
+}
+
+public void setHangingPunctuation(Boolean value) {
+if (value == null) {
+props.unsetHangingPunct();
+} else {
+props.setHangingPunct(value);
+}
+}
+
+public void setRightToLeft(Boolean value) {
+if (value == null) {
+props.unsetRtl();
+} else {
+props.setRtl(value);
+}
+}
+
+public void setFontAlignment(FontAlignment align) {
+if (align == null) {
+props.unsetFontAlgn();
+} else {
+props.setFontAlgn(align.underlying);
+}
+}
+
+public void setTextAlignment(TextAlignment align) {
+if (align == null) {
+props.unsetAlgn();
+} else {
+props.setAlgn(align.underlying);
+}
+}
+
+public void setDefaultTabSize(Double points) {
+if (points == null) {
+props.unsetDefTabSz();
+} else {
+props.setDefTabSz(Units.toEMU(points));
+}
+}
+
+public void setIndentation(Double points) {
+if (points == null) {
+props.unsetIndent();
+} else if (points < -4032 || 4032 < points) {
+throw 

svn commit: r1839252 - /poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/ContentTypeManager.java

2018-08-26 Thread abearez
Author: abearez
Date: Sun Aug 26 21:15:38 2018
New Revision: 1839252

URL: http://svn.apache.org/viewvc?rev=1839252=rev
Log:
add warning message to help reduce duplicates of bug 60102

Modified:

poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/ContentTypeManager.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/ContentTypeManager.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/ContentTypeManager.java?rev=1839252=1839251=1839252=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/ContentTypeManager.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/ContentTypeManager.java
 Sun Aug 26 21:15:38 2018
@@ -338,8 +338,9 @@ public abstract class ContentTypeManager
  */
 if (this.container != null && this.container.getPart(partName) != 
null) {
 throw new OpenXML4JRuntimeException(
-"Rule M2.4 exception : Part \'" + partName +
-"\' not found - this error should NEVER happen! If 
you can provide the triggering file, then please raise a bug at 
https://bz.apache.org/bugzilla/enter_bug.cgi?product=POI and attach the file 
that triggers it, thanks!");
+ "Rule M2.4 exception : this error should NEVER happen!\n"
+ + "Check that your code is closing the open resources in the 
correct order prior to filing a bug report.\n"
+ + "If you can provide the triggering file, then please raise 
a bug at https://bz.apache.org/bugzilla/enter_bug.cgi?product=POI and attach 
the file that triggers it, thanks!");
 }
 return null;
 }



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1823965 - /poi/site/src/documentation/content/xdocs/status.xml

2018-02-12 Thread abearez
Author: abearez
Date: Mon Feb 12 13:06:51 2018
New Revision: 1823965

URL: http://svn.apache.org/viewvc?rev=1823965=rev
Log:
[bug-57369] support for major and minor unit on XDDFChart axes

Modified:
poi/site/src/documentation/content/xdocs/status.xml

Modified: poi/site/src/documentation/content/xdocs/status.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/status.xml?rev=1823965=1823964=1823965=diff
==
--- poi/site/src/documentation/content/xdocs/status.xml (original)
+++ poi/site/src/documentation/content/xdocs/status.xml Mon Feb 12 13:06:51 2018
@@ -68,6 +68,7 @@
 Provide new ooxml-schemas-1.4.jar
   
   
+Add 
support for major and minor units on chart axes
 Added 
methods to position table
 Remove deprecated classes (POI 4.0.0)
 Add 
functions to get, set, remove outer borders for tables



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1823963 - in /poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart: XDDFCategoryAxis.java XDDFChart.java XDDFChartAxis.java XDDFDateAxis.java XDDFSeriesAxis.java XDDFValueAxis.jav

2018-02-12 Thread abearez
Author: abearez
Date: Mon Feb 12 12:59:38 2018
New Revision: 1823963

URL: http://svn.apache.org/viewvc?rev=1823963=rev
Log:
[bug-57369] support for major and minor unit on XDDFChart axes

Added:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFSeriesAxis.java
  - copied, changed from r1823920, 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
Modified:

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChartAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFDateAxis.java

poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFValueAxis.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java?rev=1823963=1823962=1823963=diff
==
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFCategoryAxis.java
 Mon Feb 12 12:59:38 2018
@@ -80,6 +80,36 @@ public class XDDFCategoryAxis extends XD
 }
 
 @Override
+public boolean isSetMinorUnit() {
+return false;
+}
+
+@Override
+public void setMinorUnit(double minor) {
+// nothing
+}
+
+@Override
+public double getMinorUnit() {
+return Double.NaN;
+}
+
+@Override
+public boolean isSetMajorUnit() {
+return false;
+}
+
+@Override
+public void setMajorUnit(double major) {
+// nothing
+}
+
+@Override
+public double getMajorUnit() {
+return Double.NaN;
+}
+
+@Override
 public void crossAxis(XDDFChartAxis axis) {
 ctCatAx.getCrossAx().setVal(axis.getId());
 }

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=1823963=1823962=1823963=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Mon Feb 12 12:59:38 2018
@@ -62,6 +62,7 @@ import org.openxmlformats.schemas.drawin
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTPlotArea;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTRadarChart;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTScatterChart;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTSerAx;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTSurface;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTValAx;
 import org.openxmlformats.schemas.drawingml.x2006.chart.ChartSpaceDocument;
@@ -359,18 +360,47 @@ public abstract class XDDFChart extends
 }
 
 private void parseAxes() {
-// TODO: add other axis types
 for (CTCatAx catAx : chart.getPlotArea().getCatAxArray()) {
 axes.add(new XDDFCategoryAxis(catAx));
 }
 for (CTDateAx dateAx : chart.getPlotArea().getDateAxArray()) {
 axes.add(new XDDFDateAxis(dateAx));
 }
+for (CTSerAx serAx : chart.getPlotArea().getSerAxArray()) {
+axes.add(new XDDFSeriesAxis(serAx));
+}
 for (CTValAx valAx : chart.getPlotArea().getValAxArray()) {
 axes.add(new XDDFValueAxis(valAx));
 }
 }
 
+/**
+ * Set value range (basic Axis Options)
+ * @param axisIndex 0 - primary axis, 1 - secondary axis
+ * @param minimum minimum value; Double.NaN - automatic; null - no change
+ * @param maximum maximum value; Double.NaN - automatic; null - no change
+ * @param majorUnit major unit value; Double.NaN - automatic; null - no 
change
+ * @param minorUnit minor unit value; Double.NaN - automatic; null - no 
change
+ */
+public void setValueRange(int axisIndex, Double minimum, Double maximum, 
Double majorUnit, Double minorUnit) {
+XDDFChartAxis axis = getAxes().get(axisIndex);
+if (axis == null) {
+return;
+}
+if (minimum != null) {
+axis.setMinimum(minimum);
+}
+if (maximum != null) {
+axis.setMaximum(maximum);
+}
+if (majorUnit != null) {
+axis.setMajorUnit(majorUnit);
+}
+if (minorUnit != null) {
+axis.setMinorUnit(minorUnit);
+}
+}
+
 /**
  * method to create relationship with embedded part
  * for example writing xlsx file stream into output stream

svn commit: r1822224 - in /poi/trunk/src/ooxml/java/org/apache/poi: xddf/usermodel/chart/ xslf/usermodel/ xssf/usermodel/ xwpf/usermodel/

2018-01-25 Thread abearez
Author: abearez
Date: Thu Jan 25 19:59:52 2018
New Revision: 184

URL: http://svn.apache.org/viewvc?rev=184=rev
Log:
code cleaning according to code review recommendations (closes #93)

Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFRelation.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFChart.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFDocument.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRelation.java
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRun.java

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java?rev=184=183=184=diff
==
--- poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xddf/usermodel/chart/XDDFChart.java 
Thu Jan 25 19:59:52 2018
@@ -46,14 +46,9 @@ import org.apache.poi.ss.util.CellRefere
 import org.apache.poi.util.Beta;
 import org.apache.poi.util.Internal;
 import org.apache.poi.xddf.usermodel.XDDFShapeProperties;
-import org.apache.poi.xslf.usermodel.XSLFChart;
-import org.apache.poi.xslf.usermodel.XSLFFactory;
-import org.apache.poi.xslf.usermodel.XSLFRelation;
 import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.apache.poi.xwpf.usermodel.XWPFFactory;
-import org.apache.poi.xwpf.usermodel.XWPFRelation;
 import org.apache.xmlbeans.XmlException;
 import org.apache.xmlbeans.XmlOptions;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTBarChart;
@@ -403,7 +398,7 @@ public abstract class XDDFChart extends
  * @since POI 4.0.0
  */
 private PackagePart createWorksheetPart(POIXMLRelation chartRelation, 
POIXMLRelation chartWorkbookRelation, POIXMLFactory chartFactory) throws 
InvalidFormatException {
-PackageRelationship xlsx = 
createRelationshipInChart(XSLFRelation.WORKBOOK_RELATIONSHIP, 
XSLFFactory.getInstance(), chartIndex);
+PackageRelationship xlsx = 
createRelationshipInChart(chartWorkbookRelation, chartFactory, chartIndex);
 this.setExternalId(xlsx.getId());
 return getTargetPart(xlsx);
 }
@@ -419,19 +414,14 @@ public abstract class XDDFChart extends
 public void saveWorkbook(XSSFWorkbook workbook) throws IOException, 
InvalidFormatException {
 PackagePart worksheetPart = getWorksheetPart(true);
 if (worksheetPart == null) {
-POIXMLRelation chartRelation = null;
-POIXMLRelation chartWorkbookRelation = null;
-POIXMLFactory chartFactory = null;
-if (this instanceof XSLFChart) {
-chartRelation = XSLFRelation.CHART;
-chartWorkbookRelation = XSLFRelation.WORKBOOK_RELATIONSHIP;
-chartFactory = XSLFFactory.getInstance();
-} else {
-chartRelation = XWPFRelation.CHART;
-chartRelation = XWPFRelation.WORKBOOK_RELATIONSHIP;
-chartFactory = XWPFFactory.getInstance();
+POIXMLRelation chartRelation = getChartRelation();
+POIXMLRelation chartWorkbookRelation = getChartWorkbookRelation();
+POIXMLFactory chartFactory = getChartFactory();
+if (chartRelation != null
+&& chartWorkbookRelation != null
+&& chartFactory != null) {
+worksheetPart = createWorksheetPart(chartRelation, 
chartWorkbookRelation, chartFactory);
 }
-worksheetPart = createWorksheetPart(chartRelation, 
chartWorkbookRelation, chartFactory);
 }
 try (OutputStream xlsOut = worksheetPart.getOutputStream()) {
 workbook.write(xlsOut);
@@ -439,6 +429,27 @@ public abstract class XDDFChart extends
 }
 
 /**
+ *
+ * @return the chart relation in the implementing subclass.
+ * @since POI 4.0.0
+ */
+protected abstract POIXMLRelation getChartRelation();
+
+/**
+ *
+ * @return the chart workbook relation in the implementing subclass.
+ * @since POI 4.0.0
+ */
+protected abstract POIXMLRelation getChartWorkbookRelation();
+
+/**
+ *
+ * @return the chart factory in the implementing subclass.
+ * @since POI 4.0.0
+ */
+protected abstract POIXMLFactory getChartFactory();
+
+/**
  * this method writes the data into sheet
  *
  * @param sheetsheet of embedded excel

Modified: poi/trunk/src/ooxml/java/org

svn commit: r1820371 - /poi/site/src/documentation/content/xdocs/status.xml

2018-01-05 Thread abearez
Author: abearez
Date: Sat Jan  6 02:56:27 2018
New Revision: 1820371

URL: http://svn.apache.org/viewvc?rev=1820371=rev
Log:
update status for closed github-72

Modified:
poi/site/src/documentation/content/xdocs/status.xml

Modified: poi/site/src/documentation/content/xdocs/status.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/status.xml?rev=1820371=1820370=1820371=diff
==
--- poi/site/src/documentation/content/xdocs/status.xml (original)
+++ poi/site/src/documentation/content/xdocs/status.xml Sat Jan  6 02:56:27 2018
@@ -68,6 +68,7 @@
 Provide new ooxml-schemas-1.4.jar
   
   
+Define 
XDDF user model for shape properties to be shared between XSLF, XSSF and 
XWPF
 Do not fail with "part already 
exists" when tables are created/removed
 Add more information to 
exception text and verify that it is thrown
 Add .gitattribute file and set 
lf for one sample-file



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org



svn commit: r1820370 [23/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/use

2018-01-05 Thread abearez
Modified: poi/site/publish/apidocs/overview-tree.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/overview-tree.html?rev=1820370=1820369=1820370=diff
==
--- poi/site/publish/apidocs/overview-tree.html (original)
+++ poi/site/publish/apidocs/overview-tree.html Sat Jan  6 02:56:19 2018
@@ -3556,12 +3556,12 @@
 
 Annotation Type Hierarchy
 
+org.apache.poi.util.Beta (implements 
java.lang.annotation.Annotation)
 org.apache.poi.sl.draw.DrawNotImplemented (implements 
java.lang.annotation.Annotation)
-org.apache.poi.util.SuppressForbidden 
(implements java.lang.annotation.Annotation)
-org.apache.poi.util.Removal (implements 
java.lang.annotation.Annotation)
-org.apache.poi.util.NotImplemented 
(implements java.lang.annotation.Annotation)
 org.apache.poi.util.Internal (implements 
java.lang.annotation.Annotation)
-org.apache.poi.util.Beta (implements 
java.lang.annotation.Annotation)
+org.apache.poi.util.NotImplemented 
(implements java.lang.annotation.Annotation)
+org.apache.poi.util.Removal (implements 
java.lang.annotation.Annotation)
+org.apache.poi.util.SuppressForbidden 
(implements java.lang.annotation.Annotation)
 
 Enum Hierarchy
 
@@ -3569,187 +3569,187 @@
 
 java.lang.EnumE (implements 
java.lang.ComparableT, java.io.Serializable)
 
-org.apache.poi.common.usermodel.HyperlinkType
-org.apache.poi.common.usermodel.fonts.FontPitch
-org.apache.poi.common.usermodel.fonts.FontGroup
-org.apache.poi.common.usermodel.fonts.FontFamily
-org.apache.poi.common.usermodel.fonts.FontCharset
-org.apache.poi.ddf.EscherColorRef.SysIndexSource
-org.apache.poi.ddf.EscherColorRef.SysIndexProcedure
-org.apache.poi.hssf.usermodel.HSSFChart.HSSFChartType
-org.apache.poi.hssf.util.HSSFColor.HSSFColorPredefined
-org.apache.poi.poifs.crypt.HashAlgorithm
-org.apache.poi.poifs.crypt.EncryptionMode
-org.apache.poi.poifs.crypt.CipherProvider
-org.apache.poi.poifs.crypt.CipherAlgorithm
-org.apache.poi.poifs.crypt.ChainingMode
-org.apache.poi.poifs.filesystem.FileMagic
-org.apache.poi.poifs.macros.Module.ModuleType
-org.apache.poi.sl.draw.binding.STTextShapeType
-org.apache.poi.sl.draw.binding.STShapeType
-org.apache.poi.sl.draw.binding.STSchemeColorVal
-org.apache.poi.sl.draw.binding.STRectAlignment
-org.apache.poi.sl.draw.binding.STPresetColorVal
-org.apache.poi.sl.draw.binding.STPathFillMode
-org.apache.poi.sl.draw.binding.STBlackWhiteMode
-org.apache.poi.sl.usermodel.VerticalAlignment
-org.apache.poi.sl.usermodel.TextShape.TextDirection
-org.apache.poi.sl.usermodel.TextShape.TextAutofit
-org.apache.poi.sl.usermodel.TextShape.TextPlaceholder
-org.apache.poi.sl.usermodel.TextRun.TextCap
-org.apache.poi.sl.usermodel.TextRun.FieldType
-org.apache.poi.sl.usermodel.TextParagraph.TextAlign
-org.apache.poi.sl.usermodel.TextParagraph.FontAlign
-org.apache.poi.sl.usermodel.TableCell.BorderEdge
-org.apache.poi.sl.usermodel.StrokeStyle.LineCap
-org.apache.poi.sl.usermodel.StrokeStyle.LineDash
-org.apache.poi.sl.usermodel.StrokeStyle.LineCompound
-org.apache.poi.sl.usermodel.ShapeType
-org.apache.poi.sl.usermodel.RectAlign
-org.apache.poi.sl.usermodel.PresetColor
-org.apache.poi.sl.usermodel.Placeholder
-org.apache.poi.sl.usermodel.PictureData.PictureType
-org.apache.poi.sl.usermodel.PaintStyle.PaintModifier
-org.apache.poi.sl.usermodel.PaintStyle.GradientPaint.GradientType
-org.apache.poi.sl.usermodel.LineDecoration.DecorationShape
-org.apache.poi.sl.usermodel.LineDecoration.DecorationSize
 org.apache.poi.sl.usermodel.AutoNumberingScheme
-org.apache.poi.ss.SpreadsheetVersion
+org.apache.poi.ss.usermodel.charts.AxisCrossBetween
+org.apache.poi.xddf.usermodel.chart.AxisCrossBetween
+org.apache.poi.ss.usermodel.charts.AxisCrosses
+org.apache.poi.xddf.usermodel.chart.AxisCrosses
+org.apache.poi.xddf.usermodel.chart.AxisLabelAlignment
+org.apache.poi.ss.usermodel.charts.AxisOrientation
+org.apache.poi.xddf.usermodel.chart.AxisOrientation
+org.apache.poi.ss.usermodel.charts.AxisPosition
+org.apache.poi.xddf.usermodel.chart.AxisPosition
+org.apache.poi.xddf.usermodel.chart.AxisTickLabelPosition
+org.apache.poi.ss.usermodel.charts.AxisTickMark
+org.apache.poi.xddf.usermodel.chart.AxisTickMark
+org.apache.poi.xddf.usermodel.chart.BarDirection
+org.apache.poi.xddf.usermodel.chart.BarGrouping
+org.apache.poi.xwpf.usermodel.BodyElementType
+org.apache.poi.xwpf.usermodel.BodyType
+org.apache.poi.ss.usermodel.BorderExtent
+org.apache.poi.xwpf.usermodel.Borders
+org.apache.poi.ss.usermodel.BorderStyle
+org.apache.poi.xwpf.usermodel.BreakClear
+org.apache.poi.xwpf.usermodel.BreakType
 org.apache.poi.ss.format.CellFormatType
-org.apache.poi.ss.formula.FormulaType
-org.apache.poi.ss.formula.EvaluationConditionalFormatRule.OperatorEnum
-org.apache.poi.ss.formula.DataValidationEvaluator.ValidationEnum
+org.apache.poi.ss.util.CellRangeAddressBase.CellPosition
+org.apache.poi.ss.util.CellReference.NameType
+org.apache.poi.ss.usermodel.CellType

svn commit: r1820370 [10/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/use

2018-01-05 Thread abearez
Modified: 
poi/site/publish/apidocs/org/apache/poi/openxml4j/opc/class-use/PackageRelationship.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/openxml4j/opc/class-use/PackageRelationship.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/openxml4j/opc/class-use/PackageRelationship.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/openxml4j/opc/class-use/PackageRelationship.html
 Sat Jan  6 02:56:19 2018
@@ -159,10 +159,9 @@
 
 
 PackageRelationship
-RelationshipSource.addExternalRelationship(java.lang.Stringtarget,
+OPCPackage.addExternalRelationship(java.lang.Stringtarget,
java.lang.StringrelationshipType)
-Adds an external relationship to a part
-  (except relationships part).
+Adds an external relationship to a part (except 
relationships part).
 
 
 
@@ -174,18 +173,18 @@
 
 
 PackageRelationship
-OPCPackage.addExternalRelationship(java.lang.Stringtarget,
+RelationshipSource.addExternalRelationship(java.lang.Stringtarget,
java.lang.StringrelationshipType)
-Adds an external relationship to a part (except 
relationships part).
+Adds an external relationship to a part
+  (except relationships part).
 
 
 
 PackageRelationship
-RelationshipSource.addExternalRelationship(java.lang.Stringtarget,
+OPCPackage.addExternalRelationship(java.lang.Stringtarget,
java.lang.StringrelationshipType,
java.lang.Stringid)
-Adds an external relationship to a part
-  (except relationships part).
+Adds an external relationship to a part (except 
relationships part).
 
 
 
@@ -198,18 +197,19 @@
 
 
 PackageRelationship
-OPCPackage.addExternalRelationship(java.lang.Stringtarget,
+RelationshipSource.addExternalRelationship(java.lang.Stringtarget,
java.lang.StringrelationshipType,
java.lang.Stringid)
-Adds an external relationship to a part (except 
relationships part).
+Adds an external relationship to a part
+  (except relationships part).
 
 
 
 PackageRelationship
-RelationshipSource.addRelationship(PackagePartNametargetPartName,
+OPCPackage.addRelationship(PackagePartNametargetPartName,
TargetModetargetMode,
java.lang.StringrelationshipType)
-Add a relationship to a part (except relationships 
part).
+Add a package relationship.
 
 
 
@@ -222,19 +222,19 @@
 
 
 PackageRelationship
-OPCPackage.addRelationship(PackagePartNametargetPartName,
+RelationshipSource.addRelationship(PackagePartNametargetPartName,
TargetModetargetMode,
java.lang.StringrelationshipType)
-Add a package relationship.
+Add a relationship to a part (except relationships 
part).
 
 
 
 PackageRelationship
-RelationshipSource.addRelationship(PackagePartNametargetPartName,
+OPCPackage.addRelationship(PackagePartNametargetPartName,
TargetModetargetMode,
java.lang.StringrelationshipType,
-   java.lang.Stringid)
-Add a relationship to a part (except relationships 
part).
+   java.lang.StringrelID)
+Add a relationship to the package (except relationships 
part).
 
 
 
@@ -248,11 +248,11 @@
 
 
 PackageRelationship
-OPCPackage.addRelationship(PackagePartNametargetPartName,
+RelationshipSource.addRelationship(PackagePartNametargetPartName,
TargetModetargetMode,
java.lang.StringrelationshipType,
-   java.lang.StringrelID)
-Add a relationship to the package (except relationships 
part).
+   java.lang.Stringid)
+Add a relationship to a part (except relationships 
part).
 
 
 
@@ -265,20 +265,20 @@
 
 
 PackageRelationship
-PackageRelationshipCollection.addRelationship(java.net.URItargetUri,
+PackagePart.addRelationship(java.net.URItargetURI,
TargetModetargetMode,
java.lang.StringrelationshipType,
java.lang.Stringid)
-Add a relationship to the collection.
+Add a relationship to a part (except relationships 
part).
 
 
 
 PackageRelationship
-PackagePart.addRelationship(java.net.URItargetURI,
+PackageRelationshipCollection.addRelationship(java.net.URItargetUri,
TargetModetargetMode,
java.lang.StringrelationshipType,
java.lang.Stringid)
-Add a relationship to a part (except relationships 
part).
+Add a relationship to the collection.
 
 
 
@@ -299,9 +299,7 @@
 
 
 PackageRelationship
-RelationshipSource.getRelationship(java.lang.Stringid)
-Retrieves a package relationship from its id.
-
+OPCPackage.getRelationship(java.lang.Stringid)
 
 
 PackageRelationship
@@ -311,7 +309,9 @@
 
 
 PackageRelationship
-OPCPackage.getRelationship(java.lang.Stringid)
+RelationshipSource.getRelationship(java.lang.Stringid)
+Retrieves a package relationship from its id.
+
 
 
 PackageRelationship
@@ -370,9 +370,7 @@
 
 
 boolean

svn commit: r1820370 [20/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/use

2018-01-05 Thread abearez
Modified: 
poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/class-use/XDGFSection.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/class-use/XDGFSection.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/class-use/XDGFSection.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/class-use/XDGFSection.html
 Sat Jan  6 02:56:19 2018
@@ -172,17 +172,17 @@
 
 
 
-abstract void
-XDGFSection.setupMaster(XDGFSectionsection)
-
-
 void
 GeometrySection.setupMaster(XDGFSectionmaster)
 
-
+
 void
 GenericSection.setupMaster(XDGFSectionsection)
 
+
+abstract void
+XDGFSection.setupMaster(XDGFSectionsection)
+
 
 void
 CharacterSection.setupMaster(XDGFSectionsection)

Modified: 
poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/geometry/class-use/GeometryRow.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/geometry/class-use/GeometryRow.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/geometry/class-use/GeometryRow.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/xdgf/usermodel/section/geometry/class-use/GeometryRow.html
 Sat Jan  6 02:56:19 2018
@@ -226,63 +226,63 @@
 
 
 void
-SplineStart.setupMaster(GeometryRowrow)
+NURBSTo.setupMaster(GeometryRowrow)
 
 
 void
-SplineKnot.setupMaster(GeometryRowrow)
+MoveTo.setupMaster(GeometryRowrow)
 
 
 void
-RelQuadBezTo.setupMaster(GeometryRowrow)
+SplineStart.setupMaster(GeometryRowrow)
 
 
 void
-RelMoveTo.setupMaster(GeometryRowrow)
+RelLineTo.setupMaster(GeometryRowrow)
 
 
 void
-RelLineTo.setupMaster(GeometryRowrow)
+InfiniteLine.setupMaster(GeometryRowrow)
 
 
 void
-RelEllipticalArcTo.setupMaster(GeometryRowrow)
+GeometryRow.setupMaster(GeometryRowrow)
 
 
 void
-RelCubBezTo.setupMaster(GeometryRowrow)
+EllipticalArcTo.setupMaster(GeometryRowrow)
 
 
 void
-PolyLineTo.setupMaster(GeometryRowrow)
+RelCubBezTo.setupMaster(GeometryRowrow)
 
 
 void
-NURBSTo.setupMaster(GeometryRowrow)
+SplineKnot.setupMaster(GeometryRowrow)
 
 
 void
-MoveTo.setupMaster(GeometryRowrow)
+LineTo.setupMaster(GeometryRowrow)
 
 
 void
-LineTo.setupMaster(GeometryRowrow)
+RelQuadBezTo.setupMaster(GeometryRowrow)
 
 
 void
-InfiniteLine.setupMaster(GeometryRowrow)
+Ellipse.setupMaster(GeometryRowrow)
 
 
 void
-GeometryRow.setupMaster(GeometryRowrow)
+RelEllipticalArcTo.setupMaster(GeometryRowrow)
 
 
 void
-EllipticalArcTo.setupMaster(GeometryRowrow)
+RelMoveTo.setupMaster(GeometryRowrow)
 
 
 void
-Ellipse.setupMaster(GeometryRowrow)
+PolyLineTo.setupMaster(GeometryRowrow)
 
 
 void

Modified: 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFAutoShape.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFAutoShape.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFAutoShape.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFAutoShape.html
 Sat Jan  6 02:56:19 2018
@@ -122,11 +122,11 @@
 
 
 XSLFAutoShape
-XSLFSheet.createAutoShape()
+XSLFDrawing.createAutoShape()
 
 
 XSLFAutoShape
-XSLFShapeContainer.createAutoShape()
+XSLFSheet.createAutoShape()
 
 
 XSLFAutoShape
@@ -134,7 +134,7 @@
 
 
 XSLFAutoShape
-XSLFDrawing.createAutoShape()
+XSLFShapeContainer.createAutoShape()
 
 
 

Modified: 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFBackground.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFBackground.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFBackground.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFBackground.html
 Sat Jan  6 02:56:19 2018
@@ -103,19 +103,19 @@
 
 
 XSLFBackground
-XSLFSlideMaster.getBackground()
+XSLFSlideLayout.getBackground()
 
 
 XSLFBackground
-XSLFSlideLayout.getBackground()
+XSLFSlideMaster.getBackground()
 
 
 XSLFBackground
-XSLFSlide.getBackground()
+XSLFSheet.getBackground()
 
 
 XSLFBackground
-XSLFSheet.getBackground()
+XSLFSlide.getBackground()
 
 
 

Modified: 
poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFConnectorShape.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/xslf/usermodel/class-use/XSLFConnectorShape.html?rev=1820370=1820369=1820370=diff
==
--- 

svn commit: r1820370 [1/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/user

2018-01-05 Thread abearez
Author: abearez
Date: Sat Jan  6 02:56:19 2018
New Revision: 1820370

URL: http://svn.apache.org/viewvc?rev=1820370=rev
Log:
Revert "update javadocs for closed github-68"

Modified:
poi/site/publish/apidocs/deprecated-list.html
poi/site/publish/apidocs/index-all.html
poi/site/publish/apidocs/org/apache/poi/class-use/POITextExtractor.html
poi/site/publish/apidocs/org/apache/poi/class-use/POIXMLDocumentPart.html

poi/site/publish/apidocs/org/apache/poi/class-use/POIXMLProperties.CoreProperties.html

poi/site/publish/apidocs/org/apache/poi/class-use/POIXMLProperties.CustomProperties.html

poi/site/publish/apidocs/org/apache/poi/class-use/POIXMLProperties.ExtendedProperties.html

poi/site/publish/apidocs/org/apache/poi/common/usermodel/fonts/class-use/FontInfo.html

poi/site/publish/apidocs/org/apache/poi/common/usermodel/fonts/package-tree.html

poi/site/publish/apidocs/org/apache/poi/ddf/class-use/EscherContainerRecord.html
poi/site/publish/apidocs/org/apache/poi/ddf/class-use/EscherRecord.html

poi/site/publish/apidocs/org/apache/poi/ddf/class-use/EscherRecordFactory.html

poi/site/publish/apidocs/org/apache/poi/ddf/class-use/EscherSerializationListener.html
poi/site/publish/apidocs/org/apache/poi/ddf/package-tree.html

poi/site/publish/apidocs/org/apache/poi/hemf/hemfplus/record/class-use/HemfPlusRecordType.html

poi/site/publish/apidocs/org/apache/poi/hemf/record/class-use/HemfRecordType.html
poi/site/publish/apidocs/org/apache/poi/hpsf/class-use/ClassID.html

poi/site/publish/apidocs/org/apache/poi/hpsf/class-use/SummaryInformation.html

poi/site/publish/apidocs/org/apache/poi/hpsf/wellknown/class-use/PropertyIDMap.html

poi/site/publish/apidocs/org/apache/poi/hslf/model/textproperties/class-use/TextProp.html

poi/site/publish/apidocs/org/apache/poi/hslf/model/textproperties/package-tree.html

poi/site/publish/apidocs/org/apache/poi/hslf/record/class-use/ColorSchemeAtom.html
poi/site/publish/apidocs/org/apache/poi/hslf/record/class-use/PPDrawing.html
poi/site/publish/apidocs/org/apache/poi/hslf/record/class-use/Record.html

poi/site/publish/apidocs/org/apache/poi/hslf/record/class-use/RecordContainer.html
poi/site/publish/apidocs/org/apache/poi/hslf/record/package-tree.html
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/HSLFTable.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFAutoShape.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFBackground.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFConnectorShape.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFFreeformShape.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFGroupShape.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFHyperlink.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFMasterSheet.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFPictureShape.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFShape.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFSheet.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFTable.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFTextBox.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFTextParagraph.html

poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFTextShape.html
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/package-tree.html
poi/site/publish/apidocs/org/apache/poi/hsmf/datatypes/class-use/Chunk.html

poi/site/publish/apidocs/org/apache/poi/hsmf/datatypes/class-use/MAPIProperty.html

poi/site/publish/apidocs/org/apache/poi/hsmf/datatypes/class-use/PropertyValue.html

poi/site/publish/apidocs/org/apache/poi/hssf/record/aggregates/class-use/RecordAggregate.RecordVisitor.html

poi/site/publish/apidocs/org/apache/poi/hssf/record/class-use/CellValueRecordInterface.html
poi/site/publish/apidocs/org/apache/poi/hssf/record/class-use/ObjRecord.html
poi/site/publish/apidocs/org/apache/poi/hssf/record/class-use/Record.html

poi/site/publish/apidocs/org/apache/poi/hssf/record/class-use/TextObjectRecord.html

poi/site/publish/apidocs/org/apache/poi/hssf/record/cont/class-use/ContinuableRecordOutput.html

poi/site/publish/apidocs/org/apache/poi/hssf/usermodel/class-use/HSSFConditionalFormattingThreshold.html

poi/site/publish/apidocs/org/apache/poi/hssf/usermodel/class-use/HSSFPatriarch.html

poi/site/publish/apidocs/org/apache/poi/hssf/usermodel/class-use/HSSFShape.html

poi/site/publish/apidocs/org/apache/poi/hssf/usermodel/class-use/HSSFSheet.html

poi/site/publish/apidocs/org/apache/poi/hwmf/draw/class-use/HwmfGraphics.htm

svn commit: r1820370 [13/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/use

2018-01-05 Thread abearez
Modified: 
poi/site/publish/apidocs/org/apache/poi/ss/formula/eval/class-use/ValueEval.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/ss/formula/eval/class-use/ValueEval.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/ss/formula/eval/class-use/ValueEval.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/ss/formula/eval/class-use/ValueEval.html
 Sat Jan  6 02:56:19 2018
@@ -480,19 +480,19 @@
 
 
 ValueEval
-RelationalOperationEval.evaluate(intsrcRowIndex,
+RangeEval.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0,
-ValueEvalarg1)
-This is a description of how the relational operators apply 
in MS Excel.
-
+ValueEvalarg1)
 
 
 ValueEval
-RangeEval.evaluate(intsrcRowIndex,
+RelationalOperationEval.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0,
-ValueEvalarg1)
+ValueEvalarg1)
+This is a description of how the relational operators apply 
in MS Excel.
+
 
 
 ValueEval
@@ -643,19 +643,19 @@
 
 
 ValueEval
-RelationalOperationEval.evaluate(intsrcRowIndex,
+RangeEval.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0,
-ValueEvalarg1)
-This is a description of how the relational operators apply 
in MS Excel.
-
+ValueEvalarg1)
 
 
 ValueEval
-RangeEval.evaluate(intsrcRowIndex,
+RelationalOperationEval.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0,
-ValueEvalarg1)
+ValueEvalarg1)
+This is a description of how the relational operators apply 
in MS Excel.
+
 
 
 ValueEval
@@ -767,54 +767,42 @@
 
 
 ValueEval
-RowFunc.evaluate(intsrcRowIndex,
-intsrcColumnIndex)
+Na.evaluate(intsrcCellRow,
+intsrcCellCol)
 
 
 ValueEval
-Now.evaluate(intsrcRowIndex,
+RowFunc.evaluate(intsrcRowIndex,
 intsrcColumnIndex)
 
 
 ValueEval
-Na.evaluate(intsrcCellRow,
-intsrcCellCol)
-
-
-ValueEval
 Function0Arg.evaluate(intsrcRowIndex,
 intsrcColumnIndex)
 see Function.evaluate(ValueEval[],
 int, int)
 
 
-
+
 ValueEval
 Column.evaluate(intsrcRowIndex,
 intsrcColumnIndex)
 
-
-ValueEval
-Value.evaluate(intsrcRowIndex,
-intsrcColumnIndex,
-ValueEvalarg0)
-
 
 ValueEval
-T.evaluate(intsrcRowIndex,
-intsrcColumnIndex,
-ValueEvalarg0)
+Now.evaluate(intsrcRowIndex,
+intsrcColumnIndex)
 
 
 ValueEval
-Rows.evaluate(intsrcRowIndex,
+ImReal.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalarg0)
+ValueEvalinumberVE)
 
 
 ValueEval
-RowFunc.evaluate(intsrcRowIndex,
+Hex2Dec.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalarg0)
+ValueEvalnumberVE)
 
 
 ValueEval
@@ -824,33 +812,35 @@
 
 
 ValueEval
-NumericFunction.OneArg.evaluate(intsrcRowIndex,
+LogicalFunction.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0)
 
 
 ValueEval
-MatrixFunction.OneArrayArg.evaluate(intsrcRowIndex,
+Function1Arg.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalarg0)
+ValueEvalarg0)
+see Function.evaluate(ValueEval[],
 int, int)
+
 
 
 ValueEval
-LogicalFunction.evaluate(intsrcRowIndex,
+Bin2Dec.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalarg0)
+ValueEvalnumberVE)
 
 
 ValueEval
-ImReal.evaluate(intsrcRowIndex,
+RowFunc.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalinumberVE)
+ValueEvalarg0)
 
 
 ValueEval
-Imaginary.evaluate(intsrcRowIndex,
+Columns.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalinumberVE)
+ValueEvalarg0)
 
 
 ValueEval
@@ -860,17 +850,15 @@
 
 
 ValueEval
-Hex2Dec.evaluate(intsrcRowIndex,
+T.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalnumberVE)
+ValueEvalarg0)
 
 
 ValueEval
-Function1Arg.evaluate(intsrcRowIndex,
+CalendarFieldFunction.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalarg0)
-see Function.evaluate(ValueEval[],
 int, int)
-
+ValueEvalarg0)
 
 
 ValueEval
@@ -880,9 +868,9 @@
 
 
 ValueEval
-FactDouble.evaluate(intsrcRowIndex,
+Column.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalnumberVE)
+ValueEvalarg0)
 
 
 ValueEval
@@ -892,118 +880,116 @@
 
 
 ValueEval
-Dec2Hex.evaluate(intsrcRowIndex,
+NumericFunction.OneArg.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0)
 
 
 ValueEval
-Dec2Bin.evaluate(intsrcRowIndex,
+Imaginary.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-ValueEvalnumberVE)
+ValueEvalinumberVE)
 
 
 ValueEval
-Countblank.evaluate(intsrcRowIndex,
+Value.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
 ValueEvalarg0)
 
 
 ValueEval
-Columns.evaluate(intsrcRowIndex,
+FactDouble.evaluate(intsrcRowIndex,
 intsrcColumnIndex,
-

svn commit: r1820370 [3/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/user

2018-01-05 Thread abearez
Modified: 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFGroupShape.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFGroupShape.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFGroupShape.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFGroupShape.html
 Sat Jan  6 02:56:19 2018
@@ -153,15 +153,15 @@
 
 
 HSLFGroupShape
-HSLFSheet.createGroup()
+HSLFGroupShape.createGroup()
 
 
 HSLFGroupShape
-HSLFShapeContainer.createGroup()
+HSLFSheet.createGroup()
 
 
 HSLFGroupShape
-HSLFGroupShape.createGroup()
+HSLFShapeContainer.createGroup()
 
 
 static HSLFGroupShape

Modified: 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFHyperlink.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFHyperlink.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFHyperlink.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFHyperlink.html
 Sat Jan  6 02:56:19 2018
@@ -132,17 +132,17 @@
 
 
 HSLFHyperlink
-HSLFTextRun.getHyperlink()
+HSLFGroupShape.getHyperlink()
+Returns null - shape groups can't have 
hyperlinks
+
 
 
 HSLFHyperlink
-HSLFSimpleShape.getHyperlink()
+HSLFTextRun.getHyperlink()
 
 
 HSLFHyperlink
-HSLFGroupShape.getHyperlink()
-Returns null - shape groups can't have 
hyperlinks
-
+HSLFSimpleShape.getHyperlink()
 
 
 

Modified: 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFMasterSheet.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFMasterSheet.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFMasterSheet.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFMasterSheet.html
 Sat Jan  6 02:56:19 2018
@@ -124,8 +124,8 @@
 
 
 HSLFMasterSheet
-HSLFTitleMaster.getMasterSheet()
-Returns the slide master for this title master.
+HSLFNotes.getMasterSheet()
+Return null - Notes Masters are not yet 
supported
 
 
 
@@ -135,21 +135,21 @@
 
 
 
-HSLFMasterSheet
-HSLFSlide.getMasterSheet()
-Returns master sheet associated with this slide.
-
-
-
 abstract HSLFMasterSheet
 HSLFSheet.getMasterSheet()
 Return the master sheet .
 
 
+
+HSLFMasterSheet
+HSLFTitleMaster.getMasterSheet()
+Returns the slide master for this title master.
+
+
 
 HSLFMasterSheet
-HSLFNotes.getMasterSheet()
-Return null - Notes Masters are not yet 
supported
+HSLFSlide.getMasterSheet()
+Returns master sheet associated with this slide.
 
 
 

Modified: 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFPictureShape.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFPictureShape.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFPictureShape.html
 (original)
+++ 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFPictureShape.html
 Sat Jan  6 02:56:19 2018
@@ -139,15 +139,15 @@
 
 
 HSLFPictureShape
-HSLFSheet.createPicture(PictureDatapictureData)
+HSLFGroupShape.createPicture(PictureDatapictureData)
 
 
 HSLFPictureShape
-HSLFShapeContainer.createPicture(PictureDatapictureData)
+HSLFSheet.createPicture(PictureDatapictureData)
 
 
 HSLFPictureShape
-HSLFGroupShape.createPicture(PictureDatapictureData)
+HSLFShapeContainer.createPicture(PictureDatapictureData)
 
 
 

Modified: 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFShape.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFShape.html?rev=1820370=1820369=1820370=diff
==
--- 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFShape.html 
(original)
+++ 
poi/site/publish/apidocs/org/apache/poi/hslf/usermodel/class-use/HSLFShape.html 
Sat Jan  6 02:56:19 2018
@@ -326,21 +326,21 @@
 
 
 java.util.ListHSLFShape
-HSLFSheet.getShapes()
-Returns all shapes contained in this Sheet
-
+HSLFGroupShape.getShapes()
 
 
 java.util.ListHSLFShape
-HSLFGroupShape.getShapes()
+HSLFSheet.getShapes()
+Returns all shapes contained in this Sheet
+
 
 
 java.util.IteratorHSLFShape
-HSLFSheet.iterator()
+HSLFGroupShape.iterator()
 
 
 java.util.IteratorHSLFShape
-HSLFGroupShape.iterator()
+HSLFSheet.iterator()
 
 
 
@@ -353,14 +353,14 @@
 
 
 void

svn commit: r1820370 [16/23] - in /poi/site: publish/apidocs/ publish/apidocs/org/apache/poi/class-use/ publish/apidocs/org/apache/poi/common/usermodel/fonts/ publish/apidocs/org/apache/poi/common/use

2018-01-05 Thread abearez
Modified: poi/site/publish/apidocs/org/apache/poi/util/class-use/Internal.html
URL: 
http://svn.apache.org/viewvc/poi/site/publish/apidocs/org/apache/poi/util/class-use/Internal.html?rev=1820370=1820369=1820370=diff
==
--- poi/site/publish/apidocs/org/apache/poi/util/class-use/Internal.html 
(original)
+++ poi/site/publish/apidocs/org/apache/poi/util/class-use/Internal.html Sat 
Jan  6 02:56:19 2018
@@ -1783,14 +1783,14 @@ for streaming/read-only processing of xl
 
 
 int
-FibRgLw97AbstractType.getCbMac()
-Specifies the count of bytes of those written to the 
WordDocument stream of the file that have any meaning.
+FibRgLw95AbstractType.getCbMac()
+Get the cbMac field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCbMac()
-Get the cbMac field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCbMac()
+Specifies the count of bytes of those written to the 
WordDocument stream of the file that have any meaning.
 
 
 
@@ -1837,62 +1837,62 @@ for streaming/read-only processing of xl
 
 
 int
-FibRgLw97AbstractType.getCcpAtn()
-A signed integer that specifies the count of CPs in the 
comment subdocument.
+FibRgLw95AbstractType.getCcpAtn()
+Get the ccpAtn field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpAtn()
-Get the ccpAtn field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpAtn()
+A signed integer that specifies the count of CPs in the 
comment subdocument.
 
 
 
 int
-FibRgLw97AbstractType.getCcpEdn()
-A signed integer that specifies the count of CPs in the 
endnote subdocument.
+FibRgLw95AbstractType.getCcpEdn()
+Get the ccpEdn field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpEdn()
-Get the ccpEdn field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpEdn()
+A signed integer that specifies the count of CPs in the 
endnote subdocument.
 
 
 
 int
-FibRgLw97AbstractType.getCcpFtn()
-A signed integer that specifies the count of CPs in the 
footnote subdocument.
+FibRgLw95AbstractType.getCcpFtn()
+Get the ccpFtn field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpFtn()
-Get the ccpFtn field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpFtn()
+A signed integer that specifies the count of CPs in the 
footnote subdocument.
 
 
 
 int
-FibRgLw97AbstractType.getCcpHdd()
-A signed integer that specifies the count of CPs in the 
header subdocument.
+FibRgLw95AbstractType.getCcpHdd()
+Get the ccpHdd field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpHdd()
-Get the ccpHdd field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpHdd()
+A signed integer that specifies the count of CPs in the 
header subdocument.
 
 
 
 int
-FibRgLw97AbstractType.getCcpHdrTxbx()
-A signed integer that specifies the count of CPs in the 
textbox subdocument of the header.
+FibRgLw95AbstractType.getCcpHdrTxbx()
+Get the ccpHdrTxbx field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpHdrTxbx()
-Get the ccpHdrTxbx field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpHdrTxbx()
+A signed integer that specifies the count of CPs in the 
textbox subdocument of the header.
 
 
 
@@ -1903,26 +1903,26 @@ for streaming/read-only processing of xl
 
 
 int
-FibRgLw97AbstractType.getCcpText()
-A signed integer that specifies the count of CPs in the 
main document.
+FibRgLw95AbstractType.getCcpText()
+Get the ccpText field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpText()
-Get the ccpText field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpText()
+A signed integer that specifies the count of CPs in the 
main document.
 
 
 
 int
-FibRgLw97AbstractType.getCcpTxbx()
-A signed integer that specifies the count of CPs in the 
textbox subdocument of the main document.
+FibRgLw95AbstractType.getCcpTxbx()
+Get the ccpTxbx field for the FibRgLw95 record.
 
 
 
 int
-FibRgLw95AbstractType.getCcpTxbx()
-Get the ccpTxbx field for the FibRgLw95 record.
+FibRgLw97AbstractType.getCcpTxbx()
+A signed integer that specifies the count of CPs in the 
textbox subdocument of the main document.
 
 
 
@@ -2173,14 +2173,14 @@ for streaming/read-only processing of xl
 
 
 DateAndTime
-PAPAbstractType.getDttmPropRMark()
-Get the dttmPropRMark field for the PAP record.
+CHPAbstractType.getDttmPropRMark()
+Date/time at which properties of this were changed for this 
run of text by the author.
 
 
 
 DateAndTime
-CHPAbstractType.getDttmPropRMark()
-Date/time at which properties of this were changed for this 
run of text by the author.
+PAPAbstractType.getDttmPropRMark()
+Get the dttmPropRMark field for the PAP record.
 
 
 
@@ -2650,17 +2650,17 @@ for streaming/read-only processing of xl
 
 
 
-int
-LFOLVLBaseAbstractType.getFlags()
-Get the flags field for the LFOLVLBase record.
-
-
-
 short
 FSPAAbstractType.getFlags()
 Get the flags field for the FSPA record.
 
 
+
+int
+LFOLVLBaseAbstractType.getFlags()
+Get the flags 

  1   2   >