#64411 - Provide JigSaw modules

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1877398 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Andreas Beeker 2020-05-05 13:36:30 +00:00
parent ce5f3df081
commit 114a4dbd41
90 changed files with 2108 additions and 13470 deletions

545
build.xml
View File

@ -50,10 +50,11 @@ under the License.
<property name="repository.m2" value="https://repo1.maven.org"/> <property name="repository.m2" value="https://repo1.maven.org"/>
<property name="repository.pentaho" value="https://nexus.pentaho.org/"/> <property name="repository.pentaho" value="https://nexus.pentaho.org/"/>
<property name="main.lib" location="lib"/> <property name="main.lib" location="${basedir}/lib/main"/>
<property name="ooxml.lib" location="ooxml-lib"/> <property name="ooxml.lib" location="${basedir}/lib/ooxml"/>
<property name="ooxml.test.lib" location="ooxml-testlib"/> <property name="ooxml-tests.lib" location="${basedir}/lib/ooxml-tests"/>
<property name="compile.lib" location="compile-lib"/> <property name="util.lib" location="${basedir}/lib/util"/>
<!-- compiler options options --> <!-- compiler options options -->
<property name="jdk.version.source" value="1.8" description="JDK version of source code"/> <property name="jdk.version.source" value="1.8" description="JDK version of source code"/>
@ -64,6 +65,10 @@ under the License.
<contains string="${java.vendor}" substring="IBM" casesensitive="false"/> <contains string="${java.vendor}" substring="IBM" casesensitive="false"/>
</condition> </condition>
<condition property="isJava8">
<equals arg1="${ant.java.version}" arg2="1.8"/>
</condition>
<!-- add addOpens parameter for Java 9 and higher --> <!-- add addOpens parameter for Java 9 and higher -->
<condition property="addOpens"> <condition property="addOpens">
<not><matches pattern="^1\..*" string="${java.version}"/></not> <not><matches pattern="^1\..*" string="${java.version}"/></not>
@ -168,137 +173,99 @@ under the License.
<property name="excelant.output.test.dir" location="build/excelant-test-classes"/> <property name="excelant.output.test.dir" location="build/excelant-test-classes"/>
<property name="excelant.testokfile" location="build/excelant-testokfile.txt"/> <property name="excelant.testokfile" location="build/excelant-testokfile.txt"/>
<scriptdef name="dependency" language="javascript" description="define properties for library dependency">
<attribute name="prefix"/>
<attribute name="artifact"/>
<attribute name="usage"/>
<attribute name="packaging"/>
<attribute name="repo"/>
<attribute name="snapshot"/>
<attribute name="query"/>
<![CDATA[
var parts = attributes.get("artifact").split(/:/);
var packaging = attributes.get("packaging") || "jar";
var version = attributes.get("snapshot") || parts[2];
var repo = attributes.get("repo");
if (repo == null) {
repo = project.getProperty("repository.m2")+"/maven2";
}
var query = attributes.get("query") || "";
var jarLoc = project.getProperty("basedir")+"/lib/"+attributes.get("usage")+"/"+
parts[1]+"-"+parts[2]+"."+packaging;
var urlLoc = repo+"/"+parts[0].replace(/\./g,"/")+"/"+parts[1]+"/"+parts[2]+"/"+
parts[1]+"-"+(attributes.get("snapshot") || parts[2])+"."+packaging+query;
project.setProperty(attributes.get("prefix")+"."+packaging, jarLoc);
project.setProperty(attributes.get("prefix")+".url", urlLoc);
]]>
<!-- TODO: add library to a queue for downloading ... -->
</scriptdef>
<!-- jars in the /lib directory, see the fetch-jars target--> <!-- jars in the /lib directory, see the fetch-jars target-->
<property name="main.commons-logging.jar" location="${main.lib}/commons-logging-1.2.jar"/> <dependency prefix="main.commons-logging" artifact="commons-logging:commons-logging:1.2" usage="main"/>
<property name="main.commons-logging.url" <dependency prefix="main.commons-codec" artifact="commons-codec:commons-codec:1.14" usage="main"/>
value="${repository.m2}/maven2/commons-logging/commons-logging/1.2/commons-logging-1.2.jar"/> <dependency prefix="main.log4j" artifact="log4j:log4j:1.2.17" usage="main"/>
<property name="main.commons-codec.jar" location="${main.lib}/commons-codec-1.14.jar"/> <dependency prefix="main.commons-collections4" artifact="org.apache.commons:commons-collections4:4.4" usage="main"/>
<property name="main.commons-codec.url" <dependency prefix="main.commons-math3" artifact="org.apache.commons:commons-math3:3.6.1" usage="main"/>
value="${repository.m2}/maven2/commons-codec/commons-codec/1.14/commons-codec-1.14.jar"/> <dependency prefix="main.com.zaxxer" artifact="com.zaxxer:SparseBitSet:1.2" usage="main"/>
<property name="main.log4j.jar" location="${main.lib}/log4j-1.2.17.jar"/>
<property name="main.log4j.url" value="${repository.m2}/maven2/log4j/log4j/1.2.17/log4j-1.2.17.jar"/>
<property name="main.junit.jar" location="${main.lib}/junit-4.13.jar"/>
<property name="main.junit.url" value="${repository.m2}/maven2/junit/junit/4.13/junit-4.13.jar"/>
<property name="main.jmh.jar" location="${main.lib}/jmh-core-1.19.jar"/>
<property name="main.jmh.url" value="${repository.m2}/maven2/org/openjdk/jmh/jmh-core/1.19/jmh-core-1.19.jar"/>
<property name="main.jmhAnnotation.jar" location="${main.lib}/jmh-generator-annprocess-1.19.jar"/>
<property name="main.jmhAnnotation.url" value="${repository.m2}/maven2/org/openjdk/jmh/jmh-generator-annprocess/1.19/jmh-generator-annprocess-1.19.jar"/>
<property name="main.hamcrest.jar" location="${main.lib}/hamcrest-core-1.3.jar"/> <dependency prefix="main.junit" artifact="junit:junit:4.13" usage="main-tests"/>
<property name="main.hamcrest.url" value="${repository.m2}/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"/> <dependency prefix="main.jmh" artifact="org.openjdk.jmh:jmh-core:1.19" usage="main-tests"/>
<property name="main.xmlunit.jar" location="${main.lib}/xmlunit-core-2.5.1.jar"/> <dependency prefix="main.jmhAnnotation" artifact="org.openjdk.jmh:jmh-generator-annprocess:1.19" usage="main-tests"/>
<property name="main.xmlunit.url" value="${repository.m2}/maven2/org/xmlunit/xmlunit-core/2.5.1/xmlunit-core-2.5.1.jar"/> <dependency prefix="main.hamcrest" artifact="org.hamcrest:hamcrest-core:1.3" usage="main-tests"/>
<property name="main.mockito.jar" location="${main.lib}/mockito-core-3.2.4.jar"/> <dependency prefix="main.xmlunit" artifact="org.xmlunit:xmlunit-core:2.5.1" usage="main-tests"/>
<property name="main.mockito.url" value="${repository.m2}/maven2/org/mockito/mockito-core/3.2.4/mockito-core-3.2.4.jar"/> <dependency prefix="main.mockito" artifact="org.mockito:mockito-core:3.2.4" usage="main-tests"/>
<property name="main.byte-buddy.jar" location="${main.lib}/byte-buddy-1.10.1.jar"/> <dependency prefix="main.byte-buddy" artifact="net.bytebuddy:byte-buddy:1.10.1" usage="main-tests"/>
<property name="main.byte-buddy.url" value="${repository.m2}/maven2/net/bytebuddy/byte-buddy/1.10.1/byte-buddy-1.10.1.jar"/> <dependency prefix="main.byte-buddy-agent" artifact="net.bytebuddy:byte-buddy-agent:1.10.1" usage="main-tests"/>
<property name="main.byte-buddy-agent.jar" location="${main.lib}/byte-buddy-agent-1.10.1.jar"/> <dependency prefix="main.objenesis" artifact="org.objenesis:objenesis:2.6" usage="main-tests"/>
<property name="main.byte-buddy-agent.url" value="${repository.m2}/maven2/net/bytebuddy/byte-buddy-agent/1.10.1/byte-buddy-agent-1.10.1.jar"/>
<property name="main.ant.jar" location="${main.lib}/ant-1.10.1.jar"/>
<property name="main.objenesis.jar" location="${main.lib}/objenesis-2.6.jar"/>
<property name="main.objenesis.url" value="${repository.m2}/maven2/org/objenesis/objenesis/2.6/objenesis-2.6.jar"/>
<property name="main.ant.url" value="${repository.m2}/maven2/org/apache/ant/ant/1.10.1/ant-1.10.1.jar"/>
<property name="main.antlauncher.jar" location="${main.lib}/ant-launcher-1.10.1.jar"/>
<property name="main.antlauncher.url" value="${repository.m2}/maven2/org/apache/ant/ant-launcher/1.10.1/ant-launcher-1.10.1.jar"/>
<property name="main.commons-collections4.jar" location="${main.lib}/commons-collections4-4.4.jar"/>
<property name="main.commons-collections4.url"
value="${repository.m2}/maven2/org/apache/commons/commons-collections4/4.4/commons-collections4-4.4.jar"/>
<property name="main.commons-math3.jar" location="${main.lib}/commons-math3-3.6.1.jar"/>
<property name="main.commons-math3.url"
value="${repository.m2}/maven2/org/apache/commons/commons-math3/3.6.1/commons-math3-3.6.1.jar"/>
<property name="main.xmlbind.jar" location="${main.lib}/jaxb-api-2.3.1.jar"/>
<property name="main.xmlbind.url"
value="${repository.m2}/maven2/javax/xml/bind/jaxb-api/2.3.1/jaxb-api-2.3.1.jar"/>
<property name="main.xmlbind-impl.jar" location="${main.lib}/jaxb-impl-2.3.2.jar"/>
<property name="main.xmlbind-impl.url"
value="${repository.m2}/maven2/com/sun/xml/bind/jaxb-impl/2.3.2/jaxb-impl-2.3.2.jar"/>
<property name="main.xmlbind-core.jar" location="${main.lib}/jaxb-core-2.3.0.1.jar"/>
<property name="main.xmlbind-core.url"
value="${repository.m2}/maven2/com/sun/xml/bind/jaxb-core/2.3.0.1/jaxb-core-2.3.0.1.jar"/>
<property name="main.activation.jar" location="${main.lib}/activation-1.1.1.jar"/>
<property name="main.activation.url"
value="${repository.m2}/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jar"/>
<property name="main.com.zaxxer.jar" location="${main.lib}/SparseBitSet-1.2.jar"/>
<property name="main.com.zaxxer.url"
value="${repository.m2}/maven2/com/zaxxer/SparseBitSet/1.2/SparseBitSet-1.2.jar"/>
<!-- xml signature libs --> <dependency prefix="main.ant" artifact="org.apache.ant:ant:1.10.1" usage="excelant"/>
<property name="dsig.xmlsec.jar" location="${compile.lib}/xmlsec-2.1.5.jar"/> <dependency prefix="main.antlauncher" artifact="org.apache.ant:ant-launcher:1.10.1" usage="excelant"/>
<property name="dsig.xmlsec.url" value="${repository.m2}/maven2/org/apache/santuario/xmlsec/2.1.5/xmlsec-2.1.5.jar"/>
<property name="dsig.bouncycastle-prov.jar" location="${compile.lib}/bcprov-ext-jdk15on-1.65.jar"/> <!-- xml signature libs - not part of the distribution -->
<property name="dsig.bouncycastle-prov.url" value="${repository.m2}/maven2/org/bouncycastle/bcprov-ext-jdk15on/1.65/bcprov-ext-jdk15on-1.65.jar"/> <dependency prefix="dsig.xmlsec" artifact="org.apache.santuario:xmlsec:2.1.5" usage="ooxml-provided"/>
<property name="dsig.bouncycastle-pkix.jar" location="${compile.lib}/bcpkix-jdk15on-1.65.jar"/> <dependency prefix="dsig.bouncycastle-prov" artifact="org.bouncycastle:bcprov-ext-jdk15on:1.65" usage="ooxml-provided"/>
<property name="dsig.bouncycastle-pkix.url" value="${repository.m2}/maven2/org/bouncycastle/bcpkix-jdk15on/1.65/bcpkix-jdk15on-1.65.jar"/> <dependency prefix="dsig.bouncycastle-pkix" artifact="org.bouncycastle:bcpkix-jdk15on:1.65" usage="ooxml-provided"/>
<property name="dsig.sl4j-api.jar" location="${compile.lib}/slf4j-api-1.7.30.jar"/> <dependency prefix="dsig.sl4j-api" artifact="org.slf4j:slf4j-api:1.7.30" usage="ooxml-provided"/>
<property name="dsig.sl4j-api.url" value="${repository.m2}/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar"/>
<!-- svg/batik libs - not part of the distribution --> <!-- svg/batik libs - not part of the distribution -->
<property name="svg.batik-all.url" value="${repository.m2}/maven2/org/apache/xmlgraphics/batik-all/1.12/batik-all-1.12.jar"/> <dependency prefix="svg.xml-apis-ext" artifact="xml-apis:xml-apis-ext:1.3.04" usage="ooxml-provided"/>
<property name="svg.batik-all.jar" value="${compile.lib}/batik-all-1.12.jar"/> <dependency prefix="svg.xmlgraphics-commons" artifact="org.apache.xmlgraphics:xmlgraphics-commons:2.3" usage="ooxml-provided"/>
<property name="svg.xml-apis-ext.url" value="${repository.m2}/maven2/xml-apis/xml-apis-ext/1.3.04/xml-apis-ext-1.3.04.jar"/> <dependency prefix="svg.batik-all" artifact="org.apache.xmlgraphics:batik-all:1.12" usage="ooxml-provided"/>
<property name="svg.xml-apis-ext.jar" value="${compile.lib}/xml-apis-ext-1.3.04.jar"/>
<property name="svg.xmlgraphics-commons.url" value="${repository.m2}/maven2/org/apache/xmlgraphics/xmlgraphics-commons/2.3/xmlgraphics-commons-2.3.jar"/>
<property name="svg.xmlgraphics-commons.jar" value="${compile.lib}/xmlgraphics-commons-2.3.jar"/>
<!-- jars in the ooxml-lib directory, see the fetch-ooxml-jars target--> <!-- jars in the ooxml-lib directory, see the fetch-ooxml-jars target-->
<property name="ooxml.curvesapi.jar" location="${ooxml.lib}/curvesapi-1.06.jar"/> <dependency prefix="ooxml.curvesapi" artifact="com.github.virtuald:curvesapi:1.06" usage="ooxml"/>
<property name="ooxml.curvesapi.url" <dependency prefix="ooxml.xmlbeans" artifact="org.apache.xmlbeans:xmlbeans:3.1.0" usage="ooxml"/>
value="${repository.m2}/maven2/com/github/virtuald/curvesapi/1.06/curvesapi-1.06.jar"/> <dependency prefix="ooxml.commons-compress" artifact="org.apache.commons:commons-compress:1.20" usage="ooxml"/>
<property name="ooxml.xmlbeans.jar" location="${ooxml.lib}/xmlbeans-3.1.0.jar"/>
<property name="ooxml.xmlbeans.url"
value="https://repository.apache.org/content/repositories/releases/org/apache/xmlbeans/xmlbeans/3.1.0/xmlbeans-3.1.0.jar"/>
<property name="ooxml.commons-compress.jar" location="${main.lib}/commons-compress-1.20.jar"/>
<property name="ooxml.commons-compress.url"
value="${repository.m2}/maven2/org/apache/commons/commons-compress/1.20/commons-compress-1.20.jar"/>
<!-- jars in the ooxml-test-lib directory, see the fetch-ooxml-jars target--> <!-- jars in the ooxml-test-lib directory, see the fetch-ooxml-jars target-->
<property name="ooxml.test.reflections.jar" location="${ooxml.test.lib}/reflections.jar"/> <dependency prefix="ooxml.test.reflections" artifact="org.reflections:reflections:0.9.11" usage="ooxml-tests"/>
<property name="ooxml.test.reflections.url" <dependency prefix="ooxml.test.guava" artifact="com.google.guava:guava:20.0" usage="ooxml-tests"/>
value="${repository.m2}/maven2/org/reflections/reflections/0.9.11/reflections-0.9.11.jar"/> <dependency prefix="ooxml.test.javassist" artifact="org.javassist:javassist:3.21.0-GA" usage="ooxml-tests"/>
<property name="ooxml.test.guava.jar" location="${ooxml.test.lib}/guava.jar"/>
<property name="ooxml.test.guava.url"
value="${repository.m2}/maven2/com/google/guava/guava/20.0/guava-20.0.jar"/>
<property name="ooxml.test.javassist.jar" location="${ooxml.test.lib}/javassist.jar"/>
<property name="ooxml.test.javassist.url"
value="${repository.m2}/maven2/org/javassist/javassist/3.21.0-GA/javassist-3.21.0-GA.jar"/>
<!-- coverage libs --> <!-- coverage libs -->
<property name="jacoco.zip" location="${main.lib}/jacoco-0.8.5.zip"/> <dependency prefix="jacoco" artifact="org.jacoco:jacoco:0.8.5" usage="util" packaging="zip"/>
<property name="jacoco.url" value="${repository.m2}/maven2/org/jacoco/jacoco/0.8.5/jacoco-0.8.5.zip"/> <dependency prefix="asm" artifact="org.ow2.asm:asm:7.2" usage="util"/>
<property name="asm.jar" location="${main.lib}/asm-7.2.jar"/> <dependency prefix="asmcommons" artifact="org.ow2.asm:asm-commons:7.2" usage="util"/>
<property name="asm.url" value="${repository.m2}/maven2/org/ow2/asm/asm/7.2/asm-7.2.jar"/> <dependency prefix="asmtree" artifact="org.ow2.asm:asm-tree:7.2" usage="util"/>
<property name="asmcommons.jar" location="${main.lib}/asm-commons-7.2.jar"/>
<property name="asmcommons.url" value="${repository.m2}/maven2/org/ow2/asm/asm-commons/7.2/asm-commons-7.2.jar"/>
<property name="asmtree.jar" location="${main.lib}/asm-tree-7.2.jar"/>
<property name="asmtree.url" value="${repository.m2}/maven2/org/ow2/asm/asm-tree/7.2/asm-tree-7.2.jar"/>
<!-- license and api checks --> <!-- license and api checks -->
<property name="rat.jar" location="${main.lib}/apache-rat-0.12.jar"/> <dependency prefix="rat" artifact="org.apache.rat:apache-rat:0.12" usage="util"/>
<property name="rat.url" value="${repository.m2}/maven2/org/apache/rat/apache-rat/0.12/apache-rat-0.12.jar"/> <dependency prefix="forbidden" artifact="de.thetaphi:forbiddenapis:2.6" usage="util"/>
<property name="forbidden.jar" location="${main.lib}/forbiddenapis-2.6.jar"/>
<property name="forbidden.url" value="${repository.m2}/maven2/de/thetaphi/forbiddenapis/2.6/forbiddenapis-2.6.jar"/>
<property name="maven.ooxml.xsds.version.id" value="1.4"/> <property name="maven.ooxml.xsds.version.id" value="1.4"/>
<!-- See https://www.ecma-international.org/publications/standards/Ecma-376.htm --> <!-- See https://www.ecma-international.org/publications/standards/Ecma-376.htm -->
<!-- "Copy these file(s), free of charge" --> <!-- "Copy these file(s), free of charge" -->
<property name="ooxml.xsds.ozip.1" value="OfficeOpenXML-Part4.zip"/> <property name="ooxml.xsds.izip.1" value="${basedir}/src/ooxml/resources/org/apache/poi/schemas/OfficeOpenXML-XMLSchema.zip"/>
<property name="ooxml.xsds.izip.1" value="OfficeOpenXML-XMLSchema.zip"/>
<property name="ooxml.xsds.url.1"
value="https://www.ecma-international.org/publications/files/ECMA-ST/Office%20Open%20XML%201st%20edition%20Part%204%20(PDF).zip"/>
<property name="ooxml.xsds.src.dir" location="build/ooxml-xsds-src"/> <property name="ooxml.xsds.src.dir" location="build/ooxml-xsds-src"/>
<property name="ooxml.xsds.src.jar" location="${ooxml.lib}/ooxml-schemas-${maven.ooxml.xsds.version.id}-sources.jar"/> <property name="ooxml.xsds.src.jar" location="${ooxml.lib}/ooxml-schemas-${maven.ooxml.xsds.version.id}-sources.jar"/>
<property name="ooxml.xsds.jar" location="${ooxml.lib}/ooxml-schemas-${maven.ooxml.xsds.version.id}.jar"/> <property name="ooxml.xsds.jar" location="${ooxml.lib}/ooxml-schemas-${maven.ooxml.xsds.version.id}.jar"/>
<!-- additional schemas are packed into the poi schemas jar, --> <!-- additional schemas are packed into the poi schemas jar, -->
<!-- so we don't have to care about a seperate versioning of the original ooxml schemas --> <!-- so we don't have to care about a seperate versioning of the original ooxml schemas -->
<property name="ooxml.xsds.dsig.1" value="https://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/> <property name="ooxml.xsds.izip.2" value="${basedir}/src/ooxml/resources/org/apache/poi/schemas/OpenPackagingConventions-XMLSchema.zip"/>
<!-- property name="ooxml.xsds.dsig.2" value="https://uri.etsi.org/01903/v1.3.2/XAdES.xsd"/ -->
<!-- property name="ooxml.xsds.dsig.3" value="https://uri.etsi.org/01903/v1.4.1/XAdESv141.xsd"/ -->
<property name="ooxml.xsds.ozip.2" value="OfficeOpenXML-Part2.zip"/>
<property name="ooxml.xsds.izip.2" value="OpenPackagingConventions-XMLSchema.zip"/>
<property name="ooxml.xsds.url.2"
value="https://www.ecma-international.org/publications/files/ECMA-ST/Office%20Open%20XML%201st%20edition%20Part%202%20(PDF).zip"/>
<property name="ooxml.security.src.dir" location="build/ooxml-security-src"/> <property name="ooxml.security.src.dir" location="build/ooxml-security-src"/>
<property name="ooxml.security.src.jar" location="${ooxml.lib}/ooxml-security-1.1-sources.jar"/> <property name="ooxml.security.src.jar" location="${ooxml.lib}/ooxml-security-1.1-sources.jar"/>
<property name="ooxml.security.jar" location="${ooxml.lib}/ooxml-security-1.1.jar"/> <property name="ooxml.security.jar" location="${ooxml.lib}/ooxml-security-1.1.jar"/>
@ -325,35 +292,25 @@ under the License.
<property name="halt.on.test.failure" value="true"/> <property name="halt.on.test.failure" value="true"/>
<!-- helper jars for pgp signing, building and nexus staging --> <!-- helper jars for pgp signing, building and nexus staging -->
<property name="dist.bouncycastle-prov.jar" location="${compile.lib}/bcprov-ext-jdk15on-1.65.jar"/> <dependency prefix="dist.bouncycastle-prov" artifact="org.bouncycastle:bcprov-ext-jdk15on:1.65" usage="util"/>
<property name="dist.bouncycastle-prov.url" value="${repository.m2}/maven2/org/bouncycastle/bcprov-ext-jdk15on/1.65/bcprov-ext-jdk15on-1.65.jar"/> <dependency prefix="dist.bouncycastle-prov" artifact="org.bouncycastle:bcpg-jdk15on:1.65" usage="util"/>
<property name="dist.bouncycastle-bcpg.jar" location="${compile.lib}/bcpg-jdk15on-1.65.jar"/> <dependency prefix="dist.commons-openpgp" artifact="org.apache.commons:commons-openpgp:1.0-SNAPSHOT" usage="util"
<property name="dist.bouncycastle-bcpg.url" value="${repository.m2}/maven2/org/bouncycastle/bcpg-jdk15on/1.65/bcpg-jdk15on-1.65.jar"/> repo="https://repository.apache.org/content/groups/snapshots" snapshot="1.0-20190121.221905-12"/>
<property name="dist.commons-openpgp.jar" location="${compile.lib}/commons-openpgp-1.0-SNAPSHOT.jar"/> <dependency prefix="dist.nexus-staging" artifact="org.sonatype.nexus.ant:nexus-staging-ant-tasks:1.6.3-uber" usage="util"/>
<property name="dist.commons-openpgp.url" value="https://repository.apache.org/content/groups/snapshots/org/apache/commons/commons-openpgp/1.0-SNAPSHOT/commons-openpgp-1.0-20190121.221905-12.jar"/>
<property name="dist.nexus-staging.jar" location="${compile.lib}/nexus-staging-ant-tasks-1.6.3-uber.jar"/>
<property name="dist.nexus-staging.url" value="${repository.m2}/maven2/org/sonatype/nexus/ant/nexus-staging-ant-tasks/1.6.3/nexus-staging-ant-tasks-1.6.3-uber.jar"/>
<!-- jars required for maven helper targets --> <!-- jars required for maven helper targets -->
<property name="maven.ant.url" value="${repository.m2}/maven2/org/apache/maven/maven-ant-tasks/2.1.3/maven-ant-tasks-2.1.3.jar"/> <dependency prefix="maven.ant" artifact="org.apache.maven:maven-ant-tasks:2.1.3" usage="util"/>
<property name="maven.ant.jar" value="${compile.lib}/maven-ant-tasks-2.1.3.jar"/> <dependency prefix="dist.svnant" artifact="org.tigris.subclipse:svnant:1.3.1" usage="util"
repo="https://dl.bintray.com/openmeetings/maven"/>
<property name="dist.svnant.jar" location="${compile.lib}/svnant/svnant-1.3.1.jar"/> <dependency prefix="dist.svnclient" artifact="org.tigris.subclipse:svnclientadapter:1.3.1" usage="util"
<property name="dist.svnant.url" value="https://dl.bintray.com/openmeetings/maven/org/tigris/subclipse/svnant/1.3.1/svnant-1.3.1.jar"/> repo="https://dl.bintray.com/openmeetings/maven"/>
<property name="dist.svnclient.jar" location="${compile.lib}/svnant/svnClientAdapter-1.3.1.jar"/> <dependency prefix="dist.svnkit" artifact="org.tmatesoft.svnkit:svnkit:1.8.11" usage="util"/>
<property name="dist.svnclient.url" value="https://dl.bintray.com/openmeetings/maven/org/tigris/subclipse/svnclientadapter/1.3.1//svnclientadapter-1.3.1.jar"/> <dependency prefix="dist.svnkit-javahl16" artifact="org.tmatesoft.svnkit:svnkit-javahl16:1.8.11" usage="util"/>
<property name="dist.svnkit.jar" location="${compile.lib}/svnant/svnkit-1.8.11.jar"/> <dependency prefix="dist.sqljet" artifact="org.tmatesoft.svnkit:sqljet:1.1.10" usage="util"/>
<property name="dist.svnkit.url" value="${repository.m2}/maven2/org/tmatesoft/svnkit/svnkit/1.8.11/svnkit-1.8.11.jar"/> <dependency prefix="dist.antlr" artifact="org.antlr:antlr-runtime:3.5.2" usage="util"/>
<property name="dist.svnkit-javahl16.jar" location="${compile.lib}/svnant/svnkit-javahl16-1.8.11.jar"/> <dependency prefix="dist.sequence-library" artifact="de.regnis.q.sequence:sequence-library:1.0.3" usage="util"/>
<property name="dist.svnkit-javahl16.url" value="${repository.m2}/maven2/org/tmatesoft/svnkit/svnkit-javahl16/1.8.11/svnkit-javahl16-1.8.11.jar"/> <dependency prefix="findbugs" artifact="findbugs:findbugs:3.0.1" usage="util"
<property name="dist.sqljet.jar" location="${compile.lib}/svnant/sqljet-1.1.10.jar"/> repo="https://downloads.sourceforge.net/project" snapshot="noUpdateChecks-3.0.1" query="?download="/>
<property name="dist.sqljet.url" value="${repository.m2}/maven2/org/tmatesoft/sqljet/sqljet/1.1.10/sqljet-1.1.10.jar"/>
<property name="dist.antlr.jar" location="${compile.lib}/svnant/antlr-runtime-3.5.2.jar"/>
<property name="dist.antlr.url" value="${repository.m2}/maven2/org/antlr/antlr-runtime/3.5.2/antlr-runtime-3.5.2.jar"/>
<property name="dist.sequence-library.jar" location="${compile.lib}/svnant/sequence-library-1.0.3.jar"/>
<property name="dist.sequence-library.url" value="${repository.m2}/maven2/de/regnis/q/sequence/sequence-library/1.0.3/sequence-library-1.0.3.jar"/>
<property name="findbugs.url" value="https://downloads.sourceforge.net/project/findbugs/findbugs/3.0.1/findbugs-noUpdateChecks-3.0.1.zip?download="/>
<property name="findbugs.jar" location="${main.lib}/findbugs-noUpdateChecks-3.0.1.zip"/>
<propertyset id="junit.properties"> <propertyset id="junit.properties">
<propertyref name="POI.testdata.path"/> <propertyref name="POI.testdata.path"/>
@ -377,10 +334,6 @@ under the License.
<pathelement location="${main.commons-codec.jar}"/> <pathelement location="${main.commons-codec.jar}"/>
<pathelement location="${main.commons-collections4.jar}"/> <pathelement location="${main.commons-collections4.jar}"/>
<pathelement location="${main.commons-math3.jar}"/> <pathelement location="${main.commons-math3.jar}"/>
<pathelement location="${main.xmlbind.jar}"/>
<pathelement location="${main.xmlbind-impl.jar}"/>
<pathelement location="${main.xmlbind-core.jar}"/>
<pathelement location="${main.activation.jar}"/>
<pathelement location="${main.com.zaxxer.jar}"/> <pathelement location="${main.com.zaxxer.jar}"/>
</path> </path>
@ -548,7 +501,7 @@ under the License.
</path> </path>
<path id="lib.jacoco"> <path id="lib.jacoco">
<fileset dir="lib"> <fileset dir="${util.lib}">
<include name="org.jacoco*.jar" /> <include name="org.jacoco*.jar" />
<include name="asm-*.jar" /> <include name="asm-*.jar" />
</fileset> </fileset>
@ -629,6 +582,9 @@ under the License.
<attribute name="src"/> <attribute name="src"/>
<attribute name="dest"/> <attribute name="dest"/>
<sequential> <sequential>
<local name="destdir"/>
<dirname property="destdir" file="@{dest}"/>
<mkdir dir="${destdir}"/>
<get src="@{src}" dest="@{dest}" skipexisting="true"/> <get src="@{src}" dest="@{dest}" skipexisting="true"/>
</sequential> </sequential>
</macrodef> </macrodef>
@ -637,102 +593,11 @@ under the License.
<!-- remove previous versions of third-party jars to prevent them from lingering around, <!-- remove previous versions of third-party jars to prevent them from lingering around,
we often had hard-to-find build/CI-problems because of these! --> we often had hard-to-find build/CI-problems because of these! -->
<mkdir dir="${main.lib}"/> <mkdir dir="${main.lib}"/>
<mkdir dir="${compile.lib}"/>
<mkdir dir="${ooxml.lib}"/> <mkdir dir="${ooxml.lib}"/>
<mkdir dir="${ooxml.test.lib}"/> <mkdir dir="${ooxml-tests.lib}"/>
<delete verbose="true"> <delete verbose="true">
<fileset dir="${main.lib}"> <fileset dir="${basedir}/lib" includes="*.jar"/>
<include name="ant-1.8*"/> <!-- remove jars from previous versions, but not the current version -->
<include name="ant-1.9.4*"/>
<include name="ant-launcher-1.9.4*"/>
<include name="asm-all-4*"/>
<include name="asm-all-5.0.3*"/>
<include name="asm-all-5.2*"/>
<include name="asm*-6.*"/>
<include name="asm*-7.0.*"/>
<include name="commons-codec-1.5*"/>
<include name="commons-codec-1.9*"/>
<include name="commons-codec-1.10*"/>
<include name="commons-codec-1.11*"/>
<include name="commons-codec-1.12*"/>
<include name="commons-codec-1.13*"/>
<include name="commons-compress-1.1*"/>
<include name="commons-collections4-4.1*"/>
<include name="commons-collections4-4.2*"/>
<include name="commons-collections4-4.3*"/>
<include name="commons-logging-1.1*.jar"/>
<include name="findbugs-noUpdateChecks-2.0.3*"/>
<include name="jacoco-0.6*"/>
<include name="jacoco-0.7*"/>
<include name="jacoco-0.8.1*"/>
<include name="jacoco-0.8.2*"/>
<include name="jacoco-0.8.3*"/>
<include name="jmh-core-1.15*"/>
<include name="jmh-generator-annprocess-1.15*"/>
<include name="log4j-1.2.13*"/>
<include name="org.jacoco.*-0.6*"/>
<include name="org.jacoco.*-0.7**"/>
<include name="org.jacoco.*-0.8.1*"/>
<include name="org.jacoco.*-0.8.2*"/>
<include name="org.jacoco.*-0.8.3*"/>
<include name="dom4j*"/>
<include name="apache-rat-0.10*"/>
<include name="xercesImpl-*.jar"/>
<include name="junit-3*"/>
<include name="junit-4.11*"/>
<include name="junit-4.12*"/>
<include name="forbiddenapis-1.*.jar"/>
<include name="forbiddenapis-2.0.jar"/>
<include name="forbiddenapis-2.1.jar"/>
<include name="forbiddenapis-2.3.jar"/>
<include name="forbiddenapis-2.5.jar"/>
<include name="apache-rat-0.11.jar"/>
<include name="mockito-core-2*.jar"/>
<include name="mockito-core-3.0*.jar"/>
<include name="byte-buddy-*1.7*.jar"/>
<include name="byte-buddy-*1.9*.jar"/>
<include name="jaxb-api-2.3.0.jar"/>
<include name="jaxb-impl-2.3.0.1.jar"/>
</fileset>
<fileset dir="${ooxml.lib}">
<!-- remove jars from previous versions, but not the current version -->
<include name="ooxml-schemas-1.0-sources.jar"/>
<include name="ooxml-schemas-1.0.jar"/>
<include name="ooxml-schemas-src-1.1.jar"/>
<include name="ooxml-schemas-1.1-sources.jar"/>
<include name="ooxml-schemas-1.1.jar"/>
<include name="ooxml-schemas-1.2-sources.jar"/>
<include name="ooxml-schemas-1.2.jar"/>
<include name="ooxml-schemas-1.3-sources.jar"/>
<include name="ooxml-schemas-1.3.jar"/>
<include name="ooxml-security-1.0-sources.jar"/>
<include name="ooxml-security-1.0.jar"/>
<include name="curvesapi-1.03.jar"/>
<include name="curvesapi-1.04.jar"/>
<include name="curvesapi-1.05.jar"/>
<include name="xmlbeans-2.*.jar"/>
<include name="xmlbeans-3.0*.jar"/>
</fileset>
<fileset dir="${compile.lib}">
<include name="xercesImpl-*.jar"/>
<include name="xmlsec-2.0*.jar"/>
<include name="xmlsec-2.1.0.jar"/>
<include name="xmlsec-2.1.1.jar"/>
<include name="xmlsec-2.1.2.jar"/>
<include name="xmlsec-2.1.3.jar"/>
<include name="xmlsec-2.1.4.jar"/>
<include name="bc*jdk15on-1.5*.jar"/>
<include name="bc*jdk15on-1.60*.jar"/>
<include name="bc*jdk15on-1.61*.jar"/>
<include name="bc*jdk15on-1.62*.jar"/>
<include name="bc*jdk15on-1.63*.jar"/>
<include name="bc*jdk15on-1.64*.jar"/>
<include name="batik-all-1.10.jar"/>
<include name="batik-all-1.11.jar"/>
<include name="slf4j-api-1.7.7.jar"/>
<include name="slf4j-api-1.7.1*.jar"/>
<include name="slf4j-api-1.7.2*.jar"/>
</fileset>
</delete> </delete>
<condition property="jars.present"> <condition property="jars.present">
@ -764,14 +629,10 @@ under the License.
<available file="${dsig.sl4j-api.jar}"/> <available file="${dsig.sl4j-api.jar}"/>
<available file="${main.commons-collections4.jar}"/> <available file="${main.commons-collections4.jar}"/>
<available file="${main.commons-math3.jar}"/> <available file="${main.commons-math3.jar}"/>
<available file="${main.xmlbind.jar}"/>
<available file="${main.xmlbind-impl.jar}"/>
<available file="${main.xmlbind-core.jar}"/>
<available file="${main.activation.jar}"/>
<available file="${main.com.zaxxer.jar}"/> <available file="${main.com.zaxxer.jar}"/>
<!-- we had some CI failures when the extracted files for JaCoCo were missing somehow... --> <!-- we had some CI failures when the extracted files for JaCoCo were missing somehow... -->
<available file="${main.lib}/jacocoagent.jar"/> <available file="${util.lib}/jacocoagent.jar"/>
</and> </and>
<isset property="disconnected"/> <isset property="disconnected"/>
</or> </or>
@ -801,15 +662,12 @@ under the License.
<downloadfile src="${jacoco.url}" dest="${jacoco.zip}"/> <downloadfile src="${jacoco.url}" dest="${jacoco.zip}"/>
<downloadfile src="${main.commons-collections4.url}" dest="${main.commons-collections4.jar}"/> <downloadfile src="${main.commons-collections4.url}" dest="${main.commons-collections4.jar}"/>
<downloadfile src="${main.commons-math3.url}" dest="${main.commons-math3.jar}"/> <downloadfile src="${main.commons-math3.url}" dest="${main.commons-math3.jar}"/>
<downloadfile src="${main.xmlbind.url}" dest="${main.xmlbind.jar}"/>
<downloadfile src="${main.xmlbind-impl.url}" dest="${main.xmlbind-impl.jar}"/>
<downloadfile src="${main.xmlbind-core.url}" dest="${main.xmlbind-core.jar}"/>
<downloadfile src="${main.activation.url}" dest="${main.activation.jar}"/>
<downloadfile src="${main.com.zaxxer.url}" dest="${main.com.zaxxer.jar}"/> <downloadfile src="${main.com.zaxxer.url}" dest="${main.com.zaxxer.jar}"/>
<unzip src="${jacoco.zip}" dest="."> <unzip src="${jacoco.zip}" dest="${util.lib}">
<patternset> <patternset>
<include name="lib/*.jar"/> <include name="lib/*.jar"/>
</patternset> </patternset>
<mapper type="flatten"/>
</unzip> </unzip>
<downloadfile src="${rat.url}" dest="${rat.jar}"/> <downloadfile src="${rat.url}" dest="${rat.jar}"/>
<downloadfile src="${forbidden.url}" dest="${forbidden.jar}"/> <downloadfile src="${forbidden.url}" dest="${forbidden.jar}"/>
@ -839,7 +697,7 @@ under the License.
</target> </target>
<target name="fetch-ooxml-jars" depends="check-ooxml-jars" unless="ooxml.jars.present"> <target name="fetch-ooxml-jars" depends="check-ooxml-jars" unless="ooxml.jars.present">
<mkdir dir="${ooxml.lib}"/> <mkdir dir="${ooxml.lib}"/>
<mkdir dir="${ooxml.test.lib}"/> <mkdir dir="${ooxml-tests.lib}"/>
<downloadfile src="${ooxml.curvesapi.url}" dest="${ooxml.curvesapi.jar}"/> <downloadfile src="${ooxml.curvesapi.url}" dest="${ooxml.curvesapi.jar}"/>
<downloadfile src="${ooxml.xmlbeans.url}" dest="${ooxml.xmlbeans.jar}"/> <downloadfile src="${ooxml.xmlbeans.url}" dest="${ooxml.xmlbeans.jar}"/>
<downloadfile src="${ooxml.commons-compress.url}" dest="${ooxml.commons-compress.jar}"/> <downloadfile src="${ooxml.commons-compress.url}" dest="${ooxml.commons-compress.jar}"/>
@ -867,7 +725,6 @@ under the License.
</condition> </condition>
</target> </target>
<target name="fetch-svn-jars" depends="check-svn-jars" unless="svn.jars.present"> <target name="fetch-svn-jars" depends="check-svn-jars" unless="svn.jars.present">
<mkdir dir="${compile.lib}/svnant"/>
<downloadfile src="${dist.svnant.url}" dest="${dist.svnant.jar}"/> <downloadfile src="${dist.svnant.url}" dest="${dist.svnant.jar}"/>
<downloadfile src="${dist.svnclient.url}" dest="${dist.svnclient.jar}"/> <downloadfile src="${dist.svnclient.url}" dest="${dist.svnclient.jar}"/>
<downloadfile src="${dist.svnkit.url}" dest="${dist.svnkit.jar}"/> <downloadfile src="${dist.svnkit.url}" dest="${dist.svnkit.jar}"/>
@ -877,53 +734,14 @@ under the License.
<downloadfile src="${dist.sequence-library.url}" dest="${dist.sequence-library.jar}"/> <downloadfile src="${dist.sequence-library.url}" dest="${dist.sequence-library.jar}"/>
</target> </target>
<target name="check-ooxml-xsds"> <target name="check-compiled-ooxml-xsds">
<condition property="ooxml-xsds.present">
<or>
<and>
<available file="${ooxml.lib}/${ooxml.xsds.izip.1}"/>
<available file="${ooxml.lib}/${ooxml.xsds.izip.2}"/>
</and>
<isset property="disconnected"/>
</or>
</condition>
</target>
<target name="fetch-ooxml-xsds" unless="ooxml-xsds.present"
depends="check-ooxml-xsds"
description="Fetches needed OOXML xsd files from the Internet">
<get dest="${ooxml.lib}" skipexisting="true">
<url url="${ooxml.xsds.url.1}"/>
<url url="${ooxml.xsds.url.2}"/>
<url url="${ooxml.xsds.dsig.1}"/>
<!--url url="${ooxml.xsds.dsig.2}"/ -->
<!--url url="${ooxml.xsds.dsig.3}"/ -->
<chainedmapper>
<flattenmapper/>
<firstmatchmapper>
<globmapper from="Office%20Open%20XML%201st%20edition%20Part%20*%20(PDF).zip" to="OfficeOpenXML-Part*.zip"/>
<identitymapper/>
</firstmatchmapper>
</chainedmapper>
</get>
<unzip src="${ooxml.lib}/${ooxml.xsds.ozip.1}" dest="${ooxml.lib}">
<fileset dir="${ooxml.lib}" includes="OfficeOpenXML-Part*.zip"/>
<patternset>
<include name="${ooxml.xsds.izip.1}"/>
<include name="${ooxml.xsds.izip.2}"/>
</patternset>
</unzip>
</target>
<target name="check-compiled-ooxml-xsds" depends="fetch-ooxml-xsds">
<condition property="ooxml-compiled-xsds.present"> <condition property="ooxml-compiled-xsds.present">
<or> <and>
<and> <available file="${ooxml.xsds.jar}"/>
<available file="${ooxml.xsds.jar}"/> <available file="${ooxml.xsds.src.jar}"/>
<available file="${ooxml.security.jar}"/> <available file="${ooxml.security.jar}"/>
<available file="${ooxml.xsds.src.jar}"/> <available file="${ooxml.security.src.jar}"/>
<available file="${ooxml.security.src.jar}"/> </and>
</and>
<isset property="disconnected"/>
</or>
</condition> </condition>
</target> </target>
@ -932,6 +750,8 @@ under the License.
<attribute name="sources-jar"/> <attribute name="sources-jar"/>
<attribute name="noupa" default="false"/> <attribute name="noupa" default="false"/>
<attribute name="nopvr" default="false"/> <attribute name="nopvr" default="false"/>
<attribute name="multi-src"/>
<attribute name="typesystemname"/>
<element name="xsds"/> <element name="xsds"/>
<sequential> <sequential>
<!-- We need a fair amount of memory to compile the xml schema, --> <!-- We need a fair amount of memory to compile the xml schema, -->
@ -948,6 +768,7 @@ under the License.
<property name="xmlbean.xsds.dir" location="build/xmlbean-xsds"/> <property name="xmlbean.xsds.dir" location="build/xmlbean-xsds"/>
<property name="xmlbean.sources.dir" location="build/xmlbean-sources"/> <property name="xmlbean.sources.dir" location="build/xmlbean-sources"/>
<property name="xmlbean.classes.dir" location="build/xmlbean-classes"/> <property name="xmlbean.classes.dir" location="build/xmlbean-classes"/>
<delete dir="${xmlbean.xsds.dir}"/> <delete dir="${xmlbean.xsds.dir}"/>
<mkdir dir="${xmlbean.xsds.dir}"/> <mkdir dir="${xmlbean.xsds.dir}"/>
<delete dir="${xmlbean.sources.dir}"/> <delete dir="${xmlbean.sources.dir}"/>
@ -972,12 +793,12 @@ under the License.
memoryMaximumSize="${ooxml.memory}" memoryMaximumSize="${ooxml.memory}"
noupa="@{noupa}" noupa="@{noupa}"
nopvr="@{nopvr}" nopvr="@{nopvr}"
typesystemname="@{typesystemname}"
> >
<classpath> <classpath>
<path location="${ooxml.xmlbeans.jar}"/> <path location="${ooxml.xmlbeans.jar}"/>
</classpath> </classpath>
</xmlbean> </xmlbean>
<local name="loaderMethod"/> <local name="loaderMethod"/>
<!-- the space between "public static" is on purpose to prevent double execution --> <!-- the space between "public static" is on purpose to prevent double execution -->
<property name="loaderMethod"><![CDATA[ <property name="loaderMethod"><![CDATA[
@ -993,7 +814,6 @@ under the License.
} }
public static \2 newInstance\(\) \{]]></property> public static \2 newInstance\(\) \{]]></property>
<replaceregexp byline="true" match="(\s*)public static ([^ ]+) newInstance\(\) \{" replace="${loaderMethod}"> <replaceregexp byline="true" match="(\s*)public static ([^ ]+) newInstance\(\) \{" replace="${loaderMethod}">
<fileset dir="${xmlbean.sources.dir}" includes="**/*.java" excludes="**/impl/**"/> <fileset dir="${xmlbean.sources.dir}" includes="**/*.java" excludes="**/impl/**"/>
</replaceregexp> </replaceregexp>
@ -1020,16 +840,43 @@ under the License.
optimize="true" optimize="true"
memoryMaximumSize="${ooxml.memory}" memoryMaximumSize="${ooxml.memory}"
includeantruntime="false"> includeantruntime="false">
<!-- debug="${compile.debug}" -->
<classpath refid="ooxml.classpath"/> <classpath refid="ooxml.classpath"/>
</javac> </javac>
<local name="module-package"/>
<loadfile property="module-package" srcFile="@{multi-src}/java9/module-info.java">
<filterchain>
<containsregex pattern=".*module ([^ ]+).*" replace="\1" flags="i"/>
<striplinebreaks/>
</filterchain>
</loadfile>
<mkdir dir="${xmlbean.classes.dir}/META-INF/versions/9"/>
<javac release="9"
srcdir="@{multi-src}/java9"
destdir="${xmlbean.classes.dir}/META-INF/versions/9"
includeantruntime="false"
fork="true"
modulepath="${ooxml.lib}"
unless:true="${isJava8}">
<compilerarg line="--patch-module ${module-package}=${xmlbean.classes.dir}"/>
</javac>
<delete file="@{classes-jar}"/>
<delete file="@{sources-jar}"/>
<jar destfile="@{classes-jar}" level="9"> <jar destfile="@{classes-jar}" level="9">
<fileset dir="${xmlbean.classes.dir}" excludes="org/apache/**"/> <fileset dir="${xmlbean.classes.dir}" excludes="org/apache/**"/>
<zipfileset prefix="META-INF/versions/9/" dir="@{multi-src}/java9" includes="**/*.class" if:true="${isJava8}"/>
<metainf dir="legal"/> <metainf dir="legal"/>
<manifest>
<attribute name="Multi-Release" value="true"/>
</manifest>
</jar> </jar>
<jar destfile="@{sources-jar}" level="9"> <jar destfile="@{sources-jar}" level="9">
<fileset dir="${xmlbean.sources.dir}" excludes="org/apache/**"/> <fileset dir="${xmlbean.sources.dir}" excludes="org/apache/**"/>
<zipfileset prefix="META-INF/versions/9/" dir="@{multi-src}/java9" excludes="**/*.class"/>
<metainf dir="legal"/> <metainf dir="legal"/>
</jar> </jar>
@ -1040,23 +887,34 @@ under the License.
</sequential> </sequential>
</macrodef> </macrodef>
<target name="compile-ooxml-xsds" unless="ooxml-compiled-xsds.present" <target name="compile-ooxml-xsds"
depends="init,check-compiled-ooxml-xsds" depends="init,check-compiled-ooxml-xsds"
unless="ooxml-compiled-xsds.present"
description="Unpacks the OOXML xsd files, and compiles them into XmlBeans"> description="Unpacks the OOXML xsd files, and compiles them into XmlBeans">
<compile-ooxml-xmlbean classes-jar="${ooxml.xsds.jar}" sources-jar="${ooxml.xsds.src.jar}"> <compile-ooxml-xmlbean
classes-jar="${ooxml.xsds.jar}"
sources-jar="${ooxml.xsds.src.jar}"
multi-src="${basedir}/src/multimodule/ooxml-schemas"
typesystemname="OoxmlSchemas"
>
<xsds> <xsds>
<zipfileset src="${ooxml.lib}/${ooxml.xsds.izip.1}"/> <zipfileset src="${ooxml.xsds.izip.1}"/>
<fileset dir="${ooxml.visio.xsd.dir}"/> <fileset dir="${ooxml.visio.xsd.dir}"/>
<fileset dir="${ooxml.schema.xsdconfig.dir}" excludes="XAdES*.xsd"/> <fileset dir="${ooxml.schema.xsdconfig.dir}" includes="ooxmlSchemas.xsdconfig,markup-compatibility.xsd"/>
</xsds> </xsds>
</compile-ooxml-xmlbean> </compile-ooxml-xmlbean>
<!-- Now do the same for the security schemas --> <!-- Now do the same for the security schemas -->
<compile-ooxml-xmlbean classes-jar="${ooxml.security.jar}" sources-jar="${ooxml.security.src.jar}"> <compile-ooxml-xmlbean
classes-jar="${ooxml.security.jar}"
sources-jar="${ooxml.security.src.jar}"
multi-src="${basedir}/src/multimodule/ooxml-security"
typesystemname="OoxmlSecurity"
>
<xsds> <xsds>
<zipfileset src="${ooxml.lib}/${ooxml.xsds.izip.2}" includes="opc-digSig.xsd,opc-relationships.xsd"/> <zipfileset src="${ooxml.xsds.izip.2}" includes="opc-digSig.xsd,opc-relationships.xsd"/>
<fileset dir="${ooxml.lib}" includes="xmldsig*.xsd"/>
<fileset dir="${ooxml.security.xsd.dir}"/> <fileset dir="${ooxml.security.xsd.dir}"/>
<fileset dir="${ooxml.schema.xsdconfig.dir}" includes="XAdES*.xsd,*.xsdconfig"/> <fileset dir="${ooxml.schema.xsdconfig.dir}" includes="XAdES*.xsd,*.xsdconfig,xmldsig*.xsd"/>
</xsds> </xsds>
</compile-ooxml-xmlbean> </compile-ooxml-xmlbean>
</target> </target>
@ -1095,42 +953,22 @@ under the License.
<copy todir="${main.output.dir}"> <copy todir="${main.output.dir}">
<fileset dir="${main.resource1.dir}"/> <fileset dir="${main.resource1.dir}"/>
</copy> </copy>
<mkdir dir="${main.output.dir}/META-INF/versions/9"/>
<javac release="9"
srcdir="${basedir}/src/multimodule/poi/java9"
destdir="${main.output.dir}/META-INF/versions/9"
includeantruntime="false"
fork="true"
modulepath="${main.lib}"
unless:true="${isJava8}">
<compilerarg line="--patch-module org.apache.poi.poi=${main.output.dir}"/>
</javac>
</target> </target>
<target name="generate-geometry" depends="fetch-ooxml-xsds" if="ignoreme"> <target name="compile-scratchpad" depends="compile-main">
<delete dir="${geometry.output.tmpdir}"/>
<unzip src="${ooxml.lib}/${ooxml.xsds.izip.1}" dest="${geometry.output.tmpdir}"/>
<exec executable="${env.JAVA_HOME}/bin/xjc">
<arg value="-p"/>
<arg value="${geometry.pkg}"/>
<arg value="-b"/>
<arg file="src/types/definitions/dml-shapeGeometry.xjb"/>
<arg value="-readOnly"/>
<arg value="-no-header"/>
<!--arg value="-npa"/ -->
<!--arg value="-mark-generated"/ -->
<!--arg value="-Xlocator"/ -->
<arg file="${geometry.output.tmpdir}/dml-shapeGeometry.xsd"/>
<arg value="-d"/>
<arg file="${geometry.output.tmpdir}"/>
</exec>
<copy file="src/java/org/apache/poi/POIDocument.java" tofile="${geometry.output.tmpdir}/apache-license.txt">
<filterchain>
<headfilter lines="16"/>
</filterchain>
</copy>
<copy todir="${main.src}">
<fileset dir="${geometry.output.tmpdir}" includes="**/*.java"/>
<filterchain>
<concatfilter prepend="${geometry.output.tmpdir}/apache-license.txt"/>
<!-- fix javadocs for java 8 doclint -->
<replaceregex pattern="&amp;lt;(.*)>" replace="&amp;lt;\1&amp;gt;" flags="g"/>
<fixcrlf eol="lf"/>
</filterchain>
</copy>
</target>
<target name="compile-scratchpad" depends="compile-main,generate-geometry">
<!-- compile the sources --> <!-- compile the sources -->
<javac target="${jdk.version.class}" <javac target="${jdk.version.class}"
source="${jdk.version.source}" source="${jdk.version.source}"
@ -1983,6 +1821,11 @@ under the License.
</sequential> </sequential>
</macrodef> </macrodef>
<target name="bla" depends="compile-main, compile-version, -manifest">
<maven-jar src="${main.output.dir}"/>
</target>
<target name="jar" depends="compile, compile-version, compile-ooxml-lite, -manifest" description="Creates jar files for distribution"> <target name="jar" depends="compile, compile-version, compile-ooxml-lite, -manifest" description="Creates jar files for distribution">
<maven-jar src="${main.output.dir}"/> <maven-jar src="${main.output.dir}"/>
<maven-jar src="${scratchpad.output.dir}"/> <maven-jar src="${scratchpad.output.dir}"/>
@ -2235,6 +2078,8 @@ under the License.
<exclude name="resources/ooxml/org/apache/poi/xssf/usermodel/presetTableStyles.xml" /> <exclude name="resources/ooxml/org/apache/poi/xssf/usermodel/presetTableStyles.xml" />
<exclude name="ooxml/resources/org/apache/poi/xdgf/visio.xsd" /> <exclude name="ooxml/resources/org/apache/poi/xdgf/visio.xsd" />
<exclude name="ooxml/resources/org/apache/poi/schemas/XAdES*.xsd" /> <exclude name="ooxml/resources/org/apache/poi/schemas/XAdES*.xsd" />
<exclude name="ooxml/resources/org/apache/poi/schemas/xmldsig-core-schema.xsd" />
<exclude name="ooxml/resources/org/apache/poi/schemas/*.zip" />
<exclude name="**/*.iml" /> <exclude name="**/*.iml" />
<exclude name="documentation/resources/images/pb-poi.cdr"/> <exclude name="documentation/resources/images/pb-poi.cdr"/>
<exclude name="scratchpad/models/poi-hdf.zargo"/> <exclude name="scratchpad/models/poi-hdf.zargo"/>
@ -2366,10 +2211,6 @@ under the License.
<auxClasspath path="${main.jmh.jar}"/> <auxClasspath path="${main.jmh.jar}"/>
<auxClasspath path="${main.jmhAnnotation.jar}"/> <auxClasspath path="${main.jmhAnnotation.jar}"/>
<auxClasspath path="${main.ant.jar}" /> <auxClasspath path="${main.ant.jar}" />
<auxClasspath path="${main.xmlbind.jar}" />
<auxClasspath path="${main.xmlbind-impl.jar}" />
<auxClasspath path="${main.xmlbind-core.jar}" />
<auxClasspath path="${main.activation.jar}" />
<auxClasspath path="${main.com.zaxxer.jar}" /> <auxClasspath path="${main.com.zaxxer.jar}" />
<auxClasspath path="${svg.batik-all.jar}"/> <auxClasspath path="${svg.batik-all.jar}"/>
<auxClasspath path="${svg.xml-apis-ext.jar}"/> <auxClasspath path="${svg.xml-apis-ext.jar}"/>
@ -2550,7 +2391,13 @@ under the License.
</fail> </fail>
<path id="path.svnant"> <path id="path.svnant">
<fileset dir="${compile.lib}/svnant" includes="*.jar"/> <pathelement location="${dist.svnant.jar}"/>
<pathelement location="${dist.svnclient.jar}"/>
<pathelement location="${dist.svnkit.jar}"/>
<pathelement location="${dist.svnkit-javahl16.jar}"/>
<pathelement location="${dist.sqljet.jar}"/>
<pathelement location="${dist.antlr.jar}"/>
<pathelement location="${dist.sequence-library.jar}"/>
</path> </path>
<taskdef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant"/> <taskdef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant"/>
@ -2843,15 +2690,15 @@ under the License.
Doesn't work with Java6 - the https urls can't be accessed via loadChecksum Doesn't work with Java6 - the https urls can't be accessed via loadChecksum
--> -->
<target name="update-download"> <target name="update-download">
<downloadfile src="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/missing-link/ml-ant-http-1.1.3.zip" dest="${compile.lib}/ml-ant-http-1.1.3.zip"/> <downloadfile src="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/missing-link/ml-ant-http-1.1.3.zip" dest="${util.lib}/ml-ant-http-1.1.3.zip"/>
<unzip src="${compile.lib}/ml-ant-http-1.1.3.zip" dest="${compile.lib}"> <unzip src="${util.lib}/ml-ant-http-1.1.3.zip" dest="${util.lib}">
<patternset> <patternset>
<include name="ml-ant-http-1.1.3.jar"/> <include name="ml-ant-http-1.1.3.jar"/>
</patternset> </patternset>
</unzip> </unzip>
<taskdef name="http" classname="org.missinglink.ant.task.http.HttpClientTask"> <taskdef name="http" classname="org.missinglink.ant.task.http.HttpClientTask">
<classpath> <classpath>
<path location="${compile.lib}/ml-ant-http-1.1.3.jar"/> <path location="${util.lib}/ml-ant-http-1.1.3.jar"/>
</classpath> </classpath>
</taskdef> </taskdef>

