mirror of https://github.com/apache/poi.git
Use the existing CTExternalData element
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1880707 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
edf41ca4d5
commit
eb850f02de
|
@ -67,6 +67,7 @@ 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.CTExternalData;
|
||||
import org.openxmlformats.schemas.drawingml.x2006.chart.CTLine3DChart;
|
||||
import org.openxmlformats.schemas.drawingml.x2006.chart.CTLineChart;
|
||||
import org.openxmlformats.schemas.drawingml.x2006.chart.CTPie3DChart;
|
||||
|
@ -1057,6 +1058,11 @@ public abstract class XDDFChart extends POIXMLDocumentPart implements TextContai
|
|||
*/
|
||||
public void setExternalId(String id) {
|
||||
getCTChartSpace().addNewExternalData().setId(id);
|
||||
CTChartSpace ctChartSpace = getCTChartSpace();
|
||||
CTExternalData externalData = ctChartSpace.isSetExternalData()
|
||||
? ctChartSpace.getExternalData()
|
||||
: ctChartSpace.addNewExternalData();
|
||||
externalData.setId(id);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -21,13 +21,34 @@ package org.apache.poi.xddf.usermodel.chart;
|
|||
import org.apache.poi.ooxml.POIXMLFactory;
|
||||
import org.apache.poi.ooxml.POIXMLRelation;
|
||||
import org.junit.Test;
|
||||
import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpace;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
public class TestXDDFChart {
|
||||
@Test
|
||||
public void testConstruct() {
|
||||
// minimal test to cause ooxml-lite to include all the classes in poi-ooxml-schemas
|
||||
XDDFChart xddfChart = newXDDFChart();
|
||||
|
||||
assertNotNull(xddfChart.getCTChartSpace());
|
||||
assertNotNull(xddfChart.getCTPlotArea());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetExternalId() {
|
||||
XDDFChart xddfChart = newXDDFChart();
|
||||
CTChartSpace ctChartSpace = xddfChart.getCTChartSpace();
|
||||
|
||||
xddfChart.setExternalId("rid1");
|
||||
assertEquals("rid1", ctChartSpace.getExternalData().getId());
|
||||
|
||||
xddfChart.setExternalId("rid2");
|
||||
assertEquals("rid2", ctChartSpace.getExternalData().getId());
|
||||
}
|
||||
|
||||
private XDDFChart newXDDFChart() {
|
||||
XDDFChart xddfChart = new XDDFChart() {
|
||||
@Override
|
||||
protected POIXMLRelation getChartRelation() {
|
||||
|
@ -44,7 +65,6 @@ public class TestXDDFChart {
|
|||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
assertNotNull(xddfChart.getCTPlotArea());
|
||||
return xddfChart;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue