It's probably worth annotating a method that takes or returns a CT* class with @Internal, since CT* classes are an implementation detail to POI ooxml and may not work if we get rid of xmlbeans or fully read the XML into POJOs then recreate the XML on write.
On Jun 29, 2017 4:06 PM, <[email protected]> wrote: Author: gwoolsey Date: Thu Jun 29 23:06:27 2017 New Revision: 1800341 URL: http://svn.apache.org/viewvc?rev=1800341&view=rev Log: Expose one more bit of style information generically (for XSSF). If someone needs all these properties for HSSF charts as well, we can build a new Interface for the various bits and populate it with things like axis line width and color, etc. but for now I think most users are in the XSSF realm like me. Modified: 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/XSSFDateAxis.java poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/ charts/XSSFValueAxis.java 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=1800341&r1=1800340&r2=1800341&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 Thu Jun 29 23:06:27 2017 @@ -33,6 +33,7 @@ import org.openxmlformats.schemas.drawin import org.openxmlformats.schemas.drawingml.x2006.chart.CTScaling; import org.openxmlformats.schemas.drawingml.x2006.chart.CTTickMark; import org.openxmlformats.schemas.drawingml.x2006.chart.STTickLblPos; +import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties; /** * Category axis type. @@ -58,6 +59,10 @@ public class XSSFCategoryAxis extends XS return ctCatAx.getAxId().getVal(); } + public CTShapeProperties getLine() { + return ctCatAx.getSpPr(); + } + protected CTAxPos getCTAxPos() { return ctCatAx.getAxPos(); } 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= 1800341&r1=1800340&r2=1800341&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 Thu Jun 29 23:06:27 2017 @@ -37,6 +37,7 @@ import org.openxmlformats.schemas.drawin import org.openxmlformats.schemas.drawingml.x2006.chart.STCrosses; import org.openxmlformats.schemas.drawingml.x2006.chart.STOrientation; import org.openxmlformats.schemas.drawingml.x2006.chart.STTickMark; +import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties; /** * Base class for all axis types. @@ -195,6 +196,7 @@ public abstract class XSSFChartAxis impl protected abstract CTTickMark getMajorCTTickMark(); protected abstract CTTickMark getMinorCTTickMark(); public abstract CTChartLines getMajorGridLines(); + public abstract CTShapeProperties getLine(); private static STOrientation.Enum fromAxisOrientation(AxisOrientation orientation) { switch (orientation) { Modified: 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= 1800341&r1=1800340&r2=1800341&view=diff ============================================================ ================== --- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java (original) +++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/charts/XSSFDateAxis.java Thu Jun 29 23:06:27 2017 @@ -34,6 +34,7 @@ import org.openxmlformats.schemas.drawin import org.openxmlformats.schemas.drawingml.x2006.chart.CTScaling; import org.openxmlformats.schemas.drawingml.x2006.chart.CTTickMark; import org.openxmlformats.schemas.drawingml.x2006.chart.STTickLblPos; +import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties; /** * Date axis type. Currently only implements the same values as {@link XSSFCategoryAxis}, since the two are nearly identical. @@ -66,6 +67,10 @@ public class XSSFDateAxis extends XSSFCh return ctDateAx.getAxId().getVal(); } + public CTShapeProperties getLine() { + return ctDateAx.getSpPr(); + } + protected CTAxPos getCTAxPos() { return ctDateAx.getAxPos(); } 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= 1800341&r1=1800340&r2=1800341&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 Thu Jun 29 23:06:27 2017 @@ -36,6 +36,7 @@ import org.openxmlformats.schemas.drawin import org.openxmlformats.schemas.drawingml.x2006.chart.CTValAx; import org.openxmlformats.schemas.drawingml.x2006.chart.STCrossBetween; import org.openxmlformats.schemas.drawingml.x2006.chart.STTickLblPos; +import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties; /** * Value axis type. @@ -61,6 +62,10 @@ public class XSSFValueAxis extends XSSFC return ctValAx.getAxId().getVal(); } + public CTShapeProperties getLine() { + return ctValAx.getSpPr(); + } + public void setCrossBetween(AxisCrossBetween crossBetween) { ctValAx.getCrossBetween().setVal(fromCrossBetween( crossBetween)); } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