View File

@ -225,7 +225,9 @@ public class DrawSimpleShape extends DrawShape {
break; break;
case STEALTH: case STEALTH:
case ARROW: case ARROW:
p = new Path(false, true); p = new Path();
p.setFill(PaintModifier.NONE);
p.setStroke(true);
Path2D.Double arrow = new Path2D.Double(); Path2D.Double arrow = new Path2D.Double();
arrow.moveTo((-lineWidth * scaleX), (-lineWidth * scaleY / 2)); arrow.moveTo((-lineWidth * scaleX), (-lineWidth * scaleY / 2));
arrow.lineTo(0, 0); arrow.lineTo(0, 0);
@ -297,7 +299,9 @@ public class DrawSimpleShape extends DrawShape {
break; break;
case STEALTH: case STEALTH:
case ARROW: case ARROW:
p = new Path(false, true); p = new Path();
p.setFill(PaintModifier.NONE);
p.setStroke(true);
Path2D.Double arrow = new Path2D.Double(); Path2D.Double arrow = new Path2D.Double();
arrow.moveTo((lineWidth * scaleX), (-lineWidth * scaleY / 2)); arrow.moveTo((lineWidth * scaleX), (-lineWidth * scaleY / 2));
arrow.lineTo(0, 0); arrow.lineTo(0, 0);

View File

@ -1,100 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_AdjustHandleList complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_AdjustHandleList"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;choice maxOccurs="unbounded" minOccurs="0"&gt;
* &lt;element name="ahXY" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_XYAdjustHandle"/&gt;
* &lt;element name="ahPolar" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_PolarAdjustHandle"/&gt;
* &lt;/choice&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_AdjustHandleList", propOrder = {
"ahXYOrAhPolar"
})
public class CTAdjustHandleList {
@XmlElements({
@XmlElement(name = "ahXY", type = CTXYAdjustHandle.class),
@XmlElement(name = "ahPolar", type = CTPolarAdjustHandle.class)
})
protected List<Object> ahXYOrAhPolar;
/**
* Gets the value of the ahXYOrAhPolar property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the ahXYOrAhPolar property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getAhXYOrAhPolar().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTXYAdjustHandle }
* {@link CTPolarAdjustHandle }
*
*
*/
public List<Object> getAhXYOrAhPolar() {
if (ahXYOrAhPolar == null) {
ahXYOrAhPolar = new ArrayList<>();
}
return this.ahXYOrAhPolar;
}
public boolean isSetAhXYOrAhPolar() {
return ((this.ahXYOrAhPolar!= null)&&(!this.ahXYOrAhPolar.isEmpty()));
}
public void unsetAhXYOrAhPolar() {
this.ahXYOrAhPolar = null;
}
}

View File

@ -1,70 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Angle complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Angle"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Angle" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Angle")
public class CTAngle {
@XmlAttribute(name = "val", required = true)
protected int val;
/**
* Gets the value of the val property.
*
*/
public int getVal() {
return val;
}
/**
* Sets the value of the val property.
*
*/
public void setVal(int value) {
this.val = value;
}
public boolean isSetVal() {
return true;
}
}

View File

