You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by gw...@apache.org on 2017/06/12 05:38:41 UTC

svn commit: r1798414 - in /poi/trunk/src: java/org/apache/poi/ss/usermodel/charts/ ooxml/java/org/apache/poi/xssf/usermodel/ ooxml/java/org/apache/poi/xssf/usermodel/charts/ ooxml/testcases/org/apache/poi/xssf/usermodel/charts/

Author: gwoolsey
Date: Mon Jun 12 05:38:41 2017
New Revision: 1798414

URL: http://svn.apache.org/viewvc?rev=1798414&view=rev
Log:
Standardize some more common chart axis properties.

Implement the ChartAxis ss interface for date axes, which are pretty much a category axis with one extra property, a date granularity (not currently passed through, get it still from the CT* class).  Created the class and test from the category axis versions.

Added:
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java   (with props)
    poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFDateAxis.java   (with props)
Modified:
    poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxis.java
    poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxisFactory.java
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFCategoryAxis.java
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFChartAxis.java
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFValueAxis.java

Modified: poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxis.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxis.java?rev=1798414&r1=1798413&r2=1798414&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxis.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxis.java Mon Jun 12 05:38:41 2017
@@ -153,4 +153,10 @@ public interface ChartAxis {
      * @param tickMark minor tick mark type.
      */
     void setMinorTickMark(AxisTickMark tickMark);
+    
+    /**
+     * Use this to check before retrieving a number format, as calling {@link #getNumberFormat()} may create a default one if none exists.
+     * @return true if a number format element is defined, false if not
+     */
+    boolean hasNumberFormat();
 }

Modified: poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxisFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxisFactory.java?rev=1798414&r1=1798413&r2=1798414&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxisFactory.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/usermodel/charts/ChartAxisFactory.java Mon Jun 12 05:38:41 2017
@@ -29,13 +29,21 @@ import org.apache.poi.util.Beta;
 public interface ChartAxisFactory {
 
 	/**
-	 * @return new value axis
+	 * @param pos 
+	 * @return new value axis at the end of the list at the specified chart position
 	 */
 	ValueAxis createValueAxis(AxisPosition pos);
 
 	/**
-	 * @return new category axis.
+	 * @param pos 
+	 * @return new category axis at the end of the list at the specified chart position
 	 */
 	ChartAxis createCategoryAxis(AxisPosition pos);
+	
+	/**
+	 * @param pos 
+	 * @return new date category axis at the end of the list at the specified chart position
+	 */
+	ChartAxis createDateAxis(AxisPosition pos);
 
 }

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java?rev=1798414&r1=1798413&r2=1798414&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFChart.java Mon Jun 12 05:38:41 2017
@@ -39,6 +39,7 @@ import org.apache.poi.xssf.usermodel.cha
 import org.apache.poi.xssf.usermodel.charts.XSSFChartAxis;
 import org.apache.poi.xssf.usermodel.charts.XSSFChartDataFactory;
 import org.apache.poi.xssf.usermodel.charts.XSSFChartLegend;
+import org.apache.poi.xssf.usermodel.charts.XSSFDateAxis;
 import org.apache.poi.xssf.usermodel.charts.XSSFManualLayout;
 import org.apache.poi.xssf.usermodel.charts.XSSFValueAxis;
 import org.apache.xmlbeans.XmlException;
@@ -47,6 +48,7 @@ import org.apache.xmlbeans.XmlOptions;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTCatAx;
 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.CTPageMargins;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTPlotArea;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTPrintSettings;
@@ -224,6 +226,18 @@ public final class XSSFChart extends POI
 		return categoryAxis;
 	}
 
+	public XSSFDateAxis createDateAxis(AxisPosition pos) {
+	    long id = axis.size() + 1;
+	    XSSFDateAxis dateAxis = new XSSFDateAxis(this, id, pos);
+	    if (axis.size() == 1) {
+	        ChartAxis ax = axis.get(0);
+	        ax.crossAxis(dateAxis);
+	        dateAxis.crossAxis(ax);
+	    }
+	    axis.add(dateAxis);
+	    return dateAxis;
+	}
+	
     public List<? extends XSSFChartAxis> getAxis() {
         if (axis.isEmpty() && hasAxis()) {
             parseAxis();
@@ -438,6 +452,7 @@ public final class XSSFChart extends POI
 	private void parseAxis() {
 		// TODO: add other axis types
 		parseCategoryAxis();
+		parseDateAxis();
 		parseValueAxis();
 	}
 
@@ -447,6 +462,12 @@ public final class XSSFChart extends POI
 		}
 	}
 
