You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2019/10/12 16:32:53 UTC
svn commit: r1868352 [4/6] - in /poi/trunk/src: java/org/apache/poi/ddf/
java/org/apache/poi/hssf/model/ java/org/apache/poi/hssf/usermodel/
java/org/apache/poi/sl/usermodel/ scratchpad/src/org/apache/poi/hslf/model/
scratchpad/src/org/apache/poi/hslf/...
Added: poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypes.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypes.java?rev=1868352&view=auto
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypes.java (added)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypes.java Sat Oct 12 16:32:53 2019
@@ -0,0 +1,376 @@
+/* ====================================================================
+ 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.ddf;
+
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+/**
+ * Provides a list of all known escher properties including the description and type.
+ */
+public enum EscherPropertyTypes {
+ TRANSFORM__ROTATION(0x0004, "transform.rotation"),
+ PROTECTION__LOCKROTATION(0x0077, "protection.lockrotation"),
+ PROTECTION__LOCKASPECTRATIO(0x0078, "protection.lockaspectratio"),
+ PROTECTION__LOCKPOSITION(0x0079, "protection.lockposition"),
+ PROTECTION__LOCKAGAINSTSELECT(0x007a, "protection.lockagainstselect"),
+ PROTECTION__LOCKCROPPING(0x007b, "protection.lockcropping"),
+ PROTECTION__LOCKVERTICES(0x007c, "protection.lockvertices"),
+ PROTECTION__LOCKTEXT(0x007d, "protection.locktext"),
+ PROTECTION__LOCKADJUSTHANDLES(0x007e, "protection.lockadjusthandles"),
+ PROTECTION__LOCKAGAINSTGROUPING(0x007f, "protection.lockagainstgrouping", EscherPropertyTypesHolder.BOOLEAN),
+ TEXT__TEXTID(0x0080, "text.textid"),
+ TEXT__TEXTLEFT(0x0081, "text.textleft"),
+ TEXT__TEXTTOP(0x0082, "text.texttop"),
+ TEXT__TEXTRIGHT(0x0083, "text.textright"),
+ TEXT__TEXTBOTTOM(0x0084, "text.textbottom"),
+ TEXT__WRAPTEXT(0x0085, "text.wraptext"),
+ TEXT__SCALETEXT(0x0086, "text.scaletext"),
+ TEXT__ANCHORTEXT(0x0087, "text.anchortext"),
+ TEXT__TEXTFLOW(0x0088, "text.textflow"),
+ TEXT__FONTROTATION(0x0089, "text.fontrotation"),
+ TEXT__IDOFNEXTSHAPE(0x008a, "text.idofnextshape"),
+ TEXT__BIDIR(0x008b, "text.bidir"),
+ TEXT__SINGLECLICKSELECTS(0x00bb, "text.singleclickselects"),
+ TEXT__USEHOSTMARGINS(0x00bc, "text.usehostmargins"),
+ TEXT__ROTATETEXTWITHSHAPE(0x00bd, "text.rotatetextwithshape"),
+ TEXT__SIZESHAPETOFITTEXT(0x00be, "text.sizeshapetofittext"),
+ TEXT__SIZE_TEXT_TO_FIT_SHAPE(0x00bf, "text.sizetexttofitshape", EscherPropertyTypesHolder.BOOLEAN),
+ GEOTEXT__UNICODE(0x00c0, "geotext.unicode"),
+ GEOTEXT__RTFTEXT(0x00c1, "geotext.rtftext"),
+ GEOTEXT__ALIGNMENTONCURVE(0x00c2, "geotext.alignmentoncurve"),
+ GEOTEXT__DEFAULTPOINTSIZE(0x00c3, "geotext.defaultpointsize"),
+ GEOTEXT__TEXTSPACING(0x00c4, "geotext.textspacing"),
+ GEOTEXT__FONTFAMILYNAME(0x00c5, "geotext.fontfamilyname"),
+ GEOTEXT__REVERSEROWORDER(0x00f0, "geotext.reverseroworder"),
+ GEOTEXT__HASTEXTEFFECT(0x00f1, "geotext.hastexteffect"),
+ GEOTEXT__ROTATECHARACTERS(0x00f2, "geotext.rotatecharacters"),
+ GEOTEXT__KERNCHARACTERS(0x00f3, "geotext.kerncharacters"),
+ GEOTEXT__TIGHTORTRACK(0x00f4, "geotext.tightortrack"),
+ GEOTEXT__STRETCHTOFITSHAPE(0x00f5, "geotext.stretchtofitshape"),
+ GEOTEXT__CHARBOUNDINGBOX(0x00f6, "geotext.charboundingbox"),
+ GEOTEXT__SCALETEXTONPATH(0x00f7, "geotext.scaletextonpath"),
+ GEOTEXT__STRETCHCHARHEIGHT(0x00f8, "geotext.stretchcharheight"),
+ GEOTEXT__NOMEASUREALONGPATH(0x00f9, "geotext.nomeasurealongpath"),
+ GEOTEXT__BOLDFONT(0x00fa, "geotext.boldfont"),
+ GEOTEXT__ITALICFONT(0x00fb, "geotext.italicfont"),
+ GEOTEXT__UNDERLINEFONT(0x00fc, "geotext.underlinefont"),
+ GEOTEXT__SHADOWFONT(0x00fd, "geotext.shadowfont"),
+ GEOTEXT__SMALLCAPSFONT(0x00fe, "geotext.smallcapsfont"),
+ GEOTEXT__STRIKETHROUGHFONT(0x00ff, "geotext.strikethroughfont"),
+ BLIP__CROPFROMTOP(0x0100, "blip.cropfromtop"),
+ BLIP__CROPFROMBOTTOM(0x0101, "blip.cropfrombottom"),
+ BLIP__CROPFROMLEFT(0x0102, "blip.cropfromleft"),
+ BLIP__CROPFROMRIGHT(0x0103, "blip.cropfromright"),
+ BLIP__BLIPTODISPLAY(0x0104, "blip.bliptodisplay"),
+ BLIP__BLIPFILENAME(0x0105, "blip.blipfilename"),
+ BLIP__BLIPFLAGS(0x0106, "blip.blipflags"),
+ BLIP__TRANSPARENTCOLOR(0x0107, "blip.transparentcolor"),
+ BLIP__CONTRASTSETTING(0x0108, "blip.contrastsetting"),
+ BLIP__BRIGHTNESSSETTING(0x0109, "blip.brightnesssetting"),
+ BLIP__GAMMA(0x010a, "blip.gamma"),
+ BLIP__PICTUREID(0x010b, "blip.pictureid"),
+ BLIP__DOUBLEMOD(0x010c, "blip.doublemod"),
+ BLIP__PICTUREFILLMOD(0x010d, "blip.picturefillmod"),
+ BLIP__PICTURELINE(0x010e, "blip.pictureline"),
+ BLIP__PRINTBLIP(0x010f, "blip.printblip"),
+ BLIP__PRINTBLIPFILENAME(0x0110, "blip.printblipfilename"),
+ BLIP__PRINTFLAGS(0x0111, "blip.printflags"),
+ BLIP__NOHITTESTPICTURE(0x013c, "blip.nohittestpicture"),
+ BLIP__PICTUREGRAY(0x013d, "blip.picturegray"),
+ BLIP__PICTUREBILEVEL(0x013e, "blip.picturebilevel"),
+ BLIP__PICTUREACTIVE(0x013f, "blip.pictureactive"),
+ GEOMETRY__LEFT(0x0140, "geometry.left"),
+ GEOMETRY__TOP(0x0141, "geometry.top"),
+ GEOMETRY__RIGHT(0x0142, "geometry.right"),
+ GEOMETRY__BOTTOM(0x0143, "geometry.bottom"),
+ GEOMETRY__SHAPEPATH(0x0144, "geometry.shapepath", EscherPropertyTypesHolder.SHAPE_PATH),
+ GEOMETRY__VERTICES(0x0145, "geometry.vertices", EscherPropertyTypesHolder.ARRAY),
+ GEOMETRY__SEGMENTINFO(0x0146, "geometry.segmentinfo", EscherPropertyTypesHolder.ARRAY),
+ GEOMETRY__ADJUSTVALUE(0x0147, "geometry.adjustvalue"),
+ GEOMETRY__ADJUST2VALUE(0x0148, "geometry.adjust2value"),
+ GEOMETRY__ADJUST3VALUE(0x0149, "geometry.adjust3value"),
+ GEOMETRY__ADJUST4VALUE(0x014a, "geometry.adjust4value"),
+ GEOMETRY__ADJUST5VALUE(0x014b, "geometry.adjust5value"),
+ GEOMETRY__ADJUST6VALUE(0x014c, "geometry.adjust6value"),
+ GEOMETRY__ADJUST7VALUE(0x014d, "geometry.adjust7value"),
+ GEOMETRY__ADJUST8VALUE(0x014e, "geometry.adjust8value"),
+ GEOMETRY__ADJUST9VALUE(0x014f, "geometry.adjust9value"),
+ GEOMETRY__ADJUST10VALUE(0x0150, "geometry.adjust10value"),
+ GEOMETRY__PCONNECTIONSITES(0x0151, "geometry.pConnectionSites"),
+ GEOMETRY__PCONNECTIONSITESDIR(0x0152, "geometry.pConnectionSitesDir"),
+ GEOMETRY__XLIMO(0x0153, "geometry.xLimo"),
+ GEOMETRY__YLIMO(0x0154, "geometry.yLimo"),
+ GEOMETRY__PADJUSTHANDLES(0x0155, "geometry.pAdjustHandles"),
+ GEOMETRY__PGUIDES(0x0156, "geometry.pGuides"),
+ GEOMETRY__PINSCRIBE(0x0157, "geometry.pInscribe"),
+ GEOMETRY__CXK(0x0158, "geometry.cxk"),
+ GEOMETRY__PFRAGMENTS(0x0159, "geometry.pFragments"),
+ GEOMETRY__SHADOWOK(0x017a, "geometry.shadowOK"),
+ GEOMETRY__3DOK(0x017b, "geometry.3dok"),
+ GEOMETRY__LINEOK(0x017c, "geometry.lineok"),
+ GEOMETRY__GEOTEXTOK(0x017d, "geometry.geotextok"),
+ GEOMETRY__FILLSHADESHAPEOK(0x017e, "geometry.fillshadeshapeok"),
+ GEOMETRY__FILLOK(0x017f, "geometry.fillok", EscherPropertyTypesHolder.BOOLEAN),
+ FILL__FILLTYPE(0x0180, "fill.filltype"),
+ FILL__FILLCOLOR(0x0181, "fill.fillcolor", EscherPropertyTypesHolder.RGB),
+ FILL__FILLOPACITY(0x0182, "fill.fillopacity"),
+ FILL__FILLBACKCOLOR(0x0183, "fill.fillbackcolor", EscherPropertyTypesHolder.RGB),
+ FILL__BACKOPACITY(0x0184, "fill.backopacity"),
+ FILL__CRMOD(0x0185, "fill.crmod"),
+ FILL__PATTERNTEXTURE(0x0186, "fill.patterntexture"),
+ FILL__BLIPFILENAME(0x0187, "fill.blipfilename"),
+ FILL__BLIPFLAGS(0x0188, "fill.blipflags"),
+ FILL__WIDTH(0x0189, "fill.width"),
+ FILL__HEIGHT(0x018a, "fill.height"),
+ FILL__ANGLE(0x018b, "fill.angle"),
+ FILL__FOCUS(0x018c, "fill.focus"),
+ FILL__TOLEFT(0x018d, "fill.toleft"),
+ FILL__TOTOP(0x018e, "fill.totop"),
+ FILL__TORIGHT(0x018f, "fill.toright"),
+ FILL__TOBOTTOM(0x0190, "fill.tobottom"),
+ FILL__RECTLEFT(0x0191, "fill.rectleft"),
+ FILL__RECTTOP(0x0192, "fill.recttop"),
+ FILL__RECTRIGHT(0x0193, "fill.rectright"),
+ FILL__RECTBOTTOM(0x0194, "fill.rectbottom"),
+ FILL__DZTYPE(0x0195, "fill.dztype"),
+ FILL__SHADEPRESET(0x0196, "fill.shadepreset"),
+ FILL__SHADECOLORS(0x0197, "fill.shadecolors", EscherPropertyTypesHolder.ARRAY),
+ FILL__ORIGINX(0x0198, "fill.originx"),
+ FILL__ORIGINY(0x0199, "fill.originy"),
+ FILL__SHAPEORIGINX(0x019a, "fill.shapeoriginx"),
+ FILL__SHAPEORIGINY(0x019b, "fill.shapeoriginy"),
+ FILL__SHADETYPE(0x019c, "fill.shadetype"),
+ FILL__FILLED(0x01bb, "fill.filled"),
+ FILL__HITTESTFILL(0x01bc, "fill.hittestfill"),
+ FILL__SHAPE(0x01bd, "fill.shape"),
+ FILL__USERECT(0x01be, "fill.userect"),
+ FILL__NOFILLHITTEST(0x01bf, "fill.nofillhittest", EscherPropertyTypesHolder.BOOLEAN),
+ LINESTYLE__COLOR(0x01c0, "linestyle.color", EscherPropertyTypesHolder.RGB),
+ LINESTYLE__OPACITY(0x01c1, "linestyle.opacity"),
+ LINESTYLE__BACKCOLOR(0x01c2, "linestyle.backcolor", EscherPropertyTypesHolder.RGB),
+ LINESTYLE__CRMOD(0x01c3, "linestyle.crmod"),
+ LINESTYLE__LINETYPE(0x01c4, "linestyle.linetype"),
+ LINESTYLE__FILLBLIP(0x01c5, "linestyle.fillblip"),
+ LINESTYLE__FILLBLIPNAME(0x01c6, "linestyle.fillblipname"),
+ LINESTYLE__FILLBLIPFLAGS(0x01c7, "linestyle.fillblipflags"),
+ LINESTYLE__FILLWIDTH(0x01c8, "linestyle.fillwidth"),
+ LINESTYLE__FILLHEIGHT(0x01c9, "linestyle.fillheight"),
+ LINESTYLE__FILLDZTYPE(0x01ca, "linestyle.filldztype"),
+ LINESTYLE__LINEWIDTH(0x01cb, "linestyle.linewidth"),
+ LINESTYLE__LINEMITERLIMIT(0x01cc, "linestyle.linemiterlimit"),
+ LINESTYLE__LINESTYLE(0x01cd, "linestyle.linestyle"),
+ LINESTYLE__LINEDASHING(0x01ce, "linestyle.linedashing"),
+ LINESTYLE__LINEDASHSTYLE(0x01cf, "linestyle.linedashstyle", EscherPropertyTypesHolder.ARRAY),
+ LINESTYLE__LINESTARTARROWHEAD(0x01d0, "linestyle.linestartarrowhead"),
+ LINESTYLE__LINEENDARROWHEAD(0x01d1, "linestyle.lineendarrowhead"),
+ LINESTYLE__LINESTARTARROWWIDTH(0x01d2, "linestyle.linestartarrowwidth"),
+ LINESTYLE__LINESTARTARROWLENGTH(0x01d3, "linestyle.linestartarrowlength"),
+ LINESTYLE__LINEENDARROWWIDTH(0x01d4, "linestyle.lineendarrowwidth"),
+ LINESTYLE__LINEENDARROWLENGTH(0x01d5, "linestyle.lineendarrowlength"),
+ LINESTYLE__LINEJOINSTYLE(0x01d6, "linestyle.linejoinstyle"),
+ LINESTYLE__LINEENDCAPSTYLE(0x01d7, "linestyle.lineendcapstyle"),
+ LINESTYLE__ARROWHEADSOK(0x01fb, "linestyle.arrowheadsok"),
+ LINESTYLE__ANYLINE(0x01fc, "linestyle.anyline"),
+ LINESTYLE__HITLINETEST(0x01fd, "linestyle.hitlinetest"),
+ LINESTYLE__LINEFILLSHAPE(0x01fe, "linestyle.linefillshape"),
+ LINESTYLE__NOLINEDRAWDASH(0x01ff, "linestyle.nolinedrawdash", EscherPropertyTypesHolder.BOOLEAN),
+ LINESTYLE__NOLINEDRAWDASH_LEFT(0x057F, "linestyle.nolinedrawdash.left", EscherPropertyTypesHolder.BOOLEAN),
+ LINESTYLE__NOLINEDRAWDASH_TOP(0x05BF, "linestyle.nolinedrawdash.top", EscherPropertyTypesHolder.BOOLEAN),
+ LINESTYLE__NOLINEDRAWDASH_BOTTOM(0x063F, "linestyle.nolinedrawdash.bottom", EscherPropertyTypesHolder.BOOLEAN),
+ LINESTYLE__NOLINEDRAWDASH_RIGHT(0x05FF, "linestyle.nolinedrawdash.right", EscherPropertyTypesHolder.BOOLEAN),
+ SHADOWSTYLE__TYPE(0x0200, "shadowstyle.type"),
+ SHADOWSTYLE__COLOR(0x0201, "shadowstyle.color", EscherPropertyTypesHolder.RGB),
+ SHADOWSTYLE__HIGHLIGHT(0x0202, "shadowstyle.highlight"),
+ SHADOWSTYLE__CRMOD(0x0203, "shadowstyle.crmod"),
+ SHADOWSTYLE__OPACITY(0x0204, "shadowstyle.opacity"),
+ SHADOWSTYLE__OFFSETX(0x0205, "shadowstyle.offsetx"),
+ SHADOWSTYLE__OFFSETY(0x0206, "shadowstyle.offsety"),
+ SHADOWSTYLE__SECONDOFFSETX(0x0207, "shadowstyle.secondoffsetx"),
+ SHADOWSTYLE__SECONDOFFSETY(0x0208, "shadowstyle.secondoffsety"),
+ SHADOWSTYLE__SCALEXTOX(0x0209, "shadowstyle.scalextox"),
+ SHADOWSTYLE__SCALEYTOX(0x020a, "shadowstyle.scaleytox"),
+ SHADOWSTYLE__SCALEXTOY(0x020b, "shadowstyle.scalextoy"),
+ SHADOWSTYLE__SCALEYTOY(0x020c, "shadowstyle.scaleytoy"),
+ SHADOWSTYLE__PERSPECTIVEX(0x020d, "shadowstyle.perspectivex"),
+ SHADOWSTYLE__PERSPECTIVEY(0x020e, "shadowstyle.perspectivey"),
+ SHADOWSTYLE__WEIGHT(0x020f, "shadowstyle.weight"),
+ SHADOWSTYLE__ORIGINX(0x0210, "shadowstyle.originx"),
+ SHADOWSTYLE__ORIGINY(0x0211, "shadowstyle.originy"),
+ SHADOWSTYLE__SHADOW(0x023e, "shadowstyle.shadow"),
+ SHADOWSTYLE__SHADOWOBSURED(0x023f, "shadowstyle.shadowobscured"),
+ PERSPECTIVE__TYPE(0x0240, "perspective.type"),
+ PERSPECTIVE__OFFSETX(0x0241, "perspective.offsetx"),
+ PERSPECTIVE__OFFSETY(0x0242, "perspective.offsety"),
+ PERSPECTIVE__SCALEXTOX(0x0243, "perspective.scalextox"),
+ PERSPECTIVE__SCALEYTOX(0x0244, "perspective.scaleytox"),
+ PERSPECTIVE__SCALEXTOY(0x0245, "perspective.scalextoy"),
+ PERSPECTIVE__SCALEYTOY(0x0246, "perspective.scaleytoy"),
+ PERSPECTIVE__PERSPECTIVEX(0x0247, "perspective.perspectivex"),
+ PERSPECTIVE__PERSPECTIVEY(0x0248, "perspective.perspectivey"),
+ PERSPECTIVE__WEIGHT(0x0249, "perspective.weight"),
+ PERSPECTIVE__ORIGINX(0x024a, "perspective.originx"),
+ PERSPECTIVE__ORIGINY(0x024b, "perspective.originy"),
+ PERSPECTIVE__PERSPECTIVEON(0x027f, "perspective.perspectiveon"),
+ THREED__SPECULARAMOUNT(0x0280, "3d.specularamount"),
+ THREED__DIFFUSEAMOUNT(0x0281, "3d.diffuseamount"),
+ THREED__SHININESS(0x0282, "3d.shininess"),
+ THREED__EDGETHICKNESS(0x0283, "3d.edgethickness"),
+ THREED__EXTRUDEFORWARD(0x0284, "3d.extrudeforward"),
+ THREED__EXTRUDEBACKWARD(0x0285, "3d.extrudebackward"),
+ RESERVED646(0x0286, "reserved646"),
+ THREED__EXTRUSIONCOLOR(0x0287, "3d.extrusioncolor", EscherPropertyTypesHolder.RGB),
+ THREED__CRMOD(0x0288, "3d.crmod"),
+ THREED__EXTRUSIONCOLOREXT(0x0289, "3d.extrusioncolorext"),
+ RESERVED650(0x028A, "reserved650"),
+ THREED__EXTRUSIONCOLOREXTMOD(0x028B, "3d.extrusioncolorextmod"),
+ RESERVED652(0x028c, "reserved652"),
+ RESERVED653(0x028d, "reserved653"),
+ THREED__BOOLEAN_PROPERTIES(0x028f, "3d.booleanproperties"),
+ THREED__EXTRUDEPLANE(0x029a, "3d.extrudeplane"),
+ THREED__3DEFFECT(0x02bc, "3d.3deffect"),
+ THREED__METALLIC(0x02bd, "3d.metallic"),
+ THREED__USEEXTRUSIONCOLOR(0x02be, "3d.useextrusioncolor", EscherPropertyTypesHolder.RGB),
+ THREED__LIGHTFACE(0x02bf, "3d.lightface"),
+ THREEDSTYLE__YROTATIONANGLE(0x02c0, "3dstyle.yrotationangle"),
+ THREEDSTYLE__XROTATIONANGLE(0x02c1, "3dstyle.xrotationangle"),
+ THREEDSTYLE__ROTATIONAXISX(0x02c2, "3dstyle.rotationaxisx"),
+ THREEDSTYLE__ROTATIONAXISY(0x02c3, "3dstyle.rotationaxisy"),
+ THREEDSTYLE__ROTATIONAXISZ(0x02c4, "3dstyle.rotationaxisz"),
+ THREEDSTYLE__ROTATIONANGLE(0x02c5, "3dstyle.rotationangle"),
+ THREEDSTYLE__ROTATIONCENTERX(0x02c6, "3dstyle.rotationcenterx"),
+ THREEDSTYLE__ROTATIONCENTERY(0x02c7, "3dstyle.rotationcentery"),
+ THREEDSTYLE__ROTATIONCENTERZ(0x02c8, "3dstyle.rotationcenterz"),
+ THREEDSTYLE__RENDERMODE(0x02c9, "3dstyle.rendermode"),
+ THREEDSTYLE__TOLERANCE(0x02ca, "3dstyle.tolerance"),
+ THREEDSTYLE__XVIEWPOINT(0x02cb, "3dstyle.xviewpoint"),
+ THREEDSTYLE__YVIEWPOINT(0x02cc, "3dstyle.yviewpoint"),
+ THREEDSTYLE__ZVIEWPOINT(0x02cd, "3dstyle.zviewpoint"),
+ THREEDSTYLE__ORIGINX(0x02ce, "3dstyle.originx"),
+ THREEDSTYLE__ORIGINY(0x02cf, "3dstyle.originy"),
+ THREEDSTYLE__SKEWANGLE(0x02d0, "3dstyle.skewangle"),
+ THREEDSTYLE__SKEWAMOUNT(0x02d1, "3dstyle.skewamount"),
+ THREEDSTYLE__AMBIENTINTENSITY(0x02d2, "3dstyle.ambientintensity"),
+ THREEDSTYLE__KEYX(0x02d3, "3dstyle.keyx"),
+ THREEDSTYLE__KEYY(0x02d4, "3dstyle.keyy"),
+ THREEDSTYLE__KEYZ(0x02d5, "3dstyle.keyz"),
+ THREEDSTYLE__KEYINTENSITY(0x02d6, "3dstyle.keyintensity"),
+ THREEDSTYLE__FILLX(0x02d7, "3dstyle.fillx"),
+ THREEDSTYLE__FILLY(0x02d8, "3dstyle.filly"),
+ THREEDSTYLE__FILLZ(0x02d9, "3dstyle.fillz"),
+ THREEDSTYLE__FILLINTENSITY(0x02da, "3dstyle.fillintensity"),
+ THREEDSTYLE__CONSTRAINROTATION(0x02fb, "3dstyle.constrainrotation"),
+ THREEDSTYLE__ROTATIONCENTERAUTO(0x02fc, "3dstyle.rotationcenterauto"),
+ THREEDSTYLE__PARALLEL(0x02fd, "3dstyle.parallel"),
+ THREEDSTYLE__KEYHARSH(0x02fe, "3dstyle.keyharsh"),
+ THREEDSTYLE__FILLHARSH(0x02ff, "3dstyle.fillharsh"),
+ SHAPE__MASTER(0x0301, "shape.master"),
+ SHAPE__CONNECTORSTYLE(0x0303, "shape.connectorstyle"),
+ SHAPE__BLACKANDWHITESETTINGS(0x0304, "shape.blackandwhitesettings"),
+ SHAPE__WMODEPUREBW(0x0305, "shape.wmodepurebw"),
+ SHAPE__WMODEBW(0x0306, "shape.wmodebw"),
+ SHAPE__OLEICON(0x033a, "shape.oleicon"),
+ SHAPE__PREFERRELATIVERESIZE(0x033b, "shape.preferrelativeresize"),
+ SHAPE__LOCKSHAPETYPE(0x033c, "shape.lockshapetype"),
+ SHAPE__DELETEATTACHEDOBJECT(0x033e, "shape.deleteattachedobject"),
+ SHAPE__BACKGROUNDSHAPE(0x033f, "shape.backgroundshape"),
+ CALLOUT__CALLOUTTYPE(0x0340, "callout.callouttype"),
+ CALLOUT__XYCALLOUTGAP(0x0341, "callout.xycalloutgap"),
+ CALLOUT__CALLOUTANGLE(0x0342, "callout.calloutangle"),
+ CALLOUT__CALLOUTDROPTYPE(0x0343, "callout.calloutdroptype"),
+ CALLOUT__CALLOUTDROPSPECIFIED(0x0344, "callout.calloutdropspecified"),
+ CALLOUT__CALLOUTLENGTHSPECIFIED(0x0345, "callout.calloutlengthspecified"),
+ CALLOUT__ISCALLOUT(0x0379, "callout.iscallout"),
+ CALLOUT__CALLOUTACCENTBAR(0x037a, "callout.calloutaccentbar"),
+ CALLOUT__CALLOUTTEXTBORDER(0x037b, "callout.callouttextborder"),
+ CALLOUT__CALLOUTMINUSX(0x037c, "callout.calloutminusx"),
+ CALLOUT__CALLOUTMINUSY(0x037d, "callout.calloutminusy"),
+ CALLOUT__DROPAUTO(0x037e, "callout.dropauto"),
+ CALLOUT__LENGTHSPECIFIED(0x037f, "callout.lengthspecified"),
+ GROUPSHAPE__SHAPENAME(0x0380, "groupshape.shapename"),
+ GROUPSHAPE__DESCRIPTION(0x0381, "groupshape.description"),
+ GROUPSHAPE__HYPERLINK(0x0382, "groupshape.hyperlink"),
+ GROUPSHAPE__WRAPPOLYGONVERTICES(0x0383, "groupshape.wrappolygonvertices", EscherPropertyTypesHolder.ARRAY),
+ GROUPSHAPE__WRAPDISTLEFT(0x0384, "groupshape.wrapdistleft"),
+ GROUPSHAPE__WRAPDISTTOP(0x0385, "groupshape.wrapdisttop"),
+ GROUPSHAPE__WRAPDISTRIGHT(0x0386, "groupshape.wrapdistright"),
+ GROUPSHAPE__WRAPDISTBOTTOM(0x0387, "groupshape.wrapdistbottom"),
+ GROUPSHAPE__REGROUPID(0x0388, "groupshape.regroupid"),
+ GROUPSHAPE__UNUSED906(0x038A, "unused906"),
+ GROUPSHAPE__TOOLTIP(0x038D, "groupshape.wzTooltip"),
+ GROUPSHAPE__SCRIPT(0x038E, "groupshape.wzScript"),
+ GROUPSHAPE__POSH(0x038F, "groupshape.posh"),
+ GROUPSHAPE__POSRELH(0x0390, "groupshape.posrelh"),
+ GROUPSHAPE__POSV(0x0391, "groupshape.posv"),
+ GROUPSHAPE__POSRELV(0x0392, "groupshape.posrelv"),
+ GROUPSHAPE__HR_PCT(0x0393, "groupshape.pctHR"),
+ GROUPSHAPE__HR_ALIGN(0x0394, "groupshape.alignHR"),
+ GROUPSHAPE__HR_HEIGHT(0x0395, "groupshape.dxHeightHR"),
+ GROUPSHAPE__HR_WIDTH(0x0396, "groupshape.dxWidthHR"),
+ GROUPSHAPE__SCRIPTEXT(0x0397, "groupshape.wzScriptExtAttr"),
+ GROUPSHAPE__SCRIPTLANG(0x0398, "groupshape.scriptLang"),
+ GROUPSHAPE__BORDERTOPCOLOR(0x039B, "groupshape.borderTopColor"),
+ GROUPSHAPE__BORDERLEFTCOLOR(0x039C, "groupshape.borderLeftColor"),
+ GROUPSHAPE__BORDERBOTTOMCOLOR(0x039D, "groupshape.borderBottomColor"),
+ GROUPSHAPE__BORDERRIGHTCOLOR(0x039E, "groupshape.borderRightColor"),
+ GROUPSHAPE__TABLEPROPERTIES(0x039F, "groupshape.tableProperties"),
+ GROUPSHAPE__TABLEROWPROPERTIES(0x03A0, "groupshape.tableRowProperties", EscherPropertyTypesHolder.ARRAY),
+ GROUPSHAPE__WEBBOT(0x03A5, "groupshape.wzWebBot"),
+ GROUPSHAPE__METROBLOB(0x03A9, "groupshape.metroBlob"),
+ GROUPSHAPE__ZORDER(0x03AA, "groupshape.dhgt"),
+ GROUPSHAPE__EDITEDWRAP(0x03b9, "groupshape.editedwrap"),
+ GROUPSHAPE__BEHINDDOCUMENT(0x03ba, "groupshape.behinddocument"),
+ GROUPSHAPE__ONDBLCLICKNOTIFY(0x03bb, "groupshape.ondblclicknotify"),
+ GROUPSHAPE__ISBUTTON(0x03bc, "groupshape.isbutton"),
+ GROUPSHAPE__1DADJUSTMENT(0x03bd, "groupshape.1dadjustment"),
+ GROUPSHAPE__HIDDEN(0x03be, "groupshape.hidden"),
+ GROUPSHAPE__FLAGS(0x03bf, "groupshape.groupShapeBooleanProperties"),
+ UNKNOWN(0xffff, "unknown")
+ ;
+
+ /** the property number part of the property id, i.e. the id without is_blip/is_complex flag */
+ public final short propNumber;
+ public final String propName;
+ public final EscherPropertyTypesHolder holder;
+
+ EscherPropertyTypes(int propNumber, String name) {
+ this(propNumber, name, EscherPropertyTypesHolder.UNKNOWN);
+ }
+
+ EscherPropertyTypes(int propNumber, String propName, EscherPropertyTypesHolder holder) {
+ this.propNumber = (short) propNumber;
+ this.propName = propName;
+ this.holder = holder;
+ }
+
+ public short getPropertyId() {
+ return propNumber;
+ }
+
+ private static final Map<Short, EscherPropertyTypes> LOOKUP =
+ Stream.of(values()).collect(Collectors.toMap(EscherPropertyTypes::getPropertyId, Function.identity()));
+
+ public static EscherPropertyTypes forPropertyID(int propertyId) {
+ EscherPropertyTypes rt = LOOKUP.get((short)(propertyId & 0x3FFF));
+ return (rt != null) ? rt : EscherPropertyTypes.UNKNOWN;
+ }
+
+}
+
Propchange: poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypes.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypesHolder.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypesHolder.java?rev=1868352&view=auto
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypesHolder.java (added)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypesHolder.java Sat Oct 12 16:32:53 2019
@@ -0,0 +1,30 @@
+/* ====================================================================
+ 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.ddf;
+
+import org.apache.poi.util.Internal;
+
+@Internal
+public enum EscherPropertyTypesHolder {
+ UNKNOWN,
+ BOOLEAN,
+ RGB,
+ SHAPE_PATH,
+ SIMPLE,
+ ARRAY
+}
\ No newline at end of file
Propchange: poi/trunk/src/java/org/apache/poi/ddf/EscherPropertyTypesHolder.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherRGBProperty.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherRGBProperty.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherRGBProperty.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherRGBProperty.java Sat Oct 12 16:32:53 2019
@@ -17,8 +17,6 @@
package org.apache.poi.ddf;
-import org.apache.poi.util.HexDump;
-
/**
* A color property.
*/
@@ -26,12 +24,28 @@ public class EscherRGBProperty
extends EscherSimpleProperty
{
- public EscherRGBProperty( short propertyNumber, int rgbColor )
- {
+ /**
+ * Create an instance of an escher boolean property.
+ *
+ * @param propertyNumber The property number (or id)
+ * @param rgbColor The 24 bit value of this rgb property
+ */
+ public EscherRGBProperty( short propertyNumber, int rgbColor ) {
super( propertyNumber, rgbColor );
}
/**
+ * Create an instance of an escher boolean property.
+ *
+ * @param propertyNumber The property type
+ * @param rgbColor The 24 bit value of this rgb property
+ */
+ public EscherRGBProperty( EscherPropertyTypes propertyType, int rgbColor ) {
+ super(propertyType.propNumber, rgbColor );
+ }
+
+
+ /**
* @return the rgb color as int value
*/
public int getRgbColor()
@@ -62,13 +76,4 @@ public class EscherRGBProperty
{
return (byte) ( (getRgbColor() >> 16) & 0xFF );
}
-
- @Override
- public String toXml(String tab){
- StringBuilder builder = new StringBuilder();
- builder.append(tab).append("<").append(getClass().getSimpleName()).append(" id=\"0x").append(HexDump.toHex(getId()))
- .append("\" name=\"").append(getName()).append("\" blipId=\"")
- .append(isBlipId()).append("\" value=\"0x").append(HexDump.toHex(getRgbColor())).append("\"/>");
- return builder.toString();
- }
}
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherRecord.java Sat Oct 12 16:32:53 2019
@@ -27,8 +27,9 @@ import java.util.function.Supplier;
import org.apache.poi.common.usermodel.GenericRecord;
import org.apache.poi.util.BitField;
import org.apache.poi.util.BitFieldFactory;
+import org.apache.poi.util.GenericRecordJsonWriter;
import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.HexDump;
+import org.apache.poi.util.GenericRecordXmlWriter;
import org.apache.poi.util.Internal;
import org.apache.poi.util.LittleEndian;
@@ -321,188 +322,12 @@ public abstract class EscherRecord imple
* @return xml representation of this record
*/
public final String toXml(String tab){
- final String nl = System.getProperty( "line.separator" );
- String clsNm = getClass().getSimpleName();
- StringBuilder sb = new StringBuilder(1000);
- sb.append(tab).append("<").append(clsNm)
- .append(" recordId=\"0x").append(HexDump.toHex(getRecordId()))
- .append("\" version=\"0x").append(HexDump.toHex(getVersion()))
- .append("\" instance=\"0x").append(HexDump.toHex(getInstance()))
- .append("\" options=\"0x").append(HexDump.toHex(getOptions()))
- .append("\" recordSize=\"").append(getRecordSize());
- Object[][] attrList = getAttributeMap();
- if (attrList == null || attrList.length == 0) {
- sb.append("\" />").append(nl);
- } else {
- sb.append("\">").append(nl);
- String childTab = tab+" ";
- for (Object[] attrs : attrList) {
- String tagName = capitalizeAndTrim((String)attrs[0]);
- boolean hasValue = false;
- boolean lastChildComplex = false;
- for (int i=0; i<attrs.length-1; i+=2) {
- Object value = attrs[i+1];
- if (value == null) {
- // ignore null values
- continue;
- }
- if (!hasValue) {
- // only add tagname, when there was a value
- sb.append(childTab).append("<").append(tagName).append(">");
- }
- // add names for optional attributes
- String optName = capitalizeAndTrim((String)attrs[i+0]);
- if (i>0) {
- sb.append(nl).append(childTab).append(" <").append(optName).append(">");
- }
- lastChildComplex = appendValue(sb, value, true, childTab);
- if (i>0) {
- sb.append(nl).append(childTab).append(" </").append(optName).append(">");
- }
- hasValue = true;
- }
- if (hasValue) {
- if (lastChildComplex) {
- sb.append(nl).append(childTab);
- }
- sb.append("</").append(tagName).append(">").append(nl);
- }
- }
- sb.append(tab).append("</").append(clsNm).append(">");
- }
- return sb.toString();
+ return GenericRecordXmlWriter.marshal(this);
}
@Override
public final String toString() {
- final String nl = System.getProperty( "line.separator" );
- StringBuilder sb = new StringBuilder(1000);
- sb.append(getClass().getName()).append(" (").append(getRecordName()).append("):").append(nl)
- .append(" RecordId: 0x").append(HexDump.toHex( getRecordId() )).append(nl)
- .append(" Version: 0x").append(HexDump.toHex( getVersion() )).append(nl)
- .append(" Instance: 0x").append(HexDump.toHex( getInstance() )).append(nl)
- .append(" Options: 0x").append(HexDump.toHex( getOptions() )).append(nl)
- .append(" Record Size: ").append( getRecordSize() );
-
- Object[][] attrList = getAttributeMap();
- if (attrList != null && attrList.length > 0) {
- String childTab = " ";
- for (Object[] attrs : attrList) {
- for (int i=0; i<attrs.length-1; i+=2) {
- Object value = attrs[i+1];
- if (value == null) {
- // ignore null values
- continue;
- }
- String name = (String)attrs[i+0];
- sb.append(nl).append(childTab).append(name).append(": ");
- appendValue(sb, value, false, childTab);
- }
- }
- }
-
- return sb.toString();
- }
-
- /**
- * @return true, if value was a complex record, false otherwise
- */
- private static boolean appendValue(StringBuilder sb, Object value, boolean toXML, String childTab) {
- final String nl = System.getProperty( "line.separator" );
- boolean isComplex = false;
- if (value instanceof String) {
- if (toXML) {
- escapeXML((String)value, sb);
- } else {
- sb.append((String)value);
- }
- } else if (value instanceof Byte) {
- sb.append("0x").append(HexDump.toHex((Byte)value));
- } else if (value instanceof Short) {
- sb.append("0x").append(HexDump.toHex((Short)value));
- } else if (value instanceof Integer) {
- sb.append("0x").append(HexDump.toHex((Integer)value));
- } else if (value instanceof byte[]) {
- sb.append(nl).append(HexDump.toHex((byte[])value, 32).replaceAll("(?m)^",childTab+" "));
- } else if (value instanceof Boolean) {
- sb.append(((Boolean)value).booleanValue());
- } else if (value instanceof EscherRecord) {
- EscherRecord er = (EscherRecord)value;
- if (toXML) {
- sb.append(nl).append(er.toXml(childTab+" "));
- } else {
- sb.append(er.toString().replaceAll("(?m)^",childTab));
- }
- isComplex = true;
- } else if (value instanceof EscherProperty) {
- EscherProperty ep = (EscherProperty)value;
- if (toXML) {
- sb.append(nl).append(ep.toXml(childTab+" "));
- } else {
- sb.append(ep.toString().replaceAll("(?m)^",childTab));
- }
- isComplex = true;
- } else {
- throw new IllegalArgumentException("unknown attribute type "+value.getClass().getSimpleName());
- }
- return isComplex;
- }
-
- /**
- * For the purpose of providing toString() and toXml() a subclass can either override those methods
- * or provide a Object[][] array in the form {@code { { "Attribute Name (Header)", value, "optional attribute", value }, ... } }.<p>
- *
- * Null values won't be printed.<p>
- *
- * The attributes record, version, instance, options must not be returned.
- *
- * @return the attribute map
- *
- * @since POI 3.17-beta2
- */
- @Internal
- protected abstract Object[][] getAttributeMap();
-
- private static String capitalizeAndTrim(final String str) {
- if (str == null || str.length() == 0) {
- return str;
- }
-
- StringBuilder sb = new StringBuilder(str.length());
- boolean capitalizeNext = true;
- for (char ch : str.toCharArray()) {
- if (!Character.isLetterOrDigit(ch)) {
- capitalizeNext = true;
- continue;
- }
-
- if (capitalizeNext) {
- if (!Character.isLetter(ch)) {
- sb.append('_');
- } else {
- ch = Character.toTitleCase(ch);
- }
- capitalizeNext = false;
- }
- sb.append(ch);
- }
-
- return sb.toString();
- }
-
- private static void escapeXML(String s, StringBuilder out) {
- if (s == null || s.isEmpty()) {
- return;
- }
- for (char c : s.toCharArray()) {
- if (c > 127 || c == '"' || c == '<' || c == '>' || c == '&') {
- out.append("&#");
- out.append((int) c);
- out.append(';');
- } else {
- out.append(c);
- }
- }
+ return GenericRecordJsonWriter.marshal(this);
}
@Override
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherShapePathProperty.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherShapePathProperty.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherShapePathProperty.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherShapePathProperty.java Sat Oct 12 16:32:53 2019
@@ -19,8 +19,6 @@ package org.apache.poi.ddf;
/**
* Defines the constants for the various possible shape paths.
- *
- * @author Glen Stampoultzis (glens at apache.org)
*/
public class EscherShapePathProperty extends EscherSimpleProperty {
@@ -30,8 +28,17 @@ public class EscherShapePathProperty ext
public static final int CLOSED_CURVES = 3;
public static final int COMPLEX = 4;
- public EscherShapePathProperty( short propertyNumber, int shapePath )
- {
+ /**
+ * Create an instance of an escher shape path property.
+ *
+ * @param propertyNumber
+ * @param shapePath
+ */
+ public EscherShapePathProperty( short propertyNumber, int shapePath ) {
super( propertyNumber, false, false, shapePath );
}
+
+ public EscherShapePathProperty( EscherPropertyTypes type, int shapePath ) {
+ super( type, false, false, shapePath );
+ }
}
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherSimpleProperty.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherSimpleProperty.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherSimpleProperty.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherSimpleProperty.java Sat Oct 12 16:32:53 2019
@@ -17,7 +17,10 @@
package org.apache.poi.ddf;
-import org.apache.poi.util.HexDump;
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.util.GenericRecordUtil;
import org.apache.poi.util.LittleEndian;
/**
@@ -36,13 +39,23 @@ public class EscherSimpleProperty extend
* @param id the property id
* @param propertyValue the property value
*/
- public EscherSimpleProperty( short id, int propertyValue )
- {
+ public EscherSimpleProperty( short id, int propertyValue ) {
super( id );
this.propertyValue = propertyValue;
}
/**
+ * The id is distinct from the actual property number. The id includes the property number the blip id
+ * flag and an indicator whether the property is complex or not.
+ *
+ * @param type the property type
+ * @param propertyValue the property value
+ */
+ public EscherSimpleProperty( EscherPropertyTypes type, int propertyValue ) {
+ this(type, false, false, propertyValue);
+ }
+
+ /**
* Constructs a new escher property. The three parameters are combined to form a property id.
*
* @param propertyNumber the property number
@@ -50,13 +63,25 @@ public class EscherSimpleProperty extend
* @param isBlipId true, if its a blip
* @param propertyValue the property value
*/
- public EscherSimpleProperty( short propertyNumber, boolean isComplex, boolean isBlipId, int propertyValue )
- {
+ public EscherSimpleProperty( short propertyNumber, boolean isComplex, boolean isBlipId, int propertyValue ) {
super( propertyNumber, isComplex, isBlipId );
this.propertyValue = propertyValue;
}
/**
+ * Constructs a new escher property. The three parameters are combined to form a property id.
+ *
+ * @param propertyNumber the property number
+ * @param isComplex true, if its a complex property
+ * @param isBlipId true, if its a blip
+ * @param propertyValue the property value
+ */
+ public EscherSimpleProperty( EscherPropertyTypes type, boolean isComplex, boolean isBlipId, int propertyValue ) {
+ super( type, isComplex, isBlipId );
+ this.propertyValue = propertyValue;
+ }
+
+ /**
* Serialize the simple part of the escher record.
*
* @return the number of bytes serialized.
@@ -122,27 +147,11 @@ public class EscherSimpleProperty extend
return propertyValue;
}
- /**
- * @return the string representation of this property.
- */
- @Override
- public String toString()
- {
- return "propNum: " + getPropertyNumber()
- + ", RAW: 0x" + HexDump.toHex( getId() )
- + ", propName: " + EscherProperties.getPropertyName( getPropertyNumber() )
- + ", complex: " + isComplex()
- + ", blipId: " + isBlipId()
- + ", value: " + propertyValue + " (0x" + HexDump.toHex(propertyValue) + ")";
- }
-
@Override
- public String toXml(String tab){
- StringBuilder builder = new StringBuilder();
- builder.append(tab).append("<").append(getClass().getSimpleName()).append(" id=\"0x").append(HexDump.toHex(getId()))
- .append("\" name=\"").append(getName()).append("\" blipId=\"")
- .append(isBlipId()).append("\" complex=\"").append(isComplex()).append("\" value=\"").append("0x")
- .append(HexDump.toHex(propertyValue)).append("\"/>");
- return builder.toString();
+ public Map<String, Supplier<?>> getGenericProperties() {
+ return GenericRecordUtil.getGenericProperties(
+ "base", super::getGenericProperties,
+ "value", this::getPropertyValue
+ );
}
}
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherSpRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherSpRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherSpRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherSpRecord.java Sat Oct 12 16:32:53 2019
@@ -23,7 +23,6 @@ import java.util.Map;
import java.util.function.Supplier;
import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndian;
/**
@@ -248,15 +247,6 @@ public class EscherSpRecord extends Esch
}
@Override
- protected Object[][] getAttributeMap() {
- return new Object[][] {
- { "ShapeType", getShapeType() },
- { "ShapeId", field_1_shapeId },
- { "Flags", decodeFlags(field_2_flags)+" (0x"+HexDump.toHex(field_2_flags)+")" }
- };
- }
-
- @Override
public Map<String, Supplier<?>> getGenericProperties() {
return GenericRecordUtil.getGenericProperties(
"base", super::getGenericProperties,
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherSpgrRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherSpgrRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherSpgrRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherSpgrRecord.java Sat Oct 12 16:32:53 2019
@@ -168,16 +168,6 @@ public class EscherSpgrRecord extends Es
}
@Override
- protected Object[][] getAttributeMap() {
- return new Object[][] {
- { "RectX", field_1_rectX1 },
- { "RectY", field_2_rectY1 },
- { "RectWidth", field_3_rectX2 },
- { "RectHeight", field_4_rectY2 }
- };
- }
-
- @Override
public Map<String, Supplier<?>> getGenericProperties() {
return GenericRecordUtil.getGenericProperties(
"base", super::getGenericProperties,
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherSplitMenuColorsRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherSplitMenuColorsRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherSplitMenuColorsRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherSplitMenuColorsRecord.java Sat Oct 12 16:32:53 2019
@@ -159,16 +159,6 @@ public class EscherSplitMenuColorsRecord
}
@Override
- protected Object[][] getAttributeMap() {
- return new Object[][] {
- { "Color1", field_1_color1 },
- { "Color2", field_2_color2 },
- { "Color3", field_3_color3 },
- { "Color4", field_4_color4 }
- };
- }
-
- @Override
public Map<String, Supplier<?>> getGenericProperties() {
return GenericRecordUtil.getGenericProperties(
"base", super::getGenericProperties,
Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java Sat Oct 12 16:32:53 2019
@@ -17,8 +17,6 @@
package org.apache.poi.ddf;
-import java.util.ArrayList;
-import java.util.List;
import java.util.Map;
import java.util.function.Supplier;
@@ -140,24 +138,6 @@ public final class EscherTextboxRecord e
}
@Override
- protected Object[][] getAttributeMap() {
- int numCh = getChildRecords().size();
- List<Object> chLst = new ArrayList<>(numCh * 2 + 2);
- chLst.add("children");
- chLst.add(numCh);
- for (EscherRecord er : getChildRecords()) {
- chLst.add(er.getRecordName());
- chLst.add(er);
- }
-
- return new Object[][] {
- { "isContainer", isContainerRecord() },
- chLst.toArray(),
- { "Extra Data", thedata }
- };
- }
-
- @Override
public Enum getGenericRecordType() {
return EscherRecordTypes.CLIENT_TEXTBOX;
}
Modified: poi/trunk/src/java/org/apache/poi/ddf/UnknownEscherRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/UnknownEscherRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ddf/UnknownEscherRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/ddf/UnknownEscherRecord.java Sat Oct 12 16:32:53 2019
@@ -145,24 +145,6 @@ public final class UnknownEscherRecord e
}
@Override
- protected Object[][] getAttributeMap() {
- int numCh = getChildRecords().size();
- List<Object> chLst = new ArrayList<>(numCh * 2 + 2);
- chLst.add("children");
- chLst.add(numCh);
- for (EscherRecord er : _childRecords) {
- chLst.add(er.getRecordName());
- chLst.add(er);
- }
-
- return new Object[][] {
- { "isContainer", isContainerRecord() },
- chLst.toArray(),
- { "Extra Data", thedata }
- };
- }
-
- @Override
public Map<String, Supplier<?>> getGenericProperties() {
return GenericRecordUtil.getGenericProperties(
"base", super::getGenericProperties,
Modified: poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java Sat Oct 12 16:32:53 2019
@@ -32,56 +32,14 @@ import org.apache.poi.ddf.EscherContaine
import org.apache.poi.ddf.EscherDgRecord;
import org.apache.poi.ddf.EscherDggRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherRGBProperty;
import org.apache.poi.ddf.EscherRecord;
import org.apache.poi.ddf.EscherSimpleProperty;
import org.apache.poi.ddf.EscherSpRecord;
import org.apache.poi.ddf.EscherSplitMenuColorsRecord;
import org.apache.poi.hssf.extractor.OldExcelExtractor;
-import org.apache.poi.hssf.record.BOFRecord;
-import org.apache.poi.hssf.record.BackupRecord;
-import org.apache.poi.hssf.record.BookBoolRecord;
-import org.apache.poi.hssf.record.BoundSheetRecord;
-import org.apache.poi.hssf.record.CodepageRecord;
-import org.apache.poi.hssf.record.CountryRecord;
-import org.apache.poi.hssf.record.DSFRecord;
-import org.apache.poi.hssf.record.DateWindow1904Record;
-import org.apache.poi.hssf.record.DrawingGroupRecord;
-import org.apache.poi.hssf.record.EOFRecord;
-import org.apache.poi.hssf.record.EscherAggregate;
-import org.apache.poi.hssf.record.ExtSSTRecord;
-import org.apache.poi.hssf.record.ExtendedFormatRecord;
-import org.apache.poi.hssf.record.ExternSheetRecord;
-import org.apache.poi.hssf.record.FileSharingRecord;
-import org.apache.poi.hssf.record.FnGroupCountRecord;
-import org.apache.poi.hssf.record.FontRecord;
-import org.apache.poi.hssf.record.FormatRecord;
-import org.apache.poi.hssf.record.HideObjRecord;
-import org.apache.poi.hssf.record.HyperlinkRecord;
-import org.apache.poi.hssf.record.InterfaceEndRecord;
-import org.apache.poi.hssf.record.InterfaceHdrRecord;
-import org.apache.poi.hssf.record.MMSRecord;
-import org.apache.poi.hssf.record.NameCommentRecord;
-import org.apache.poi.hssf.record.NameRecord;
-import org.apache.poi.hssf.record.PaletteRecord;
-import org.apache.poi.hssf.record.PasswordRecord;
-import org.apache.poi.hssf.record.PasswordRev4Record;
-import org.apache.poi.hssf.record.PrecisionRecord;
-import org.apache.poi.hssf.record.ProtectRecord;
-import org.apache.poi.hssf.record.ProtectionRev4Record;
-import org.apache.poi.hssf.record.RecalcIdRecord;
-import org.apache.poi.hssf.record.Record;
-import org.apache.poi.hssf.record.RefreshAllRecord;
-import org.apache.poi.hssf.record.SSTRecord;
-import org.apache.poi.hssf.record.StyleRecord;
-import org.apache.poi.hssf.record.SupBookRecord;
-import org.apache.poi.hssf.record.TabIdRecord;
-import org.apache.poi.hssf.record.UseSelFSRecord;
-import org.apache.poi.hssf.record.WindowOneRecord;
-import org.apache.poi.hssf.record.WindowProtectRecord;
-import org.apache.poi.hssf.record.WriteAccessRecord;
-import org.apache.poi.hssf.record.WriteProtectRecord;
+import org.apache.poi.hssf.record.*;
import org.apache.poi.hssf.record.common.UnicodeString;
import org.apache.poi.hssf.util.HSSFColor.HSSFColorPredefined;
import org.apache.poi.poifs.crypt.CryptoFunctions;
@@ -1961,9 +1919,9 @@ public final class InternalWorkbook {
}
opt.setRecordId((short) 0xF00B);
opt.setOptions((short) 0x0033);
- opt.addEscherProperty( new EscherBoolProperty(EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 524296) );
- opt.addEscherProperty( new EscherRGBProperty(EscherProperties.FILL__FILLCOLOR, 0x08000041) );
- opt.addEscherProperty( new EscherRGBProperty(EscherProperties.LINESTYLE__COLOR, 134217792) );
+ opt.addEscherProperty( new EscherBoolProperty(EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 524296) );
+ opt.addEscherProperty( new EscherRGBProperty(EscherPropertyTypes.FILL__FILLCOLOR, 0x08000041) );
+ opt.addEscherProperty( new EscherRGBProperty(EscherPropertyTypes.LINESTYLE__COLOR, 134217792) );
splitMenuColors.setRecordId((short) 0xF11E);
splitMenuColors.setOptions((short) 0x0040);
splitMenuColors.setColor1(0x0800000D);
@@ -2190,7 +2148,7 @@ public final class InternalWorkbook {
} else if (recordId == EscherOptRecord.RECORD_ID){
EscherOptRecord opt = (EscherOptRecord)shapeChildRecord;
EscherSimpleProperty prop = opt.lookup(
- EscherProperties.BLIP__BLIPTODISPLAY );
+ EscherPropertyTypes.BLIP__BLIPTODISPLAY );
if (prop != null){
int pictureIndex = prop.getPropertyValue();
// increment reference count for pictures
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFCombobox.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFCombobox.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFCombobox.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFCombobox.java Sat Oct 12 16:32:53 2019
@@ -17,8 +17,21 @@
package org.apache.poi.hssf.usermodel;
-import org.apache.poi.ddf.*;
-import org.apache.poi.hssf.record.*;
+import org.apache.poi.ddf.EscherBoolProperty;
+import org.apache.poi.ddf.EscherClientDataRecord;
+import org.apache.poi.ddf.EscherContainerRecord;
+import org.apache.poi.ddf.EscherOptRecord;
+import org.apache.poi.ddf.EscherPropertyTypes;
+import org.apache.poi.ddf.EscherRecord;
+import org.apache.poi.ddf.EscherSimpleProperty;
+import org.apache.poi.ddf.EscherSpRecord;
+import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
+import org.apache.poi.hssf.record.EndSubRecord;
+import org.apache.poi.hssf.record.EscherAggregate;
+import org.apache.poi.hssf.record.FtCblsSubRecord;
+import org.apache.poi.hssf.record.LbsDataSubRecord;
+import org.apache.poi.hssf.record.ObjRecord;
+import org.apache.poi.hssf.record.TextObjectRecord;
import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
/**
@@ -56,10 +69,10 @@ public class HSSFCombobox extends HSSFSi
sp.setFlags(EscherSpRecord.FLAG_HAVEANCHOR | EscherSpRecord.FLAG_HASSHAPETYPE);
opt.setRecordId(EscherOptRecord.RECORD_ID);
- opt.addEscherProperty(new EscherBoolProperty(EscherProperties.PROTECTION__LOCKAGAINSTGROUPING, 17039620));
- opt.addEscherProperty(new EscherBoolProperty(EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 0x00080008));
- opt.addEscherProperty(new EscherBoolProperty(EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x00080000));
- opt.addEscherProperty(new EscherSimpleProperty(EscherProperties.GROUPSHAPE__PRINT, 0x00020000));
+ opt.addEscherProperty(new EscherBoolProperty(EscherPropertyTypes.PROTECTION__LOCKAGAINSTGROUPING, 17039620));
+ opt.addEscherProperty(new EscherBoolProperty(EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 0x00080008));
+ opt.addEscherProperty(new EscherBoolProperty(EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x00080000));
+ opt.addEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.GROUPSHAPE__FLAGS, 0x00020000));
HSSFClientAnchor userAnchor = (HSSFClientAnchor) getAnchor();
userAnchor.setAnchorType(AnchorType.DONT_MOVE_DO_RESIZE);
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFComment.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFComment.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFComment.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFComment.java Sat Oct 12 16:32:53 2019
@@ -20,7 +20,7 @@ import org.apache.poi.ddf.DefaultEscherR
import org.apache.poi.ddf.EscherBSERecord;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherSimpleProperty;
import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
import org.apache.poi.hssf.record.EndSubRecord;
@@ -98,11 +98,11 @@ public class HSSFComment extends HSSFTex
protected EscherContainerRecord createSpContainer() {
EscherContainerRecord spContainer = super.createSpContainer();
EscherOptRecord opt = spContainer.getChildById(EscherOptRecord.RECORD_ID);
- opt.removeEscherProperty(EscherProperties.TEXT__TEXTLEFT);
- opt.removeEscherProperty(EscherProperties.TEXT__TEXTRIGHT);
- opt.removeEscherProperty(EscherProperties.TEXT__TEXTTOP);
- opt.removeEscherProperty(EscherProperties.TEXT__TEXTBOTTOM);
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.GROUPSHAPE__PRINT, false, false, GROUP_SHAPE_PROPERTY_DEFAULT_VALUE));
+ opt.removeEscherProperty(EscherPropertyTypes.TEXT__TEXTLEFT);
+ opt.removeEscherProperty(EscherPropertyTypes.TEXT__TEXTRIGHT);
+ opt.removeEscherProperty(EscherPropertyTypes.TEXT__TEXTTOP);
+ opt.removeEscherProperty(EscherPropertyTypes.TEXT__TEXTBOTTOM);
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.GROUPSHAPE__FLAGS, false, false, GROUP_SHAPE_PROPERTY_DEFAULT_VALUE));
return spContainer;
}
@@ -290,34 +290,34 @@ public class HSSFComment extends HSSFTex
}
public void setBackgroundImage(int pictureIndex){
- setPropertyValue(new EscherSimpleProperty( EscherProperties.FILL__PATTERNTEXTURE, false, true, pictureIndex));
- setPropertyValue(new EscherSimpleProperty( EscherProperties.FILL__FILLTYPE, false, false, FILL_TYPE_PICTURE));
+ setPropertyValue(new EscherSimpleProperty( EscherPropertyTypes.FILL__PATTERNTEXTURE, false, true, pictureIndex));
+ setPropertyValue(new EscherSimpleProperty( EscherPropertyTypes.FILL__FILLTYPE, false, false, FILL_TYPE_PICTURE));
EscherBSERecord bse = getPatriarch().getSheet().getWorkbook().getWorkbook().getBSERecord(pictureIndex);
bse.setRef(bse.getRef() + 1);
}
public void resetBackgroundImage(){
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.FILL__PATTERNTEXTURE);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.FILL__PATTERNTEXTURE);
if (null != property){
EscherBSERecord bse = getPatriarch().getSheet().getWorkbook().getWorkbook().getBSERecord(property.getPropertyValue());
bse.setRef(bse.getRef() - 1);
- getOptRecord().removeEscherProperty(EscherProperties.FILL__PATTERNTEXTURE);
+ getOptRecord().removeEscherProperty(EscherPropertyTypes.FILL__PATTERNTEXTURE);
}
- setPropertyValue(new EscherSimpleProperty( EscherProperties.FILL__FILLTYPE, false, false, FILL_TYPE_SOLID));
+ setPropertyValue(new EscherSimpleProperty( EscherPropertyTypes.FILL__FILLTYPE, false, false, FILL_TYPE_SOLID));
}
public int getBackgroundImageId(){
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.FILL__PATTERNTEXTURE);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.FILL__PATTERNTEXTURE);
return property == null ? 0 : property.getPropertyValue();
}
private void setHidden(boolean value){
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.GROUPSHAPE__PRINT);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.GROUPSHAPE__FLAGS);
// see http://msdn.microsoft.com/en-us/library/dd949807(v=office.12).aspx
if (value){
- setPropertyValue(new EscherSimpleProperty(EscherProperties.GROUPSHAPE__PRINT, false, false, property.getPropertyValue() | GROUP_SHAPE_HIDDEN_MASK));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.GROUPSHAPE__FLAGS, false, false, property.getPropertyValue() | GROUP_SHAPE_HIDDEN_MASK));
} else {
- setPropertyValue(new EscherSimpleProperty(EscherProperties.GROUPSHAPE__PRINT, false, false, property.getPropertyValue() & GROUP_SHAPE_NOT_HIDDEN_MASK));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.GROUPSHAPE__FLAGS, false, false, property.getPropertyValue() & GROUP_SHAPE_NOT_HIDDEN_MASK));
}
}
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java Sat Oct 12 16:32:53 2019
@@ -27,7 +27,7 @@ import org.apache.poi.ddf.EscherClientDa
import org.apache.poi.ddf.EscherComplexProperty;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherSimpleProperty;
import org.apache.poi.ddf.EscherTextboxRecord;
import org.apache.poi.hssf.model.InternalWorkbook;
@@ -72,7 +72,7 @@ public class HSSFPicture extends HSSFSim
public int getPictureIndex()
{
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.BLIP__BLIPTODISPLAY);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.BLIP__BLIPTODISPLAY);
if (null == property){
return -1;
}
@@ -81,15 +81,15 @@ public class HSSFPicture extends HSSFSim
public void setPictureIndex( int pictureIndex )
{
- setPropertyValue(new EscherSimpleProperty( EscherProperties.BLIP__BLIPTODISPLAY, false, true, pictureIndex));
+ setPropertyValue(new EscherSimpleProperty( EscherPropertyTypes.BLIP__BLIPTODISPLAY, false, true, pictureIndex));
}
@Override
protected EscherContainerRecord createSpContainer() {
EscherContainerRecord spContainer = super.createSpContainer();
EscherOptRecord opt = spContainer.getChildById(EscherOptRecord.RECORD_ID);
- opt.removeEscherProperty(EscherProperties.LINESTYLE__LINEDASHING);
- opt.removeEscherProperty(EscherProperties.LINESTYLE__NOLINEDRAWDASH);
+ opt.removeEscherProperty(EscherPropertyTypes.LINESTYLE__LINEDASHING);
+ opt.removeEscherProperty(EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH);
spContainer.removeChildRecord(spContainer.getChildById(EscherTextboxRecord.RECORD_ID));
return spContainer;
}
@@ -247,8 +247,7 @@ public class HSSFPicture extends HSSFSim
* The filename of the embedded image
*/
public String getFileName() {
- EscherComplexProperty propFile = getOptRecord().lookup(
- EscherProperties.BLIP__BLIPFILENAME);
+ EscherComplexProperty propFile = getOptRecord().lookup(EscherPropertyTypes.BLIP__BLIPFILENAME);
return (null == propFile)
? ""
: StringUtil.getFromUnicodeLE(propFile.getComplexData()).trim();
@@ -257,7 +256,8 @@ public class HSSFPicture extends HSSFSim
public void setFileName(String data){
// TODO: add trailing \u0000?
byte[] bytes = StringUtil.getToUnicodeLE(data);
- EscherComplexProperty prop = new EscherComplexProperty(EscherProperties.BLIP__BLIPFILENAME, true, bytes);
+ EscherComplexProperty prop = new EscherComplexProperty(EscherPropertyTypes.BLIP__BLIPFILENAME, true, bytes.length);
+ prop.setComplexData(bytes);
setPropertyValue(prop);
}
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java Sat Oct 12 16:32:53 2019
@@ -17,8 +17,22 @@
package org.apache.poi.hssf.usermodel;
-import org.apache.poi.ddf.*;
-import org.apache.poi.hssf.record.*;
+import org.apache.poi.ddf.EscherArrayProperty;
+import org.apache.poi.ddf.EscherBoolProperty;
+import org.apache.poi.ddf.EscherClientDataRecord;
+import org.apache.poi.ddf.EscherContainerRecord;
+import org.apache.poi.ddf.EscherOptRecord;
+import org.apache.poi.ddf.EscherPropertyTypes;
+import org.apache.poi.ddf.EscherRGBProperty;
+import org.apache.poi.ddf.EscherRecord;
+import org.apache.poi.ddf.EscherShapePathProperty;
+import org.apache.poi.ddf.EscherSimpleProperty;
+import org.apache.poi.ddf.EscherSpRecord;
+import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
+import org.apache.poi.hssf.record.EndSubRecord;
+import org.apache.poi.hssf.record.EscherAggregate;
+import org.apache.poi.hssf.record.ObjRecord;
+import org.apache.poi.hssf.record.TextObjectRecord;
import org.apache.poi.util.LittleEndian;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
@@ -66,24 +80,24 @@ public class HSSFPolygon extends HSSFSi
sp.setFlags(EscherSpRecord.FLAG_CHILD | EscherSpRecord.FLAG_HAVEANCHOR | EscherSpRecord.FLAG_HASSHAPETYPE);
}
opt.setRecordId(EscherOptRecord.RECORD_ID);
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.TRANSFORM__ROTATION, false, false, 0));
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.GEOMETRY__RIGHT, false, false, 100));
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.GEOMETRY__BOTTOM, false, false, 100));
- opt.setEscherProperty(new EscherShapePathProperty(EscherProperties.GEOMETRY__SHAPEPATH, EscherShapePathProperty.COMPLEX));
-
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.GEOMETRY__FILLOK, false, false, 0x00010001));
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINESTARTARROWHEAD, false, false, 0x0));
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEENDARROWHEAD, false, false, 0x0));
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEENDCAPSTYLE, false, false, 0x0));
-
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEDASHING, LINESTYLE_SOLID));
- opt.setEscherProperty( new EscherBoolProperty( EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
- opt.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEWIDTH, LINEWIDTH_DEFAULT));
- opt.setEscherProperty(new EscherRGBProperty(EscherProperties.FILL__FILLCOLOR, FILL__FILLCOLOR_DEFAULT));
- opt.setEscherProperty(new EscherRGBProperty(EscherProperties.LINESTYLE__COLOR, LINESTYLE__COLOR_DEFAULT));
- opt.setEscherProperty(new EscherBoolProperty(EscherProperties.FILL__NOFILLHITTEST, 1));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.TRANSFORM__ROTATION, false, false, 0));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.GEOMETRY__RIGHT, false, false, 100));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.GEOMETRY__BOTTOM, false, false, 100));
+ opt.setEscherProperty(new EscherShapePathProperty(EscherPropertyTypes.GEOMETRY__SHAPEPATH, EscherShapePathProperty.COMPLEX));
+
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.GEOMETRY__FILLOK, false, false, 0x00010001));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINESTARTARROWHEAD, false, false, 0x0));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEENDARROWHEAD, false, false, 0x0));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEENDCAPSTYLE, false, false, 0x0));
+
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEDASHING, LINESTYLE_SOLID));
+ opt.setEscherProperty( new EscherBoolProperty( EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
+ opt.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEWIDTH, LINEWIDTH_DEFAULT));
+ opt.setEscherProperty(new EscherRGBProperty(EscherPropertyTypes.FILL__FILLCOLOR, FILL__FILLCOLOR_DEFAULT));
+ opt.setEscherProperty(new EscherRGBProperty(EscherPropertyTypes.LINESTYLE__COLOR, LINESTYLE__COLOR_DEFAULT));
+ opt.setEscherProperty(new EscherBoolProperty(EscherPropertyTypes.FILL__NOFILLHITTEST, 1));
- opt.setEscherProperty(new EscherBoolProperty( EscherProperties.GROUPSHAPE__PRINT, 0x080000));
+ opt.setEscherProperty(new EscherBoolProperty( EscherPropertyTypes.GROUPSHAPE__FLAGS, 0x080000));
EscherRecord anchor = getAnchor().getEscherAnchor();
clientData.setRecordId(EscherClientDataRecord.RECORD_ID);
@@ -123,7 +137,7 @@ public class HSSFPolygon extends HSSFSi
* @return array of x coordinates
*/
public int[] getXPoints() {
- EscherArrayProperty verticesProp = getOptRecord().lookup(EscherProperties.GEOMETRY__VERTICES);
+ EscherArrayProperty verticesProp = getOptRecord().lookup(EscherPropertyTypes.GEOMETRY__VERTICES);
if (null == verticesProp){
return new int[]{};
}
@@ -140,7 +154,7 @@ public class HSSFPolygon extends HSSFSi
* @return array of y coordinates
*/
public int[] getYPoints() {
- EscherArrayProperty verticesProp = getOptRecord().lookup(EscherProperties.GEOMETRY__VERTICES);
+ EscherArrayProperty verticesProp = getOptRecord().lookup(EscherPropertyTypes.GEOMETRY__VERTICES);
if (null == verticesProp){
return new int[]{};
}
@@ -165,7 +179,7 @@ public class HSSFPolygon extends HSSFSi
if (xPoints.length == 0){
logger.log( POILogger.ERROR, "HSSFPolygon must have at least one point");
}
- EscherArrayProperty verticesProp = new EscherArrayProperty(EscherProperties.GEOMETRY__VERTICES, false, new byte[0] );
+ EscherArrayProperty verticesProp = new EscherArrayProperty(EscherPropertyTypes.GEOMETRY__VERTICES, false, 0);
verticesProp.setNumberOfElementsInArray(xPoints.length+1);
verticesProp.setNumberOfElementsInMemory(xPoints.length+1);
verticesProp.setSizeOfElements(0xFFF0);
@@ -183,7 +197,7 @@ public class HSSFPolygon extends HSSFSi
verticesProp.setElement(point, data);
setPropertyValue(verticesProp);
- EscherArrayProperty segmentsProp = new EscherArrayProperty(EscherProperties.GEOMETRY__SEGMENTINFO, false, null );
+ EscherArrayProperty segmentsProp = new EscherArrayProperty(EscherPropertyTypes.GEOMETRY__SEGMENTINFO, false, 0);
segmentsProp.setSizeOfElements(0x0002);
segmentsProp.setNumberOfElementsInArray(xPoints.length * 2 + 4);
segmentsProp.setNumberOfElementsInMemory(xPoints.length * 2 + 4);
@@ -205,15 +219,15 @@ public class HSSFPolygon extends HSSFSi
* @param height
*/
public void setPolygonDrawArea(int width, int height) {
- setPropertyValue(new EscherSimpleProperty(EscherProperties.GEOMETRY__RIGHT, width));
- setPropertyValue(new EscherSimpleProperty(EscherProperties.GEOMETRY__BOTTOM, height));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.GEOMETRY__RIGHT, width));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.GEOMETRY__BOTTOM, height));
}
/**
* @return shape width
*/
public int getDrawAreaWidth() {
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.GEOMETRY__RIGHT);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.GEOMETRY__RIGHT);
return property == null ? 100: property.getPropertyValue();
}
@@ -221,7 +235,7 @@ public class HSSFPolygon extends HSSFSi
* @return shape height
*/
public int getDrawAreaHeight() {
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.GEOMETRY__BOTTOM);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.GEOMETRY__BOTTOM);
return property == null ? 100: property.getPropertyValue();
}
}
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java Sat Oct 12 16:32:53 2019
@@ -26,8 +26,8 @@ import org.apache.poi.ddf.EscherClientAn
import org.apache.poi.ddf.EscherComplexProperty;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
import org.apache.poi.ddf.EscherProperty;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherRGBProperty;
import org.apache.poi.ddf.EscherSimpleProperty;
import org.apache.poi.ddf.EscherSpRecord;
@@ -222,7 +222,7 @@ public abstract class HSSFShape implemen
* The color applied to the lines of this shape.
*/
public int getLineStyleColor() {
- EscherRGBProperty rgbProperty = _optRecord.lookup(EscherProperties.LINESTYLE__COLOR);
+ EscherRGBProperty rgbProperty = _optRecord.lookup(EscherPropertyTypes.LINESTYLE__COLOR);
return rgbProperty == null ? LINESTYLE__COLOR_DEFAULT : rgbProperty.getRgbColor();
}
@@ -230,20 +230,20 @@ public abstract class HSSFShape implemen
* The color applied to the lines of this shape.
*/
public void setLineStyleColor(int lineStyleColor) {
- setPropertyValue(new EscherRGBProperty(EscherProperties.LINESTYLE__COLOR, lineStyleColor));
+ setPropertyValue(new EscherRGBProperty(EscherPropertyTypes.LINESTYLE__COLOR, lineStyleColor));
}
@Override
public void setLineStyleColor(int red, int green, int blue) {
int lineStyleColor = ((blue) << 16) | ((green) << 8) | red;
- setPropertyValue(new EscherRGBProperty(EscherProperties.LINESTYLE__COLOR, lineStyleColor));
+ setPropertyValue(new EscherRGBProperty(EscherPropertyTypes.LINESTYLE__COLOR, lineStyleColor));
}
/**
* The color used to fill this shape.
*/
public int getFillColor() {
- EscherRGBProperty rgbProperty = _optRecord.lookup(EscherProperties.FILL__FILLCOLOR);
+ EscherRGBProperty rgbProperty = _optRecord.lookup(EscherPropertyTypes.FILL__FILLCOLOR);
return rgbProperty == null ? FILL__FILLCOLOR_DEFAULT : rgbProperty.getRgbColor();
}
@@ -251,20 +251,20 @@ public abstract class HSSFShape implemen
* The color used to fill this shape.
*/
public void setFillColor(int fillColor) {
- setPropertyValue(new EscherRGBProperty(EscherProperties.FILL__FILLCOLOR, fillColor));
+ setPropertyValue(new EscherRGBProperty(EscherPropertyTypes.FILL__FILLCOLOR, fillColor));
}
@Override
public void setFillColor(int red, int green, int blue) {
int fillColor = ((blue) << 16) | ((green) << 8) | red;
- setPropertyValue(new EscherRGBProperty(EscherProperties.FILL__FILLCOLOR, fillColor));
+ setPropertyValue(new EscherRGBProperty(EscherPropertyTypes.FILL__FILLCOLOR, fillColor));
}
/**
* @return returns with width of the line in EMUs. 12700 = 1 pt.
*/
public int getLineWidth() {
- EscherSimpleProperty property = _optRecord.lookup(EscherProperties.LINESTYLE__LINEWIDTH);
+ EscherSimpleProperty property = _optRecord.lookup(EscherPropertyTypes.LINESTYLE__LINEWIDTH);
return property == null ? LINEWIDTH_DEFAULT: property.getPropertyValue();
}
@@ -275,14 +275,14 @@ public abstract class HSSFShape implemen
* @see HSSFShape#LINEWIDTH_ONE_PT
*/
public void setLineWidth(int lineWidth) {
- setPropertyValue(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEWIDTH, lineWidth));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEWIDTH, lineWidth));
}
/**
* @return One of the constants in LINESTYLE_*
*/
public int getLineStyle() {
- EscherSimpleProperty property = _optRecord.lookup(EscherProperties.LINESTYLE__LINEDASHING);
+ EscherSimpleProperty property = _optRecord.lookup(EscherPropertyTypes.LINESTYLE__LINEDASHING);
if (null == property){
return LINESTYLE_DEFAULT;
}
@@ -295,26 +295,26 @@ public abstract class HSSFShape implemen
* @param lineStyle One of the constants in LINESTYLE_*
*/
public void setLineStyle(int lineStyle) {
- setPropertyValue(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEDASHING, lineStyle));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEDASHING, lineStyle));
if (getLineStyle() != HSSFShape.LINESTYLE_SOLID) {
- setPropertyValue(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEENDCAPSTYLE, 0));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEENDCAPSTYLE, 0));
if (getLineStyle() == HSSFShape.LINESTYLE_NONE){
- setPropertyValue(new EscherBoolProperty( EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x00080000));
+ setPropertyValue(new EscherBoolProperty( EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x00080000));
} else {
- setPropertyValue( new EscherBoolProperty( EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
+ setPropertyValue( new EscherBoolProperty( EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
}
}
}
@Override
public boolean isNoFill() {
- EscherBoolProperty property = _optRecord.lookup(EscherProperties.FILL__NOFILLHITTEST);
+ EscherBoolProperty property = _optRecord.lookup(EscherPropertyTypes.FILL__NOFILLHITTEST);
return property == null ? NO_FILL_DEFAULT : property.getPropertyValue() == NO_FILLHITTEST_TRUE;
}
@Override
public void setNoFill(boolean noFill) {
- setPropertyValue(new EscherBoolProperty(EscherProperties.FILL__NOFILLHITTEST, noFill ? NO_FILLHITTEST_TRUE : NO_FILLHITTEST_FALSE));
+ setPropertyValue(new EscherBoolProperty(EscherPropertyTypes.FILL__NOFILLHITTEST, noFill ? NO_FILLHITTEST_TRUE : NO_FILLHITTEST_FALSE));
}
protected void setPropertyValue(EscherProperty property){
@@ -366,7 +366,7 @@ public abstract class HSSFShape implemen
*/
public int getRotationDegree(){
ByteArrayOutputStream bos = new ByteArrayOutputStream();
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.TRANSFORM__ROTATION);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.TRANSFORM__ROTATION);
if (null == property){
return 0;
}
@@ -388,7 +388,7 @@ public abstract class HSSFShape implemen
* @param value
*/
public void setRotationDegree(short value){
- setPropertyValue(new EscherSimpleProperty(EscherProperties.TRANSFORM__ROTATION , (value << 16)));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.TRANSFORM__ROTATION , (value << 16)));
}
/**
@@ -420,7 +420,7 @@ public abstract class HSSFShape implemen
if (eor == null) {
return null;
}
- EscherProperty ep = eor.lookup(EscherProperties.GROUPSHAPE__SHAPENAME);
+ EscherProperty ep = eor.lookup(EscherPropertyTypes.GROUPSHAPE__SHAPENAME);
if (ep instanceof EscherComplexProperty) {
return StringUtil.getFromUnicodeLE(((EscherComplexProperty)ep).getComplexData());
}
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeFactory.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeFactory.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeFactory.java Sat Oct 12 16:32:53 2019
@@ -23,8 +23,8 @@ import java.util.Map;
import org.apache.poi.ddf.EscherClientDataRecord;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
import org.apache.poi.ddf.EscherProperty;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherRecord;
import org.apache.poi.ddf.EscherRecordTypes;
import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
@@ -110,7 +110,7 @@ public class HSSFShapeFactory {
if(optRecord == null) {
shape = new HSSFSimpleShape(container, objRecord, txtRecord);
} else {
- EscherProperty property = optRecord.lookup(EscherProperties.GEOMETRY__VERTICES);
+ EscherProperty property = optRecord.lookup(EscherPropertyTypes.GEOMETRY__VERTICES);
if (null != property) {
shape = new HSSFPolygon(container, objRecord, txtRecord);
} else {
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java Sat Oct 12 16:32:53 2019
@@ -29,7 +29,7 @@ import org.apache.poi.ddf.EscherClientAn
import org.apache.poi.ddf.EscherClientDataRecord;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherRecord;
import org.apache.poi.ddf.EscherRecordTypes;
import org.apache.poi.ddf.EscherSpRecord;
@@ -104,8 +104,8 @@ public class HSSFShapeGroup extends HSSF
}
opt.setRecordId(EscherOptRecord.RECORD_ID);
opt.setOptions((short) 0x0023);
- opt.addEscherProperty(new EscherBoolProperty(EscherProperties.PROTECTION__LOCKAGAINSTGROUPING, 0x00040004));
- opt.addEscherProperty(new EscherBoolProperty(EscherProperties.GROUPSHAPE__PRINT, 0x00080000));
+ opt.addEscherProperty(new EscherBoolProperty(EscherPropertyTypes.PROTECTION__LOCKAGAINSTGROUPING, 0x00040004));
+ opt.addEscherProperty(new EscherBoolProperty(EscherPropertyTypes.GROUPSHAPE__FLAGS, 0x00080000));
anchor = getAnchor().getEscherAnchor();
clientData.setRecordId(EscherClientDataRecord.RECORD_ID);
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSimpleShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSimpleShape.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSimpleShape.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSimpleShape.java Sat Oct 12 16:32:53 2019
@@ -17,12 +17,15 @@
package org.apache.poi.hssf.usermodel;
+import static org.apache.poi.hssf.record.TextObjectRecord.HORIZONTAL_TEXT_ALIGNMENT_CENTERED;
+import static org.apache.poi.hssf.record.TextObjectRecord.VERTICAL_TEXT_ALIGNMENT_CENTER;
+
import org.apache.poi.ddf.DefaultEscherRecordFactory;
import org.apache.poi.ddf.EscherBoolProperty;
import org.apache.poi.ddf.EscherClientDataRecord;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherOptRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
import org.apache.poi.ddf.EscherRGBProperty;
import org.apache.poi.ddf.EscherShapePathProperty;
import org.apache.poi.ddf.EscherSimpleProperty;
@@ -36,9 +39,6 @@ import org.apache.poi.hssf.record.TextOb
import org.apache.poi.ss.usermodel.RichTextString;
import org.apache.poi.ss.usermodel.SimpleShape;
-import static org.apache.poi.hssf.record.TextObjectRecord.HORIZONTAL_TEXT_ALIGNMENT_CENTERED;
-import static org.apache.poi.hssf.record.TextObjectRecord.VERTICAL_TEXT_ALIGNMENT_CENTER;
-
/**
* Represents a simple shape such as a line, rectangle or oval.
*/
@@ -121,16 +121,16 @@ public class HSSFSimpleShape extends HSS
clientData.setOptions( (short) (0x0000) );
EscherOptRecord optRecord = new EscherOptRecord();
- optRecord.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEDASHING, LINESTYLE_SOLID));
- optRecord.setEscherProperty( new EscherBoolProperty( EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
+ optRecord.setEscherProperty(new EscherSimpleProperty(EscherPropertyTypes.LINESTYLE__LINEDASHING, LINESTYLE_SOLID));
+ optRecord.setEscherProperty( new EscherBoolProperty( EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
// optRecord.setEscherProperty(new EscherSimpleProperty(EscherProperties.LINESTYLE__LINEWIDTH, LINEWIDTH_DEFAULT));
- optRecord.setEscherProperty(new EscherRGBProperty(EscherProperties.FILL__FILLCOLOR, FILL__FILLCOLOR_DEFAULT));
- optRecord.setEscherProperty(new EscherRGBProperty(EscherProperties.LINESTYLE__COLOR, LINESTYLE__COLOR_DEFAULT));
- optRecord.setEscherProperty(new EscherBoolProperty(EscherProperties.FILL__NOFILLHITTEST, NO_FILLHITTEST_FALSE));
- optRecord.setEscherProperty( new EscherBoolProperty( EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
+ optRecord.setEscherProperty(new EscherRGBProperty(EscherPropertyTypes.FILL__FILLCOLOR, FILL__FILLCOLOR_DEFAULT));
+ optRecord.setEscherProperty(new EscherRGBProperty(EscherPropertyTypes.LINESTYLE__COLOR, LINESTYLE__COLOR_DEFAULT));
+ optRecord.setEscherProperty(new EscherBoolProperty(EscherPropertyTypes.FILL__NOFILLHITTEST, NO_FILLHITTEST_FALSE));
+ optRecord.setEscherProperty( new EscherBoolProperty( EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x00080008));
- optRecord.setEscherProperty( new EscherShapePathProperty( EscherProperties.GEOMETRY__SHAPEPATH, EscherShapePathProperty.COMPLEX ) );
- optRecord.setEscherProperty(new EscherBoolProperty( EscherProperties.GROUPSHAPE__PRINT, 0x080000));
+ optRecord.setEscherProperty( new EscherShapePathProperty( EscherPropertyTypes.GEOMETRY__SHAPEPATH, EscherShapePathProperty.COMPLEX ) );
+ optRecord.setEscherProperty(new EscherBoolProperty( EscherPropertyTypes.GROUPSHAPE__FLAGS, 0x080000));
optRecord.setRecordId( EscherOptRecord.RECORD_ID );
EscherTextboxRecord escherTextbox = new EscherTextboxRecord();
@@ -189,7 +189,7 @@ public class HSSFSimpleShape extends HSS
TextObjectRecord txo = getOrCreateTextObjRecord();
txo.setStr(rtr);
if (string.getString() != null){
- setPropertyValue(new EscherSimpleProperty(EscherProperties.TEXT__TEXTID, string.getString().hashCode()));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.TEXT__TEXTID, string.getString().hashCode()));
}
}
@@ -233,12 +233,12 @@ public class HSSFSimpleShape extends HSS
}
public int getWrapText(){
- EscherSimpleProperty property = getOptRecord().lookup(EscherProperties.TEXT__WRAPTEXT);
+ EscherSimpleProperty property = getOptRecord().lookup(EscherPropertyTypes.TEXT__WRAPTEXT);
return null == property ? WRAP_SQUARE : property.getPropertyValue();
}
public void setWrapText(int value){
- setPropertyValue(new EscherSimpleProperty(EscherProperties.TEXT__WRAPTEXT, false, false, value));
+ setPropertyValue(new EscherSimpleProperty(EscherPropertyTypes.TEXT__WRAPTEXT, false, false, value));
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org