@ -1,230 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Color complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Color"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorChoice"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Color", propOrder = {
"scrgbClr",
"srgbClr",
"hslClr",
"sysClr",
"schemeClr",
"prstClr"
})
public class CTColor {
protected CTScRgbColor scrgbClr;
protected CTSRgbColor srgbClr;
protected CTHslColor hslClr;
protected CTSystemColor sysClr;
protected CTSchemeColor schemeClr;
protected CTPresetColor prstClr;
/**
* Gets the value of the scrgbClr property.
*
* @return
* possible object is
* {@link CTScRgbColor }
*
*/
public CTScRgbColor getScrgbClr() {
return scrgbClr;
}
/**
* Sets the value of the scrgbClr property.
*
* @param value
* allowed object is
* {@link CTScRgbColor }
*
*/
public void setScrgbClr(CTScRgbColor value) {
this.scrgbClr = value;
}
public boolean isSetScrgbClr() {
return (this.scrgbClr!= null);
}
/**
* Gets the value of the srgbClr property.
*
* @return
* possible object is
* {@link CTSRgbColor }
*
*/
public CTSRgbColor getSrgbClr() {
return srgbClr;
}
/**
* Sets the value of the srgbClr property.
*
* @param value
* allowed object is
* {@link CTSRgbColor }
*
*/
public void setSrgbClr(CTSRgbColor value) {
this.srgbClr = value;
}
public boolean isSetSrgbClr() {
return (this.srgbClr!= null);
}
/**
* Gets the value of the hslClr property.
*
* @return
* possible object is
* {@link CTHslColor }
*
*/
public CTHslColor getHslClr() {
return hslClr;
}
/**
* Sets the value of the hslClr property.
*
* @param value
* allowed object is
* {@link CTHslColor }
*
*/
public void setHslClr(CTHslColor value) {
this.hslClr = value;
}
public boolean isSetHslClr() {
return (this.hslClr!= null);
}
/**
* Gets the value of the sysClr property.
*
* @return
* possible object is
* {@link CTSystemColor }
*
*/
public CTSystemColor getSysClr() {
return sysClr;
}
/**
* Sets the value of the sysClr property.
*
* @param value
* allowed object is
* {@link CTSystemColor }
*
*/
public void setSysClr(CTSystemColor value) {
this.sysClr = value;
}
public boolean isSetSysClr() {
return (this.sysClr!= null);
}
/**
* Gets the value of the schemeClr property.
*
* @return
* possible object is
* {@link CTSchemeColor }
*
*/
public CTSchemeColor getSchemeClr() {
return schemeClr;
}
/**
* Sets the value of the schemeClr property.
*
* @param value
* allowed object is
* {@link CTSchemeColor }
*
*/
public void setSchemeClr(CTSchemeColor value) {
this.schemeClr = value;
}
public boolean isSetSchemeClr() {
return (this.schemeClr!= null);
}
/**
* Gets the value of the prstClr property.
*
* @return
* possible object is
* {@link CTPresetColor }
*
*/
public CTPresetColor getPrstClr() {
return prstClr;
}
/**
* Sets the value of the prstClr property.
*
* @param value
* allowed object is
* {@link CTPresetColor }
*
*/
public void setPrstClr(CTPresetColor value) {
this.prstClr = value;
}
public boolean isSetPrstClr() {
return (this.prstClr!= null);
}
}

View File

@ -1,107 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_ColorMRU complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_ColorMRU"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorChoice" maxOccurs="10" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_ColorMRU", propOrder = {
"egColorChoice"
})
public class CTColorMRU {
@XmlElements({
@XmlElement(name = "scrgbClr", type = CTScRgbColor.class),
@XmlElement(name = "srgbClr", type = CTSRgbColor.class),
@XmlElement(name = "hslClr", type = CTHslColor.class),
@XmlElement(name = "sysClr", type = CTSystemColor.class),
@XmlElement(name = "schemeClr", type = CTSchemeColor.class),
@XmlElement(name = "prstClr", type = CTPresetColor.class)
})
protected List<Object> egColorChoice;
/**
* Gets the value of the egColorChoice property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorChoice property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorChoice().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTScRgbColor }
* {@link CTSRgbColor }
* {@link CTHslColor }
* {@link CTSystemColor }
* {@link CTSchemeColor }
* {@link CTPresetColor }
*
*
*/
public List<Object> getEGColorChoice() {
if (egColorChoice == null) {
egColorChoice = new ArrayList<>();
}
return this.egColorChoice;
}
public boolean isSetEGColorChoice() {
return ((this.egColorChoice!= null)&&(!this.egColorChoice.isEmpty()));
}
public void unsetEGColorChoice() {
this.egColorChoice = null;
}
}

View File

@ -1,46 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_ComplementTransform complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_ComplementTransform"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_ComplementTransform")
public class CTComplementTransform {
}

View File

@ -1,95 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Connection complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Connection"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="id" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_DrawingElementId" /&gt;
* &lt;attribute name="idx" use="required" type="{http://www.w3.org/2001/XMLSchema}unsignedInt" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Connection")
public class CTConnection {
@XmlAttribute(name = "id", required = true)
protected long id;
@XmlAttribute(name = "idx", required = true)
@XmlSchemaType(name = "unsignedInt")
protected long idx;
/**
* Gets the value of the id property.
*
*/
public long getId() {
return id;
}
/**
* Sets the value of the id property.
*
*/
public void setId(long value) {
this.id = value;
}
public boolean isSetId() {
return true;
}
/**
* Gets the value of the idx property.
*
*/
public long getIdx() {
return idx;
}
/**
* Sets the value of the idx property.
*
*/
public void setIdx(long value) {
this.idx = value;
}
public boolean isSetIdx() {
return true;
}
}

View File

@ -1,92 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_ConnectionSiteList complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_ConnectionSiteList"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="cxn" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_ConnectionSite" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_ConnectionSiteList", propOrder = {
"cxn"
})
public class CTConnectionSiteList {
protected List<CTConnectionSite> cxn;
/**
* Gets the value of the cxn property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the cxn property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getCxn().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTConnectionSite }
*
*
*/
public List<CTConnectionSite> getCxn() {
if (cxn == null) {
cxn = new ArrayList<>();
}
return this.cxn;
}
public boolean isSetCxn() {
return ((this.cxn!= null)&&(!this.cxn.isEmpty()));
}
public void unsetCxn() {
this.cxn = null;
}
}

View File

@ -1,237 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_CustomGeometry2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_CustomGeometry2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="avLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuideList" minOccurs="0"/&gt;
* &lt;element name="gdLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuideList" minOccurs="0"/&gt;
* &lt;element name="ahLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjustHandleList" minOccurs="0"/&gt;
* &lt;element name="cxnLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_ConnectionSiteList" minOccurs="0"/&gt;
* &lt;element name="rect" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomRect" minOccurs="0"/&gt;
* &lt;element name="pathLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DList"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_CustomGeometry2D", propOrder = {
"avLst",
"gdLst",
"ahLst",
"cxnLst",
"rect",
"pathLst"
})
public class CTCustomGeometry2D {
protected CTGeomGuideList avLst;
protected CTGeomGuideList gdLst;
protected CTAdjustHandleList ahLst;
protected CTConnectionSiteList cxnLst;
protected CTGeomRect rect;
@XmlElement(required = true)
protected CTPath2DList pathLst;
/**
* Gets the value of the avLst property.
*
* @return
* possible object is
* {@link CTGeomGuideList }
*
*/
public CTGeomGuideList getAvLst() {
return avLst;
}
/**
* Sets the value of the avLst property.
*
* @param value
* allowed object is
* {@link CTGeomGuideList }
*
*/
public void setAvLst(CTGeomGuideList value) {
this.avLst = value;
}
public boolean isSetAvLst() {
return (this.avLst!= null);
}
/**
* Gets the value of the gdLst property.
*
* @return
* possible object is
* {@link CTGeomGuideList }
*
*/
public CTGeomGuideList getGdLst() {
return gdLst;
}
/**
* Sets the value of the gdLst property.
*
* @param value
* allowed object is
* {@link CTGeomGuideList }
*
*/
public void setGdLst(CTGeomGuideList value) {
this.gdLst = value;
}
public boolean isSetGdLst() {
return (this.gdLst!= null);
}
/**
* Gets the value of the ahLst property.
*
* @return
* possible object is
* {@link CTAdjustHandleList }
*
*/
public CTAdjustHandleList getAhLst() {
return ahLst;
}
/**
* Sets the value of the ahLst property.
*
* @param value
* allowed object is
* {@link CTAdjustHandleList }
*
*/
public void setAhLst(CTAdjustHandleList value) {
this.ahLst = value;
}
public boolean isSetAhLst() {
return (this.ahLst!= null);
}
/**
* Gets the value of the cxnLst property.
*
* @return
* possible object is
* {@link CTConnectionSiteList }
*
*/
public CTConnectionSiteList getCxnLst() {
return cxnLst;
}
/**
* Sets the value of the cxnLst property.
*
* @param value
* allowed object is
* {@link CTConnectionSiteList }
*
*/
public void setCxnLst(CTConnectionSiteList value) {
this.cxnLst = value;
}
public boolean isSetCxnLst() {
return (this.cxnLst!= null);
}
/**
* Gets the value of the rect property.
*
* @return
* possible object is
* {@link CTGeomRect }
*
*/
public CTGeomRect getRect() {
return rect;
}
/**
* Sets the value of the rect property.
*
* @param value
* allowed object is
* {@link CTGeomRect }
*
*/
public void setRect(CTGeomRect value) {
this.rect = value;
}
public boolean isSetRect() {
return (this.rect!= null);
}
/**
* Gets the value of the pathLst property.
*
* @return
* possible object is
* {@link CTPath2DList }
*
*/
public CTPath2DList getPathLst() {
return pathLst;
}
/**
* Sets the value of the pathLst property.
*
* @param value
* allowed object is
* {@link CTPath2DList }
*
*/
public void setPathLst(CTPath2DList value) {
this.pathLst = value;
}
public boolean isSetPathLst() {
return (this.pathLst!= null);
}
}

View File

@ -1,152 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_EmbeddedWAVAudioFile complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_EmbeddedWAVAudioFile"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute ref="{http://schemas.openxmlformats.org/officeDocument/2006/relationships}embed use="required""/&gt;
* &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" default="" /&gt;
* &lt;attribute name="builtIn" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_EmbeddedWAVAudioFile")
public class CTEmbeddedWAVAudioFile {
@XmlAttribute(name = "embed", namespace = "http://schemas.openxmlformats.org/officeDocument/2006/relationships", required = true)
protected String embed;
@XmlAttribute(name = "name")
protected String name;
@XmlAttribute(name = "builtIn")
protected Boolean builtIn;
/**
* Embedded Audio File Relationship ID
*
* @return
* possible object is
* {@link String }
*
*/
public String getEmbed() {
return embed;
}
/**
* Sets the value of the embed property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setEmbed(String value) {
this.embed = value;
}
public boolean isSetEmbed() {
return (this.embed!= null);
}
/**
* Gets the value of the name property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getName() {
if (name == null) {
return "";
} else {
return name;
}
}
/**
* Sets the value of the name property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setName(String value) {
this.name = value;
}
public boolean isSetName() {
return (this.name!= null);
}
/**
* Gets the value of the builtIn property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isBuiltIn() {
if (builtIn == null) {
return false;
} else {
return builtIn;
}
}
/**
* Sets the value of the builtIn property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setBuiltIn(boolean value) {
this.builtIn = value;
}
public boolean isSetBuiltIn() {
return (this.builtIn!= null);
}
public void unsetBuiltIn() {
this.builtIn = null;
}
}

View File

@ -1,70 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_FixedPercentage complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_FixedPercentage"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_FixedPercentage" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_FixedPercentage")
public class CTFixedPercentage {
@XmlAttribute(name = "val", required = true)
protected int val;
/**
* Gets the value of the val property.
*
*/
public int getVal() {
return val;
}
/**
* Sets the value of the val property.
*
*/
public void setVal(int value) {
this.val = value;
}
public boolean isSetVal() {
return true;
}
}

View File

@ -1,46 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_GammaTransform complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GammaTransform"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_GammaTransform")
public class CTGammaTransform {
}

View File

@ -1,112 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
/**
* <p>Java class for CT_GeomGuide complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GeomGuide"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="name" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_GeomGuideName" /&gt;
* &lt;attribute name="fmla" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_GeomGuideFormula" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_GeomGuide")
public class CTGeomGuide {
@XmlAttribute(name = "name", required = true)
@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String name;
@XmlAttribute(name = "fmla", required = true)
protected String fmla;
/**
* Gets the value of the name property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setName(String value) {
this.name = value;
}
public boolean isSetName() {
return (this.name!= null);
}
/**
* Gets the value of the fmla property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getFmla() {
return fmla;
}
/**
* Sets the value of the fmla property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setFmla(String value) {
this.fmla = value;
}
public boolean isSetFmla() {
return (this.fmla!= null);
}
}

View File

@ -1,92 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_GeomGuideList complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GeomGuideList"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="gd" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuide" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_GeomGuideList", propOrder = {
"gd"
})
public class CTGeomGuideList {
protected List<CTGeomGuide> gd;
/**
* Gets the value of the gd property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the gd property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getGd().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTGeomGuide }
*
*
*/
public List<CTGeomGuide> getGd() {
if (gd == null) {
gd = new ArrayList<>();
}
return this.gd;
}
public boolean isSetGd() {
return ((this.gd!= null)&&(!this.gd.isEmpty()));
}
public void unsetGd() {
this.gd = null;
}
}

View File

@ -1,171 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_GeomRect complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GeomRect"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="l" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="t" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="r" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="b" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_GeomRect")
public class CTGeomRect {
@XmlAttribute(name = "l", required = true)
protected String l;
@XmlAttribute(name = "t", required = true)
protected String t;
@XmlAttribute(name = "r", required = true)
protected String r;
@XmlAttribute(name = "b", required = true)
protected String b;
/**
* Gets the value of the l property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getL() {
return l;
}
/**
* Sets the value of the l property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setL(String value) {
this.l = value;
}
public boolean isSetL() {
return (this.l!= null);
}
/**
* Gets the value of the t property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getT() {
return t;
}
/**
* Sets the value of the t property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setT(String value) {
this.t = value;
}
public boolean isSetT() {
return (this.t!= null);
}
/**
* Gets the value of the r property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getR() {
return r;
}
/**
* Sets the value of the r property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setR(String value) {
this.r = value;
}
public boolean isSetR() {
return (this.r!= null);
}
/**
* Gets the value of the b property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getB() {
return b;
}
/**
* Sets the value of the b property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setB(String value) {
this.b = value;
}
public boolean isSetB() {
return (this.b!= null);
}
}

View File

@ -1,46 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_GrayscaleTransform complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GrayscaleTransform"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_GrayscaleTransform")
public class CTGrayscaleTransform {
}

View File

@ -1,291 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_GroupTransform2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GroupTransform2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="off" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Point2D" minOccurs="0"/&gt;
* &lt;element name="ext" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_PositiveSize2D" minOccurs="0"/&gt;
* &lt;element name="chOff" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Point2D" minOccurs="0"/&gt;
* &lt;element name="chExt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_PositiveSize2D" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="rot" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Angle" default="0" /&gt;
* &lt;attribute name="flipH" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;attribute name="flipV" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_GroupTransform2D", propOrder = {
"off",
"ext",
"chOff",
"chExt"
})
public class CTGroupTransform2D {
protected CTPoint2D off;
protected CTPositiveSize2D ext;
protected CTPoint2D chOff;
protected CTPositiveSize2D chExt;
@XmlAttribute(name = "rot")
protected Integer rot;
@XmlAttribute(name = "flipH")
protected Boolean flipH;
@XmlAttribute(name = "flipV")
protected Boolean flipV;
/**
* Gets the value of the off property.
*
* @return
* possible object is
* {@link CTPoint2D }
*
*/
public CTPoint2D getOff() {
return off;
}
/**
* Sets the value of the off property.
*
* @param value
* allowed object is
* {@link CTPoint2D }
*
*/
public void setOff(CTPoint2D value) {
this.off = value;
}
public boolean isSetOff() {
return (this.off!= null);
}
/**
* Gets the value of the ext property.
*
* @return
* possible object is
* {@link CTPositiveSize2D }
*
*/
public CTPositiveSize2D getExt() {
return ext;
}
/**
* Sets the value of the ext property.
*
* @param value
* allowed object is
* {@link CTPositiveSize2D }
*
*/
public void setExt(CTPositiveSize2D value) {
this.ext = value;
}
public boolean isSetExt() {
return (this.ext!= null);
}
/**
* Gets the value of the chOff property.
*
* @return
* possible object is
* {@link CTPoint2D }
*
*/
public CTPoint2D getChOff() {
return chOff;
}
/**
* Sets the value of the chOff property.
*
* @param value
* allowed object is
* {@link CTPoint2D }
*
*/
public void setChOff(CTPoint2D value) {
this.chOff = value;
}
public boolean isSetChOff() {
return (this.chOff!= null);
}
/**
* Gets the value of the chExt property.
*
* @return
* possible object is
* {@link CTPositiveSize2D }
*
*/
public CTPositiveSize2D getChExt() {
return chExt;
}
/**
* Sets the value of the chExt property.
*
* @param value
* allowed object is
* {@link CTPositiveSize2D }
*
*/
public void setChExt(CTPositiveSize2D value) {
this.chExt = value;
}
public boolean isSetChExt() {
return (this.chExt!= null);
}
/**
* Gets the value of the rot property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public int getRot() {
if (rot == null) {
return 0;
} else {
return rot;
}
}
/**
* Sets the value of the rot property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setRot(int value) {
this.rot = value;
}
public boolean isSetRot() {
return (this.rot!= null);
}
public void unsetRot() {
this.rot = null;
}
/**
* Gets the value of the flipH property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isFlipH() {
if (flipH == null) {
return false;
} else {
return flipH;
}
}
/**
* Sets the value of the flipH property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setFlipH(boolean value) {
this.flipH = value;
}
public boolean isSetFlipH() {
return (this.flipH!= null);
}
public void unsetFlipH() {
this.flipH = null;
}
/**
* Gets the value of the flipV property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isFlipV() {
if (flipV == null) {
return false;
} else {
return flipV;
}
}
/**
* Sets the value of the flipV property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setFlipV(boolean value) {
this.flipV = value;
}
public boolean isSetFlipV() {
return (this.flipV!= null);
}
public void unsetFlipV() {
this.flipV = null;
}
}

View File

@ -1,222 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElementRefs;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_HslColor complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_HslColor"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorTransform" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="hue" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveFixedAngle" /&gt;
* &lt;attribute name="sat" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" /&gt;
* &lt;attribute name="lum" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_HslColor", propOrder = {
"egColorTransform"
})
public class CTHslColor {
@XmlElementRefs({
@XmlElementRef(name = "satOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "invGamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "tint", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gray", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "comp", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "inv", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "sat", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "green", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alpha", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "shade", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "red", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lum", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false)
})
protected List<JAXBElement<?>> egColorTransform;
@XmlAttribute(name = "hue", required = true)
protected int hue;
@XmlAttribute(name = "sat", required = true)
protected int sat;
@XmlAttribute(name = "lum", required = true)
protected int lum;
/**
* Gets the value of the egColorTransform property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorTransform property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorTransform().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGrayscaleTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTComplementTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
*
*
*/
public List<JAXBElement<?>> getEGColorTransform() {
if (egColorTransform == null) {
egColorTransform = new ArrayList<>();
}
return this.egColorTransform;
}
public boolean isSetEGColorTransform() {
return ((this.egColorTransform!= null)&&(!this.egColorTransform.isEmpty()));
}
public void unsetEGColorTransform() {
this.egColorTransform = null;
}
/**
* Gets the value of the hue property.
*
*/
public int getHue() {
return hue;
}
/**
* Sets the value of the hue property.
*
*/
public void setHue(int value) {
this.hue = value;
}
public boolean isSetHue() {
return true;
}
/**
* Gets the value of the sat property.
*
*/
public int getSat() {
return sat;
}
/**
* Sets the value of the sat property.
*
*/
public void setSat(int value) {
this.sat = value;
}
public boolean isSetSat() {
return true;
}
/**
* Gets the value of the lum property.
*
*/
public int getLum() {
return lum;
}
/**
* Sets the value of the lum property.
*
*/
public void setLum(int value) {
this.lum = value;
}
public boolean isSetLum() {
return true;
}
}

View File

@ -1,400 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Hyperlink complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Hyperlink"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="snd" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_EmbeddedWAVAudioFile" minOccurs="0"/&gt;
* &lt;element name="extLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_OfficeArtExtensionList" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute ref="{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id"/&gt;
* &lt;attribute name="invalidUrl" type="{http://www.w3.org/2001/XMLSchema}string" default="" /&gt;
* &lt;attribute name="action" type="{http://www.w3.org/2001/XMLSchema}string" default="" /&gt;
* &lt;attribute name="tgtFrame" type="{http://www.w3.org/2001/XMLSchema}string" default="" /&gt;
* &lt;attribute name="tooltip" type="{http://www.w3.org/2001/XMLSchema}string" default="" /&gt;
* &lt;attribute name="history" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" /&gt;
* &lt;attribute name="highlightClick" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;attribute name="endSnd" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Hyperlink", propOrder = {
"snd",
"extLst"
})
public class CTHyperlink {
protected CTEmbeddedWAVAudioFile snd;
protected CTOfficeArtExtensionList extLst;
@XmlAttribute(name = "id", namespace = "http://schemas.openxmlformats.org/officeDocument/2006/relationships")
protected String id;
@XmlAttribute(name = "invalidUrl")
protected String invalidUrl;
@XmlAttribute(name = "action")
protected String action;
@XmlAttribute(name = "tgtFrame")
protected String tgtFrame;
@XmlAttribute(name = "tooltip")
protected String tooltip;
@XmlAttribute(name = "history")
protected Boolean history;
@XmlAttribute(name = "highlightClick")
protected Boolean highlightClick;
@XmlAttribute(name = "endSnd")
protected Boolean endSnd;
/**
* Gets the value of the snd property.
*
* @return
* possible object is
* {@link CTEmbeddedWAVAudioFile }
*
*/
public CTEmbeddedWAVAudioFile getSnd() {
return snd;
}
/**
* Sets the value of the snd property.
*
* @param value
* allowed object is
* {@link CTEmbeddedWAVAudioFile }
*
*/
public void setSnd(CTEmbeddedWAVAudioFile value) {
this.snd = value;
}
public boolean isSetSnd() {
return (this.snd!= null);
}
/**
* Gets the value of the extLst property.
*
* @return
* possible object is
* {@link CTOfficeArtExtensionList }
*
*/
public CTOfficeArtExtensionList getExtLst() {
return extLst;
}
/**
* Sets the value of the extLst property.
*
* @param value
* allowed object is
* {@link CTOfficeArtExtensionList }
*
*/
public void setExtLst(CTOfficeArtExtensionList value) {
this.extLst = value;
}
public boolean isSetExtLst() {
return (this.extLst!= null);
}
/**
* Drawing Object Hyperlink Target
*
* @return
* possible object is
* {@link String }
*
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setId(String value) {
this.id = value;
}
public boolean isSetId() {
return (this.id!= null);
}
/**
* Gets the value of the invalidUrl property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getInvalidUrl() {
if (invalidUrl == null) {
return "";
} else {
return invalidUrl;
}
}
/**
* Sets the value of the invalidUrl property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setInvalidUrl(String value) {
this.invalidUrl = value;
}
public boolean isSetInvalidUrl() {
return (this.invalidUrl!= null);
}
/**
* Gets the value of the action property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getAction() {
if (action == null) {
return "";
} else {
return action;
}
}
/**
* Sets the value of the action property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setAction(String value) {
this.action = value;
}
public boolean isSetAction() {
return (this.action!= null);
}
/**
* Gets the value of the tgtFrame property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTgtFrame() {
if (tgtFrame == null) {
return "";
} else {
return tgtFrame;
}
}
/**
* Sets the value of the tgtFrame property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTgtFrame(String value) {
this.tgtFrame = value;
}
public boolean isSetTgtFrame() {
return (this.tgtFrame!= null);
}
/**
* Gets the value of the tooltip property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTooltip() {
if (tooltip == null) {
return "";
} else {
return tooltip;
}
}
/**
* Sets the value of the tooltip property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTooltip(String value) {
this.tooltip = value;
}
public boolean isSetTooltip() {
return (this.tooltip!= null);
}
/**
* Gets the value of the history property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isHistory() {
if (history == null) {
return true;
} else {
return history;
}
}
/**
* Sets the value of the history property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setHistory(boolean value) {
this.history = value;
}
public boolean isSetHistory() {
return (this.history!= null);
}
public void unsetHistory() {
this.history = null;
}
/**
* Gets the value of the highlightClick property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isHighlightClick() {
if (highlightClick == null) {
return false;
} else {
return highlightClick;
}
}
/**
* Sets the value of the highlightClick property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setHighlightClick(boolean value) {
this.highlightClick = value;
}
public boolean isSetHighlightClick() {
return (this.highlightClick!= null);
}
public void unsetHighlightClick() {
this.highlightClick = null;
}
/**
* Gets the value of the endSnd property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isEndSnd() {
if (endSnd == null) {
return false;
} else {
return endSnd;
}
}
/**
* Sets the value of the endSnd property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setEndSnd(boolean value) {
this.endSnd = value;
}
public boolean isSetEndSnd() {
return (this.endSnd!= null);
}
public void unsetEndSnd() {
this.endSnd = null;
}
}

View File

@ -1,46 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_InverseGammaTransform complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_InverseGammaTransform"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_InverseGammaTransform")
public class CTInverseGammaTransform {
}

View File

@ -1,46 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_InverseTransform complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_InverseTransform"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_InverseTransform")
public class CTInverseTransform {
}

View File

@ -1,122 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAnyElement;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.w3c.dom.Element;
/**
* <p>Java class for CT_OfficeArtExtension complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_OfficeArtExtension"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;any processContents='lax'/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="uri" type="{http://www.w3.org/2001/XMLSchema}token" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_OfficeArtExtension", propOrder = {
"any"
})
public class CTOfficeArtExtension {
@XmlAnyElement(lax = true)
protected Object any;
@XmlAttribute(name = "uri")
@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
@XmlSchemaType(name = "token")
protected String uri;
/**
* Gets the value of the any property.
*
* @return
* possible object is
* {@link Object }
* {@link Element }
*
*/
public Object getAny() {
return any;
}
/**
* Sets the value of the any property.
*
* @param value
* allowed object is
* {@link Object }
* {@link Element }
*
*/
public void setAny(Object value) {
this.any = value;
}
public boolean isSetAny() {
return (this.any!= null);
}
/**
* Gets the value of the uri property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getUri() {
return uri;
}
/**
* Sets the value of the uri property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setUri(String value) {
this.uri = value;
}
public boolean isSetUri() {
return (this.uri!= null);
}
}

View File

@ -1,92 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_OfficeArtExtensionList complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_OfficeArtExtensionList"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_OfficeArtExtensionList"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_OfficeArtExtensionList", propOrder = {
"ext"
})
public class CTOfficeArtExtensionList {
protected List<CTOfficeArtExtension> ext;
/**
* Gets the value of the ext property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the ext property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getExt().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTOfficeArtExtension }
*
*
*/
public List<CTOfficeArtExtension> getExt() {
if (ext == null) {
ext = new ArrayList<>();
}
return this.ext;
}
public boolean isSetExt() {
return ((this.ext!= null)&&(!this.ext.isEmpty()));
}
public void unsetExt() {
this.ext = null;
}
}

View File

@ -1,304 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;choice maxOccurs="unbounded" minOccurs="0"&gt;
* &lt;element name="close" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DClose"/&gt;
* &lt;element name="moveTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DMoveTo"/&gt;
* &lt;element name="lnTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DLineTo"/&gt;
* &lt;element name="arcTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DArcTo"/&gt;
* &lt;element name="quadBezTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DQuadBezierTo"/&gt;
* &lt;element name="cubicBezTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DCubicBezierTo"/&gt;
* &lt;/choice&gt;
* &lt;attribute name="w" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveCoordinate" default="0" /&gt;
* &lt;attribute name="h" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveCoordinate" default="0" /&gt;
* &lt;attribute name="fill" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PathFillMode" default="norm" /&gt;
* &lt;attribute name="stroke" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" /&gt;
* &lt;attribute name="extrusionOk" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2D", propOrder = {
"closeOrMoveToOrLnTo"
})
public class CTPath2D {
@XmlElements({
@XmlElement(name = "close", type = CTPath2DClose.class),
@XmlElement(name = "moveTo", type = CTPath2DMoveTo.class),
@XmlElement(name = "lnTo", type = CTPath2DLineTo.class),
@XmlElement(name = "arcTo", type = CTPath2DArcTo.class),
@XmlElement(name = "quadBezTo", type = CTPath2DQuadBezierTo.class),
@XmlElement(name = "cubicBezTo", type = CTPath2DCubicBezierTo.class)
})
protected List<Object> closeOrMoveToOrLnTo;
@XmlAttribute(name = "w")
protected Long w;
@XmlAttribute(name = "h")
protected Long h;
@XmlAttribute(name = "fill")
protected STPathFillMode fill;
@XmlAttribute(name = "stroke")
protected Boolean stroke;
@XmlAttribute(name = "extrusionOk")
protected Boolean extrusionOk;
/**
* Gets the value of the closeOrMoveToOrLnTo property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the closeOrMoveToOrLnTo property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getCloseOrMoveToOrLnTo().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTPath2DClose }
* {@link CTPath2DMoveTo }
* {@link CTPath2DLineTo }
* {@link CTPath2DArcTo }
* {@link CTPath2DQuadBezierTo }
* {@link CTPath2DCubicBezierTo }
*
*
*/
public List<Object> getCloseOrMoveToOrLnTo() {
if (closeOrMoveToOrLnTo == null) {
closeOrMoveToOrLnTo = new ArrayList<>();
}
return this.closeOrMoveToOrLnTo;
}
public boolean isSetCloseOrMoveToOrLnTo() {
return ((this.closeOrMoveToOrLnTo!= null)&&(!this.closeOrMoveToOrLnTo.isEmpty()));
}
public void unsetCloseOrMoveToOrLnTo() {
this.closeOrMoveToOrLnTo = null;
}
/**
* Gets the value of the w property.
*
* @return
* possible object is
* {@link Long }
*
*/
public long getW() {
if (w == null) {
return 0L;
} else {
return w;
}
}
/**
* Sets the value of the w property.
*
* @param value
* allowed object is
* {@link Long }
*
*/
public void setW(long value) {
this.w = value;
}
public boolean isSetW() {
return (this.w!= null);
}
public void unsetW() {
this.w = null;
}
/**
* Gets the value of the h property.
*
* @return
* possible object is
* {@link Long }
*
*/
public long getH() {
if (h == null) {
return 0L;
} else {
return h;
}
}
/**
* Sets the value of the h property.
*
* @param value
* allowed object is
* {@link Long }
*
*/
public void setH(long value) {
this.h = value;
}
public boolean isSetH() {
return (this.h!= null);
}
public void unsetH() {
this.h = null;
}
/**
* Gets the value of the fill property.
*
* @return
* possible object is
* {@link STPathFillMode }
*
*/
public STPathFillMode getFill() {
if (fill == null) {
return STPathFillMode.NORM;
} else {
return fill;
}
}
/**
* Sets the value of the fill property.
*
* @param value
* allowed object is
* {@link STPathFillMode }
*
*/
public void setFill(STPathFillMode value) {
this.fill = value;
}
public boolean isSetFill() {
return (this.fill!= null);
}
/**
* Gets the value of the stroke property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isStroke() {
if (stroke == null) {
return true;
} else {
return stroke;
}
}
/**
* Sets the value of the stroke property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setStroke(boolean value) {
this.stroke = value;
}
public boolean isSetStroke() {
return (this.stroke!= null);
}
public void unsetStroke() {
this.stroke = null;
}
/**
* Gets the value of the extrusionOk property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isExtrusionOk() {
if (extrusionOk == null) {
return true;
} else {
return extrusionOk;
}
}
/**
* Sets the value of the extrusionOk property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setExtrusionOk(boolean value) {
this.extrusionOk = value;
}
public boolean isSetExtrusionOk() {
return (this.extrusionOk!= null);
}
public void unsetExtrusionOk() {
this.extrusionOk = null;
}
}

View File

@ -1,171 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DArcTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DArcTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="wR" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="hR" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="stAng" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjAngle" /&gt;
* &lt;attribute name="swAng" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjAngle" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DArcTo")
public class CTPath2DArcTo {
@XmlAttribute(name = "wR", required = true)
protected String wr;
@XmlAttribute(name = "hR", required = true)
protected String hr;
@XmlAttribute(name = "stAng", required = true)
protected String stAng;
@XmlAttribute(name = "swAng", required = true)
protected String swAng;
/**
* Gets the value of the wr property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getWR() {
return wr;
}
/**
* Sets the value of the wr property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setWR(String value) {
this.wr = value;
}
public boolean isSetWR() {
return (this.wr!= null);
}
/**
* Gets the value of the hr property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getHR() {
return hr;
}
/**
* Sets the value of the hr property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setHR(String value) {
this.hr = value;
}
public boolean isSetHR() {
return (this.hr!= null);
}
/**
* Gets the value of the stAng property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getStAng() {
return stAng;
}
/**
* Sets the value of the stAng property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setStAng(String value) {
this.stAng = value;
}
public boolean isSetStAng() {
return (this.stAng!= null);
}
/**
* Gets the value of the swAng property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getSwAng() {
return swAng;
}
/**
* Sets the value of the swAng property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setSwAng(String value) {
this.swAng = value;
}
public boolean isSetSwAng() {
return (this.swAng!= null);
}
}

View File

@ -1,46 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DClose complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DClose"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DClose")
public class CTPath2DClose {
}

View File

@ -1,94 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DCubicBezierTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DCubicBezierTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D" maxOccurs="3" minOccurs="3"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DCubicBezierTo", propOrder = {
"pt"
})
public class CTPath2DCubicBezierTo {
@XmlElement(required = true)
protected List<CTAdjPoint2D> pt;
/**
* Gets the value of the pt property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the pt property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getPt().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTAdjPoint2D }
*
*
*/
public List<CTAdjPoint2D> getPt() {
if (pt == null) {
pt = new ArrayList<>();
}
return this.pt;
}
public boolean isSetPt() {
return ((this.pt!= null)&&(!this.pt.isEmpty()));
}
public void unsetPt() {
this.pt = null;
}
}