+	private void parseDateAxis() {
+	    for (CTDateAx dateAx : chart.getPlotArea().getDateAxArray()) {
+	        axis.add(new XSSFDateAxis(this, dateAx));
+	    }
+	}
+	
 	private void parseValueAxis() {
 		for (CTValAx valAx : chart.getPlotArea().getValAxArray()) {
 			axis.add(new XSSFValueAxis(this, valAx));

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFCategoryAxis.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFCategoryAxis.java?rev=1798414&r1=1798413&r2=1798414&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFCategoryAxis.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFCategoryAxis.java Mon Jun 12 05:38:41 2017
@@ -17,10 +17,22 @@
 
 package org.apache.poi.xssf.usermodel.charts;
 
-import org.apache.poi.ss.usermodel.charts.*;
+import org.apache.poi.ss.usermodel.charts.AxisCrosses;
+import org.apache.poi.ss.usermodel.charts.AxisOrientation;
+import org.apache.poi.ss.usermodel.charts.AxisPosition;
+import org.apache.poi.ss.usermodel.charts.AxisTickMark;
+import org.apache.poi.ss.usermodel.charts.ChartAxis;
 import org.apache.poi.util.Beta;
 import org.apache.poi.xssf.usermodel.XSSFChart;
-import org.openxmlformats.schemas.drawingml.x2006.chart.*;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTAxPos;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTBoolean;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTCatAx;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartLines;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTCrosses;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumFmt;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTScaling;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTTickMark;
+import org.openxmlformats.schemas.drawingml.x2006.chart.STTickLblPos;
 
 /**
  * Category axis type.
@@ -80,6 +92,10 @@ public class XSSFCategoryAxis extends XS
 		return ctCatAx.getMinorTickMark();
 	}
 
+	public CTChartLines getMajorGridLines() {
+	    return ctCatAx.getMajorGridlines();
+	}
+	
 	public void crossAxis(ChartAxis axis) {
 		ctCatAx.getCrossAx().setVal(axis.getId());
 	}
@@ -103,4 +119,8 @@ public class XSSFCategoryAxis extends XS
 		setMajorTickMark(AxisTickMark.CROSS);
 		setMinorTickMark(AxisTickMark.NONE);
 	}
+
+    public boolean hasNumberFormat() {
+        return ctCatAx.isSetNumFmt();
+    }
 }

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFChartAxis.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFChartAxis.java?rev=1798414&r1=1798413&r2=1798414&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFChartAxis.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFChartAxis.java Mon Jun 12 05:38:41 2017
@@ -17,24 +17,25 @@
 
 package org.apache.poi.xssf.usermodel.charts;
 
-import org.apache.poi.ss.usermodel.charts.ChartAxis;
-import org.apache.poi.ss.usermodel.charts.AxisPosition;
-import org.apache.poi.ss.usermodel.charts.AxisOrientation;
 import org.apache.poi.ss.usermodel.charts.AxisCrosses;
+import org.apache.poi.ss.usermodel.charts.AxisOrientation;
+import org.apache.poi.ss.usermodel.charts.AxisPosition;
 import org.apache.poi.ss.usermodel.charts.AxisTickMark;
+import org.apache.poi.ss.usermodel.charts.ChartAxis;
 import org.apache.poi.util.Beta;
 import org.apache.poi.xssf.usermodel.XSSFChart;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTAxPos;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTBoolean;
-import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumFmt;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartLines;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTCrosses;
-import org.openxmlformats.schemas.drawingml.x2006.chart.CTOrientation;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTLogBase;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumFmt;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTOrientation;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTScaling;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTTickMark;
-import org.openxmlformats.schemas.drawingml.x2006.chart.STOrientation;
 import org.openxmlformats.schemas.drawingml.x2006.chart.STAxPos;
 import org.openxmlformats.schemas.drawingml.x2006.chart.STCrosses;
+import org.openxmlformats.schemas.drawingml.x2006.chart.STOrientation;
 import org.openxmlformats.schemas.drawingml.x2006.chart.STTickMark;
 
 /**
@@ -193,7 +194,8 @@ public abstract class XSSFChartAxis impl
 	protected abstract CTBoolean getDelete();
 	protected abstract CTTickMark getMajorCTTickMark();
 	protected abstract CTTickMark getMinorCTTickMark();
-
+	public abstract CTChartLines getMajorGridLines();
+	
 	private static STOrientation.Enum fromAxisOrientation(AxisOrientation orientation) {
 		switch (orientation) {
 			case MIN_MAX: return STOrientation.MIN_MAX;

Added: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java?rev=1798414&view=auto
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java (added)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java Mon Jun 12 05:38:41 2017
@@ -0,0 +1,134 @@
+/* ====================================================================
+   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.charts;
+
+import org.apache.poi.ss.usermodel.charts.AxisCrosses;
+import org.apache.poi.ss.usermodel.charts.AxisOrientation;
+import org.apache.poi.ss.usermodel.charts.AxisPosition;
+import org.apache.poi.ss.usermodel.charts.AxisTickMark;
+import org.apache.poi.ss.usermodel.charts.ChartAxis;
+import org.apache.poi.util.Beta;
+import org.apache.poi.xssf.usermodel.XSSFChart;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTAxPos;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTBoolean;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTCatAx;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartLines;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTCrosses;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTDateAx;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumFmt;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTScaling;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTTickMark;
+import org.openxmlformats.schemas.drawingml.x2006.chart.STTickLblPos;
+
+/**
+ * Date axis type.  Currently only implements the same values as {@link XSSFCategoryAxis}, since the two are nearly identical.
+ */
+@Beta
+public class XSSFDateAxis extends XSSFChartAxis {
+
+	private CTDateAx ctDateAx;
+
+	/**
+	 * @param chart
+	 * @param id
+	 * @param pos
+	 */
+	public XSSFDateAxis(XSSFChart chart, long id, AxisPosition pos) {
+		super(chart);
+		createAxis(id, pos);
+	}
+
+	/**
+	 * @param chart
+	 * @param ctDateAx
+	 */
+	public XSSFDateAxis(XSSFChart chart, CTDateAx ctDateAx) {
+		super(chart);
+		this.ctDateAx = ctDateAx;
+	}
+
+	public long getId() {
+		return ctDateAx.getAxId().getVal();
+	}
+
+	protected CTAxPos getCTAxPos() {
+		return ctDateAx.getAxPos();
+	}
+
+	protected CTNumFmt getCTNumFmt() {
+		if (ctDateAx.isSetNumFmt()) {
+			return ctDateAx.getNumFmt();
+		}
+		return ctDateAx.addNewNumFmt();
+	}
+
+	protected CTScaling getCTScaling() {
+		return ctDateAx.getScaling();
+	}
+
+	protected CTCrosses getCTCrosses() {
+		return ctDateAx.getCrosses();
+	}
+
+	@Override
+	protected CTBoolean getDelete() {
+		return ctDateAx.getDelete();
+	}
+
+	@Override
+	protected CTTickMark getMajorCTTickMark() {
+		return ctDateAx.getMajorTickMark();
+	}
+
+	@Override
+	protected CTTickMark getMinorCTTickMark() {
+		return ctDateAx.getMinorTickMark();
+	}
+
+	public CTChartLines getMajorGridLines() {
+	    return ctDateAx.getMajorGridlines();
+	}
+	
+	public void crossAxis(ChartAxis axis) {
+		ctDateAx.getCrossAx().setVal(axis.getId());
+	}
+
+	private void createAxis(long id, AxisPosition pos) {
+		ctDateAx = chart.getCTChart().getPlotArea().addNewDateAx();
+		ctDateAx.addNewAxId().setVal(id);
+		ctDateAx.addNewAxPos();
+		ctDateAx.addNewScaling();
+		ctDateAx.addNewCrosses();
+		ctDateAx.addNewCrossAx();
+		ctDateAx.addNewTickLblPos().setVal(STTickLblPos.NEXT_TO);
+		ctDateAx.addNewDelete();
+		ctDateAx.addNewMajorTickMark();
+		ctDateAx.addNewMinorTickMark();
+
+		setPosition(pos);
+		setOrientation(AxisOrientation.MIN_MAX);
+		setCrosses(AxisCrosses.AUTO_ZERO);
+		setVisible(true);
+		setMajorTickMark(AxisTickMark.CROSS);
+		setMinorTickMark(AxisTickMark.NONE);
+	}
+
+    public boolean hasNumberFormat() {
+        return ctDateAx.isSetNumFmt();
+    }
+}

Propchange: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFValueAxis.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFValueAxis.java?rev=1798414&r1=1798413&r2=1798414&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFValueAxis.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFValueAxis.java Mon Jun 12 05:38:41 2017
@@ -17,23 +17,23 @@
 
 package org.apache.poi.xssf.usermodel.charts;
 
-import org.apache.poi.ss.usermodel.charts.ChartAxis;
-import org.apache.poi.ss.usermodel.charts.ValueAxis;
-import org.apache.poi.ss.usermodel.charts.AxisPosition;
-import org.apache.poi.ss.usermodel.charts.AxisOrientation;
 import org.apache.poi.ss.usermodel.charts.AxisCrossBetween;
 import org.apache.poi.ss.usermodel.charts.AxisCrosses;
+import org.apache.poi.ss.usermodel.charts.AxisOrientation;
+import org.apache.poi.ss.usermodel.charts.AxisPosition;
 import org.apache.poi.ss.usermodel.charts.AxisTickMark;
-
+import org.apache.poi.ss.usermodel.charts.ChartAxis;
+import org.apache.poi.ss.usermodel.charts.ValueAxis;
 import org.apache.poi.util.Beta;
 import org.apache.poi.xssf.usermodel.XSSFChart;
-import org.openxmlformats.schemas.drawingml.x2006.chart.CTValAx;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTAxPos;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTBoolean;
-import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumFmt;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTChartLines;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTCrosses;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTNumFmt;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTScaling;
 import org.openxmlformats.schemas.drawingml.x2006.chart.CTTickMark;
+import org.openxmlformats.schemas.drawingml.x2006.chart.CTValAx;
 import org.openxmlformats.schemas.drawingml.x2006.chart.STCrossBetween;
 import org.openxmlformats.schemas.drawingml.x2006.chart.STTickLblPos;
 
@@ -107,6 +107,10 @@ public class XSSFValueAxis extends XSSFC
 		return ctValAx.getMinorTickMark();
 	}
 
+    public CTChartLines getMajorGridLines() {
+        return ctValAx.getMajorGridlines();
+    }
+
 	public void crossAxis(ChartAxis axis) {
 		ctValAx.getCrossAx().setVal(axis.getId());
 	}
@@ -150,4 +154,8 @@ public class XSSFValueAxis extends XSSFC
 				throw new IllegalArgumentException();
 		}
 	}