View File

@ -1,82 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DLineTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DLineTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DLineTo", propOrder = {
"pt"
})
public class CTPath2DLineTo {
@XmlElement(required = true)
protected CTAdjPoint2D pt;
/**
* Gets the value of the pt property.
*
* @return
* possible object is
* {@link CTAdjPoint2D }
*
*/
public CTAdjPoint2D getPt() {
return pt;
}
/**
* Sets the value of the pt property.
*
* @param value
* allowed object is
* {@link CTAdjPoint2D }
*
*/
public void setPt(CTAdjPoint2D value) {
this.pt = value;
}
public boolean isSetPt() {
return (this.pt!= null);
}
}

View File

@ -1,92 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DList complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DList"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="path" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2D" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DList", propOrder = {
"path"
})
public class CTPath2DList {
protected List<CTPath2D> path;
/**
* Gets the value of the path property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the path property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getPath().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTPath2D }
*
*
*/
public List<CTPath2D> getPath() {
if (path == null) {
path = new ArrayList<>();
}
return this.path;
}
public boolean isSetPath() {
return ((this.path!= null)&&(!this.path.isEmpty()));
}
public void unsetPath() {
this.path = null;
}
}

View File

@ -1,82 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DMoveTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DMoveTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DMoveTo", propOrder = {
"pt"
})
public class CTPath2DMoveTo {
@XmlElement(required = true)
protected CTAdjPoint2D pt;
/**
* Gets the value of the pt property.
*
* @return
* possible object is
* {@link CTAdjPoint2D }
*
*/
public CTAdjPoint2D getPt() {
return pt;
}
/**
* Sets the value of the pt property.
*
* @param value
* allowed object is
* {@link CTAdjPoint2D }
*
*/
public void setPt(CTAdjPoint2D value) {
this.pt = value;
}
public boolean isSetPt() {
return (this.pt!= null);
}
}

View File

@ -1,94 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Path2DQuadBezierTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DQuadBezierTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D" maxOccurs="2" minOccurs="2"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Path2DQuadBezierTo", propOrder = {
"pt"
})
public class CTPath2DQuadBezierTo {
@XmlElement(required = true)
protected List<CTAdjPoint2D> pt;
/**
* Gets the value of the pt property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the pt property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getPt().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link CTAdjPoint2D }
*
*
*/
public List<CTAdjPoint2D> getPt() {
if (pt == null) {
pt = new ArrayList<>();
}
return this.pt;
}
public boolean isSetPt() {
return ((this.pt!= null)&&(!this.pt.isEmpty()));
}
public void unsetPt() {
this.pt = null;
}
}

View File

@ -1,70 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Percentage complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Percentage"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Percentage")
public class CTPercentage {
@XmlAttribute(name = "val", required = true)
protected int val;
/**
* Gets the value of the val property.
*
*/
public int getVal() {
return val;
}
/**
* Sets the value of the val property.
*
*/
public void setVal(int value) {
this.val = value;
}
public boolean isSetVal() {
return true;
}
}

View File

@ -1,93 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Point2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Point2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="x" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;attribute name="y" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Point2D")
public class CTPoint2D {
@XmlAttribute(name = "x", required = true)
protected long x;
@XmlAttribute(name = "y", required = true)
protected long y;
/**
* Gets the value of the x property.
*
*/
public long getX() {
return x;
}
/**
* Sets the value of the x property.
*
*/
public void setX(long value) {
this.x = value;
}
public boolean isSetX() {
return true;
}
/**
* Gets the value of the y property.
*
*/
public long getY() {
return y;
}
/**
* Sets the value of the y property.
*
*/
public void setY(long value) {
this.y = value;
}
public boolean isSetY() {
return true;
}
}

View File

@ -1,116 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Point3D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Point3D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="x" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;attribute name="y" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;attribute name="z" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Point3D")
public class CTPoint3D {
@XmlAttribute(name = "x", required = true)
protected long x;
@XmlAttribute(name = "y", required = true)
protected long y;
@XmlAttribute(name = "z", required = true)
protected long z;
/**
* Gets the value of the x property.
*
*/
public long getX() {
return x;
}
/**
* Sets the value of the x property.
*
*/
public void setX(long value) {
this.x = value;
}
public boolean isSetX() {
return true;
}
/**
* Gets the value of the y property.
*
*/
public long getY() {
return y;
}
/**
* Sets the value of the y property.
*
*/
public void setY(long value) {
this.y = value;
}
public boolean isSetY() {
return true;
}
/**
* Gets the value of the z property.
*
*/
public long getZ() {
return z;
}
/**
* Sets the value of the z property.
*
*/
public void setZ(long value) {
this.z = value;
}
public boolean isSetZ() {
return true;
}
}

View File

@ -1,70 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PositiveFixedAngle complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PositiveFixedAngle"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveFixedAngle" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PositiveFixedAngle")
public class CTPositiveFixedAngle {
@XmlAttribute(name = "val", required = true)
protected int val;
/**
* Gets the value of the val property.
*
*/
public int getVal() {
return val;
}
/**
* Sets the value of the val property.
*
*/
public void setVal(int value) {
this.val = value;
}
public boolean isSetVal() {
return true;
}
}

View File

@ -1,70 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PositiveFixedPercentage complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PositiveFixedPercentage"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveFixedPercentage" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PositiveFixedPercentage")
public class CTPositiveFixedPercentage {
@XmlAttribute(name = "val", required = true)
protected int val;
/**
* Gets the value of the val property.
*
*/
public int getVal() {
return val;
}
/**
* Sets the value of the val property.
*
*/
public void setVal(int value) {
this.val = value;
}
public boolean isSetVal() {
return true;
}
}

View File

@ -1,70 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PositivePercentage complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PositivePercentage"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositivePercentage" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PositivePercentage")
public class CTPositivePercentage {
@XmlAttribute(name = "val", required = true)
protected int val;
/**
* Gets the value of the val property.
*
*/
public int getVal() {
return val;
}
/**
* Sets the value of the val property.
*
*/
public void setVal(int value) {
this.val = value;
}
public boolean isSetVal() {
return true;
}
}

View File

@ -1,93 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PositiveSize2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PositiveSize2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="cx" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveCoordinate" /&gt;
* &lt;attribute name="cy" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveCoordinate" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PositiveSize2D")
public class CTPositiveSize2D {
@XmlAttribute(name = "cx", required = true)
protected long cx;
@XmlAttribute(name = "cy", required = true)
protected long cy;
/**
* Gets the value of the cx property.
*
*/
public long getCx() {
return cx;
}
/**
* Sets the value of the cx property.
*
*/
public void setCx(long value) {
this.cx = value;
}
public boolean isSetCx() {
return true;
}
/**
* Gets the value of the cy property.
*
*/
public long getCy() {
return cy;
}
/**
* Sets the value of the cy property.
*
*/
public void setCy(long value) {
this.cy = value;
}
public boolean isSetCy() {
return true;
}
}

View File

@ -1,184 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElementRefs;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PresetColor complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PresetColor"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorTransform" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="val" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PresetColorVal" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PresetColor", propOrder = {
"egColorTransform"
})
public class CTPresetColor {
@XmlElementRefs({
@XmlElementRef(name = "blue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "inv", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "red", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alpha", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lum", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "green", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "shade", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "comp", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "invGamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "tint", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gray", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "sat", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false)
})
protected List<JAXBElement<?>> egColorTransform;
@XmlAttribute(name = "val")
protected STPresetColorVal val;
/**
* Gets the value of the egColorTransform property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorTransform property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorTransform().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTComplementTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGrayscaleTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
*
*
*/
public List<JAXBElement<?>> getEGColorTransform() {
if (egColorTransform == null) {
egColorTransform = new ArrayList<>();
}
return this.egColorTransform;
}
public boolean isSetEGColorTransform() {
return ((this.egColorTransform!= null)&&(!this.egColorTransform.isEmpty()));
}
public void unsetEGColorTransform() {
this.egColorTransform = null;
}
/**
* Gets the value of the val property.
*
* @return
* possible object is
* {@link STPresetColorVal }
*
*/
public STPresetColorVal getVal() {
return val;
}
/**
* Sets the value of the val property.
*
* @param value
* allowed object is
* {@link STPresetColorVal }
*
*/
public void setVal(STPresetColorVal value) {
this.val = value;
}
public boolean isSetVal() {
return (this.val!= null);
}
}

View File

@ -1,112 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PresetGeometry2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PresetGeometry2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="avLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuideList" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="prst" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_ShapeType" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PresetGeometry2D", propOrder = {
"avLst"
})
public class CTPresetGeometry2D {
protected CTGeomGuideList avLst;
@XmlAttribute(name = "prst", required = true)
protected STShapeType prst;
/**
* Gets the value of the avLst property.
*
* @return
* possible object is
* {@link CTGeomGuideList }
*
*/
public CTGeomGuideList getAvLst() {
return avLst;
}
/**
* Sets the value of the avLst property.
*
* @param value
* allowed object is
* {@link CTGeomGuideList }
*
*/
public void setAvLst(CTGeomGuideList value) {
this.avLst = value;
}
public boolean isSetAvLst() {
return (this.avLst!= null);
}
/**
* Gets the value of the prst property.
*
* @return
* possible object is
* {@link STShapeType }
*
*/
public STShapeType getPrst() {
return prst;
}
/**
* Sets the value of the prst property.
*
* @param value
* allowed object is
* {@link STShapeType }
*
*/
public void setPrst(STShapeType value) {
this.prst = value;
}
public boolean isSetPrst() {
return (this.prst!= null);
}
}

View File

@ -1,112 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_PresetTextShape complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_PresetTextShape"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="avLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuideList" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="prst" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_TextShapeType" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PresetTextShape", propOrder = {
"avLst"
})
public class CTPresetTextShape {
protected CTGeomGuideList avLst;
@XmlAttribute(name = "prst", required = true)
protected STTextShapeType prst;
/**
* Gets the value of the avLst property.
*
* @return
* possible object is
* {@link CTGeomGuideList }
*
*/
public CTGeomGuideList getAvLst() {
return avLst;
}
/**
* Sets the value of the avLst property.
*
* @param value
* allowed object is
* {@link CTGeomGuideList }
*
*/
public void setAvLst(CTGeomGuideList value) {
this.avLst = value;
}
public boolean isSetAvLst() {
return (this.avLst!= null);
}
/**
* Gets the value of the prst property.
*
* @return
* possible object is
* {@link STTextShapeType }
*
*/
public STTextShapeType getPrst() {
return prst;
}
/**
* Sets the value of the prst property.
*
* @param value
* allowed object is
* {@link STTextShapeType }
*
*/
public void setPrst(STTextShapeType value) {
this.prst = value;
}
public boolean isSetPrst() {
return (this.prst!= null);
}
}

View File

@ -1,93 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Ratio complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Ratio"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="n" use="required" type="{http://www.w3.org/2001/XMLSchema}long" /&gt;
* &lt;attribute name="d" use="required" type="{http://www.w3.org/2001/XMLSchema}long" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Ratio")
public class CTRatio {
@XmlAttribute(name = "n", required = true)
protected long n;
@XmlAttribute(name = "d", required = true)
protected long d;
/**
* Gets the value of the n property.
*
*/
public long getN() {
return n;
}
/**
* Sets the value of the n property.
*
*/
public void setN(long value) {
this.n = value;
}
public boolean isSetN() {
return true;
}
/**
* Gets the value of the d property.
*
*/
public long getD() {
return d;
}
/**
* Sets the value of the d property.
*
*/
public void setD(long value) {
this.d = value;
}
public boolean isSetD() {
return true;
}
}

View File

@ -1,203 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_RelativeRect complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_RelativeRect"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="l" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" default="0" /&gt;
* &lt;attribute name="t" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" default="0" /&gt;
* &lt;attribute name="r" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" default="0" /&gt;
* &lt;attribute name="b" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" default="0" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_RelativeRect")
public class CTRelativeRect {
@XmlAttribute(name = "l")
protected Integer l;
@XmlAttribute(name = "t")
protected Integer t;
@XmlAttribute(name = "r")
protected Integer r;
@XmlAttribute(name = "b")
protected Integer b;
/**
* Gets the value of the l property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public int getL() {
if (l == null) {
return 0;
} else {
return l;
}
}
/**
* Sets the value of the l property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setL(int value) {
this.l = value;
}
public boolean isSetL() {
return (this.l!= null);
}
public void unsetL() {
this.l = null;
}
/**
* Gets the value of the t property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public int getT() {
if (t == null) {
return 0;
} else {
return t;
}
}
/**
* Sets the value of the t property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setT(int value) {
this.t = value;
}
public boolean isSetT() {
return (this.t!= null);
}
public void unsetT() {
this.t = null;
}
/**
* Gets the value of the r property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public int getR() {
if (r == null) {
return 0;
} else {
return r;
}
}
/**
* Sets the value of the r property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setR(int value) {
this.r = value;
}
public boolean isSetR() {
return (this.r!= null);
}
public void unsetR() {
this.r = null;
}
/**
* Gets the value of the b property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public int getB() {
if (b == null) {
return 0;
} else {
return b;
}
}
/**
* Sets the value of the b property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setB(int value) {
this.b = value;
}
public boolean isSetB() {
return (this.b!= null);
}
public void unsetB() {
this.b = null;
}
}

View File

@ -1,187 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElementRefs;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
/**
* <p>Java class for CT_SRgbColor complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_SRgbColor"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorTransform" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_HexBinary3" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_SRgbColor", propOrder = {
"egColorTransform"
})
public class CTSRgbColor {
@XmlElementRefs({
@XmlElementRef(name = "blue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "green", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "sat", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "comp", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "red", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gray", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alpha", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "tint", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "invGamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "shade", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "inv", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lum", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false)
})
protected List<JAXBElement<?>> egColorTransform;
@XmlAttribute(name = "val", required = true)
@XmlJavaTypeAdapter(HexBinaryAdapter.class)
protected byte[] val;
/**
* Gets the value of the egColorTransform property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorTransform property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorTransform().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTComplementTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGrayscaleTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
*
*
*/
public List<JAXBElement<?>> getEGColorTransform() {
if (egColorTransform == null) {
egColorTransform = new ArrayList<>();
}
return this.egColorTransform;
}
public boolean isSetEGColorTransform() {
return ((this.egColorTransform!= null)&&(!this.egColorTransform.isEmpty()));
}
public void unsetEGColorTransform() {
this.egColorTransform = null;
}
/**
* Gets the value of the val property.
*
* @return
* possible object is
* {@link String }
*
*/
public byte[] getVal() {
return val;
}
/**
* Sets the value of the val property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setVal(byte[] value) {
this.val = value;
}
public boolean isSetVal() {
return (this.val!= null);
}
}

View File

@ -1,222 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElementRefs;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_ScRgbColor complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_ScRgbColor"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorTransform" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="r" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" /&gt;
* &lt;attribute name="g" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" /&gt;
* &lt;attribute name="b" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Percentage" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_ScRgbColor", propOrder = {
"egColorTransform"
})
public class CTScRgbColor {
@XmlElementRefs({
@XmlElementRef(name = "gamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "green", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "tint", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alpha", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lum", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "shade", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "invGamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "inv", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "comp", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "sat", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gray", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "red", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false)
})
protected List<JAXBElement<?>> egColorTransform;
@XmlAttribute(name = "r", required = true)
protected int r;
@XmlAttribute(name = "g", required = true)
protected int g;
@XmlAttribute(name = "b", required = true)
protected int b;
/**
* Gets the value of the egColorTransform property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorTransform property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorTransform().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link CTGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTComplementTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGrayscaleTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
*
*
*/
public List<JAXBElement<?>> getEGColorTransform() {
if (egColorTransform == null) {
egColorTransform = new ArrayList<>();
}
return this.egColorTransform;
}
public boolean isSetEGColorTransform() {
return ((this.egColorTransform!= null)&&(!this.egColorTransform.isEmpty()));
}
public void unsetEGColorTransform() {
this.egColorTransform = null;
}
/**
* Gets the value of the r property.
*
*/
public int getR() {
return r;
}
/**
* Sets the value of the r property.
*
*/
public void setR(int value) {
this.r = value;
}
public boolean isSetR() {
return true;
}
/**
* Gets the value of the g property.
*
*/
public int getG() {
return g;
}
/**
* Sets the value of the g property.
*
*/
public void setG(int value) {
this.g = value;
}
public boolean isSetG() {
return true;
}
/**
* Gets the value of the b property.
*
*/
public int getB() {
return b;
}
/**
* Sets the value of the b property.
*
*/
public void setB(int value) {
this.b = value;
}
public boolean isSetB() {
return true;
}
}

View File

@ -1,114 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Scale2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Scale2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="sx" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Ratio"/&gt;
* &lt;element name="sy" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Ratio"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Scale2D", propOrder = {
"sx",
"sy"
})
public class CTScale2D {
@XmlElement(required = true)
protected CTRatio sx;
@XmlElement(required = true)
protected CTRatio sy;
/**
* Gets the value of the sx property.
*
* @return
* possible object is
* {@link CTRatio }
*
*/
public CTRatio getSx() {
return sx;
}
/**
* Sets the value of the sx property.
*
* @param value
* allowed object is
* {@link CTRatio }
*
*/
public void setSx(CTRatio value) {
this.sx = value;
}
public boolean isSetSx() {
return (this.sx!= null);
}
/**
* Gets the value of the sy property.
*
* @return
* possible object is
* {@link CTRatio }
*
*/
public CTRatio getSy() {
return sy;
}
/**
* Sets the value of the sy property.
*
* @param value
* allowed object is
* {@link CTRatio }
*
*/
public void setSy(CTRatio value) {
this.sy = value;
}
public boolean isSetSy() {
return (this.sy!= null);
}
}

View File

@ -1,184 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElementRefs;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_SchemeColor complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_SchemeColor"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorTransform" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_SchemeColorVal" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_SchemeColor", propOrder = {
"egColorTransform"
})
public class CTSchemeColor {
@XmlElementRefs({
@XmlElementRef(name = "comp", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "inv", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "tint", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "shade", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alpha", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "sat", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gray", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "red", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lum", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "invGamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "green", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false)
})
protected List<JAXBElement<?>> egColorTransform;
@XmlAttribute(name = "val", required = true)
protected STSchemeColorVal val;
/**
* Gets the value of the egColorTransform property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorTransform property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorTransform().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link CTComplementTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTGrayscaleTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
*
*
*/
public List<JAXBElement<?>> getEGColorTransform() {
if (egColorTransform == null) {
egColorTransform = new ArrayList<>();
}
return this.egColorTransform;
}
public boolean isSetEGColorTransform() {
return ((this.egColorTransform!= null)&&(!this.egColorTransform.isEmpty()));
}
public void unsetEGColorTransform() {
this.egColorTransform = null;
}
/**
* Gets the value of the val property.
*
* @return
* possible object is
* {@link STSchemeColorVal }
*
*/
public STSchemeColorVal getVal() {
return val;
}
/**
* Sets the value of the val property.
*
* @param value
* allowed object is
* {@link STSchemeColorVal }
*
*/
public void setVal(STSchemeColorVal value) {
this.val = value;
}
public boolean isSetVal() {
return (this.val!= null);
}
}

View File

@ -1,116 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_SphereCoords complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_SphereCoords"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="lat" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveFixedAngle" /&gt;
* &lt;attribute name="lon" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveFixedAngle" /&gt;
* &lt;attribute name="rev" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveFixedAngle" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_SphereCoords")
public class CTSphereCoords {
@XmlAttribute(name = "lat", required = true)
protected int lat;
@XmlAttribute(name = "lon", required = true)
protected int lon;
@XmlAttribute(name = "rev", required = true)
protected int rev;
/**
* Gets the value of the lat property.
*
*/
public int getLat() {
return lat;
}
/**
* Sets the value of the lat property.
*
*/
public void setLat(int value) {
this.lat = value;
}
public boolean isSetLat() {
return true;
}
/**
* Gets the value of the lon property.
*
*/
public int getLon() {
return lon;
}
/**
* Sets the value of the lon property.
*
*/
public void setLon(int value) {
this.lon = value;
}
public boolean isSetLon() {
return true;
}
/**
* Gets the value of the rev property.
*
*/
public int getRev() {
return rev;
}
/**
* Sets the value of the rev property.
*
*/
public void setRev(int value) {
this.rev = value;
}
public boolean isSetRev() {
return true;
}
}

View File

@ -1,220 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlElementRefs;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
/**
* <p>Java class for CT_SystemColor complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_SystemColor"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;group ref="{http://schemas.openxmlformats.org/drawingml/2006/main}EG_ColorTransform" maxOccurs="unbounded" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="val" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_SystemColorVal" /&gt;
* &lt;attribute name="lastClr" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_HexBinary3" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_SystemColor", propOrder = {
"egColorTransform"
})
public class CTSystemColor {
@XmlElementRefs({
@XmlElementRef(name = "red", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "invGamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "inv", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gray", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "greenOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "gamma", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alphaOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "sat", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "tint", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "shade", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lum", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "green", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "satMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "blue", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueOff", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "hueMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "lumMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "redMod", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "alpha", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false),
@XmlElementRef(name = "comp", namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", type = JAXBElement.class, required = false)
})
protected List<JAXBElement<?>> egColorTransform;
@XmlAttribute(name = "val", required = true)
@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String val;
@XmlAttribute(name = "lastClr")
@XmlJavaTypeAdapter(HexBinaryAdapter.class)
protected byte[] lastClr;
/**
* Gets the value of the egColorTransform property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the egColorTransform property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEGColorTransform().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTInverseTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTGrayscaleTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTGammaTransform }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTAngle }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositivePercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTPositiveFixedPercentage }{@code >}
* {@link JAXBElement }{@code <}{@link CTComplementTransform }{@code >}
*
*
*/
public List<JAXBElement<?>> getEGColorTransform() {
if (egColorTransform == null) {
egColorTransform = new ArrayList<>();
}
return this.egColorTransform;
}
public boolean isSetEGColorTransform() {
return ((this.egColorTransform!= null)&&(!this.egColorTransform.isEmpty()));
}
public void unsetEGColorTransform() {
this.egColorTransform = null;
}
/**
* Gets the value of the val property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getVal() {
return val;
}
/**
* Sets the value of the val property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setVal(String value) {
this.val = value;
}
public boolean isSetVal() {
return (this.val!= null);
}
/**
* Gets the value of the lastClr property.
*
* @return
* possible object is
* {@link String }
*
*/
public byte[] getLastClr() {
return lastClr;
}
/**
* Sets the value of the lastClr property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setLastClr(byte[] value) {
this.lastClr = value;
}
public boolean isSetLastClr() {
return (this.lastClr!= null);
}
}

View File

@ -1,229 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Transform2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Transform2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="off" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Point2D" minOccurs="0"/&gt;
* &lt;element name="ext" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_PositiveSize2D" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;attribute name="rot" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Angle" default="0" /&gt;
* &lt;attribute name="flipH" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;attribute name="flipV" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Transform2D", propOrder = {
"off",
"ext"
})
public class CTTransform2D {
protected CTPoint2D off;
protected CTPositiveSize2D ext;
@XmlAttribute(name = "rot")
protected Integer rot;
@XmlAttribute(name = "flipH")
protected Boolean flipH;
@XmlAttribute(name = "flipV")
protected Boolean flipV;
/**
* Gets the value of the off property.
*
* @return
* possible object is
* {@link CTPoint2D }
*
*/
public CTPoint2D getOff() {
return off;
}
/**
* Sets the value of the off property.
*
* @param value
* allowed object is
* {@link CTPoint2D }
*
*/
public void setOff(CTPoint2D value) {
this.off = value;
}
public boolean isSetOff() {
return (this.off!= null);
}
/**
* Gets the value of the ext property.
*
* @return
* possible object is
* {@link CTPositiveSize2D }
*
*/
public CTPositiveSize2D getExt() {
return ext;
}
/**
* Sets the value of the ext property.
*
* @param value
* allowed object is
* {@link CTPositiveSize2D }
*
*/
public void setExt(CTPositiveSize2D value) {
this.ext = value;
}
public boolean isSetExt() {
return (this.ext!= null);
}
/**
* Gets the value of the rot property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public int getRot() {
if (rot == null) {
return 0;
} else {
return rot;
}
}
/**
* Sets the value of the rot property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setRot(int value) {
this.rot = value;
}
public boolean isSetRot() {
return (this.rot!= null);
}
public void unsetRot() {
this.rot = null;
}
/**
* Gets the value of the flipH property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isFlipH() {
if (flipH == null) {
return false;
} else {
return flipH;
}
}
/**
* Sets the value of the flipH property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setFlipH(boolean value) {
this.flipH = value;
}
public boolean isSetFlipH() {
return (this.flipH!= null);
}
public void unsetFlipH() {
this.flipH = null;
}
/**
* Gets the value of the flipV property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public boolean isFlipV() {
if (flipV == null) {
return false;
} else {
return flipV;
}
}
/**
* Sets the value of the flipV property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setFlipV(boolean value) {
this.flipV = value;
}
public boolean isSetFlipV() {
return (this.flipV!= null);
}
public void unsetFlipV() {
this.flipV = null;
}
}

View File

@ -1,116 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for CT_Vector3D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Vector3D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="dx" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;attribute name="dy" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;attribute name="dz" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_Coordinate" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_Vector3D")
public class CTVector3D {
@XmlAttribute(name = "dx", required = true)
protected long dx;
@XmlAttribute(name = "dy", required = true)
protected long dy;
@XmlAttribute(name = "dz", required = true)
protected long dz;
/**
* Gets the value of the dx property.
*
*/
public long getDx() {
return dx;
}
/**
* Sets the value of the dx property.
*
*/
public void setDx(long value) {
this.dx = value;
}
public boolean isSetDx() {
return true;
}
/**
* Gets the value of the dy property.
*
*/
public long getDy() {
return dy;
}
/**
* Sets the value of the dy property.
*
*/
public void setDy(long value) {
this.dy = value;
}
public boolean isSetDy() {
return true;
}
/**
* Gets the value of the dz property.
*
*/
public long getDz() {
return dz;
}
/**
* Sets the value of the dz property.
*
*/
public void setDz(long value) {
this.dz = value;
}
public boolean isSetDz() {
return true;
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,149 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlEnumValue;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for ST_BlackWhiteMode.
*
* <p>The following schema fragment specifies the expected content contained within this class.
* <p>
* <pre>
* &lt;simpleType name="ST_BlackWhiteMode"&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}token"&gt;
* &lt;enumeration value="clr"/&gt;
* &lt;enumeration value="auto"/&gt;
* &lt;enumeration value="gray"/&gt;
* &lt;enumeration value="ltGray"/&gt;
* &lt;enumeration value="invGray"/&gt;
* &lt;enumeration value="grayWhite"/&gt;
* &lt;enumeration value="blackGray"/&gt;
* &lt;enumeration value="blackWhite"/&gt;
* &lt;enumeration value="black"/&gt;
* &lt;enumeration value="white"/&gt;
* &lt;enumeration value="hidden"/&gt;
* &lt;/restriction&gt;
* &lt;/simpleType&gt;
* </pre>
*
*/
@XmlType(name = "ST_BlackWhiteMode")
@XmlEnum
public enum STBlackWhiteMode {
/**
* Color
*
*/
@XmlEnumValue("clr")
CLR("clr"),
/**
* Automatic
*
*/
@XmlEnumValue("auto")
AUTO("auto"),
/**
* Gray
*
*/
@XmlEnumValue("gray")
GRAY("gray"),
/**
* Light Gray
*
*/
@XmlEnumValue("ltGray")
LT_GRAY("ltGray"),
/**
* Inverse Gray
*
*/
@XmlEnumValue("invGray")
INV_GRAY("invGray"),
/**
* Gray and White
*
*/
@XmlEnumValue("grayWhite")
GRAY_WHITE("grayWhite"),
/**
* Black and Gray
*
*/
@XmlEnumValue("blackGray")
BLACK_GRAY("blackGray"),
/**
* Black and White
*
*/
@XmlEnumValue("blackWhite")
BLACK_WHITE("blackWhite"),
/**
* Black
*
*/
@XmlEnumValue("black")
BLACK("black"),
/**
* White
*
*/
@XmlEnumValue("white")
WHITE("white"),
/**
* Hidden
*
*/
@XmlEnumValue("hidden")
HIDDEN("hidden");
private final String value;
STBlackWhiteMode(String v) {
value = v;
}
public String value() {
return value;
}
public static STBlackWhiteMode fromValue(String v) {
for (STBlackWhiteMode c: STBlackWhiteMode.values()) {
if (c.value.equals(v)) {
return c;
}
}
throw new IllegalArgumentException(v);
}
}

View File

@ -1,109 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlEnumValue;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for ST_PathFillMode.
*
* <p>The following schema fragment specifies the expected content contained within this class.
* <p>
* <pre>
* &lt;simpleType name="ST_PathFillMode"&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}token"&gt;
* &lt;enumeration value="none"/&gt;
* &lt;enumeration value="norm"/&gt;
* &lt;enumeration value="lighten"/&gt;
* &lt;enumeration value="lightenLess"/&gt;
* &lt;enumeration value="darken"/&gt;
* &lt;enumeration value="darkenLess"/&gt;
* &lt;/restriction&gt;
* &lt;/simpleType&gt;
* </pre>
*
*/
@XmlType(name = "ST_PathFillMode")
@XmlEnum
public enum STPathFillMode {
/**
* No Path Fill
*
*/
@XmlEnumValue("none")
NONE("none"),
/**
* Normal Path Fill
*
*/
@XmlEnumValue("norm")
NORM("norm"),
/**
* Lighten Path Fill
*
*/
@XmlEnumValue("lighten")
LIGHTEN("lighten"),
/**
* Lighten Path Fill Less
*
*/
@XmlEnumValue("lightenLess")
LIGHTEN_LESS("lightenLess"),
/**
* Darken Path Fill
*
*/
@XmlEnumValue("darken")
DARKEN("darken"),
/**
* Darken Path Fill Less
*
*/
@XmlEnumValue("darkenLess")
DARKEN_LESS("darkenLess");
private final String value;
STPathFillMode(String v) {
value = v;
}
public String value() {
return value;
}
public static STPathFillMode fromValue(String v) {
for (STPathFillMode c: STPathFillMode.values()) {
if (c.value.equals(v)) {
return c;
}
}
throw new IllegalArgumentException(v);
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,133 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlEnumValue;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for ST_RectAlignment.
*
* <p>The following schema fragment specifies the expected content contained within this class.
* <p>
* <pre>
* &lt;simpleType name="ST_RectAlignment"&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}token"&gt;
* &lt;enumeration value="tl"/&gt;
* &lt;enumeration value="t"/&gt;
* &lt;enumeration value="tr"/&gt;
* &lt;enumeration value="l"/&gt;
* &lt;enumeration value="ctr"/&gt;
* &lt;enumeration value="r"/&gt;
* &lt;enumeration value="bl"/&gt;
* &lt;enumeration value="b"/&gt;
* &lt;enumeration value="br"/&gt;
* &lt;/restriction&gt;
* &lt;/simpleType&gt;
* </pre>
*
*/
@XmlType(name = "ST_RectAlignment")
@XmlEnum
public enum STRectAlignment {
/**
* Rectangle Alignment Enum ( Top Left )
*
*/
@XmlEnumValue("tl")
TL("tl"),
/**
* Rectangle Alignment Enum ( Top )
*
*/
@XmlEnumValue("t")
T("t"),
/**
* Rectangle Alignment Enum ( Top Right )
*
*/
@XmlEnumValue("tr")
TR("tr"),
/**
* Rectangle Alignment Enum ( Left )
*
*/
@XmlEnumValue("l")
L("l"),
/**
* Rectangle Alignment Enum ( Center )
*
*/
@XmlEnumValue("ctr")
CTR("ctr"),
/**
* Rectangle Alignment Enum ( Right )
*
*/
@XmlEnumValue("r")
R("r"),
/**
* Rectangle Alignment Enum ( Bottom Left )
*
*/
@XmlEnumValue("bl")
BL("bl"),
/**
* Rectangle Alignment Enum ( Bottom )
*
*/
@XmlEnumValue("b")
B("b"),
/**
* Rectangle Alignment Enum ( Bottom Right )
*
*/
@XmlEnumValue("br")
BR("br");
private final String value;
STRectAlignment(String v) {
value = v;
}
public String value() {
return value;
}
public static STRectAlignment fromValue(String v) {
for (STRectAlignment c: STRectAlignment.values()) {
if (c.value.equals(v)) {
return c;
}
}
throw new IllegalArgumentException(v);
}
}

View File

@ -1,197 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlEnumValue;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for ST_SchemeColorVal.
*
* <p>The following schema fragment specifies the expected content contained within this class.
* <p>
* <pre>
* &lt;simpleType name="ST_SchemeColorVal"&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}token"&gt;
* &lt;enumeration value="bg1"/&gt;
* &lt;enumeration value="tx1"/&gt;
* &lt;enumeration value="bg2"/&gt;
* &lt;enumeration value="tx2"/&gt;
* &lt;enumeration value="accent1"/&gt;
* &lt;enumeration value="accent2"/&gt;
* &lt;enumeration value="accent3"/&gt;
* &lt;enumeration value="accent4"/&gt;
* &lt;enumeration value="accent5"/&gt;
* &lt;enumeration value="accent6"/&gt;
* &lt;enumeration value="hlink"/&gt;
* &lt;enumeration value="folHlink"/&gt;
* &lt;enumeration value="phClr"/&gt;
* &lt;enumeration value="dk1"/&gt;
* &lt;enumeration value="lt1"/&gt;
* &lt;enumeration value="dk2"/&gt;
* &lt;enumeration value="lt2"/&gt;
* &lt;/restriction&gt;
* &lt;/simpleType&gt;
* </pre>
*
*/
@XmlType(name = "ST_SchemeColorVal")
@XmlEnum
public enum STSchemeColorVal {
/**
* Background Color 1
*
*/
@XmlEnumValue("bg1")
BG_1("bg1"),
/**
* Text Color 1
*
*/
@XmlEnumValue("tx1")
TX_1("tx1"),
/**
* Background Color 2
*
*/
@XmlEnumValue("bg2")
BG_2("bg2"),
/**
* Text Color 2
*
*/
@XmlEnumValue("tx2")
TX_2("tx2"),
/**
* Accent Color 1
*
*/
@XmlEnumValue("accent1")
ACCENT_1("accent1"),
/**
* Accent Color 2
*
*/
@XmlEnumValue("accent2")
ACCENT_2("accent2"),
/**
* Accent Color 3
*
*/
@XmlEnumValue("accent3")
ACCENT_3("accent3"),
/**
* Accent Color 4
*
*/
@XmlEnumValue("accent4")
ACCENT_4("accent4"),
/**
* Accent Color 5
*
*/
@XmlEnumValue("accent5")
ACCENT_5("accent5"),
/**
* Accent Color 6
*
*/
@XmlEnumValue("accent6")
ACCENT_6("accent6"),
/**
* Hyperlink Color
*
*/
@XmlEnumValue("hlink")
HLINK("hlink"),
/**
* Followed Hyperlink Color
*
*/
@XmlEnumValue("folHlink")
FOL_HLINK("folHlink"),
/**
* Style Color
*
*/
@XmlEnumValue("phClr")
PH_CLR("phClr"),
/**
* Dark Color 1
*
*/
@XmlEnumValue("dk1")
DK_1("dk1"),
/**
* Light Color 1
*
*/
@XmlEnumValue("lt1")
LT_1("lt1"),
/**
* Dark Color 2
*
*/
@XmlEnumValue("dk2")
DK_2("dk2"),
/**
* Light Color 2
*
*/
@XmlEnumValue("lt2")
LT_2("lt2");
private final String value;
STSchemeColorVal(String v) {
value = v;
}
public String value() {
return value;
}
public static STSchemeColorVal fromValue(String v) {
for (STSchemeColorVal c: STSchemeColorVal.values()) {
if (c.value.equals(v)) {
return c;
}
}
throw new IllegalArgumentException(v);
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,389 +0,0 @@
/* ====================================================================
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.sl.draw.binding;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlEnumValue;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for ST_TextShapeType.
*
* <p>The following schema fragment specifies the expected content contained within this class.
* <p>
* <pre>
* &lt;simpleType name="ST_TextShapeType"&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}token"&gt;
* &lt;enumeration value="textNoShape"/&gt;
* &lt;enumeration value="textPlain"/&gt;
* &lt;enumeration value="textStop"/&gt;
* &lt;enumeration value="textTriangle"/&gt;
* &lt;enumeration value="textTriangleInverted"/&gt;
* &lt;enumeration value="textChevron"/&gt;
* &lt;enumeration value="textChevronInverted"/&gt;
* &lt;enumeration value="textRingInside"/&gt;
* &lt;enumeration value="textRingOutside"/&gt;
* &lt;enumeration value="textArchUp"/&gt;
* &lt;enumeration value="textArchDown"/&gt;
* &lt;enumeration value="textCircle"/&gt;
* &lt;enumeration value="textButton"/&gt;
* &lt;enumeration value="textArchUpPour"/&gt;
* &lt;enumeration value="textArchDownPour"/&gt;
* &lt;enumeration value="textCirclePour"/&gt;
* &lt;enumeration value="textButtonPour"/&gt;
* &lt;enumeration value="textCurveUp"/&gt;
* &lt;enumeration value="textCurveDown"/&gt;
* &lt;enumeration value="textCanUp"/&gt;
* &lt;enumeration value="textCanDown"/&gt;
* &lt;enumeration value="textWave1"/&gt;
* &lt;enumeration value="textWave2"/&gt;
* &lt;enumeration value="textDoubleWave1"/&gt;
* &lt;enumeration value="textWave4"/&gt;
* &lt;enumeration value="textInflate"/&gt;
* &lt;enumeration value="textDeflate"/&gt;
* &lt;enumeration value="textInflateBottom"/&gt;
* &lt;enumeration value="textDeflateBottom"/&gt;
* &lt;enumeration value="textInflateTop"/&gt;
* &lt;enumeration value="textDeflateTop"/&gt;
* &lt;enumeration value="textDeflateInflate"/&gt;
* &lt;enumeration value="textDeflateInflateDeflate"/&gt;
* &lt;enumeration value="textFadeRight"/&gt;
* &lt;enumeration value="textFadeLeft"/&gt;
* &lt;enumeration value="textFadeUp"/&gt;
* &lt;enumeration value="textFadeDown"/&gt;
* &lt;enumeration value="textSlantUp"/&gt;
* &lt;enumeration value="textSlantDown"/&gt;
* &lt;enumeration value="textCascadeUp"/&gt;
* &lt;enumeration value="textCascadeDown"/&gt;
* &lt;/restriction&gt;
* &lt;/simpleType&gt;
* </pre>
*
*/
@XmlType(name = "ST_TextShapeType")
@XmlEnum
public enum STTextShapeType {
/**
* No Text Shape
*
*/
@XmlEnumValue("textNoShape")
TEXT_NO_SHAPE("textNoShape"),
/**
* Plain Text Shape
*
*/
@XmlEnumValue("textPlain")
TEXT_PLAIN("textPlain"),
/**
* Stop Sign Text Shape
*
*/
@XmlEnumValue("textStop")
TEXT_STOP("textStop"),
/**
* Triangle Text Shape
*
*/
@XmlEnumValue("textTriangle")
TEXT_TRIANGLE("textTriangle"),
/**
* Inverted Triangle Text Shape
*
*/
@XmlEnumValue("textTriangleInverted")
TEXT_TRIANGLE_INVERTED("textTriangleInverted"),
/**
* Chevron Text Shape
*
*/
@XmlEnumValue("textChevron")
TEXT_CHEVRON("textChevron"),
/**
* Inverted Chevron Text Shape
*
*/
@XmlEnumValue("textChevronInverted")
TEXT_CHEVRON_INVERTED("textChevronInverted"),
/**
* Inside Ring Text Shape
*
*/
@XmlEnumValue("textRingInside")
TEXT_RING_INSIDE("textRingInside"),
/**
* Outside Ring Text Shape
*
*/
@XmlEnumValue("textRingOutside")
TEXT_RING_OUTSIDE("textRingOutside"),
/**
* Upward Arch Text Shape
*
*/
@XmlEnumValue("textArchUp")
TEXT_ARCH_UP("textArchUp"),
/**
* Downward Arch Text Shape
*
*/
@XmlEnumValue("textArchDown")
TEXT_ARCH_DOWN("textArchDown"),
/**
* Circle Text Shape
*
*/
@XmlEnumValue("textCircle")
TEXT_CIRCLE("textCircle"),
/**
* Button Text Shape
*
*/
@XmlEnumValue("textButton")
TEXT_BUTTON("textButton"),
/**
* Upward Pour Arch Text Shape
*
*/
@XmlEnumValue("textArchUpPour")
TEXT_ARCH_UP_POUR("textArchUpPour"),
/**
* Downward Pour Arch Text Shape
*
*/
@XmlEnumValue("textArchDownPour")
TEXT_ARCH_DOWN_POUR("textArchDownPour"),
/**
* Circle Pour Text Shape
*
*/
@XmlEnumValue("textCirclePour")
TEXT_CIRCLE_POUR("textCirclePour"),
/**
* Button Pour Text Shape
*
*/
@XmlEnumValue("textButtonPour")
TEXT_BUTTON_POUR("textButtonPour"),
/**
* Upward Curve Text Shape
*
*/
@XmlEnumValue("textCurveUp")
TEXT_CURVE_UP("textCurveUp"),
/**
* Downward Curve Text Shape
*
*/
@XmlEnumValue("textCurveDown")
TEXT_CURVE_DOWN("textCurveDown"),
/**
* Upward Can Text Shape
*
*/
@XmlEnumValue("textCanUp")
TEXT_CAN_UP("textCanUp"),
/**
* Downward Can Text Shape
*
*/
@XmlEnumValue("textCanDown")
TEXT_CAN_DOWN("textCanDown"),
/**
* Wave 1 Text Shape
*
*/
@XmlEnumValue("textWave1")
TEXT_WAVE_1("textWave1"),
/**
* Wave 2 Text Shape
*
*/
@XmlEnumValue("textWave2")
TEXT_WAVE_2("textWave2"),
/**
* Double Wave 1 Text Shape
*
*/
@XmlEnumValue("textDoubleWave1")
TEXT_DOUBLE_WAVE_1("textDoubleWave1"),
/**
* Wave 4 Text Shape
*
*/
@XmlEnumValue("textWave4")
TEXT_WAVE_4("textWave4"),
/**
* Inflate Text Shape
*
*/
@XmlEnumValue("textInflate")
TEXT_INFLATE("textInflate"),
/**
* Deflate Text Shape
*
*/
@XmlEnumValue("textDeflate")
TEXT_DEFLATE("textDeflate"),
/**
* Bottom Inflate Text Shape
*
*/
@XmlEnumValue("textInflateBottom")
TEXT_INFLATE_BOTTOM("textInflateBottom"),
/**
* Bottom Deflate Text Shape
*
*/
@XmlEnumValue("textDeflateBottom")
TEXT_DEFLATE_BOTTOM("textDeflateBottom"),
/**
* Top Inflate Text Shape
*
*/
@XmlEnumValue("textInflateTop")
TEXT_INFLATE_TOP("textInflateTop"),
/**
* Top Deflate Text Shape
*
*/
@XmlEnumValue("textDeflateTop")
TEXT_DEFLATE_TOP("textDeflateTop"),
/**
* Deflate-Inflate Text Shape
*
*/
@XmlEnumValue("textDeflateInflate")
TEXT_DEFLATE_INFLATE("textDeflateInflate"),
/**
* Deflate-Inflate-Deflate Text Shape
*
*/
@XmlEnumValue("textDeflateInflateDeflate")
TEXT_DEFLATE_INFLATE_DEFLATE("textDeflateInflateDeflate"),
/**
* Right Fade Text Shape
*
*/
@XmlEnumValue("textFadeRight")
TEXT_FADE_RIGHT("textFadeRight"),
/**
* Left Fade Text Shape
*
*/
@XmlEnumValue("textFadeLeft")
TEXT_FADE_LEFT("textFadeLeft"),
/**
* Upward Fade Text Shape
*
*/
@XmlEnumValue("textFadeUp")
TEXT_FADE_UP("textFadeUp"),
/**
* Downward Fade Text Shape
*
*/
@XmlEnumValue("textFadeDown")
TEXT_FADE_DOWN("textFadeDown"),
/**
* Upward Slant Text Shape
*
*/
@XmlEnumValue("textSlantUp")
TEXT_SLANT_UP("textSlantUp"),
/**
* Downward Slant Text Shape
*
*/
@XmlEnumValue("textSlantDown")
TEXT_SLANT_DOWN("textSlantDown"),
/**
* Upward Cascade Text Shape
*
*/
@XmlEnumValue("textCascadeUp")
TEXT_CASCADE_UP("textCascadeUp"),
/**
* Downward Cascade Text Shape
*
*/
@XmlEnumValue("textCascadeDown")
TEXT_CASCADE_DOWN("textCascadeDown");
private final String value;
STTextShapeType(String v) {
value = v;
}
public String value() {
return value;
}
public static STTextShapeType fromValue(String v) {
for (STTextShapeType c: STTextShapeType.values()) {
if (c.value.equals(v)) {
return c;
}
}
throw new IllegalArgumentException(v);
}
}

View File

@ -1,18 +0,0 @@
/* ====================================================================
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.
==================================================================== */
@javax.xml.bind.annotation.XmlSchema(namespace = "http://schemas.openxmlformats.org/drawingml/2006/main", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package org.apache.poi.sl.draw.binding;

View File

@ -0,0 +1,23 @@
/*
* ====================================================================
* 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.sl.draw.geom;
public interface AdjustHandle {
}

View File

@ -15,13 +15,9 @@
limitations under the License. limitations under the License.
==================================================================== */ ==================================================================== */
package org.apache.poi.sl.draw.binding; package org.apache.poi.sl.draw.geom;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
import java.util.Objects;
/** /**
* <p>Java class for CT_AdjPoint2D complex type. * <p>Java class for CT_AdjPoint2D complex type.
@ -41,14 +37,15 @@ import javax.xml.bind.annotation.XmlType;
* *
* *
*/ */
@XmlAccessorType(XmlAccessType.FIELD) // @XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_AdjPoint2D") // @XmlType(name = "CT_AdjPoint2D")
public class CTAdjPoint2D { public class AdjustPoint {
// @XmlAttribute(name = "x", required = true)
private String x;
// @XmlAttribute(name = "y", required = true)
private String y;
@XmlAttribute(name = "x", required = true)
protected String x;
@XmlAttribute(name = "y", required = true)
protected String y;
/** /**
* Gets the value of the x property. * Gets the value of the x property.
@ -106,4 +103,17 @@ public class CTAdjPoint2D {
return (this.y!= null); return (this.y!= null);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof AdjustPoint)) return false;
AdjustPoint that = (AdjustPoint) o;
return Objects.equals(x, that.x) &&
Objects.equals(y, that.y);
}
@Override
public int hashCode() {
return Objects.hash(x, y);
}
} }

View File

@ -19,17 +19,11 @@
package org.apache.poi.sl.draw.geom; package org.apache.poi.sl.draw.geom;
import org.apache.poi.sl.draw.binding.CTGeomGuide;
/** /**
* Represents a shape adjust values (see section 20.1.9.5 in the spec) * Represents a shape adjust values (see section 20.1.9.5 in the spec)
*/ */
public class AdjustValue extends Guide { public class AdjustValue extends Guide {
public AdjustValue(CTGeomGuide gd) {
super(gd.getName(), gd.getFmla());
}
@Override @Override
public double evaluate(Context ctx){ public double evaluate(Context ctx){
String name = getName(); String name = getName();

View File

@ -24,28 +24,64 @@ import static org.apache.poi.sl.draw.geom.Formula.OOXML_DEGREE;
import java.awt.geom.Arc2D; import java.awt.geom.Arc2D;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.awt.geom.Point2D; import java.awt.geom.Point2D;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTPath2DArcTo;
import org.apache.poi.util.Internal; import org.apache.poi.util.Internal;
/** /**
* ArcTo command within a shape path in DrawingML: * ArcTo command within a shape path in DrawingML:
* {@code &lt;arcTo wR="wr" hR="hr" stAng="stAng" swAng="swAng"/&gt;}<p> * {@code &lt;arcTo wR="wr" hR="hr" stAng="stAng" swAng="swAng"/&gt;}
* * <p>
* Where {@code wr} and {@code wh} are the height and width radiuses * Where {@code wr} and {@code wh} are the height and width radii
* of the supposed circle being used to draw the arc. This gives the circle * of the supposed circle being used to draw the arc. This gives the circle
* a total height of (2 * hR) and a total width of (2 * wR) * a total height of (2 * hR) and a total width of (2 * wR)
* * <p>
* stAng is the {@code start} angle and {@code swAng} is the swing angle * stAng is the {@code start} angle and {@code swAng} is the swing angle
* <p>
* Java class for CT_Path2DArcTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DArcTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="wR" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="hR" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjCoordinate" /&gt;
* &lt;attribute name="stAng" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjAngle" /&gt;
* &lt;attribute name="swAng" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_AdjAngle" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*/ */
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2DArcTo")
public class ArcToCommand implements PathCommand { public class ArcToCommand implements PathCommand {
private String hr, wr, stAng, swAng;
ArcToCommand(CTPath2DArcTo arc){ // @XmlAttribute(name = "wR", required = true)
hr = arc.getHR(); private String wr;
wr = arc.getWR(); // @XmlAttribute(name = "hR", required = true)
stAng = arc.getStAng(); private String hr;
swAng = arc.getSwAng(); // @XmlAttribute(name = "stAng", required = true)
private String stAng;
// @XmlAttribute(name = "swAng", required = true)
private String swAng;
public void setHR(String hr) {
this.hr = hr;
}
public void setWR(String wr) {
this.wr = wr;
}
public void setStAng(String stAng) {
this.stAng = stAng;
}
public void setSwAng(String swAng) {
this.swAng = swAng;
} }
@Override @Override
@ -141,4 +177,21 @@ public class ArcToCommand implements PathCommand {
awtAngle = Math.toDegrees(Math.atan2(Math.tan(Math.toRadians(awtAngle2)), aspect)) + awtAngle3; awtAngle = Math.toDegrees(Math.atan2(Math.tan(Math.toRadians(awtAngle2)), aspect)) + awtAngle3;
return awtAngle; return awtAngle;
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof ArcToCommand)) return false;
ArcToCommand that = (ArcToCommand) o;
return Objects.equals(wr, that.wr) &&
Objects.equals(hr, that.hr) &&
Objects.equals(stAng, that.stAng) &&
Objects.equals(swAng, that.swAng);
}
@Override
public int hashCode() {
return Objects.hash(wr, hr, stAng, swAng);
}
} }

View File

@ -21,13 +21,39 @@ package org.apache.poi.sl.draw.geom;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
/**
* <p>Java class for CT_Path2DClose complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DClose"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2DClose")
public class ClosePathCommand implements PathCommand { public class ClosePathCommand implements PathCommand {
ClosePathCommand(){
}
@Override @Override
public void execute(Path2D.Double path, Context ctx){ public void execute(Path2D.Double path, Context ctx){
path.closePath(); path.closePath();
} }
@Override
public int hashCode() {
return 0xC105E;
}
@Override
public boolean equals(Object obj) {
return (obj instanceof ClosePathCommand);
}
} }

View File

@ -15,14 +15,9 @@
limitations under the License. limitations under the License.
==================================================================== */ ==================================================================== */
package org.apache.poi.sl.draw.binding; package org.apache.poi.sl.draw.geom;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import java.util.Objects;
/** /**
* <p>Java class for CT_ConnectionSite complex type. * <p>Java class for CT_ConnectionSite complex type.
@ -44,43 +39,40 @@ import javax.xml.bind.annotation.XmlType;
* *
* *
*/ */
@XmlAccessorType(XmlAccessType.FIELD) // @XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_ConnectionSite", propOrder = { // @XmlType(name = "CT_ConnectionSite", propOrder = {"pos"})
"pos" public final class ConnectionSite {
})
public class CTConnectionSite {
@XmlElement(required = true) // @XmlElement(required = true)
protected CTAdjPoint2D pos; private final AdjustPoint pos = new AdjustPoint();
@XmlAttribute(name = "ang", required = true) // @XmlAttribute(name = "ang", required = true)
protected String ang; private String ang;
/** /**
* Gets the value of the pos property. * Gets the value of the pos property.
* *
* @return * @return
* possible object is * possible object is
* {@link CTAdjPoint2D } * {@link AdjustPoint }
* *
*/ */
public CTAdjPoint2D getPos() { public AdjustPoint getPos() {
return pos; return pos;
} }
/** /**
* Sets the value of the pos property. * Sets the value of the pos property.
* *
* @param value * @param pos
* allowed object is * allowed object is
* {@link CTAdjPoint2D } * {@link AdjustPoint }
* *
*/ */
public void setPos(CTAdjPoint2D value) { public void setPos(AdjustPoint pos) {
this.pos = value; if (pos != null) {
} this.pos.setX(pos.getX());
this.pos.setY(pos.getY());
public boolean isSetPos() { }
return (this.pos!= null);
} }
/** /**
@ -111,4 +103,17 @@ public class CTConnectionSite {
return (this.ang!= null); return (this.ang!= null);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof ConnectionSite)) return false;
ConnectionSite that = (ConnectionSite) o;
return Objects.equals(pos, that.pos) &&
Objects.equals(ang, that.ang);
}
@Override
public int hashCode() {
return Objects.hash(pos, ang);
}
} }

View File

@ -20,29 +20,82 @@
package org.apache.poi.sl.draw.geom; package org.apache.poi.sl.draw.geom;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTAdjPoint2D; /**
* <p>Java class for CT_Path2DCubicBezierTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DCubicBezierTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D" maxOccurs="3" minOccurs="3"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2DCubicBezierTo", propOrder = {"pt"})
public final class CurveToCommand implements PathCommand {
public class CurveToCommand implements PathCommand { // @XmlElement(required = true)
private String arg1, arg2, arg3, arg4, arg5, arg6; private final AdjustPoint pt1 = new AdjustPoint();
// @XmlElement(required = true)
private final AdjustPoint pt2 = new AdjustPoint();
// @XmlElement(required = true)
private final AdjustPoint pt3 = new AdjustPoint();
CurveToCommand(CTAdjPoint2D pt1, CTAdjPoint2D pt2, CTAdjPoint2D pt3){ public void setPt1(AdjustPoint pt1) {
arg1 = pt1.getX(); if (pt1 != null) {
arg2 = pt1.getY(); this.pt1.setX(pt1.getX());
arg3 = pt2.getX(); this.pt1.setY(pt1.getY());
arg4 = pt2.getY(); }
arg5 = pt3.getX(); }
arg6 = pt3.getY();
public void setPt2(AdjustPoint pt2) {
if (pt2 != null) {
this.pt2.setX(pt2.getX());
this.pt2.setY(pt2.getY());
}
}
public void setPt3(AdjustPoint pt3) {
if (pt3 != null) {
this.pt3.setX(pt3.getX());
this.pt3.setY(pt3.getY());
}
} }
@Override @Override
public void execute(Path2D.Double path, Context ctx){ public void execute(Path2D.Double path, Context ctx){
double x1 = ctx.getValue(arg1); double x1 = ctx.getValue(pt1.getX());
double y1 = ctx.getValue(arg2); double y1 = ctx.getValue(pt1.getY());
double x2 = ctx.getValue(arg3); double x2 = ctx.getValue(pt2.getX());
double y2 = ctx.getValue(arg4); double y2 = ctx.getValue(pt2.getY());
double x3 = ctx.getValue(arg5); double x3 = ctx.getValue(pt3.getX());
double y3 = ctx.getValue(arg6); double y3 = ctx.getValue(pt3.getY());
path.curveTo(x1, y1, x2, y2, x3, y3); path.curveTo(x1, y1, x2, y2, x3, y3);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof CurveToCommand)) return false;
CurveToCommand that = (CurveToCommand) o;
return Objects.equals(pt1, that.pt1) &&
Objects.equals(pt2, that.pt2) &&
Objects.equals(pt3, that.pt3);
}
@Override
public int hashCode() {
return Objects.hash(pt1, pt2, pt3);
}
} }

View File

@ -22,56 +22,89 @@ package org.apache.poi.sl.draw.geom;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTCustomGeometry2D;
import org.apache.poi.sl.draw.binding.CTGeomGuide;
import org.apache.poi.sl.draw.binding.CTGeomGuideList;
import org.apache.poi.sl.draw.binding.CTGeomRect;
import org.apache.poi.sl.draw.binding.CTPath2D;
import org.apache.poi.sl.draw.binding.CTPath2DList;
/** /**
* Definition of a custom geometric shape * Definition of a custom geometric shape
*
*
* <p>Java class for CT_CustomGeometry2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_CustomGeometry2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="avLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuideList" minOccurs="0"/&gt;
* &lt;element name="gdLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomGuideList" minOccurs="0"/&gt;
* &lt;element name="ahLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjustHandleList" minOccurs="0"/&gt;
* &lt;element name="cxnLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_ConnectionSiteList" minOccurs="0"/&gt;
* &lt;element name="rect" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_GeomRect" minOccurs="0"/&gt;
* &lt;element name="pathLst" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DList"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*/ */
public class CustomGeometry implements Iterable<Path>{ public final class CustomGeometry implements Iterable<Path>{
final List<Guide> adjusts = new ArrayList<>(); final List<AdjustValue> adjusts = new ArrayList<>();
final List<Guide> guides = new ArrayList<>(); final List<Guide> guides = new ArrayList<>();
final List<Path> paths = new ArrayList<>(); final List<Path> paths = new ArrayList<>();
final List<AdjustHandle> handles = new ArrayList<>();
final List<ConnectionSite> connections = new ArrayList<>();
Path textBounds; Path textBounds;
public CustomGeometry(CTCustomGeometry2D geom) { public void addAdjustGuide(AdjustValue guide) {
CTGeomGuideList avLst = geom.getAvLst(); adjusts.add(guide);
if(avLst != null) {
for(CTGeomGuide gd : avLst.getGd()){
adjusts.add(new AdjustValue(gd));
}
}
CTGeomGuideList gdLst = geom.getGdLst();
if(gdLst != null) {
for(CTGeomGuide gd : gdLst.getGd()){
guides.add(new Guide(gd));
}
}
CTPath2DList pathLst = geom.getPathLst();
if(pathLst != null) {
for(CTPath2D spPath : pathLst.getPath()){
paths.add(new Path(spPath));
}
}
CTGeomRect rect = geom.getRect();
if(rect != null) {
textBounds = new Path();
textBounds.addCommand(new MoveToCommand(rect.getL(), rect.getT()));
textBounds.addCommand(new LineToCommand(rect.getR(), rect.getT()));
textBounds.addCommand(new LineToCommand(rect.getR(), rect.getB()));
textBounds.addCommand(new LineToCommand(rect.getL(), rect.getB()));
textBounds.addCommand(new ClosePathCommand());
}
} }
public void addGeomGuide(Guide guide) {
guides.add(guide);
}
public void addAdjustHandle(AdjustHandle handle) {
handles.add(handle);
}
public void addConnectionSite(ConnectionSite connection) {
connections.add(connection);
}
public void addPath(Path path) {
paths.add(path);
}
public void setTextBounds(String left, String top, String right, String bottom) {
textBounds = new Path();
textBounds.addCommand(moveTo(left,top));
textBounds.addCommand(lineTo(right, top));
textBounds.addCommand(lineTo(right, bottom));
textBounds.addCommand(lineTo(left, bottom));
textBounds.addCommand(new ClosePathCommand());
}
private static MoveToCommand moveTo(String x, String y) {
AdjustPoint pt = new AdjustPoint();
pt.setX(x);
pt.setY(y);
MoveToCommand cmd = new MoveToCommand();
cmd.setPt(pt);
return cmd;
}
private static LineToCommand lineTo(String x, String y) {
AdjustPoint pt = new AdjustPoint();
pt.setX(x);
pt.setY(y);
LineToCommand cmd = new LineToCommand();
cmd.setPt(pt);
return cmd;
}
@Override @Override
public Iterator<Path> iterator() { public Iterator<Path> iterator() {
return paths.iterator(); return paths.iterator();
@ -80,4 +113,23 @@ public class CustomGeometry implements Iterable<Path>{
public Path getTextBounds(){ public Path getTextBounds(){
return textBounds; return textBounds;
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof CustomGeometry)) return false;
CustomGeometry that = (CustomGeometry) o;
return Objects.equals(adjusts, that.adjusts) &&
Objects.equals(guides, that.guides) &&
Objects.equals(handles, that.handles) &&
Objects.equals(connections, that.connections) &&
Objects.equals(textBounds, that.textBounds) &&
Objects.equals(paths, that.paths);
}
@Override
public int hashCode() {
return Objects.hash(adjusts, guides, handles, connections, textBounds, paths);
}
} }

View File

@ -21,13 +21,29 @@ package org.apache.poi.sl.draw.geom;
import static java.lang.Math.*; import static java.lang.Math.*;
import java.util.Objects;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import org.apache.poi.sl.draw.binding.CTGeomGuide;
/** /**
* A simple pattern parser of shape guide formulas in DrawingML * <p>Java class for CT_GeomGuide complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_GeomGuide"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;attribute name="name" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_GeomGuideName" /&gt;
* &lt;attribute name="fmla" use="required" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_GeomGuideFormula" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/ */
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_GeomGuide")
public class Guide implements Formula { public class Guide implements Formula {
enum Op { enum Op {
muldiv,addsub,adddiv,ifelse,val,abs,sqrt,max,min,at2,sin,cos,tan,cat2,sat2,pin,mod muldiv,addsub,adddiv,ifelse,val,abs,sqrt,max,min,at2,sin,cos,tan,cat2,sat2,pin,mod
@ -35,20 +51,30 @@ public class Guide implements Formula {
private static final Pattern WHITESPACE = Pattern.compile("\\s+"); private static final Pattern WHITESPACE = Pattern.compile("\\s+");
@SuppressWarnings({"FieldCanBeLocal", "unused"}) // @XmlAttribute(name = "name", required = true)
private final String name, fmla; // @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
private final Op op; private String name;
private final String[] operands; // @XmlAttribute(name = "fmla", required = true)
private String fmla;
private Op op;
private String[] operands;
public Guide(CTGeomGuide gd) { public String getName(){
this(gd.getName(), gd.getFmla()); return name;
} }
public Guide(String nm, String fm){ public void setName(String name) {
name = nm; this.name = name;
fmla = fm; }
operands = WHITESPACE.split(fm);
public String getFmla() {
return fmla;
}
public void setFmla(String fmla) {
this.fmla = fmla;
operands = WHITESPACE.split(fmla);
switch (operands[0]) { switch (operands[0]) {
case "*/": op = Op.muldiv; break; case "*/": op = Op.muldiv; break;
case "+-": op = Op.addsub; break; case "+-": op = Op.addsub; break;
@ -58,10 +84,6 @@ public class Guide implements Formula {
} }
} }
public String getName(){
return name;
}
@Override @Override
public double evaluate(Context ctx) { public double evaluate(Context ctx) {
double x = (operands.length > 1) ? ctx.getValue(operands[1]) : 0; double x = (operands.length > 1) ? ctx.getValue(operands[1]) : 0;
@ -126,4 +148,18 @@ public class Guide implements Formula {
return 0; return 0;
} }
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Guide guide = (Guide) o;
return Objects.equals(name, guide.name) &&
Objects.equals(fmla, guide.fmla);
}
@Override
public int hashCode() {
return Objects.hash(name, fmla);
}
} }

View File

@ -20,26 +20,63 @@
package org.apache.poi.sl.draw.geom; package org.apache.poi.sl.draw.geom;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTAdjPoint2D; /**
* <p>Java class for CT_Path2DLineTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DLineTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2DLineTo", propOrder = {"pt"})
public final class LineToCommand implements PathCommand {
public class LineToCommand implements PathCommand { // @XmlElement(required = true)
private String arg1, arg2; private final AdjustPoint pt = new AdjustPoint();
LineToCommand(CTAdjPoint2D pt){ public AdjustPoint getPt() {
arg1 = pt.getX(); return pt;
arg2 = pt.getY();
} }
LineToCommand(String s1, String s2){ public void setPt(AdjustPoint pt) {
arg1 = s1; if (pt != null) {
arg2 = s2; this.pt.setX(pt.getX());
this.pt.setY(pt.getY());
}
} }
@Override @Override
public void execute(Path2D.Double path, Context ctx){ public void execute(Path2D.Double path, Context ctx){
double x = ctx.getValue(arg1); double x = ctx.getValue(pt.getX());
double y = ctx.getValue(arg2); double y = ctx.getValue(pt.getY());
path.lineTo(x, y); path.lineTo(x, y);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof LineToCommand)) return false;
LineToCommand that = (LineToCommand) o;
return Objects.equals(pt, that.pt);
}
@Override
public int hashCode() {
return Objects.hash(pt);
}
} }

View File

@ -20,26 +20,63 @@
package org.apache.poi.sl.draw.geom; package org.apache.poi.sl.draw.geom;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTAdjPoint2D; /**
* <p>Java class for CT_Path2DMoveTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DMoveTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2DMoveTo", propOrder = {"pt"})
public final class MoveToCommand implements PathCommand {
public class MoveToCommand implements PathCommand { // @XmlElement(required = true)
private String arg1, arg2; private final AdjustPoint pt = new AdjustPoint();
MoveToCommand(CTAdjPoint2D pt){ public AdjustPoint getPt() {
arg1 = pt.getX(); return pt;
arg2 = pt.getY();
} }
MoveToCommand(String s1, String s2){ public void setPt(AdjustPoint pt) {
arg1 = s1; if (pt != null) {
arg2 = s2; this.pt.setX(pt.getX());
this.pt.setY(pt.getY());
}
} }
@Override @Override
public void execute(Path2D.Double path, Context ctx){ public void execute(Path2D.Double path, Context ctx){
double x = ctx.getValue(arg1); double x = ctx.getValue(pt.getX());
double y = ctx.getValue(arg2); double y = ctx.getValue(pt.getY());
path.moveTo(x, y); path.moveTo(x, y);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof MoveToCommand)) return false;
MoveToCommand that = (MoveToCommand) o;
return Objects.equals(pt, that.pt);
}
@Override
public int hashCode() {
return Objects.hash(pt);
}
} }

View File

@ -22,84 +22,65 @@ package org.apache.poi.sl.draw.geom;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTAdjPoint2D;
import org.apache.poi.sl.draw.binding.CTPath2D;
import org.apache.poi.sl.draw.binding.CTPath2DArcTo;
import org.apache.poi.sl.draw.binding.CTPath2DClose;
import org.apache.poi.sl.draw.binding.CTPath2DCubicBezierTo;
import org.apache.poi.sl.draw.binding.CTPath2DLineTo;
import org.apache.poi.sl.draw.binding.CTPath2DMoveTo;
import org.apache.poi.sl.draw.binding.CTPath2DQuadBezierTo;
import org.apache.poi.sl.usermodel.PaintStyle.PaintModifier; import org.apache.poi.sl.usermodel.PaintStyle.PaintModifier;
/** /**
* Specifies a creation path consisting of a series of moves, lines and curves * Specifies a creation path consisting of a series of moves, lines and curves
* that when combined forms a geometric shape * that when combined forms a geometric shape
*
* <p>Java class for CT_Path2D complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2D"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;choice maxOccurs="unbounded" minOccurs="0"&gt;
* &lt;element name="close" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DClose"/&gt;
* &lt;element name="moveTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DMoveTo"/&gt;
* &lt;element name="lnTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DLineTo"/&gt;
* &lt;element name="arcTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DArcTo"/&gt;
* &lt;element name="quadBezTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DQuadBezierTo"/&gt;
* &lt;element name="cubicBezTo" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_Path2DCubicBezierTo"/&gt;
* &lt;/choice&gt;
* &lt;attribute name="w" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveCoordinate" default="0" /&gt;
* &lt;attribute name="h" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PositiveCoordinate" default="0" /&gt;
* &lt;attribute name="fill" type="{http://schemas.openxmlformats.org/drawingml/2006/main}ST_PathFillMode" default="norm" /&gt;
* &lt;attribute name="stroke" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" /&gt;
* &lt;attribute name="extrusionOk" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" /&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*/ */
public class Path { // @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2D", propOrder = {"closeOrMoveToOrLnTo"})
public final class Path {
private final List<PathCommand> commands; // @XmlElements({
PaintModifier _fill; // @XmlElement(name = "close", type = CTPath2DClose.class),
boolean _stroke; // @XmlElement(name = "moveTo", type = CTPath2DMoveTo.class),
long _w, _h; // @XmlElement(name = "lnTo", type = CTPath2DLineTo.class),
// @XmlElement(name = "arcTo", type = CTPath2DArcTo.class),
// @XmlElement(name = "quadBezTo", type = CTPath2DQuadBezierTo.class),
// @XmlElement(name = "cubicBezTo", type = CTPath2DCubicBezierTo.class)
// })
private final List<PathCommand> commands = new ArrayList<>();
// @XmlAttribute(name = "fill")
private PaintModifier fill = PaintModifier.NORM;
// @XmlAttribute(name = "stroke")
private boolean stroke = true;
// @XmlAttribute(name = "extrusionOk")
private boolean extrusionOk = false;
// @XmlAttribute(name = "w")
private long w = -1;
// @XmlAttribute(name = "h")
private long h = -1;
public Path(){
this(true, true);
}
public Path(boolean fill, boolean stroke){
commands = new ArrayList<>();
_w = -1;
_h = -1;
_fill = (fill) ? PaintModifier.NORM : PaintModifier.NONE;
_stroke = stroke;
}
public Path(CTPath2D spPath){
switch (spPath.getFill()) {
case NONE: _fill = PaintModifier.NONE; break;
case DARKEN: _fill = PaintModifier.DARKEN; break;
case DARKEN_LESS: _fill = PaintModifier.DARKEN_LESS; break;
case LIGHTEN: _fill = PaintModifier.LIGHTEN; break;
case LIGHTEN_LESS: _fill = PaintModifier.LIGHTEN_LESS; break;
default:
case NORM: _fill = PaintModifier.NORM; break;
}
_stroke = spPath.isStroke();
_w = spPath.isSetW() ? spPath.getW() : -1;
_h = spPath.isSetH() ? spPath.getH() : -1;
commands = new ArrayList<>();
for(Object ch : spPath.getCloseOrMoveToOrLnTo()){
if(ch instanceof CTPath2DMoveTo){
CTAdjPoint2D pt = ((CTPath2DMoveTo)ch).getPt();
commands.add(new MoveToCommand(pt));
} else if (ch instanceof CTPath2DLineTo){
CTAdjPoint2D pt = ((CTPath2DLineTo)ch).getPt();
commands.add(new LineToCommand(pt));
} else if (ch instanceof CTPath2DArcTo){
CTPath2DArcTo arc = (CTPath2DArcTo)ch;
commands.add(new ArcToCommand(arc));
} else if (ch instanceof CTPath2DQuadBezierTo){
CTPath2DQuadBezierTo bez = ((CTPath2DQuadBezierTo)ch);
CTAdjPoint2D pt1 = bez.getPt().get(0);
CTAdjPoint2D pt2 = bez.getPt().get(1);
commands.add(new QuadToCommand(pt1, pt2));
} else if (ch instanceof CTPath2DCubicBezierTo){
CTPath2DCubicBezierTo bez = ((CTPath2DCubicBezierTo)ch);
CTAdjPoint2D pt1 = bez.getPt().get(0);
CTAdjPoint2D pt2 = bez.getPt().get(1);
CTAdjPoint2D pt3 = bez.getPt().get(2);
commands.add(new CurveToCommand(pt1, pt2, pt3));
} else if (ch instanceof CTPath2DClose){
commands.add(new ClosePathCommand());
} else {
throw new IllegalStateException("Unsupported path segment: " + ch);
}
}
}
public void addCommand(PathCommand cmd){ public void addCommand(PathCommand cmd){
commands.add(cmd); commands.add(cmd);
@ -117,22 +98,65 @@ public class Path {
} }
public boolean isStroked(){ public boolean isStroked(){
return _stroke; return stroke;
}
public void setStroke(boolean stroke) {
this.stroke = stroke;
} }
public boolean isFilled(){ public boolean isFilled(){
return _fill != PaintModifier.NONE; return fill != PaintModifier.NONE;
} }
public PaintModifier getFill() { public PaintModifier getFill() {
return _fill; return fill;
}
public void setFill(PaintModifier fill) {
this.fill = fill;
} }
public long getW(){ public long getW(){
return _w; return w;
}
public void setW(long w) {
this.w = w;
} }
public long getH(){ public long getH(){
return _h; return h;
}
public void setH(long h) {
this.h = h;
}
public boolean isExtrusionOk() {
return extrusionOk;
}
public void setExtrusionOk(boolean extrusionOk) {
this.extrusionOk = extrusionOk;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof Path)) return false;
Path ctPath2D = (Path) o;
return Objects.equals(commands, ctPath2D.commands) &&
Objects.equals(w, ctPath2D.w) &&
Objects.equals(h, ctPath2D.h) &&
fill == ctPath2D.fill &&
Objects.equals(stroke, ctPath2D.stroke) &&
Objects.equals(extrusionOk, ctPath2D.extrusionOk);
}
@Override
public int hashCode() {
return Objects.hash(commands, w, h, fill.ordinal(), stroke, extrusionOk);
} }
} }

View File

@ -15,16 +15,9 @@
limitations under the License. limitations under the License.
==================================================================== */ ==================================================================== */
package org.apache.poi.sl.draw.binding; package org.apache.poi.sl.draw.geom;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import java.util.Objects;
/** /**
* <p>Java class for CT_PolarAdjustHandle complex type. * <p>Java class for CT_PolarAdjustHandle complex type.
@ -51,38 +44,36 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
* *
* *
*/ */
@XmlAccessorType(XmlAccessType.FIELD) // @XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_PolarAdjustHandle", propOrder = { // @XmlType(name = "CT_PolarAdjustHandle", propOrder = {"pos"})
"pos" public final class PolarAdjustHandle implements AdjustHandle {
})
public class CTPolarAdjustHandle {
@XmlElement(required = true) // @XmlElement(required = true)
protected CTAdjPoint2D pos; private AdjustPoint pos;
@XmlAttribute(name = "gdRefR") // @XmlAttribute(name = "gdRefR")
@XmlJavaTypeAdapter(CollapsedStringAdapter.class) // @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String gdRefR; private String gdRefR;
@XmlAttribute(name = "minR") // @XmlAttribute(name = "minR")
protected String minR; private String minR;
@XmlAttribute(name = "maxR") // @XmlAttribute(name = "maxR")
protected String maxR; private String maxR;
@XmlAttribute(name = "gdRefAng") // @XmlAttribute(name = "gdRefAng")
@XmlJavaTypeAdapter(CollapsedStringAdapter.class) // @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String gdRefAng; private String gdRefAng;
@XmlAttribute(name = "minAng") // @XmlAttribute(name = "minAng")
protected String minAng; private String minAng;
@XmlAttribute(name = "maxAng") // @XmlAttribute(name = "maxAng")
protected String maxAng; private String maxAng;
/** /**
* Gets the value of the pos property. * Gets the value of the pos property.
* *
* @return * @return
* possible object is * possible object is
* {@link CTAdjPoint2D } * {@link AdjustPoint }
* *
*/ */
public CTAdjPoint2D getPos() { public AdjustPoint getPos() {
return pos; return pos;
} }
@ -91,10 +82,10 @@ public class CTPolarAdjustHandle {
* *
* @param value * @param value
* allowed object is * allowed object is
* {@link CTAdjPoint2D } * {@link AdjustPoint }
* *
*/ */
public void setPos(CTAdjPoint2D value) { public void setPos(AdjustPoint value) {
this.pos = value; this.pos = value;
} }
@ -270,4 +261,22 @@ public class CTPolarAdjustHandle {
return (this.maxAng!= null); return (this.maxAng!= null);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof PolarAdjustHandle)) return false;
PolarAdjustHandle that = (PolarAdjustHandle) o;
return Objects.equals(pos, that.pos) &&
Objects.equals(gdRefR, that.gdRefR) &&
Objects.equals(minR, that.minR) &&
Objects.equals(maxR, that.maxR) &&
Objects.equals(gdRefAng, that.gdRefAng) &&
Objects.equals(minAng, that.minAng) &&
Objects.equals(maxAng, that.maxAng);
}
@Override
public int hashCode() {
return Objects.hash(pos, gdRefR, minR, maxR, gdRefAng, minAng, maxAng);
}
} }

View File

@ -19,73 +19,51 @@
package org.apache.poi.sl.draw.geom; package org.apache.poi.sl.draw.geom;
import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.util.LinkedHashMap; import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.TreeMap;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import javax.xml.stream.XMLInputFactory; import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamConstants;
import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader; import javax.xml.stream.XMLStreamReader;
import javax.xml.transform.stream.StreamSource; import javax.xml.transform.stream.StreamSource;
import org.apache.poi.sl.draw.binding.CTCustomGeometry2D;
import org.apache.poi.util.POILogFactory; import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger; import org.apache.poi.util.POILogger;
import org.apache.poi.util.XMLHelper; import org.apache.poi.util.XMLHelper;
/** public final class PresetGeometries {
*
*/
public class PresetGeometries extends LinkedHashMap<String, CustomGeometry> {
private final static POILogger LOG = POILogFactory.getLogger(PresetGeometries.class); private final static POILogger LOG = POILogFactory.getLogger(PresetGeometries.class);
private final static String BINDING_PACKAGE = "org.apache.poi.sl.draw.binding";
private static class SingletonHelper { private final Map<String, CustomGeometry> map = new TreeMap<>();
private static JAXBContext JAXB_CONTEXT;
static { private static class SingletonHelper{
try { private static final PresetGeometries INSTANCE = new PresetGeometries();
JAXB_CONTEXT = JAXBContext.newInstance(BINDING_PACKAGE);
} catch (JAXBException e) {
throw new RuntimeException(e);
}
}
} }
public static PresetGeometries getInstance(){
return SingletonHelper.INSTANCE;
}
protected static PresetGeometries _inst; private PresetGeometries() {
// use a local object first to not assign a partly constructed object in case of failure
protected PresetGeometries(){}
@SuppressWarnings("unused")
public void init(InputStream is) throws XMLStreamException, JAXBException {
XMLInputFactory staxFactory = XMLHelper.newXMLInputFactory();
XMLStreamReader streamReader = staxFactory.createXMLStreamReader(new StreamSource(is));
try { try {
// ignore StartElement: try (InputStream is = PresetGeometries.class.getResourceAsStream("presetShapeDefinitions.xml")) {
streamReader.nextTag(); XMLInputFactory staxFactory = XMLHelper.newXMLInputFactory();
XMLStreamReader sr = staxFactory.createXMLStreamReader(new StreamSource(is));
// JAXB: try {
JAXBContext jaxbContext = SingletonHelper.JAXB_CONTEXT; PresetParser p = new PresetParser(PresetParser.Mode.FILE);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); p.parse(sr);
p.getGeom().forEach(map::put);
long cntElem = 0; } finally {
while (streamReader.hasNext() && streamReader.nextTag() == XMLStreamConstants.START_ELEMENT) { sr.close();
String name = streamReader.getLocalName();
JAXBElement<CTCustomGeometry2D> el = unmarshaller.unmarshal(streamReader, CTCustomGeometry2D.class);
CTCustomGeometry2D cus = el.getValue();
cntElem++;
if (containsKey(name)) {
LOG.log(POILogger.WARN, "Duplicate definition of " + name);
} }
put(name, new CustomGeometry(cus));
} }
} finally { } catch (IOException | XMLStreamException e){
streamReader.close(); throw new RuntimeException(e);
} }
} }
@ -94,32 +72,35 @@ public class PresetGeometries extends LinkedHashMap<String, CustomGeometry> {
*/ */
public static CustomGeometry convertCustomGeometry(XMLStreamReader staxReader) { public static CustomGeometry convertCustomGeometry(XMLStreamReader staxReader) {
try { try {
JAXBContext jaxbContext = SingletonHelper.JAXB_CONTEXT; PresetParser p = new PresetParser(PresetParser.Mode.SHAPE);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); p.parse(staxReader);
JAXBElement<CTCustomGeometry2D> el = unmarshaller.unmarshal(staxReader, CTCustomGeometry2D.class); return p.getGeom().values().stream().findFirst().orElse(null);
return new CustomGeometry(el.getValue()); } catch (XMLStreamException e) {
} catch (JAXBException e) {
LOG.log(POILogger.ERROR, "Unable to parse single custom geometry", e); LOG.log(POILogger.ERROR, "Unable to parse single custom geometry", e);
return null; return null;
} }
} }
public static synchronized PresetGeometries getInstance(){ public CustomGeometry get(String name) {
if(_inst == null) { return name == null ? null : map.get(name);
// use a local object first to not assign a partly constructed object }
// in case of failure
PresetGeometries lInst = new PresetGeometries();
try {
try (InputStream is = PresetGeometries.class.
getResourceAsStream("presetShapeDefinitions.xml")) {
lInst.init(is);
}
} catch (Exception e){
throw new RuntimeException(e);
}
_inst = lInst;
}
return _inst; public Set<String> keySet() {
return map.keySet();
}
public int size() {
return map.size();
}
@SuppressWarnings("EqualsWhichDoesntCheckParameterClass")
@Override
public boolean equals(Object o) {
return (this == o);
}
@Override
public int hashCode() {
return Objects.hash(map);
} }
} }

View File

@ -0,0 +1,573 @@
/*
* ====================================================================
* 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.sl.draw.geom;
import java.util.HashMap;
import java.util.Map;
import java.util.function.BiConsumer;
import javax.xml.stream.XMLStreamConstants;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
import org.apache.poi.sl.usermodel.PaintStyle.PaintModifier;
import org.apache.poi.util.Internal;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
@Internal
class PresetParser {
enum Mode {
FILE(PresetParser::updateFile),
SHAPE_LST(PresetParser::updateShapeList),
SHAPE(PresetParser::updateShape),
GUIDE_LST(PresetParser::updateGuideList),
AH_LST(PresetParser::updateAhList),
CXN_LST(PresetParser::updateCxnList),
PATH_LST(PresetParser::updatePathLst),
PATH(PresetParser::updatePath);
interface Handler {
void update(PresetParser parser, XMLStreamReader sr) throws XMLStreamException;
}
final Handler handler;
Mode(Handler handler) {
this.handler = handler;
}
}
private final static POILogger LOG = POILogFactory.getLogger(PresetParser.class);
private Mode mode;
private final Map<String, CustomGeometry> geom = new HashMap<>();
private CustomGeometry customGeometry;
private boolean useAdjustValue;
private Path path;
PresetParser(Mode mode) {
this.mode = mode;
if (mode == Mode.SHAPE) {
customGeometry = new CustomGeometry();
geom.put("custom", customGeometry);
}
}
void parse(XMLStreamReader sr) throws XMLStreamException {
while (sr.hasNext()) {
switch (sr.next()) {
case XMLStreamConstants.START_ELEMENT:
mode.handler.update(this, sr);
break;
case XMLStreamConstants.END_ELEMENT:
endContext();
break;
case XMLStreamConstants.END_DOCUMENT:
return;
default:
break;
}
}
}
Map<String, CustomGeometry> getGeom() {
return geom;
}
private void updateFile(XMLStreamReader sr) {
final String name = sr.getLocalName();
assert("presetShapeDefinitons".equals(name));
mode = Mode.SHAPE_LST;
}
private void updateShapeList(XMLStreamReader sr) {
final String name = sr.getLocalName();
customGeometry = new CustomGeometry();
if (geom.containsKey(name)) {
LOG.log(POILogger.WARN, "Duplicate definition of " + name);
}
geom.put(name, customGeometry);
mode = Mode.SHAPE;
}
private void updateShape(XMLStreamReader sr) throws XMLStreamException {
final String name = sr.getLocalName();
switch (name) {
case "avLst":
useAdjustValue = true;
mode = Mode.GUIDE_LST;
break;
case "gdLst":
useAdjustValue = false;
mode = Mode.GUIDE_LST;
break;
case "ahLst":
mode = Mode.AH_LST;
break;
case "cxnLst":
mode = Mode.CXN_LST;
break;
case "rect":
addRectangle(sr);
break;
case "pathLst":
mode = Mode.PATH_LST;
break;
}
}
private void updateGuideList(XMLStreamReader sr) throws XMLStreamException {
final String name = sr.getLocalName();
assert("gd".equals(name));
final Guide gd;
if (useAdjustValue) {
customGeometry.addAdjustGuide((AdjustValue)(gd = new AdjustValue()));
} else {
customGeometry.addGeomGuide(gd = new Guide());
}
parseAttributes(sr, (key,val) -> {
switch (key) {
case "name":
// CollapsedStringAdapter
gd.setName(collapseString(val));
break;
case "fmla":
gd.setFmla(val);
break;
}
});
int tag = nextTag(sr);
assert(tag == XMLStreamConstants.END_ELEMENT);
}
private void updateAhList(XMLStreamReader sr) throws XMLStreamException {
String name = sr.getLocalName();
switch (name) {
case "ahXY":
addXY(sr);
break;
case "ahPolar":
addPolar(sr);
break;
}
}
private void addXY(XMLStreamReader sr) throws XMLStreamException {
XYAdjustHandle ahXY = new XYAdjustHandle();
customGeometry.addAdjustHandle(ahXY);
parseAttributes(sr, (key, val) -> {
switch (key) {
case "gdRefX":
ahXY.setGdRefX(collapseString(val));
break;
case "minX":
ahXY.setMinX(val);
break;
case "maxX":
ahXY.setMaxX(val);
break;
case "gdRefY":
ahXY.setGdRefY(collapseString(val));
break;
case "minY":
ahXY.setMinY(val);
break;
case "maxY":
ahXY.setMaxY(val);
break;
}
});
ahXY.setPos(parsePosPoint(sr));
}
private void addPolar(XMLStreamReader sr) throws XMLStreamException {
PolarAdjustHandle ahPolar = new PolarAdjustHandle();
customGeometry.addAdjustHandle(ahPolar);
parseAttributes(sr, (key, val) -> {
switch (key) {
case "gdRefR":
ahPolar.setGdRefR(collapseString(val));
break;
case "minR":
ahPolar.setMinR(val);
break;
case "maxR":
ahPolar.setMaxR(val);
break;
case "gdRefAng":
ahPolar.setGdRefAng(collapseString(val));
break;
case "minAng":
ahPolar.setMinAng(val);
break;
case "maxAng":
ahPolar.setMaxAng(val);
break;
}
});
ahPolar.setPos(parsePosPoint(sr));
}
private void updateCxnList(XMLStreamReader sr) throws XMLStreamException {
String name = sr.getLocalName();
assert("cxn".equals(name));
ConnectionSite cxn = new ConnectionSite();
customGeometry.addConnectionSite(cxn);
parseAttributes(sr, (key, val) -> {
if ("ang".equals(key)) {
cxn.setAng(val);
}
});
cxn.setPos(parsePosPoint(sr));
}
private void updatePathLst(XMLStreamReader sr) {
String name = sr.getLocalName();
assert("path".equals(name));
path = new Path();
customGeometry.addPath(path);
parseAttributes(sr, (key, val) -> {
switch (key) {
case "w":
path.setW(Long.parseLong(val));
break;
case "h":
path.setH(Long.parseLong(val));
break;
case "fill":
path.setFill(mapFill(val));
break;
case "stroke":
path.setStroke(Boolean.parseBoolean(val));
break;
case "extrusionOk":
path.setExtrusionOk(Boolean.parseBoolean(val));
break;
}
});
mode = Mode.PATH;
}
private static PaintModifier mapFill(String fill) {
switch (fill) {
default:
case "none":
return PaintModifier.NONE;
case "norm":
return PaintModifier.NORM;
case "lighten":
return PaintModifier.LIGHTEN;
case "lightenLess":
return PaintModifier.LIGHTEN_LESS;
case "darken":
return PaintModifier.DARKEN;
case "darkenLess":
return PaintModifier.DARKEN_LESS;
}
}
private void updatePath(XMLStreamReader sr) throws XMLStreamException {
String name = sr.getLocalName();
switch (name) {
case "close":
closePath(sr);
break;
case "moveTo":
moveTo(sr);
break;
case "lnTo":
lineTo(sr);
break;
case "arcTo":
arcTo(sr);
break;
case "quadBezTo":
quadBezTo(sr);
break;
case "cubicBezTo":
cubicBezTo(sr);
break;
}
}
private void closePath(XMLStreamReader sr) throws XMLStreamException {
path.addCommand(new ClosePathCommand());
int tag = nextTag(sr);
assert(tag == XMLStreamConstants.END_ELEMENT);
}
private void moveTo(XMLStreamReader sr) throws XMLStreamException {
MoveToCommand cmd = new MoveToCommand();
path.addCommand(cmd);
AdjustPoint pt = parsePtPoint(sr, true);
assert(pt != null);
cmd.setPt(pt);
}
private void lineTo(XMLStreamReader sr) throws XMLStreamException {
LineToCommand cmd = new LineToCommand();
path.addCommand(cmd);
AdjustPoint pt = parsePtPoint(sr, true);
assert(pt != null);
cmd.setPt(pt);
}
private void arcTo(XMLStreamReader sr) throws XMLStreamException {
ArcToCommand cmd = new ArcToCommand();
path.addCommand(cmd);
parseAttributes(sr, (key, val) -> {
switch (key) {
case "wR":
cmd.setWR(val);
break;
case "hR":
cmd.setHR(val);
break;
case "stAng":
cmd.setStAng(val);
break;
case "swAng":
cmd.setSwAng(val);
break;
}
});
int tag = nextTag(sr);
assert (tag == XMLStreamConstants.END_ELEMENT);
}
private void quadBezTo(XMLStreamReader sr) throws XMLStreamException {
QuadToCommand cmd = new QuadToCommand();
path.addCommand(cmd);
AdjustPoint pt1 = parsePtPoint(sr, false);
AdjustPoint pt2 = parsePtPoint(sr, true);
assert (pt1 != null && pt2 != null);
cmd.setPt1(pt1);
cmd.setPt2(pt2);
}
private void cubicBezTo(XMLStreamReader sr) throws XMLStreamException {
CurveToCommand cmd = new CurveToCommand();
path.addCommand(cmd);
AdjustPoint pt1 = parsePtPoint(sr, false);
AdjustPoint pt2 = parsePtPoint(sr, false);
AdjustPoint pt3 = parsePtPoint(sr, true);
assert (pt1 != null && pt2 != null && pt3 != null);
cmd.setPt1(pt1);
cmd.setPt2(pt2);
cmd.setPt3(pt3);
}
private void addRectangle(XMLStreamReader sr) throws XMLStreamException {
String[] ltrb = new String[4];
parseAttributes(sr, (key,val) -> {
switch (key) {
case "l":
ltrb[0] = val;
break;
case "t":
ltrb[1] = val;
break;
case "r":
ltrb[2] = val;
break;
case "b":
ltrb[3] = val;
break;
}
});
customGeometry.setTextBounds(ltrb[0],ltrb[1],ltrb[2],ltrb[3]);
int tag = nextTag(sr);
assert(tag == XMLStreamConstants.END_ELEMENT);
}
private void endContext() {
switch (mode) {
case FILE:
case SHAPE_LST:
mode = Mode.FILE;
break;
case SHAPE:
mode = Mode.SHAPE_LST;
break;
case CXN_LST:
case AH_LST:
case GUIDE_LST:
case PATH_LST:
useAdjustValue = false;
path = null;
mode = Mode.SHAPE;
break;
case PATH:
path = null;
mode = Mode.PATH_LST;
break;
}
}
private AdjustPoint parsePosPoint(XMLStreamReader sr) throws XMLStreamException {
return parseAdjPoint(sr, true, "pos");
}
private AdjustPoint parsePtPoint(XMLStreamReader sr, boolean closeOuter) throws XMLStreamException {
return parseAdjPoint(sr, closeOuter, "pt");
}
private AdjustPoint parseAdjPoint(XMLStreamReader sr, boolean closeOuter, String name) throws XMLStreamException {
int tag = nextTag(sr);
if (tag == XMLStreamConstants.END_ELEMENT) {
return null;
}
assert (name.equals(sr.getLocalName()));
AdjustPoint pos = new AdjustPoint();
parseAttributes(sr, (key, val) -> {
switch (key) {
case "x":
pos.setX(val);
break;
case "y":
pos.setY(val);
break;
}
});
tag = nextTag(sr);
assert(tag == XMLStreamConstants.END_ELEMENT);
if (closeOuter) {
tag = nextTag(sr);
assert(tag == XMLStreamConstants.END_ELEMENT);
}
return pos;
}
private void parseAttributes(XMLStreamReader sr, BiConsumer<String,String> c) {
for (int i=0; i<sr.getAttributeCount(); i++) {
c.accept(sr.getAttributeLocalName(i), sr.getAttributeValue(i));
}
}
/**
* Reimplement {@link XMLStreamReader#nextTag()} because of differences of XmlBeans and Xerces XMLStreamReader.
* XmlBeans doesn't return the END_ELEMENT on nextTag()
*
* @param sr the stream reader
* @return the next tag type (START_ELEMENT, END_ELEMENT, END_DOCUMENT)
* @throws XMLStreamException if reading the next tag fails
*/
private static int nextTag(XMLStreamReader sr) throws XMLStreamException {
int tag;
do {
tag = sr.next();
} while (
tag != XMLStreamConstants.START_ELEMENT &&
tag != XMLStreamConstants.END_ELEMENT &&
tag != XMLStreamConstants.END_DOCUMENT
);
return tag;
}
/**
* Removes leading and trailing whitespaces of the string given as the parameter, then truncate any
* sequence of tab, CR, LF, and SP by a single whitespace character ' '.
*/
private static String collapseString(String text) {
if (text==null) {
return null;
}
int len = text.length();
// most of the texts are already in the collapsed form. so look for the first whitespace in the hope that we
// will never see it.
int s;
for (s=0; s<len; s++) {
if (isWhiteSpace(text.charAt(s))) {
break;
}
}
if (s == len) {
// the input happens to be already collapsed.
return text;
}
// we now know that the input contains spaces. let's sit down and do the collapsing normally.
// allocate enough size to avoid re-allocation
StringBuilder result = new StringBuilder(len);
if (s != 0) {
for(int i=0; i<s; i++) {
result.append(text.charAt(i));
}
result.append(' ');
}
boolean inStripMode = true;
for (int i = s+1; i < len; i++) {
char ch = text.charAt(i);
boolean b = isWhiteSpace(ch);
if (inStripMode && b) {
// skip this character
continue;
}
inStripMode = b;
result.append(inStripMode ? ' ' : ch);
}
// remove trailing whitespaces
len = result.length();
if (len > 0 && result.charAt(len - 1) == ' ') {
result.setLength(len - 1);
}
// whitespaces are already collapsed, so all we have to do is
// to remove the last one character if it's a whitespace.
return result.toString();
}
/** returns true if the specified char is a white space character. */
private static boolean isWhiteSpace(char ch) {
return ch == 0x9 || ch == 0xA || ch == 0xD || ch == 0x20;
}
}

View File

@ -20,25 +20,71 @@
package org.apache.poi.sl.draw.geom; package org.apache.poi.sl.draw.geom;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.util.Objects;
import org.apache.poi.sl.draw.binding.CTAdjPoint2D; /**
* <p>Java class for CT_Path2DQuadBezierTo complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="CT_Path2DQuadBezierTo"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="pt" type="{http://schemas.openxmlformats.org/drawingml/2006/main}CT_AdjPoint2D" maxOccurs="2" minOccurs="2"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
// @XmlAccessorType(XmlAccessType.FIELD)
// @XmlType(name = "CT_Path2DQuadBezierTo", propOrder = {"pt"})
public final class QuadToCommand implements PathCommand {
public class QuadToCommand implements PathCommand { // @XmlElement(required = true)
private String arg1, arg2, arg3, arg4; private final AdjustPoint pt1 = new AdjustPoint();
// @XmlElement(required = true)
private final AdjustPoint pt2 = new AdjustPoint();
QuadToCommand(CTAdjPoint2D pt1, CTAdjPoint2D pt2){ public void setPt1(AdjustPoint pt1) {
arg1 = pt1.getX(); if (pt1 != null) {
arg2 = pt1.getY(); this.pt1.setX(pt1.getX());
arg3 = pt2.getX(); this.pt1.setY(pt1.getY());
arg4 = pt2.getY(); }
}
public void setPt2(AdjustPoint pt2) {
if (pt2 != null) {
this.pt2.setX(pt2.getX());
this.pt2.setY(pt2.getY());
}
} }
@Override @Override
public void execute(Path2D.Double path, Context ctx){ public void execute(Path2D.Double path, Context ctx){
double x1 = ctx.getValue(arg1); double x1 = ctx.getValue(pt1.getX());
double y1 = ctx.getValue(arg2); double y1 = ctx.getValue(pt1.getY());
double x2 = ctx.getValue(arg3); double x2 = ctx.getValue(pt2.getX());
double y2 = ctx.getValue(arg4); double y2 = ctx.getValue(pt2.getY());
path.quadTo(x1, y1, x2, y2); path.quadTo(x1, y1, x2, y2);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof QuadToCommand)) return false;
QuadToCommand that = (QuadToCommand) o;
return Objects.equals(pt1, that.pt1) &&
Objects.equals(pt2, that.pt2);
}
@Override
public int hashCode() {
return Objects.hash(pt1, pt2);
}
} }

View File

@ -15,16 +15,9 @@
limitations under the License. limitations under the License.
==================================================================== */ ==================================================================== */
package org.apache.poi.sl.draw.binding; package org.apache.poi.sl.draw.geom;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import java.util.Objects;
/** /**
* <p>Java class for CT_XYAdjustHandle complex type. * <p>Java class for CT_XYAdjustHandle complex type.
@ -51,28 +44,26 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
* *
* *
*/ */
@XmlAccessorType(XmlAccessType.FIELD) // @XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CT_XYAdjustHandle", propOrder = { // @XmlType(name = "CT_XYAdjustHandle", propOrder = {"pos"})
"pos" public final class XYAdjustHandle implements AdjustHandle {
})
public class CTXYAdjustHandle {
@XmlElement(required = true) // @XmlElement(required = true)
protected CTAdjPoint2D pos; private AdjustPoint pos;
@XmlAttribute(name = "gdRefX") // @XmlAttribute(name = "gdRefX")
@XmlJavaTypeAdapter(CollapsedStringAdapter.class) // @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String gdRefX; private String gdRefX;
@XmlAttribute(name = "minX") // @XmlAttribute(name = "minX")
protected String minX; private String minX;
@XmlAttribute(name = "maxX") // @XmlAttribute(name = "maxX")
protected String maxX; private String maxX;
@XmlAttribute(name = "gdRefY") // @XmlAttribute(name = "gdRefY")
@XmlJavaTypeAdapter(CollapsedStringAdapter.class) // @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String gdRefY; private String gdRefY;
@XmlAttribute(name = "minY") // @XmlAttribute(name = "minY")
protected String minY; private String minY;
@XmlAttribute(name = "maxY") // @XmlAttribute(name = "maxY")
protected String maxY; private String maxY;
/** /**
* Gets the value of the pos property. * Gets the value of the pos property.
@ -82,7 +73,7 @@ public class CTXYAdjustHandle {
* {@link CTAdjPoint2D } * {@link CTAdjPoint2D }
* *
*/ */
public CTAdjPoint2D getPos() { public AdjustPoint getPos() {
return pos; return pos;
} }
@ -94,7 +85,7 @@ public class CTXYAdjustHandle {
* {@link CTAdjPoint2D } * {@link CTAdjPoint2D }
* *
*/ */
public void setPos(CTAdjPoint2D value) { public void setPos(AdjustPoint value) {
this.pos = value; this.pos = value;
} }
@ -270,4 +261,22 @@ public class CTXYAdjustHandle {
return (this.maxY!= null); return (this.maxY!= null);
} }
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof XYAdjustHandle)) return false;
XYAdjustHandle that = (XYAdjustHandle) o;
return Objects.equals(pos, that.pos) &&
Objects.equals(gdRefX, that.gdRefX) &&
Objects.equals(minX, that.minX) &&
Objects.equals(maxX, that.maxX) &&
Objects.equals(gdRefY, that.gdRefY) &&
Objects.equals(minY, that.minY) &&
Objects.equals(maxY, that.maxY);
}
@Override
public int hashCode() {
return Objects.hash(pos, gdRefX, minX, maxX, gdRefY, minY, maxY);
}
} }