+
+    public boolean hasNumberFormat() {
+        return ctValAx.isSetNumFmt();
+    }
 }

Added: poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFDateAxis.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFDateAxis.java?rev=1798414&view=auto
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFDateAxis.java (added)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFDateAxis.java Mon Jun 12 05:38:41 2017
@@ -0,0 +1,40 @@
+/* ====================================================================
+   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.charts;
+
+import junit.framework.TestCase;
+
+import org.apache.poi.ss.usermodel.charts.*;
+import org.apache.poi.xssf.usermodel.*;
+
+public final class TestXSSFDateAxis extends TestCase {
+ 
+	public void testAccessMethods() throws Exception {
+		XSSFWorkbook wb = new XSSFWorkbook();
+		XSSFSheet sheet = wb.createSheet();
+		XSSFDrawing drawing = sheet.createDrawingPatriarch();
+		XSSFClientAnchor anchor = drawing.createAnchor(0, 0, 0, 0, 1, 1, 10, 30);
+		XSSFChart chart = drawing.createChart(anchor);
+		XSSFDateAxis axis = chart.getChartAxisFactory().createDateAxis(AxisPosition.BOTTOM);
+
+		axis.setCrosses(AxisCrosses.AUTO_ZERO);
+		assertEquals(axis.getCrosses(), AxisCrosses.AUTO_ZERO);
+
+		assertEquals(chart.getAxis().size(), 1);
+	}
+}

Propchange: poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/charts/TestXSSFDateAxis.java
------------------------------------------------------------------------------
    svn:eol-style = native



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