View File

@ -21,8 +21,6 @@ package org.apache.poi.sl.usermodel;
/** /**
* Specifies possible rectangle alignment types. * Specifies possible rectangle alignment types.
* See org.openxmlformats.schemas.drawingml.x2006.main.STRectAlignment * See org.openxmlformats.schemas.drawingml.x2006.main.STRectAlignment
*
* @see org.apache.poi.sl.draw.binding.STRectAlignment
*/ */
public enum RectAlign { public enum RectAlign {
/** Top-Left rectangle alignment */ /** Top-Left rectangle alignment */

Binary file not shown.

View File

@ -0,0 +1,50 @@
/* ====================================================================
Copyright 2017 Andreas Beeker (kiwiwings@apache.org)
Licensed 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.
==================================================================== */
open module org.apache.poi.ooxml.schemas {
requires transitive xmlbeans;
requires java.xml;
exports com.microsoft.schemas.compatibility;
exports com.microsoft.schemas.office.excel;
exports com.microsoft.schemas.office.office;
exports com.microsoft.schemas.office.powerpoint;
exports com.microsoft.schemas.office.visio.x2012.main;
exports com.microsoft.schemas.office.word;
exports com.microsoft.schemas.vml;
exports org.openxmlformats.schemas.drawingml.x2006.chart;
exports org.openxmlformats.schemas.drawingml.x2006.chartDrawing;
exports org.openxmlformats.schemas.drawingml.x2006.compatibility;
exports org.openxmlformats.schemas.drawingml.x2006.diagram;
exports org.openxmlformats.schemas.drawingml.x2006.lockedCanvas;
exports org.openxmlformats.schemas.drawingml.x2006.main;
exports org.openxmlformats.schemas.drawingml.x2006.picture;
exports org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing;
exports org.openxmlformats.schemas.drawingml.x2006.wordprocessingDrawing;
exports org.openxmlformats.schemas.officeDocument.x2006.bibliography;
exports org.openxmlformats.schemas.officeDocument.x2006.characteristics;
exports org.openxmlformats.schemas.officeDocument.x2006.customProperties;
exports org.openxmlformats.schemas.officeDocument.x2006.customXml;
exports org.openxmlformats.schemas.officeDocument.x2006.docPropsVTypes;
exports org.openxmlformats.schemas.officeDocument.x2006.extendedProperties;
exports org.openxmlformats.schemas.officeDocument.x2006.math;
exports org.openxmlformats.schemas.officeDocument.x2006.relationships;
exports org.openxmlformats.schemas.presentationml.x2006.main;
exports org.openxmlformats.schemas.schemaLibrary.x2006.main;
exports org.openxmlformats.schemas.spreadsheetml.x2006.main;
exports org.openxmlformats.schemas.wordprocessingml.x2006.main;
// opens schemaorg_apache_xmlbeans.system.OoxmlSchemas to xmlbeans;
}

Binary file not shown.

View File

@ -0,0 +1,31 @@
/* ====================================================================
Copyright 2017 Andreas Beeker (kiwiwings@apache.org)
Licensed 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.
==================================================================== */
open module org.apache.poi.ooxml.security {
requires transitive xmlbeans;
requires java.xml;
exports com.microsoft.schemas.office.x2006.digsig;
exports com.microsoft.schemas.office.x2006.encryption;
exports com.microsoft.schemas.office.x2006.keyEncryptor.certificate;
exports com.microsoft.schemas.office.x2006.keyEncryptor.password;
exports org.etsi.uri.x01903.v13;
exports org.etsi.uri.x01903.v14;
exports org.openxmlformats.schemas.xpackage.x2006.digitalSignature;
exports org.openxmlformats.schemas.xpackage.x2006.relationships;
exports org.w3.x2000.x09.xmldsig;
// opens schemaorg_apache_xmlbeans.system.OoxmlSecurity to xmlbeans;
}

View File

@ -0,0 +1,86 @@
/* ====================================================================
Copyright 2017 Andreas Beeker (kiwiwings@apache.org)
Licensed 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.
==================================================================== */
module org.apache.poi.poi {
requires org.apache.commons.collections4;
requires org.apache.commons.codec;
requires commons.math3;
requires SparseBitSet;
requires commons.logging;
exports org.apache.poi.common.usermodel.fonts;
exports org.apache.poi.ddf;
exports org.apache.poi.extractor;
exports org.apache.poi.hpsf;
exports org.apache.poi.hpsf.extractor;
exports org.apache.poi.hpsf.wellknown;
exports org.apache.poi.hssf;
exports org.apache.poi.hssf.dev;
exports org.apache.poi.hssf.eventmodel;
exports org.apache.poi.hssf.eventusermodel;
exports org.apache.poi.hssf.eventusermodel.dummyrecord;
exports org.apache.poi.hssf.extractor;
exports org.apache.poi.hssf.model;
exports org.apache.poi.hssf.record;
exports org.apache.poi.hssf.record.aggregates;
exports org.apache.poi.hssf.record.cf;
exports org.apache.poi.hssf.record.chart;
exports org.apache.poi.hssf.record.common;
exports org.apache.poi.hssf.record.cont;
exports org.apache.poi.hssf.record.crypto;
exports org.apache.poi.hssf.record.pivottable;
exports org.apache.poi.hssf.usermodel;
exports org.apache.poi.hssf.usermodel.helpers;
exports org.apache.poi.hssf.util;
exports org.apache.poi.poifs.common;
exports org.apache.poi.poifs.crypt;
exports org.apache.poi.poifs.crypt.binaryrc4;
exports org.apache.poi.poifs.crypt.cryptoapi;
exports org.apache.poi.poifs.crypt.standard;
exports org.apache.poi.poifs.crypt.xor;
exports org.apache.poi.poifs.dev;
exports org.apache.poi.poifs.eventfilesystem;
exports org.apache.poi.poifs.filesystem;
exports org.apache.poi.poifs.macros;
exports org.apache.poi.poifs.nio;
exports org.apache.poi.poifs.property;
exports org.apache.poi.poifs.storage;
exports org.apache.poi.sl.draw;
exports org.apache.poi.sl.draw.geom;
exports org.apache.poi.sl.extractor;
exports org.apache.poi.sl.image;
exports org.apache.poi.sl.usermodel;
exports org.apache.poi.ss;
exports org.apache.poi.ss.extractor;
exports org.apache.poi.ss.format;
exports org.apache.poi.ss.formula;
exports org.apache.poi.ss.formula.atp;
exports org.apache.poi.ss.formula.constant;
exports org.apache.poi.ss.formula.eval;
exports org.apache.poi.ss.formula.eval.forked;
exports org.apache.poi.ss.formula.function;
exports org.apache.poi.ss.formula.functions;
exports org.apache.poi.ss.formula.ptg;
exports org.apache.poi.ss.formula.udf;
exports org.apache.poi.ss.usermodel;
exports org.apache.poi.ss.usermodel.charts;
exports org.apache.poi.ss.usermodel.helpers;
exports org.apache.poi.ss.util;
exports org.apache.poi.ss.util.cellwalk;
exports org.apache.poi.util;
exports org.apache.poi.wp.usermodel;
}

View File

@ -59,7 +59,7 @@ import org.openxmlformats.schemas.drawingml.x2006.main.*;
@Beta @Beta
public abstract class XSLFSimpleShape extends XSLFShape public abstract class XSLFSimpleShape extends XSLFShape
implements SimpleShape<XSLFShape,XSLFTextParagraph> { implements SimpleShape<XSLFShape,XSLFTextParagraph> {
private static CTOuterShadowEffect NO_SHADOW = CTOuterShadowEffect.Factory.newInstance(); private static final CTOuterShadowEffect NO_SHADOW = CTOuterShadowEffect.Factory.newInstance();
private static final POILogger LOG = POILogFactory.getLogger(XSLFSimpleShape.class); private static final POILogger LOG = POILogFactory.getLogger(XSLFSimpleShape.class);
/* package */XSLFSimpleShape(XmlObject shape, XSLFSheet sheet) { /* package */XSLFSimpleShape(XmlObject shape, XSLFSheet sheet) {
@ -981,7 +981,10 @@ public abstract class XSLFSimpleShape extends XSLFShape
//noinspection deprecation //noinspection deprecation
for (CTGeomGuide g : gp.getPrstGeom().getAvLst().getGdArray()) { for (CTGeomGuide g : gp.getPrstGeom().getAvLst().getGdArray()) {
if (g.getName().equals(name)) { if (g.getName().equals(name)) {
return new Guide(g.getName(), g.getFmla()); Guide gd = new Guide();
gd.setName(g.getName());
gd.setFmla(g.getFmla());
return gd;
} }
} }
} }

View File

@ -20,8 +20,10 @@ package org.apache.poi.xslf.geom;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
import org.apache.poi.sl.draw.binding.CTCustomGeometry2D; import org.apache.poi.sl.draw.geom.Context;
import org.apache.poi.sl.draw.geom.*; import org.apache.poi.sl.draw.geom.CustomGeometry;
import org.apache.poi.sl.draw.geom.Formula;
import org.apache.poi.sl.draw.geom.Guide;
import org.junit.Test; import org.junit.Test;
/** /**
@ -34,17 +36,17 @@ public class TestFormulaParser {
public void testParse(){ public void testParse(){
Formula[] ops = { Formula[] ops = {
new Guide("adj1", "val 100"), newGuide("adj1", "val 100"),
new Guide("adj2", "val 200"), newGuide("adj2", "val 200"),
new Guide("adj3", "val -1"), newGuide("adj3", "val -1"),
new Guide("a1", "*/ adj1 2 adj2"), // a1 = 100*2 / 200 newGuide("a1", "*/ adj1 2 adj2"), // a1 = 100*2 / 200
new Guide("a2", "+- adj2 a1 adj1"), // a2 = 200 + a1 - 100 newGuide("a2", "+- adj2 a1 adj1"), // a2 = 200 + a1 - 100
new Guide("a3", "+/ adj1 adj2 adj2"), // a3 = (100 + 200) / 200 newGuide("a3", "+/ adj1 adj2 adj2"), // a3 = (100 + 200) / 200
new Guide("a4", "?: adj3 adj1 adj2"), // a4 = adj3 > 0 ? adj1 : adj2 newGuide("a4", "?: adj3 adj1 adj2"), // a4 = adj3 > 0 ? adj1 : adj2
new Guide("a5", "abs -2"), newGuide("a5", "abs -2"),
}; };
CustomGeometry geom = new CustomGeometry(new CTCustomGeometry2D()); CustomGeometry geom = new CustomGeometry();
Context ctx = new Context(geom, null, null); Context ctx = new Context(geom, null, null);
for(Formula fmla : ops) { for(Formula fmla : ops) {
ctx.evaluate(fmla); ctx.evaluate(fmla);
@ -58,4 +60,11 @@ public class TestFormulaParser {
assertEquals(200.0, ctx.getValue("a4"), 0.0); assertEquals(200.0, ctx.getValue("a4"), 0.0);
assertEquals(2.0, ctx.getValue("a5"), 0.0); assertEquals(2.0, ctx.getValue("a5"), 0.0);
} }
private static Guide newGuide(String name, String fmla) {
Guide gd = new Guide();
gd.setName(name);
gd.setFmla(fmla);
return gd;
}
} }

View File

@ -21,24 +21,19 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull; import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import java.awt.Color; import java.awt.Color;
import java.awt.Dimension; import java.io.File;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import org.apache.poi.sl.draw.DrawFactory; import org.apache.poi.POIDataSamples;
import org.apache.poi.sl.draw.geom.TestPresetGeometries;
import org.apache.poi.sl.usermodel.Placeholder; import org.apache.poi.sl.usermodel.Placeholder;
import org.apache.poi.sl.usermodel.Slide;
import org.apache.poi.sl.usermodel.StrokeStyle.LineCap; import org.apache.poi.sl.usermodel.StrokeStyle.LineCap;
import org.apache.poi.sl.usermodel.StrokeStyle.LineDash; import org.apache.poi.sl.usermodel.StrokeStyle.LineDash;
import org.apache.poi.util.Units; import org.apache.poi.util.Units;
import org.apache.poi.xslf.XSLFTestDataSamples; import org.apache.poi.xslf.XSLFTestDataSamples;
import org.apache.poi.xslf.util.PPTX2PNG;
import org.apache.xmlbeans.XmlObject; import org.apache.xmlbeans.XmlObject;
import org.junit.Test; import org.junit.Test;
import org.openxmlformats.schemas.drawingml.x2006.main.CTEffectStyleItem; import org.openxmlformats.schemas.drawingml.x2006.main.CTEffectStyleItem;
@ -56,325 +51,272 @@ public class TestXSLFSimpleShape {
@Test @Test
public void testLineStyles() throws IOException { public void testLineStyles() throws IOException {
XMLSlideShow ppt = new XMLSlideShow(); try (XMLSlideShow ppt = new XMLSlideShow()) {
XSLFSlide slide = ppt.createSlide(); XSLFSlide slide = ppt.createSlide();
XSLFSimpleShape shape = slide.createAutoShape(); XSLFSimpleShape shape = slide.createAutoShape();
assertEquals(1, slide.getShapes().size()); assertEquals(1, slide.getShapes().size());
// line properties are not set by default // line properties are not set by default
assertFalse(getSpPr(shape).isSetLn()); assertFalse(getSpPr(shape).isSetLn());
assertEquals(0., shape.getLineWidth(), 0); assertEquals(0., shape.getLineWidth(), 0);
assertNull(shape.getLineColor()); assertNull(shape.getLineColor());
assertNull(shape.getLineDash()); assertNull(shape.getLineDash());
assertNull(shape.getLineCap()); assertNull(shape.getLineCap());
shape.setLineWidth(0); shape.setLineWidth(0);
shape.setLineColor(null); shape.setLineColor(null);
shape.setLineDash(null); shape.setLineDash(null);
shape.setLineCap(null); shape.setLineCap(null);
assertTrue(getSpPr(shape).isSetLn()); assertTrue(getSpPr(shape).isSetLn());
assertTrue(getSpPr(shape).getLn().isSetNoFill()); assertTrue(getSpPr(shape).getLn().isSetNoFill());
// line width // line width
shape.setLineWidth(1.0); shape.setLineWidth(1.0);
assertEquals(1.0, shape.getLineWidth(), 0); assertEquals(1.0, shape.getLineWidth(), 0);
assertEquals(Units.EMU_PER_POINT, getSpPr(shape).getLn().getW()); assertEquals(Units.EMU_PER_POINT, getSpPr(shape).getLn().getW());
shape.setLineWidth(5.5); shape.setLineWidth(5.5);
assertEquals(5.5, shape.getLineWidth(), 0); assertEquals(5.5, shape.getLineWidth(), 0);
assertEquals(Units.toEMU(5.5), getSpPr(shape).getLn().getW()); assertEquals(Units.toEMU(5.5), getSpPr(shape).getLn().getW());
shape.setLineWidth(0.0); shape.setLineWidth(0.0);
// setting line width to zero unsets the W attribute // setting line width to zero unsets the W attribute
assertFalse(getSpPr(shape).getLn().isSetW()); assertFalse(getSpPr(shape).getLn().isSetW());
// line cap // line cap
shape.setLineCap(LineCap.FLAT); shape.setLineCap(LineCap.FLAT);
assertEquals(LineCap.FLAT, shape.getLineCap()); assertEquals(LineCap.FLAT, shape.getLineCap());
assertEquals(STLineCap.FLAT, getSpPr(shape).getLn().getCap()); assertEquals(STLineCap.FLAT, getSpPr(shape).getLn().getCap());
shape.setLineCap(LineCap.SQUARE); shape.setLineCap(LineCap.SQUARE);
assertEquals(LineCap.SQUARE, shape.getLineCap()); assertEquals(LineCap.SQUARE, shape.getLineCap());
assertEquals(STLineCap.SQ, getSpPr(shape).getLn().getCap()); assertEquals(STLineCap.SQ, getSpPr(shape).getLn().getCap());
shape.setLineCap(LineCap.ROUND); shape.setLineCap(LineCap.ROUND);
assertEquals(LineCap.ROUND, shape.getLineCap()); assertEquals(LineCap.ROUND, shape.getLineCap());
assertEquals(STLineCap.RND, getSpPr(shape).getLn().getCap()); assertEquals(STLineCap.RND, getSpPr(shape).getLn().getCap());
shape.setLineCap(null); shape.setLineCap(null);
// setting cap to null unsets the Cap attribute // setting cap to null unsets the Cap attribute
assertFalse(getSpPr(shape).getLn().isSetCap()); assertFalse(getSpPr(shape).getLn().isSetCap());
// line dash // line dash
shape.setLineDash(LineDash.SOLID); shape.setLineDash(LineDash.SOLID);
assertEquals(LineDash.SOLID, shape.getLineDash()); assertEquals(LineDash.SOLID, shape.getLineDash());
assertEquals(STPresetLineDashVal.SOLID, getSpPr(shape).getLn().getPrstDash().getVal()); assertEquals(STPresetLineDashVal.SOLID, getSpPr(shape).getLn().getPrstDash().getVal());
shape.setLineDash(LineDash.DASH_DOT); shape.setLineDash(LineDash.DASH_DOT);
assertEquals(LineDash.DASH_DOT, shape.getLineDash()); assertEquals(LineDash.DASH_DOT, shape.getLineDash());
assertEquals(STPresetLineDashVal.DASH_DOT, getSpPr(shape).getLn().getPrstDash().getVal()); assertEquals(STPresetLineDashVal.DASH_DOT, getSpPr(shape).getLn().getPrstDash().getVal());
shape.setLineDash(LineDash.LG_DASH_DOT); shape.setLineDash(LineDash.LG_DASH_DOT);
assertEquals(LineDash.LG_DASH_DOT, shape.getLineDash()); assertEquals(LineDash.LG_DASH_DOT, shape.getLineDash());
assertEquals(STPresetLineDashVal.LG_DASH_DOT, getSpPr(shape).getLn().getPrstDash().getVal()); assertEquals(STPresetLineDashVal.LG_DASH_DOT, getSpPr(shape).getLn().getPrstDash().getVal());
shape.setLineDash(null); shape.setLineDash(null);
// setting dash width to null unsets the Dash element // setting dash width to null unsets the Dash element
assertFalse(getSpPr(shape).getLn().isSetPrstDash()); assertFalse(getSpPr(shape).getLn().isSetPrstDash());
// line color // line color
assertFalse(getSpPr(shape).getLn().isSetSolidFill()); assertFalse(getSpPr(shape).getLn().isSetSolidFill());
shape.setLineColor(Color.RED); shape.setLineColor(Color.RED);
assertEquals(Color.RED, shape.getLineColor()); assertEquals(Color.RED, shape.getLineColor());
assertTrue(getSpPr(shape).getLn().isSetSolidFill()); assertTrue(getSpPr(shape).getLn().isSetSolidFill());
shape.setLineColor(Color.BLUE); shape.setLineColor(Color.BLUE);
assertEquals(Color.BLUE, shape.getLineColor()); assertEquals(Color.BLUE, shape.getLineColor());
assertTrue(getSpPr(shape).getLn().isSetSolidFill()); assertTrue(getSpPr(shape).getLn().isSetSolidFill());
shape.setLineColor(null); shape.setLineColor(null);
assertNull(shape.getLineColor()); assertNull(shape.getLineColor());
// setting dash width to null unsets the SolidFill element // setting dash width to null unsets the SolidFill element
assertFalse(getSpPr(shape).getLn().isSetSolidFill()); assertFalse(getSpPr(shape).getLn().isSetSolidFill());
XSLFSimpleShape ln2 = slide.createAutoShape(); XSLFSimpleShape ln2 = slide.createAutoShape();
ln2.setLineDash(LineDash.DOT); ln2.setLineDash(LineDash.DOT);
assertEquals(LineDash.DOT, ln2.getLineDash()); assertEquals(LineDash.DOT, ln2.getLineDash());
ln2.setLineWidth(0.); ln2.setLineWidth(0.);
assertEquals(0., ln2.getLineWidth(), 0); assertEquals(0., ln2.getLineWidth(), 0);
XSLFSimpleShape ln3 = slide.createAutoShape(); XSLFSimpleShape ln3 = slide.createAutoShape();
ln3.setLineWidth(1.); ln3.setLineWidth(1.);
assertEquals(1., ln3.getLineWidth(), 0); assertEquals(1., ln3.getLineWidth(), 0);
ln3.setLineDash(null); ln3.setLineDash(null);
assertNull(ln3.getLineDash()); assertNull(ln3.getLineDash());
ln3.setLineCap(null); ln3.setLineCap(null);
assertNull(ln3.getLineDash()); assertNull(ln3.getLineDash());
}
ppt.close();
} }
@Test @Test
public void testFill() throws IOException { public void testFill() throws IOException {
XMLSlideShow ppt = new XMLSlideShow(); try (XMLSlideShow ppt = new XMLSlideShow()) {
XSLFSlide slide = ppt.createSlide(); XSLFSlide slide = ppt.createSlide();
XSLFAutoShape shape = slide.createAutoShape(); XSLFAutoShape shape = slide.createAutoShape();
// line properties are not set by default // line properties are not set by default
assertFalse(getSpPr(shape).isSetSolidFill()); assertFalse(getSpPr(shape).isSetSolidFill());
assertNull(shape.getFillColor()); assertNull(shape.getFillColor());
shape.setFillColor(null); shape.setFillColor(null);
assertNull(shape.getFillColor()); assertNull(shape.getFillColor());
assertFalse(getSpPr(shape).isSetSolidFill()); assertFalse(getSpPr(shape).isSetSolidFill());
shape.setFillColor(Color.RED); shape.setFillColor(Color.RED);
assertEquals(Color.RED, shape.getFillColor()); assertEquals(Color.RED, shape.getFillColor());
shape.setFillColor(Color.DARK_GRAY); shape.setFillColor(Color.DARK_GRAY);
assertEquals(Color.DARK_GRAY, shape.getFillColor()); assertEquals(Color.DARK_GRAY, shape.getFillColor());
assertTrue(getSpPr(shape).isSetSolidFill()); assertTrue(getSpPr(shape).isSetSolidFill());
shape.setFillColor(null); shape.setFillColor(null);
assertNull(shape.getFillColor()); assertNull(shape.getFillColor());
assertFalse(getSpPr(shape).isSetSolidFill()); assertFalse(getSpPr(shape).isSetSolidFill());
ppt.close(); }
} }
@Test @Test
public void testDefaultProperties() throws IOException { public void testDefaultProperties() throws IOException {
XMLSlideShow ppt = XSLFTestDataSamples.openSampleDocument("shapes.pptx"); try (XMLSlideShow ppt = XSLFTestDataSamples.openSampleDocument("shapes.pptx")) {
XSLFSlide slide6 = ppt.getSlides().get(5);
List<XSLFShape> shapes = slide6.getShapes();
for (XSLFShape xs : shapes) {
XSLFSimpleShape s = (XSLFSimpleShape) xs;
// all shapes have a theme color="accent1"
assertEquals("accent1", s.getSpStyle().getFillRef().getSchemeClr().getVal().toString());
assertEquals(2.0, s.getLineWidth(), 0);
assertEquals(LineCap.FLAT, s.getLineCap());
assertEquals(new Color(79, 129, 189), s.getLineColor());
}
XSLFSlide slide6 = ppt.getSlides().get(5); XSLFSimpleShape s0 = (XSLFSimpleShape) shapes.get(0);
List<XSLFShape> shapes = slide6.getShapes(); // fill is not set
for(XSLFShape xs : shapes){ assertNull(getSpPr(s0).getSolidFill());
XSLFSimpleShape s = (XSLFSimpleShape)xs; //assertEquals(slide6.getTheme().getColor("accent1").getColor(), s0.getFillColor());
// all shapes have a theme color="accent1" assertEquals(new Color(79, 129, 189), s0.getFillColor());
assertEquals("accent1", s.getSpStyle().getFillRef().getSchemeClr().getVal().toString());
assertEquals(2.0, s.getLineWidth(), 0); // lighter 80%
assertEquals(LineCap.FLAT, s.getLineCap()); XSLFSimpleShape s1 = (XSLFSimpleShape) shapes.get(1);
assertEquals(new Color(79,129,189), s.getLineColor()); CTSchemeColor ref1 = getSpPr(s1).getSolidFill().getSchemeClr();
assertEquals(1, ref1.sizeOfLumModArray());
assertEquals(1, ref1.sizeOfLumOffArray());
assertEquals(20000, ref1.getLumModArray(0).getVal());
assertEquals(80000, ref1.getLumOffArray(0).getVal());
assertEquals("accent1", ref1.getVal().toString());
assertEquals(new Color(220, 230, 242), s1.getFillColor());
// lighter 60%
XSLFSimpleShape s2 = (XSLFSimpleShape) shapes.get(2);
CTSchemeColor ref2 = getSpPr(s2).getSolidFill().getSchemeClr();
assertEquals(1, ref2.sizeOfLumModArray());
assertEquals(1, ref2.sizeOfLumOffArray());
assertEquals(40000, ref2.getLumModArray(0).getVal());
assertEquals(60000, ref2.getLumOffArray(0).getVal());
assertEquals("accent1", ref2.getVal().toString());
assertEquals(new Color(185, 205, 229), s2.getFillColor());
// lighter 40%
XSLFSimpleShape s3 = (XSLFSimpleShape) shapes.get(3);
CTSchemeColor ref3 = getSpPr(s3).getSolidFill().getSchemeClr();
assertEquals(1, ref3.sizeOfLumModArray());
assertEquals(1, ref3.sizeOfLumOffArray());
assertEquals(60000, ref3.getLumModArray(0).getVal());
assertEquals(40000, ref3.getLumOffArray(0).getVal());
assertEquals("accent1", ref3.getVal().toString());
assertEquals(new Color(149, 179, 215), s3.getFillColor());
// darker 25%
XSLFSimpleShape s4 = (XSLFSimpleShape) shapes.get(4);
CTSchemeColor ref4 = getSpPr(s4).getSolidFill().getSchemeClr();
assertEquals(1, ref4.sizeOfLumModArray());
assertEquals(0, ref4.sizeOfLumOffArray());
assertEquals(75000, ref4.getLumModArray(0).getVal());
assertEquals("accent1", ref3.getVal().toString());
assertEquals(new Color(55, 96, 146), s4.getFillColor());
XSLFSimpleShape s5 = (XSLFSimpleShape) shapes.get(5);
CTSchemeColor ref5 = getSpPr(s5).getSolidFill().getSchemeClr();
assertEquals(1, ref5.sizeOfLumModArray());
assertEquals(0, ref5.sizeOfLumOffArray());
assertEquals(50000, ref5.getLumModArray(0).getVal());
assertEquals("accent1", ref5.getVal().toString());
assertEquals(new Color(37, 64, 97), s5.getFillColor());
} }
XSLFSimpleShape s0 = (XSLFSimpleShape) shapes.get(0);
// fill is not set
assertNull(getSpPr(s0).getSolidFill());
//assertEquals(slide6.getTheme().getColor("accent1").getColor(), s0.getFillColor());
assertEquals(new Color(79, 129, 189), s0.getFillColor());
// lighter 80%
XSLFSimpleShape s1 = (XSLFSimpleShape)shapes.get(1);
CTSchemeColor ref1 = getSpPr(s1).getSolidFill().getSchemeClr();
assertEquals(1, ref1.sizeOfLumModArray());
assertEquals(1, ref1.sizeOfLumOffArray());
assertEquals(20000, ref1.getLumModArray(0).getVal());
assertEquals(80000, ref1.getLumOffArray(0).getVal());
assertEquals("accent1", ref1.getVal().toString());
assertEquals(new Color(220, 230, 242), s1.getFillColor());
// lighter 60%
XSLFSimpleShape s2 = (XSLFSimpleShape)shapes.get(2);
CTSchemeColor ref2 = getSpPr(s2).getSolidFill().getSchemeClr();
assertEquals(1, ref2.sizeOfLumModArray());
assertEquals(1, ref2.sizeOfLumOffArray());
assertEquals(40000, ref2.getLumModArray(0).getVal());
assertEquals(60000, ref2.getLumOffArray(0).getVal());
assertEquals("accent1", ref2.getVal().toString());
assertEquals(new Color(185, 205, 229), s2.getFillColor());
// lighter 40%
XSLFSimpleShape s3 = (XSLFSimpleShape)shapes.get(3);
CTSchemeColor ref3 = getSpPr(s3).getSolidFill().getSchemeClr();
assertEquals(1, ref3.sizeOfLumModArray());
assertEquals(1, ref3.sizeOfLumOffArray());
assertEquals(60000, ref3.getLumModArray(0).getVal());
assertEquals(40000, ref3.getLumOffArray(0).getVal());
assertEquals("accent1", ref3.getVal().toString());
assertEquals(new Color(149, 179, 215), s3.getFillColor());
// darker 25%
XSLFSimpleShape s4 = (XSLFSimpleShape)shapes.get(4);
CTSchemeColor ref4 = getSpPr(s4).getSolidFill().getSchemeClr();
assertEquals(1, ref4.sizeOfLumModArray());
assertEquals(0, ref4.sizeOfLumOffArray());
assertEquals(75000, ref4.getLumModArray(0).getVal());
assertEquals("accent1", ref3.getVal().toString());
assertEquals(new Color(55, 96, 146), s4.getFillColor());
XSLFSimpleShape s5 = (XSLFSimpleShape)shapes.get(5);
CTSchemeColor ref5 = getSpPr(s5).getSolidFill().getSchemeClr();
assertEquals(1, ref5.sizeOfLumModArray());
assertEquals(0, ref5.sizeOfLumOffArray());
assertEquals(50000, ref5.getLumModArray(0).getVal());
assertEquals("accent1", ref5.getVal().toString());
assertEquals(new Color(37, 64, 97), s5.getFillColor());
ppt.close();
} }
@Test @Test
public void testAnchor() throws IOException { public void testAnchor() throws IOException {
XMLSlideShow ppt = XSLFTestDataSamples.openSampleDocument("shapes.pptx"); try (XMLSlideShow ppt = XSLFTestDataSamples.openSampleDocument("shapes.pptx")) {
List<XSLFSlide> slide = ppt.getSlides(); List<XSLFSlide> slide = ppt.getSlides();
XSLFSlide slide2 = slide.get(1); XSLFSlide slide2 = slide.get(1);
XSLFSlideLayout layout2 = slide2.getSlideLayout(); XSLFSlideLayout layout2 = slide2.getSlideLayout();
List<XSLFShape> shapes2 = slide2.getShapes(); List<XSLFShape> shapes2 = slide2.getShapes();
XSLFTextShape sh1 = (XSLFTextShape)shapes2.get(0); XSLFTextShape sh1 = (XSLFTextShape) shapes2.get(0);
assertEquals(Placeholder.CENTERED_TITLE, sh1.getTextType()); assertEquals(Placeholder.CENTERED_TITLE, sh1.getTextType());
assertEquals("PPTX Title", sh1.getText()); assertEquals("PPTX Title", sh1.getText());
assertFalse(getSpPr(sh1).isSetXfrm()); // xfrm is not set, the query is delegated to the slide layout assertFalse(getSpPr(sh1).isSetXfrm()); // xfrm is not set, the query is delegated to the slide layout
assertEquals(sh1.getAnchor(), layout2.getTextShapeByType(Placeholder.CENTERED_TITLE).getAnchor()); assertEquals(sh1.getAnchor(), layout2.getTextShapeByType(Placeholder.CENTERED_TITLE).getAnchor());
XSLFTextShape sh2 = (XSLFTextShape)shapes2.get(1); XSLFTextShape sh2 = (XSLFTextShape) shapes2.get(1);
assertEquals("Subtitle\nAnd second line", sh2.getText()); assertEquals("Subtitle\nAnd second line", sh2.getText());
assertEquals(Placeholder.SUBTITLE, sh2.getTextType()); assertEquals(Placeholder.SUBTITLE, sh2.getTextType());
assertFalse(getSpPr(sh2).isSetXfrm()); // xfrm is not set, the query is delegated to the slide layout assertFalse(getSpPr(sh2).isSetXfrm()); // xfrm is not set, the query is delegated to the slide layout
assertEquals(sh2.getAnchor(), layout2.getTextShapeByType(Placeholder.SUBTITLE).getAnchor()); assertEquals(sh2.getAnchor(), layout2.getTextShapeByType(Placeholder.SUBTITLE).getAnchor());
XSLFSlide slide5 = slide.get(4); XSLFSlide slide5 = slide.get(4);
XSLFSlideLayout layout5 = slide5.getSlideLayout(); XSLFSlideLayout layout5 = slide5.getSlideLayout();
XSLFTextShape shTitle = slide5.getTextShapeByType(Placeholder.TITLE); XSLFTextShape shTitle = slide5.getTextShapeByType(Placeholder.TITLE);
assertEquals("Hyperlinks", shTitle.getText()); assertEquals("Hyperlinks", shTitle.getText());
// xfrm is not set, the query is delegated to the slide layout // xfrm is not set, the query is delegated to the slide layout
assertFalse(getSpPr(shTitle).isSetXfrm()); assertFalse(getSpPr(shTitle).isSetXfrm());
// xfrm is not set, the query is delegated to the slide master // xfrm is not set, the query is delegated to the slide master
assertFalse(getSpPr(layout5.getTextShapeByType(Placeholder.TITLE)).isSetXfrm()); assertFalse(getSpPr(layout5.getTextShapeByType(Placeholder.TITLE)).isSetXfrm());
assertTrue(getSpPr(layout5.getSlideMaster().getTextShapeByType(Placeholder.TITLE)).isSetXfrm()); assertTrue(getSpPr(layout5.getSlideMaster().getTextShapeByType(Placeholder.TITLE)).isSetXfrm());
assertEquals(shTitle.getAnchor(), layout5.getSlideMaster().getTextShapeByType(Placeholder.TITLE).getAnchor()); assertEquals(shTitle.getAnchor(), layout5.getSlideMaster().getTextShapeByType(Placeholder.TITLE).getAnchor());
}
ppt.close();
} }
@SuppressWarnings("unused") @SuppressWarnings({"unused", "deprecation"})
@Test @Test
public void testShadowEffects() throws IOException{ public void testShadowEffects() throws IOException{
XMLSlideShow ppt = new XMLSlideShow(); try (XMLSlideShow ppt = new XMLSlideShow()) {
XSLFSlide slide = ppt.createSlide(); XSLFSlide slide = ppt.createSlide();
CTStyleMatrix styleMatrix = slide.getTheme().getXmlObject().getThemeElements().getFmtScheme(); CTStyleMatrix styleMatrix = slide.getTheme().getXmlObject().getThemeElements().getFmtScheme();
CTEffectStyleList lst = styleMatrix.getEffectStyleLst(); CTEffectStyleList lst = styleMatrix.getEffectStyleLst();
assertNotNull(lst); assertNotNull(lst);
for(CTEffectStyleItem ef : lst.getEffectStyleArray()){ for (CTEffectStyleItem ef : lst.getEffectStyleArray()) {
CTOuterShadowEffect obj = ef.getEffectLst().getOuterShdw(); CTOuterShadowEffect obj = ef.getEffectLst().getOuterShdw();
}
} }
ppt.close();
} }
@Test @Test
public void testValidGeometry() throws Exception { public void testValidGeometry() throws Exception {
XMLSlideShow ppt = new XMLSlideShow(); try (XMLSlideShow ppt = new XMLSlideShow()) {
XSLFSlide slide = ppt.createSlide(); XSLFSlide slide = ppt.createSlide();
XSLFSimpleShape shape = slide.createAutoShape(); XSLFSimpleShape shape = slide.createAutoShape();
CTShapeProperties spPr = getSpPr(shape); CTShapeProperties spPr = getSpPr(shape);
CTPresetGeometry2D prstGeom = CTPresetGeometry2D.Factory.newInstance(); CTPresetGeometry2D prstGeom = CTPresetGeometry2D.Factory.newInstance();
prstGeom.setPrst(STShapeType.Enum.forInt(1)); prstGeom.setPrst(STShapeType.Enum.forInt(1));
assertNotNull(prstGeom.getPrst()); assertNotNull(prstGeom.getPrst());
assertNotNull(prstGeom.getPrst().toString()); assertNotNull(prstGeom.getPrst().toString());
assertNotNull(spPr.getPrstGeom()); assertNotNull(spPr.getPrstGeom());
spPr.setPrstGeom(prstGeom); spPr.setPrstGeom(prstGeom);
assertNotNull(spPr.getPrstGeom().getPrst()); assertNotNull(spPr.getPrstGeom().getPrst());
assertNotNull(spPr.getPrstGeom().getPrst().toString()); assertNotNull(spPr.getPrstGeom().getPrst().toString());
assertNotNull(shape.getGeometry()); assertNotNull(shape.getGeometry());
}
ppt.close();
} }
@Test @Test
public void testInvalidGeometry() throws Exception { public void testArrayStoreException() throws Exception {
XMLSlideShow ppt = new XMLSlideShow(); File file = POIDataSamples.getSlideShowInstance().getFile("aascu.org_workarea_downloadasset.aspx_id=5864.pptx");
XSLFSlide slide = ppt.createSlide(); String[] args = {
"-format", "null", // png,gif,jpg,svg or null for test
XSLFSimpleShape shape = slide.createAutoShape(); "-slide", "-1", // -1 for all
CTShapeProperties spPr = getSpPr(shape); "-outdir", new File("build/tmp/").getCanonicalPath(),
"-quiet",
CTPresetGeometry2D prstGeom = CTPresetGeometry2D.Factory.newInstance(); "-fixside", "long",
prstGeom.setPrst(STShapeType.Enum.forInt(1)); "-scale", "800",
file.getAbsolutePath()
assertNotNull(prstGeom.getPrst()); };
assertNotNull(prstGeom.getPrst().toString()); PPTX2PNG.main(args);
assertNotNull(spPr.getPrstGeom());
spPr.setPrstGeom(prstGeom);
assertNotNull(spPr.getPrstGeom().getPrst());
assertNotNull(spPr.getPrstGeom().getPrst().toString());
try {
// cause the geometries to be not found
TestPresetGeometries.clearPreset();
try {
shape.getGeometry();
fail("Should fail without the geometry");
} catch (IllegalStateException e) {
assertTrue(e.getMessage(), e.getMessage().contains("line"));
}
} finally {
// reset to not affect other tests
TestPresetGeometries.resetPreset();
}
ppt.close();
}
@SuppressWarnings("Duplicates")
@Test
public void testArrayStoreException() throws IOException {
XMLSlideShow ppt = XSLFTestDataSamples.openSampleDocument("aascu.org_workarea_downloadasset.aspx_id=5864.pptx");
Dimension pgsize = ppt.getPageSize();
for (Slide<?,?> s : ppt.getSlides()) {
//System.out.println("Slide: " + s);
BufferedImage img = new BufferedImage(pgsize.width, pgsize.height, BufferedImage.TYPE_INT_ARGB);
Graphics2D graphics = img.createGraphics();
// default rendering options
graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
graphics.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
graphics.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
graphics.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS, RenderingHints.VALUE_FRACTIONALMETRICS_ON);
// draw stuff
s.draw(graphics);
graphics.dispose();
img.flush();
}
ppt.close();
} }
static CTShapeProperties getSpPr(XSLFShape shape) { static CTShapeProperties getSpPr(XSLFShape shape) {

View File

@ -25,23 +25,20 @@ import java.awt.geom.Path2D;
import java.awt.geom.Point2D; import java.awt.geom.Point2D;
import java.awt.geom.Rectangle2D; import java.awt.geom.Rectangle2D;
import java.util.Iterator; import java.util.Iterator;
import java.util.List;
import org.apache.poi.ddf.AbstractEscherOptRecord; import org.apache.poi.ddf.AbstractEscherOptRecord;
import org.apache.poi.ddf.EscherArrayProperty; import org.apache.poi.ddf.EscherArrayProperty;
import org.apache.poi.ddf.EscherContainerRecord; import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherPropertyTypes; import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherSimpleProperty; import org.apache.poi.ddf.EscherSimpleProperty;
import org.apache.poi.sl.draw.binding.CTAdjPoint2D; import org.apache.poi.sl.draw.geom.AdjustPoint;
import org.apache.poi.sl.draw.binding.CTCustomGeometry2D; import org.apache.poi.sl.draw.geom.ArcToCommand;
import org.apache.poi.sl.draw.binding.CTPath2D; import org.apache.poi.sl.draw.geom.ClosePathCommand;
import org.apache.poi.sl.draw.binding.CTPath2DArcTo; import org.apache.poi.sl.draw.geom.CurveToCommand;
import org.apache.poi.sl.draw.binding.CTPath2DCubicBezierTo;
import org.apache.poi.sl.draw.binding.CTPath2DLineTo;
import org.apache.poi.sl.draw.binding.CTPath2DList;
import org.apache.poi.sl.draw.binding.CTPath2DMoveTo;
import org.apache.poi.sl.draw.binding.ObjectFactory;
import org.apache.poi.sl.draw.geom.CustomGeometry; import org.apache.poi.sl.draw.geom.CustomGeometry;
import org.apache.poi.sl.draw.geom.LineToCommand;
import org.apache.poi.sl.draw.geom.MoveToCommand;
import org.apache.poi.sl.draw.geom.Path;
import org.apache.poi.sl.usermodel.AutoShape; import org.apache.poi.sl.usermodel.AutoShape;
import org.apache.poi.sl.usermodel.ShapeContainer; import org.apache.poi.sl.usermodel.ShapeContainer;
import org.apache.poi.sl.usermodel.ShapeType; import org.apache.poi.sl.usermodel.ShapeType;
@ -72,7 +69,6 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
static final byte[] SEGMENTINFO_CLOSE = new byte[]{0x01, (byte)0x60}; static final byte[] SEGMENTINFO_CLOSE = new byte[]{0x01, (byte)0x60};
static final byte[] SEGMENTINFO_END = new byte[]{0x00, (byte)0x80}; static final byte[] SEGMENTINFO_END = new byte[]{0x00, (byte)0x80};
private static final ObjectFactory OF = new ObjectFactory();
private static final BitField PATH_INFO = BitFieldFactory.getInstance(0xE000); private static final BitField PATH_INFO = BitFieldFactory.getInstance(0xE000);
private static final BitField ESCAPE_INFO = BitFieldFactory.getInstance(0x1F00); private static final BitField ESCAPE_INFO = BitFieldFactory.getInstance(0x1F00);
@ -211,11 +207,7 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
} }
CustomGeometry getGeometry(Path2D path2D) { CustomGeometry getGeometry(Path2D path2D) {
final CTCustomGeometry2D cusGeo = OF.createCTCustomGeometry2D(); final CustomGeometry cusGeo = new CustomGeometry();
cusGeo.setAvLst(OF.createCTGeomGuideList());
cusGeo.setGdLst(OF.createCTGeomGuideList());
cusGeo.setAhLst(OF.createCTAdjustHandleList());
cusGeo.setCxnLst(OF.createCTConnectionSiteList());
final AbstractEscherOptRecord opt = getEscherOptRecord(); final AbstractEscherOptRecord opt = getEscherOptRecord();
@ -239,11 +231,8 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
final int[] xyPoints = new int[2]; final int[] xyPoints = new int[2];
boolean isClosed = false; boolean isClosed = false;
final CTPath2DList pathLst = OF.createCTPath2DList(); final Path path = new Path();
final CTPath2D pathCT = OF.createCTPath2D(); cusGeo.addPath(path);
final List<Object> moveLst = pathCT.getCloseOrMoveToOrLnTo();
pathLst.getPath().add(pathCT);
cusGeo.setPathLst(pathLst);
while (segIter.hasNext()) { while (segIter.hasNext()) {
byte[] segElem = segIter.next(); byte[] segElem = segIter.next();
@ -253,20 +242,20 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
} }
switch (pi) { switch (pi) {
case escape: case escape:
handleEscapeInfo(pathCT, path2D, segElem, vertIter); handleEscapeInfo(path, path2D, segElem, vertIter);
break; break;
case moveTo: case moveTo:
handleMoveTo(vertIter, xyPoints, moveLst, path2D); handleMoveTo(vertIter, xyPoints, path, path2D);
break; break;
case lineTo: case lineTo:
handleLineTo(vertIter, xyPoints, moveLst, path2D); handleLineTo(vertIter, xyPoints, path, path2D);
break; break;
case curveTo: case curveTo:
handleCurveTo(vertIter, xyPoints, moveLst, path2D); handleCurveTo(vertIter, xyPoints, path, path2D);
break; break;
case close: case close:
if (path2D.getCurrentPoint() != null) { if (path2D.getCurrentPoint() != null) {
moveLst.add(OF.createCTPath2DClose()); path.addCommand(new ClosePathCommand());
path2D.closePath(); path2D.closePath();
} }
isClosed = true; isClosed = true;
@ -277,15 +266,15 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
} }
if (!isClosed) { if (!isClosed) {
handleClosedShape(opt, moveLst, path2D); handleClosedShape(opt, path, path2D);
} }
final Rectangle2D bounds = getBounds(opt, path2D); final Rectangle2D bounds = getBounds(opt, path2D);
pathCT.setW((int)Math.rint(bounds.getWidth())); path.setW((int)Math.rint(bounds.getWidth()));
pathCT.setH((int)Math.rint(bounds.getHeight())); path.setH((int)Math.rint(bounds.getHeight()));
return new CustomGeometry(cusGeo); return cusGeo;
} }
private static Rectangle2D getBounds(AbstractEscherOptRecord opt, Path2D path2D) { private static Rectangle2D getBounds(AbstractEscherOptRecord opt, Path2D path2D) {
@ -306,76 +295,79 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
} }
} }
private static void handleClosedShape(AbstractEscherOptRecord opt, List<Object> moveLst, Path2D path2D) { private static void handleClosedShape(AbstractEscherOptRecord opt, Path path, Path2D path2D) {
EscherSimpleProperty shapePath = getEscherProperty(opt, EscherPropertyTypes.GEOMETRY__SHAPEPATH); EscherSimpleProperty shapePath = getEscherProperty(opt, EscherPropertyTypes.GEOMETRY__SHAPEPATH);
HSLFFreeformShape.ShapePath sp = HSLFFreeformShape.ShapePath.valueOf(shapePath == null ? 1 : shapePath.getPropertyValue()); HSLFFreeformShape.ShapePath sp = HSLFFreeformShape.ShapePath.valueOf(shapePath == null ? 1 : shapePath.getPropertyValue());
if (sp == LINES_CLOSED || sp == CURVES_CLOSED) { if (sp == LINES_CLOSED || sp == CURVES_CLOSED) {
moveLst.add(OF.createCTPath2DClose()); path.addCommand(new ClosePathCommand());
path2D.closePath(); path2D.closePath();
} }
} }
private static void handleMoveTo(Iterator<byte[]> vertIter, int[] xyPoints, List<Object> moveLst, Path2D path2D) { private static void handleMoveTo(Iterator<byte[]> vertIter, int[] xyPoints, Path path, Path2D path2D) {
if (!vertIter.hasNext()) { if (!vertIter.hasNext()) {
return; return;
} }
final CTPath2DMoveTo m = OF.createCTPath2DMoveTo(); final MoveToCommand m = new MoveToCommand();
m.setPt(fillPoint(vertIter.next(), xyPoints)); m.setPt(fillPoint(vertIter.next(), xyPoints));
moveLst.add(m); path.addCommand(m);
path2D.moveTo(xyPoints[0], xyPoints[1]); path2D.moveTo(xyPoints[0], xyPoints[1]);
} }
private static void handleLineTo(Iterator<byte[]> vertIter, int[] xyPoints, List<Object> moveLst, Path2D path2D) { private static void handleLineTo(Iterator<byte[]> vertIter, int[] xyPoints, Path path, Path2D path2D) {
if (!vertIter.hasNext()) { if (!vertIter.hasNext()) {
return; return;
} }
handleMoveTo0(moveLst, path2D); handleMoveTo0(path, path2D);
final CTPath2DLineTo m = OF.createCTPath2DLineTo(); final LineToCommand m = new LineToCommand();
m.setPt(fillPoint(vertIter.next(), xyPoints)); m.setPt(fillPoint(vertIter.next(), xyPoints));
moveLst.add(m); path.addCommand(m);
path2D.lineTo(xyPoints[0], xyPoints[1]); path2D.lineTo(xyPoints[0], xyPoints[1]);
} }
private static void handleCurveTo(Iterator<byte[]> vertIter, int[] xyPoints, List<Object> moveLst, Path2D path2D) { private static void handleCurveTo(Iterator<byte[]> vertIter, int[] xyPoints, Path path, Path2D path2D) {
if (!vertIter.hasNext()) { if (!vertIter.hasNext()) {
return; return;
} }
handleMoveTo0(moveLst, path2D); handleMoveTo0(path, path2D);
final CTPath2DCubicBezierTo m = OF.createCTPath2DCubicBezierTo(); final CurveToCommand m = new CurveToCommand();
List<CTAdjPoint2D> mLst = m.getPt();
int[] pts = new int[6]; int[] pts = new int[6];
AdjustPoint[] ap = new AdjustPoint[3];
for (int i=0; vertIter.hasNext() && i<3; i++) { for (int i=0; vertIter.hasNext() && i<3; i++) {
mLst.add(fillPoint(vertIter.next(), xyPoints)); ap[i] = fillPoint(vertIter.next(), xyPoints);
pts[i*2] = xyPoints[0]; pts[i*2] = xyPoints[0];
pts[i*2+1] = xyPoints[1]; pts[i*2+1] = xyPoints[1];
if (i == 2) {
moveLst.add(m);
path2D.curveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);
}
} }
m.setPt1(ap[0]);
m.setPt2(ap[1]);
m.setPt3(ap[2]);
path.addCommand(m);
path2D.curveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);
} }
/** /**
* Sometimes the path2D is not initialized - this initializes it with the 0,0 position * Sometimes the path2D is not initialized - this initializes it with the 0,0 position
*/ */
private static void handleMoveTo0(List<Object> moveLst, Path2D path2D) { private static void handleMoveTo0(Path moveLst, Path2D path2D) {
if (path2D.getCurrentPoint() == null) { if (path2D.getCurrentPoint() == null) {
final CTPath2DMoveTo m = OF.createCTPath2DMoveTo(); final MoveToCommand m = new MoveToCommand();
CTAdjPoint2D pt = OF.createCTAdjPoint2D(); AdjustPoint pt = new AdjustPoint();
pt.setX("0"); pt.setX("0");
pt.setY("0"); pt.setY("0");
m.setPt(pt); m.setPt(pt);
moveLst.add(m); moveLst.addCommand(m);
path2D.moveTo(0, 0); path2D.moveTo(0, 0);
} }
} }
private static void handleEscapeInfo(CTPath2D pathCT, Path2D path2D, byte[] segElem, Iterator<byte[]> vertIter) { private static void handleEscapeInfo(Path pathCT, Path2D path2D, byte[] segElem, Iterator<byte[]> vertIter) {
HSLFAutoShape.EscapeInfo ei = getEscapeInfo(segElem); HSLFAutoShape.EscapeInfo ei = getEscapeInfo(segElem);
if (ei == null) { if (ei == null) {
return; return;
@ -412,14 +404,14 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
path2D.append(arc2D, true); path2D.append(arc2D, true);
CTPath2DArcTo arcTo = OF.createCTPath2DArcTo(); ArcToCommand arcTo = new ArcToCommand();
arcTo.setHR(d2s(bounds.getHeight()/2.0)); arcTo.setHR(d2s(bounds.getHeight()/2.0));
arcTo.setWR(d2s(bounds.getWidth()/2.0)); arcTo.setWR(d2s(bounds.getWidth()/2.0));
arcTo.setStAng(d2s(-arc2D.getAngleStart()*60000.)); arcTo.setStAng(d2s(-arc2D.getAngleStart()*60000.));
arcTo.setSwAng(d2s(-arc2D.getAngleExtent()*60000.)); arcTo.setSwAng(d2s(-arc2D.getAngleExtent()*60000.));
pathCT.getCloseOrMoveToOrLnTo().add(arcTo); pathCT.addCommand(arcTo);
break; break;
} }
@ -487,7 +479,7 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
} }
private static CTAdjPoint2D fillPoint(byte[] xyMaster, int[] xyPoints) { private static AdjustPoint fillPoint(byte[] xyMaster, int[] xyPoints) {
if (xyMaster == null || xyPoints == null) { if (xyMaster == null || xyPoints == null) {
LOG.log(POILogger.WARN, "Master bytes or points not set - ignore point"); LOG.log(POILogger.WARN, "Master bytes or points not set - ignore point");
return null; return null;
@ -512,8 +504,8 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
return toPoint(xyPoints); return toPoint(xyPoints);
} }
private static CTAdjPoint2D toPoint(int[] xyPoints) { private static AdjustPoint toPoint(int[] xyPoints) {
CTAdjPoint2D pt = OF.createCTAdjPoint2D(); AdjustPoint pt = new AdjustPoint();
pt.setX(Integer.toString(xyPoints[0])); pt.setX(Integer.toString(xyPoints[0]));
pt.setY(Integer.toString(xyPoints[1])); pt.setY(Integer.toString(xyPoints[1]));
return pt; return pt;

View File

@ -368,7 +368,10 @@ public abstract class HSLFSimpleShape extends HSLFShape implements SimpleShape<H
break; break;
} }
return new Guide(name, "val "+Math.rint(adjval * (isDegreeUnit ? 65536. : 100000./21000.))); Guide gd = new Guide();
gd.setName(name);
gd.setFmla("val "+Math.rint(adjval * (isDegreeUnit ? 65536. : 100000./21000.)));
return gd;
} }
@Override @Override

View File

@ -21,13 +21,11 @@ package org.apache.poi.sl.draw.geom;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertSame; import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.awt.geom.Rectangle2D; import java.awt.geom.Rectangle2D;
import java.net.URL; import java.net.URL;
import java.util.Enumeration; import java.util.Enumeration;
import java.util.Map;
import org.junit.Ignore; import org.junit.Ignore;
import org.junit.Test; import org.junit.Test;
@ -35,8 +33,9 @@ import org.junit.Test;
public class TestPresetGeometries { public class TestPresetGeometries {
@Test @Test
public void testRead(){ public void testRead(){
Map<String, CustomGeometry> shapes = PresetGeometries.getInstance(); PresetGeometries shapes = PresetGeometries.getInstance();
assertEquals(187, shapes.size()); assertEquals(187, shapes.size());
assertEquals(0x4533584F, shapes.hashCode());
for(String name : shapes.keySet()) { for(String name : shapes.keySet()) {
CustomGeometry geom = shapes.get(name); CustomGeometry geom = shapes.get(name);
@ -51,19 +50,6 @@ public class TestPresetGeometries {
assertSame(shapes, PresetGeometries.getInstance()); assertSame(shapes, PresetGeometries.getInstance());
} }
// helper methods to adjust list of presets for other tests
public static void clearPreset() {
// ensure that we are initialized
assertNotNull(PresetGeometries.getInstance());
// test handling if some presets are not found
PresetGeometries._inst.clear();
}
public static void resetPreset() {
PresetGeometries._inst = null;
}
@Ignore("problem solved? Turn back on if this debugging is still in process.") @Ignore("problem solved? Turn back on if this debugging is still in process.")
@Test @Test
public void testCheckXMLParser() throws Exception{ public void testCheckXMLParser() throws Exception{