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 [6/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/...

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextBox.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextBox.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextBox.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextBox.java Sat Oct 12 16:32:53 2019
@@ -18,7 +18,7 @@
 package org.apache.poi.hslf.usermodel;
 
 import org.apache.poi.ddf.EscherContainerRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
 import org.apache.poi.sl.usermodel.ShapeContainer;
 import org.apache.poi.sl.usermodel.ShapeType;
 import org.apache.poi.sl.usermodel.TextBox;
@@ -76,12 +76,12 @@ public class HSLFTextBox extends HSLFTex
         setShapeType(ShapeType.TEXT_BOX);
 
         //set default properties for a TextBox
-        setEscherProperty(EscherProperties.FILL__FILLCOLOR, 0x8000004);
-        setEscherProperty(EscherProperties.FILL__FILLBACKCOLOR, 0x8000000);
-        setEscherProperty(EscherProperties.FILL__NOFILLHITTEST, 0x100000);
-        setEscherProperty(EscherProperties.LINESTYLE__COLOR, 0x8000001);
-        setEscherProperty(EscherProperties.LINESTYLE__NOLINEDRAWDASH, 0x80000);
-        setEscherProperty(EscherProperties.SHADOWSTYLE__COLOR, 0x8000002);
+        setEscherProperty(EscherPropertyTypes.FILL__FILLCOLOR, 0x8000004);
+        setEscherProperty(EscherPropertyTypes.FILL__FILLBACKCOLOR, 0x8000000);
+        setEscherProperty(EscherPropertyTypes.FILL__NOFILLHITTEST, 0x100000);
+        setEscherProperty(EscherPropertyTypes.LINESTYLE__COLOR, 0x8000001);
+        setEscherProperty(EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH, 0x80000);
+        setEscherProperty(EscherPropertyTypes.SHADOWSTYLE__COLOR, 0x8000002);
 
         // init paragraphs
         getTextParagraphs();
@@ -92,6 +92,6 @@ public class HSLFTextBox extends HSLFTex
     @Override
     protected void setDefaultTextProperties(HSLFTextParagraph _txtrun){
         setVerticalAlignment(VerticalAlignment.TOP);
-        setEscherProperty(EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 0x20002);
+        setEscherProperty(EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 0x20002);
     }
 }

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java Sat Oct 12 16:32:53 2019
@@ -31,7 +31,7 @@ import java.util.List;
 
 import org.apache.poi.ddf.AbstractEscherOptRecord;
 import org.apache.poi.ddf.EscherContainerRecord;
-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.hslf.exceptions.HSLFException;
@@ -377,7 +377,7 @@ implements TextShape<HSLFShape,HSLFTextP
      */
     /* package */ HSLFTextAnchor getAlignment(){
         AbstractEscherOptRecord opt = getEscherOptRecord();
-        EscherSimpleProperty prop = getEscherProperty(opt, EscherProperties.TEXT__ANCHORTEXT);
+        EscherSimpleProperty prop = getEscherProperty(opt, EscherPropertyTypes.TEXT__ANCHORTEXT);
         final HSLFTextAnchor align;
         if (prop == null){
             /**
@@ -416,7 +416,7 @@ implements TextShape<HSLFShape,HSLFTextP
                 (hta.vAlign == vAlign) &&
                 (hta.baseline == null || hta.baseline == baseline)
             ) {
-                setEscherProperty(EscherProperties.TEXT__ANCHORTEXT, hta.nativeId);
+                setEscherProperty(EscherPropertyTypes.TEXT__ANCHORTEXT, hta.nativeId);
                 break;
             }
         }
@@ -467,7 +467,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @return the botom margin
      */
     public double getBottomInset(){
-        return getInset(EscherProperties.TEXT__TEXTBOTTOM, .05);
+        return getInset(EscherPropertyTypes.TEXT__TEXTBOTTOM, .05);
     }
 
     /**
@@ -477,7 +477,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @param margin    the bottom margin
      */
     public void setBottomInset(double margin){
-        setInset(EscherProperties.TEXT__TEXTBOTTOM, margin);
+        setInset(EscherPropertyTypes.TEXT__TEXTBOTTOM, margin);
     }
 
     /**
@@ -489,7 +489,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @return the left margin
      */
     public double getLeftInset(){
-        return getInset(EscherProperties.TEXT__TEXTLEFT, .1);
+        return getInset(EscherPropertyTypes.TEXT__TEXTLEFT, .1);
     }
 
     /**
@@ -499,7 +499,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @param margin    the left margin
      */
     public void setLeftInset(double margin){
-        setInset(EscherProperties.TEXT__TEXTLEFT, margin);
+        setInset(EscherPropertyTypes.TEXT__TEXTLEFT, margin);
     }
 
     /**
@@ -511,7 +511,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @return the right margin
      */
     public double getRightInset(){
-        return getInset(EscherProperties.TEXT__TEXTRIGHT, .1);
+        return getInset(EscherPropertyTypes.TEXT__TEXTRIGHT, .1);
     }
 
     /**
@@ -521,7 +521,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @param margin    the right margin
      */
     public void setRightInset(double margin){
-        setInset(EscherProperties.TEXT__TEXTRIGHT, margin);
+        setInset(EscherPropertyTypes.TEXT__TEXTRIGHT, margin);
     }
 
      /**
@@ -532,7 +532,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @return the top margin
      */
     public double getTopInset(){
-        return getInset(EscherProperties.TEXT__TEXTTOP, .05);
+        return getInset(EscherPropertyTypes.TEXT__TEXTTOP, .05);
     }
 
    /**
@@ -542,7 +542,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @param margin    the top margin
      */
     public void setTopInset(double margin){
-        setInset(EscherProperties.TEXT__TEXTTOP, margin);
+        setInset(EscherPropertyTypes.TEXT__TEXTTOP, margin);
     }
 
     /**
@@ -550,22 +550,22 @@ implements TextShape<HSLFShape,HSLFTextP
      * and the edge of the inscribed rectangle of the shape that contains the text.
      * Default value is 1/20 inch.
      *
-     * @param propId the id of the inset edge
+     * @param type the type of the inset edge
      * @return the inset in points
      */
-    private double getInset(short propId, double defaultInch) {
+    private double getInset(EscherPropertyTypes type, double defaultInch) {
         AbstractEscherOptRecord opt = getEscherOptRecord();
-        EscherSimpleProperty prop = getEscherProperty(opt, propId);
+        EscherSimpleProperty prop = getEscherProperty(opt, type);
         int val = prop == null ? (int)(Units.toEMU(Units.POINT_DPI)*defaultInch) : prop.getPropertyValue();
         return Units.toPoints(val);
     }
 
     /**
-     * @param propId the id of the inset edge
+     * @param type the type of the inset edge
      * @param margin the inset in points
      */
-    private void setInset(short propId, double margin){
-        setEscherProperty(propId, Units.toEMU(margin));
+    private void setInset(EscherPropertyTypes type, double margin){
+        setEscherProperty(type, Units.toEMU(margin));
     }
 
     /**
@@ -578,7 +578,7 @@ implements TextShape<HSLFShape,HSLFTextP
      */
     public int getWordWrapEx() {
         AbstractEscherOptRecord opt = getEscherOptRecord();
-        EscherSimpleProperty prop = getEscherProperty(opt, EscherProperties.TEXT__WRAPTEXT);
+        EscherSimpleProperty prop = getEscherProperty(opt, EscherPropertyTypes.TEXT__WRAPTEXT);
         return prop == null ? WrapSquare : prop.getPropertyValue();
     }
 
@@ -589,7 +589,7 @@ implements TextShape<HSLFShape,HSLFTextP
      *  Must be one of the <code>Wrap*</code> constants defined in this class.
      */
     public void setWordWrapEx(int wrap){
-        setEscherProperty(EscherProperties.TEXT__WRAPTEXT, wrap);
+        setEscherProperty(EscherPropertyTypes.TEXT__WRAPTEXT, wrap);
     }
 
     @Override
@@ -608,7 +608,7 @@ implements TextShape<HSLFShape,HSLFTextP
      */
     public int getTextId(){
         AbstractEscherOptRecord opt = getEscherOptRecord();
-        EscherSimpleProperty prop = getEscherProperty(opt, EscherProperties.TEXT__TEXTID);
+        EscherSimpleProperty prop = getEscherProperty(opt, EscherPropertyTypes.TEXT__TEXTID);
         return prop == null ? 0 : prop.getPropertyValue();
     }
 
@@ -618,7 +618,7 @@ implements TextShape<HSLFShape,HSLFTextP
      * @param id of the text
      */
     public void setTextId(int id){
-        setEscherProperty(EscherProperties.TEXT__TEXTID, id);
+        setEscherProperty(EscherPropertyTypes.TEXT__TEXTID, id);
     }
 
     @Override
@@ -732,7 +732,7 @@ implements TextShape<HSLFShape,HSLFTextP
     public TextDirection getTextDirection() {
         // see 2.4.5 MSOTXFL
         AbstractEscherOptRecord opt = getEscherOptRecord();
-        EscherSimpleProperty prop = getEscherProperty(opt, EscherProperties.TEXT__TEXTFLOW);
+        EscherSimpleProperty prop = getEscherProperty(opt, EscherPropertyTypes.TEXT__TEXTFLOW);
         int msotxfl = (prop == null) ? 0 : prop.getPropertyValue();
         switch (msotxfl) {
             default:
@@ -774,14 +774,14 @@ implements TextShape<HSLFShape,HSLFTextP
                     break;
             }
         }
-        setEscherProperty(opt, EscherProperties.TEXT__TEXTFLOW, msotxfl);
+        setEscherProperty(opt, EscherPropertyTypes.TEXT__TEXTFLOW, msotxfl);
     }
 
     @Override
     public Double getTextRotation() {
         // see 2.4.6 MSOCDIR
         AbstractEscherOptRecord opt = getEscherOptRecord();
-        EscherSimpleProperty prop = getEscherProperty(opt, EscherProperties.TEXT__FONTROTATION);
+        EscherSimpleProperty prop = getEscherProperty(opt, EscherPropertyTypes.TEXT__FONTROTATION);
         return (prop == null) ? null : (90. * prop.getPropertyValue());
     }
 
@@ -789,10 +789,10 @@ implements TextShape<HSLFShape,HSLFTextP
     public void setTextRotation(Double rotation) {
         AbstractEscherOptRecord opt = getEscherOptRecord();
         if (rotation == null) {
-            opt.removeEscherProperty(EscherProperties.TEXT__FONTROTATION);
+            opt.removeEscherProperty(EscherPropertyTypes.TEXT__FONTROTATION);
         } else {
             int rot = (int)(Math.round(rotation / 90.) % 4L);
-            setEscherProperty(EscherProperties.TEXT__FONTROTATION, rot);
+            setEscherProperty(EscherPropertyTypes.TEXT__FONTROTATION, rot);
         }
     }
 

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwmf/record/HwmfColorRef.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwmf/record/HwmfColorRef.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwmf/record/HwmfColorRef.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwmf/record/HwmfColorRef.java Sat Oct 12 16:32:53 2019
@@ -86,6 +86,6 @@ public class HwmfColorRef implements Clo
 
     @Override
     public Map<String, Supplier<?>> getGenericProperties() {
-        return GenericRecordUtil.getGenericProperties("color", colorRef::getRGB);
+        return GenericRecordUtil.getGenericProperties("color", this::getColor);
     }
 }

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/OfficeDrawingsImpl.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/OfficeDrawingsImpl.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/OfficeDrawingsImpl.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/OfficeDrawingsImpl.java Sat Oct 12 16:32:53 2019
@@ -21,18 +21,17 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.poi.ddf.EscherTertiaryOptRecord;
-
 import org.apache.poi.ddf.DefaultEscherRecordFactory;
 import org.apache.poi.ddf.EscherBSERecord;
 import org.apache.poi.ddf.EscherBlipRecord;
 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.EscherRecordFactory;
 import org.apache.poi.ddf.EscherSimpleProperty;
 import org.apache.poi.ddf.EscherSpRecord;
+import org.apache.poi.ddf.EscherTertiaryOptRecord;
 import org.apache.poi.hwpf.model.EscherRecordHolder;
 import org.apache.poi.hwpf.model.FSPA;
 import org.apache.poi.hwpf.model.FSPATable;
@@ -125,8 +124,7 @@ public class OfficeDrawingsImpl implemen
         {
             public HorizontalPositioning getHorizontalPositioning()
             {
-                int value = getTertiaryPropertyValue(
-                        EscherProperties.GROUPSHAPE__POSH, -1 );
+                int value = getTertiaryPropertyValue(EscherPropertyTypes.GROUPSHAPE__POSH );
 
                 switch ( value )
                 {
@@ -149,8 +147,7 @@ public class OfficeDrawingsImpl implemen
 
             public HorizontalRelativeElement getHorizontalRelative()
             {
-                int value = getTertiaryPropertyValue(
-                        EscherProperties.GROUPSHAPE__POSRELH, -1 );
+                int value = getTertiaryPropertyValue( EscherPropertyTypes.GROUPSHAPE__POSRELH );
 
                 switch ( value )
                 {
@@ -184,7 +181,7 @@ public class OfficeDrawingsImpl implemen
                     return null;
 
                 EscherSimpleProperty escherProperty = escherOptRecord
-                        .lookup( EscherProperties.BLIP__BLIPTODISPLAY );
+                        .lookup( EscherPropertyTypes.BLIP__BLIPTODISPLAY );
                 if ( escherProperty == null )
                     return null;
 
@@ -221,30 +218,25 @@ public class OfficeDrawingsImpl implemen
                 return fspa.getSpid();
             }
 
-            private int getTertiaryPropertyValue( int propertyId,
-                    int defaultValue )
-            {
+            private int getTertiaryPropertyValue( EscherPropertyTypes type ) {
                 EscherContainerRecord shapeDescription = getEscherShapeRecordContainer( getShapeId() );
-                if ( shapeDescription == null )
-                    return defaultValue;
+                if ( shapeDescription == null ) {
+                    return -1;
+                }
 
                 EscherTertiaryOptRecord escherTertiaryOptRecord = shapeDescription
                         .getChildById( EscherTertiaryOptRecord.RECORD_ID );
-                if ( escherTertiaryOptRecord == null )
-                    return defaultValue;
-
-                EscherSimpleProperty escherProperty = escherTertiaryOptRecord
-                        .lookup( propertyId );
-                if ( escherProperty == null )
-                    return defaultValue;
+                if ( escherTertiaryOptRecord == null ) {
+                    return -1;
+                }
 
-                return escherProperty.getPropertyValue();
+                EscherSimpleProperty escherProperty = escherTertiaryOptRecord.lookup( type );
+                return ( escherProperty == null ) ? -1 : escherProperty.getPropertyValue();
             }
 
             public VerticalPositioning getVerticalPositioning()
             {
-                int value = getTertiaryPropertyValue(
-                        EscherProperties.GROUPSHAPE__POSV, -1 );
+                int value = getTertiaryPropertyValue( EscherPropertyTypes.GROUPSHAPE__POSV );
 
                 switch ( value )
                 {
@@ -267,8 +259,7 @@ public class OfficeDrawingsImpl implemen
 
             public VerticalRelativeElement getVerticalRelativeElement()
             {
-                int value = getTertiaryPropertyValue(
-                        EscherProperties.GROUPSHAPE__POSV, -1 );
+                int value = getTertiaryPropertyValue( EscherPropertyTypes.GROUPSHAPE__POSV );
 
                 switch ( value )
                 {

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/Picture.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/Picture.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/Picture.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/usermodel/Picture.java Sat Oct 12 16:32:53 2019
@@ -29,8 +29,8 @@ import org.apache.poi.ddf.EscherBSERecor
 import org.apache.poi.ddf.EscherBlipRecord;
 import org.apache.poi.ddf.EscherComplexProperty;
 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.hwpf.model.PICF;
 import org.apache.poi.hwpf.model.PICFAndOfficeArtData;
@@ -468,11 +468,11 @@ public final class Picture {
      */
     public String getDescription()
     {
-       for(EscherRecord escherRecord : _picfAndOfficeArtData.getShape().getChildRecords()){
+       for(EscherRecord escherRecord : _picfAndOfficeArtData.getShape()){
           if(escherRecord instanceof EscherOptRecord){
              EscherOptRecord escherOptRecord = (EscherOptRecord) escherRecord;
              for(EscherProperty property : escherOptRecord.getEscherProperties()){
-                if(EscherProperties.GROUPSHAPE__DESCRIPTION == property.getPropertyNumber()){
+                if (EscherPropertyTypes.GROUPSHAPE__DESCRIPTION.propNumber == property.getPropertyNumber()){
                    byte[] complexData = ((EscherComplexProperty)property).getComplexData();
                    return StringUtil.getFromUnicodeLE(complexData,0,complexData.length/2-1);
                 }

Modified: poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/model/TestShapes.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/model/TestShapes.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/model/TestShapes.java (original)
+++ poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/model/TestShapes.java Sat Oct 12 16:32:53 2019
@@ -38,7 +38,7 @@ import org.apache.poi.POIDataSamples;
 import org.apache.poi.ddf.AbstractEscherOptRecord;
 import org.apache.poi.ddf.EscherDgRecord;
 import org.apache.poi.ddf.EscherDggRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
 import org.apache.poi.ddf.EscherSimpleProperty;
 import org.apache.poi.hslf.usermodel.HSLFAutoShape;
 import org.apache.poi.hslf.usermodel.HSLFGroupShape;
@@ -407,12 +407,12 @@ public final class TestShapes {
         HSLFSimpleShape sh = new HSLFAutoShape(ShapeType.RT_TRIANGLE);
 
         AbstractEscherOptRecord opt = sh.getEscherOptRecord();
-        EscherSimpleProperty prop = HSLFSimpleShape.getEscherProperty(opt, EscherProperties.LINESTYLE__LINEWIDTH);
+        EscherSimpleProperty prop = HSLFSimpleShape.getEscherProperty(opt, EscherPropertyTypes.LINESTYLE__LINEWIDTH);
         assertNull(prop);
         assertEquals(HSLFSimpleShape.DEFAULT_LINE_WIDTH, sh.getLineWidth(), 0);
 
         sh.setLineWidth(1.0);
-        prop = HSLFSimpleShape.getEscherProperty(opt, EscherProperties.LINESTYLE__LINEWIDTH);
+        prop = HSLFSimpleShape.getEscherProperty(opt, EscherPropertyTypes.LINESTYLE__LINEWIDTH);
         assertNotNull(prop);
         assertEquals(1.0, sh.getLineWidth(), 0);
     }

Modified: poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBackground.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBackground.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBackground.java (original)
+++ poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBackground.java Sat Oct 12 16:32:53 2019
@@ -28,18 +28,11 @@ import org.apache.poi.POIDataSamples;
 import org.apache.poi.ddf.AbstractEscherOptRecord;
 import org.apache.poi.ddf.EscherBSERecord;
 import org.apache.poi.ddf.EscherContainerRecord;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
 import org.apache.poi.ddf.EscherRecord;
 import org.apache.poi.ddf.EscherSimpleProperty;
 import org.apache.poi.hslf.HSLFTestDataSamples;
 import org.apache.poi.hslf.record.Document;
-import org.apache.poi.hslf.usermodel.HSLFAutoShape;
-import org.apache.poi.hslf.usermodel.HSLFFill;
-import org.apache.poi.hslf.usermodel.HSLFPictureData;
-import org.apache.poi.hslf.usermodel.HSLFShape;
-import org.apache.poi.hslf.usermodel.HSLFSheet;
-import org.apache.poi.hslf.usermodel.HSLFSlide;
-import org.apache.poi.hslf.usermodel.HSLFSlideShow;
 import org.apache.poi.sl.usermodel.PictureData.PictureType;
 import org.apache.poi.sl.usermodel.ShapeType;
 import org.junit.Test;
@@ -209,7 +202,7 @@ public final class TestBackground {
 
     private int getFillPictureRefCount(HSLFShape shape, HSLFFill fill) {
         AbstractEscherOptRecord opt = shape.getEscherOptRecord();
-        EscherSimpleProperty p = HSLFShape.getEscherProperty(opt, EscherProperties.FILL__PATTERNTEXTURE);
+        EscherSimpleProperty p = HSLFShape.getEscherProperty(opt, EscherPropertyTypes.FILL__PATTERNTEXTURE);
         if(p != null) {
             int idx = p.getPropertyValue();
 

Modified: poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java (original)
+++ poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java Sat Oct 12 16:32:53 2019
@@ -53,7 +53,7 @@ import org.apache.poi.common.usermodel.f
 import org.apache.poi.ddf.AbstractEscherOptRecord;
 import org.apache.poi.ddf.EscherArrayProperty;
 import org.apache.poi.ddf.EscherColorRef;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
 import org.apache.poi.hslf.HSLFTestDataSamples;
 import org.apache.poi.hslf.exceptions.OldPowerPointFormatException;
 import org.apache.poi.hslf.model.HeadersFooters;
@@ -600,7 +600,7 @@ public final class TestBugs {
         HSLFSlideShow ppt = open("bug46441.ppt");
         HSLFAutoShape as = (HSLFAutoShape)ppt.getSlides().get(0).getShapes().get(0);
         AbstractEscherOptRecord opt = as.getEscherOptRecord();
-        EscherArrayProperty ep = HSLFShape.getEscherProperty(opt, EscherProperties.FILL__SHADECOLORS);
+        EscherArrayProperty ep = HSLFShape.getEscherProperty(opt, EscherPropertyTypes.FILL__SHADECOLORS);
         double[][] exp = {
                 // r, g, b, position
                 {94, 158, 255, 0},

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBSERecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBSERecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBSERecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBSERecord.java Sat Oct 12 16:32:53 2019
@@ -23,6 +23,7 @@ import static org.junit.Assert.assertEqu
 import java.io.IOException;
 
 import org.apache.poi.poifs.storage.RawDataUtil;
+import org.apache.poi.sl.usermodel.PictureData;
 import org.apache.poi.util.HexDump;
 import org.apache.poi.util.HexRead;
 import org.junit.Test;
@@ -37,8 +38,8 @@ public final class TestEscherBSERecord {
         int bytesWritten = r.fillFields( HexRead.readFromString( data ), 0, new DefaultEscherRecordFactory() );
         assertEquals( 44, bytesWritten );
         assertEquals( (short) 0x0001, r.getOptions() );
-        assertEquals( EscherBSERecord.BT_JPEG, r.getBlipTypeWin32() );
-        assertEquals( EscherBSERecord.BT_JPEG, r.getBlipTypeMacOS() );
+        assertEquals( PictureData.PictureType.JPEG.nativeId, r.getBlipTypeWin32() );
+        assertEquals( PictureData.PictureType.JPEG.nativeId, r.getBlipTypeMacOS() );
         assertEquals( "[01, 02, 03, 04, 05, 06, 07, 08, 09, 0A, 0B, 0C, 0D, 0E, 0F, 00]", HexDump.toHex( r.getUid() ) );
         assertEquals( (short) 1, r.getTag() );
         assertEquals( 2, r.getRef() );
@@ -65,8 +66,8 @@ public final class TestEscherBSERecord {
     private EscherBSERecord createRecord() {
         EscherBSERecord r = new EscherBSERecord();
         r.setOptions( (short) 0x0001 );
-        r.setBlipTypeWin32( EscherBSERecord.BT_JPEG );
-        r.setBlipTypeMacOS( EscherBSERecord.BT_JPEG );
+        r.setBlipTypeWin32( (byte)PictureData.PictureType.JPEG.nativeId );
+        r.setBlipTypeMacOS( (byte)PictureData.PictureType.JPEG.nativeId );
         r.setUid( HexRead.readFromString( "01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00" ) );
         r.setTag( (short) 1 );
         r.setRef( 2 );
@@ -82,29 +83,31 @@ public final class TestEscherBSERecord {
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         EscherBSERecord record = createRecord();
         String expected =
-            "org.apache.poi.ddf.EscherBSERecord (BSE):" + nl +
-            "  RecordId: 0xF007" + nl +
-            "  Version: 0x0001" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x0001" + nl +
-            "  Record Size: 44" + nl +
-            "  BlipTypeWin32: 0x05" + nl +
-            "  BlipTypeMacOS: 0x05" + nl +
-            "  SUID: " + nl +
-            "     00: 01, 02, 03, 04, 05, 06, 07, 08, 09, 0A, 0B, 0C, 0D, 0E, 0F, 00" + nl +
-            "  Tag: 0x0001" + nl +
-            "  Size: 0x00000000" + nl +
-            "  Ref: 0x00000002" + nl +
-            "  Offset: 0x00000003" + nl +
-            "  Usage: 0x04" + nl +
-            "  Name: 0x05" + nl +
-            "  Unused2: 0x06" + nl +
-            "  Unused3: 0x07" + nl +
-            "  Extra Data: " + nl +
-            "     : 0";                
+            "{   /* BSE */\n" +
+            "\t  recordId: -4089 /* 0xf007 */\n" +
+            "\t, version: 1\n" +
+            "\t, instance: 0\n" +
+            "\t, options: 1\n" +
+            "\t, recordSize: 44 /* 0x0000002c */\n" +
+            "\t, blipTypeWin32: 5\n" +
+            "\t, pictureTypeWin32: \"JPEG\"\n" +
+            "\t, blipTypeMacOS: 5\n" +
+            "\t, pictureTypeMacOS: \"JPEG\"\n" +
+            "\t, suid: \"AQIDBAUGBwgJCgsMDQ4PAA==\"\n" +
+            "\t, tag: 1\n" +
+            "\t, size: 0\n" +
+            "\t, ref: 2\n" +
+            "\t, offset: 3\n" +
+            "\t, usage: 4\n" +
+            "\t, name: 5\n" +
+            "\t, unused2: 6\n" +
+            "\t, unused3: 7\n" +
+            "\t, blipRecord: null\n" +
+            "\t, remainingData: \"\"\n" +
+            "}";
+
         String actual = record.toString();
         assertEquals( expected, actual );
     }

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBlipRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBlipRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBlipRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBlipRecord.java Sat Oct 12 16:32:53 2019
@@ -23,6 +23,7 @@ import static org.junit.Assert.assertNot
 import static org.junit.Assert.assertTrue;
 
 import org.apache.poi.POIDataSamples;
+import org.apache.poi.sl.usermodel.PictureData;
 import org.junit.Test;
 
 /**
@@ -41,8 +42,8 @@ public final class TestEscherBlipRecord
         record.fillFields(data, 0, new DefaultEscherRecordFactory());
         EscherContainerRecord bstore = (EscherContainerRecord)record.getChild(1);
         EscherBSERecord bse1 = (EscherBSERecord)bstore.getChild(0);
-        assertEquals(EscherBSERecord.BT_PNG, bse1.getBlipTypeWin32());
-        assertEquals(EscherBSERecord.BT_PNG, bse1.getBlipTypeMacOS());
+        assertEquals(PictureData.PictureType.PNG.nativeId, bse1.getBlipTypeWin32());
+        assertEquals(PictureData.PictureType.PNG.nativeId, bse1.getBlipTypeMacOS());
         assertArrayEquals(new byte[]{
             0x65, 0x07, 0x4A, (byte)0x8D, 0x3E, 0x42, (byte)0x8B, (byte)0xAC,
             0x1D, (byte)0x89, 0x35, 0x4F, 0x48, (byte)0xFA, 0x37, (byte)0xC2
@@ -88,8 +89,8 @@ public final class TestEscherBlipRecord
         EscherContainerRecord bstore = (EscherContainerRecord)record.getChild(1);
         EscherBSERecord bse1 = (EscherBSERecord)bstore.getChild(1);
         //System.out.println(bse1);
-        assertEquals(EscherBSERecord.BT_WMF, bse1.getBlipTypeWin32());
-        assertEquals(EscherBSERecord.BT_PICT, bse1.getBlipTypeMacOS());
+        assertEquals(PictureData.PictureType.WMF.nativeId, bse1.getBlipTypeWin32());
+        assertEquals(PictureData.PictureType.PICT.nativeId, bse1.getBlipTypeMacOS());
         assertArrayEquals(new byte[]{
             (byte)0xC7, 0x15, 0x69, 0x2D, (byte)0xE5, (byte)0x89, (byte)0xA3, 0x6F,
             0x66, 0x03, (byte)0xD6, 0x24, (byte)0xF7, (byte)0xDB, 0x1D, 0x13

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBoolProperty.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBoolProperty.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBoolProperty.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherBoolProperty.java Sat Oct 12 16:32:53 2019
@@ -24,7 +24,16 @@ import org.junit.Test;
 public final class TestEscherBoolProperty {
     @Test
     public void testToString() {
-        EscherBoolProperty p = new EscherBoolProperty((short)1, 1);
-        assertEquals("propNum: 1, RAW: 0x0001, propName: unknown, complex: false, blipId: false, value: 1 (0x00000001)", p.toString());
+        EscherBoolProperty p = new EscherBoolProperty(EscherPropertyTypes.GEOMETRY__FILLOK, 1);
+        String expected =
+            "{   /* GEOMETRY__FILLOK */\n" +
+            "\t  id: 383 /* 0x017f */\n" +
+            "\t, name: \"geometry.fillok\"\n" +
+            "\t, propertyNumber: 383 /* 0x017f */\n" +
+            "\t, propertySize: 6\n" +
+            "\t, flags: 0x17f /*  */ \n" +
+            "\t, value: 1\n" +
+            "}";
+        assertEquals(expected, p.toString());
     }
 }

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherChildAnchorRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherChildAnchorRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherChildAnchorRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherChildAnchorRecord.java Sat Oct 12 16:32:53 2019
@@ -64,19 +64,18 @@ public final class TestEscherChildAnchor
 
     @Test
     public void testToString(){
-        String nl = System.getProperty( "line.separator" );
-
         String expected =
-            "org.apache.poi.ddf.EscherChildAnchorRecord (ChildAnchor):" + nl +
-            "  RecordId: 0xF00F" + nl +
-            "  Version: 0x0001" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x0001" + nl +
-            "  Record Size: 24" + nl +
-            "  X1: 0x00000001" + nl +
-            "  Y1: 0x00000002" + nl +
-            "  X2: 0x00000003" + nl +
-            "  Y2: 0x00000004";
+            "{   /* CHILD_ANCHOR */\n" +
+            "\t  recordId: -4081 /* 0xf00f */\n" +
+            "\t, version: 1\n" +
+            "\t, instance: 0\n" +
+            "\t, options: 1\n" +
+            "\t, recordSize: 24 /* 0x00000018 */\n" +
+            "\t, x1: 1\n" +
+            "\t, y1: 2\n" +
+            "\t, x2: 3\n" +
+            "\t, y2: 4\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientAnchorRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientAnchorRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientAnchorRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientAnchorRecord.java Sat Oct 12 16:32:53 2019
@@ -70,25 +70,24 @@ public class TestEscherClientAnchorRecor
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.EscherClientAnchorRecord (ClientAnchor):" + nl +
-            "  RecordId: 0xF010" + nl +
-            "  Version: 0x0001" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x0001" + nl +
-            "  Record Size: 28" + nl +
-            "  Flag: 0x004D" + nl +
-            "  Col1: 0x0037" + nl +
-            "  DX1: 0x0021" + nl +
-            "  Row1: 0x0058" + nl +
-            "  DY1: 0x000B" + nl +
-            "  Col2: 0x002C" + nl +
-            "  DX2: 0x0016" + nl +
-            "  Row2: 0x0063" + nl +
-            "  DY2: 0x0042" + nl +
-            "  Extra Data: " + nl +
-            "     0: FF, DD";
+            "{   /* CLIENT_ANCHOR */\n" +
+            "\t  recordId: -4080 /* 0xf010 */\n" +
+            "\t, version: 1\n" +
+            "\t, instance: 0\n" +
+            "\t, options: 1\n" +
+            "\t, recordSize: 28 /* 0x0000001c */\n" +
+            "\t, flag: 77 /* 0x004d */\n" +
+            "\t, col1: 55 /* 0x0037 */\n" +
+            "\t, dx1: 33 /* 0x0021 */\n" +
+            "\t, row1: 88 /* 0x0058 */\n" +
+            "\t, dy1: 11 /* 0x000b */\n" +
+            "\t, col2: 44 /* 0x002c */\n" +
+            "\t, dx2: 22 /* 0x0016 */\n" +
+            "\t, row2: 99 /* 0x0063 */\n" +
+            "\t, dy2: 66 /* 0x0042 */\n" +
+            "\t, remainingData: \"/90=\"\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientDataRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientDataRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientDataRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherClientDataRecord.java Sat Oct 12 16:32:53 2019
@@ -53,17 +53,15 @@ public class TestEscherClientDataRecord
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
-
         String expected =
-            "org.apache.poi.ddf.EscherClientDataRecord (ClientData):" + nl +
-            "  RecordId: 0xF011" + nl +
-            "  Version: 0x0002" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x0002" + nl +
-            "  Record Size: 8" + nl +
-            "  Extra Data: " + nl +
-            "     : 0";
+            "{   /* CLIENT_DATA */\n" +
+            "\t  recordId: -4079 /* 0xf011 */\n" +
+            "\t, version: 2\n" +
+            "\t, instance: 0\n" +
+            "\t, options: 2\n" +
+            "\t, recordSize: 8\n" +
+            "\t, remainingData: \"\"\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherContainerRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherContainerRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherContainerRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherContainerRecord.java Sat Oct 12 16:32:53 2019
@@ -19,6 +19,7 @@ package org.apache.poi.ddf;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotSame;
 import static org.junit.Assert.assertTrue;
 
 import java.util.List;
@@ -80,16 +81,15 @@ public final class TestEscherContainerRe
 		EscherContainerRecord r = new EscherContainerRecord();
 		r.setRecordId(EscherContainerRecord.SP_CONTAINER);
 		r.setOptions((short) 0x000F);
-		String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.EscherContainerRecord (SpContainer):" + nl +
-            "  RecordId: 0xF004" + nl +
-            "  Version: 0x000F" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x000F" + nl +
-            "  Record Size: 8" + nl +
-            "  isContainer: true" + nl +
-            "  children: 0x00000000";
+            "{   /* SP_CONTAINER */\n" +
+			"\t  recordId: -4092 /* 0xf004 */\n" +
+			"\t, version: 15 /* 0x000f */\n" +
+			"\t, instance: 0\n" +
+			"\t, options: 15 /* 0x000f */\n" +
+			"\t, recordSize: 8\n" +
+			"\t, isContainer: true\n" +
+			"}";
 		assertEquals(expected, r.toString());
 
 		EscherOptRecord r2 = new EscherOptRecord();
@@ -98,54 +98,62 @@ public final class TestEscherContainerRe
 		r2.setRecordId(EscherOptRecord.RECORD_ID);
 
 		r.addChildRecord(r2);
-		expected = 
-	        "org.apache.poi.ddf.EscherContainerRecord (SpContainer):" + nl +
-	        "  RecordId: 0xF004" + nl +
-	        "  Version: 0x000F" + nl +
-	        "  Instance: 0x0000" + nl +
-	        "  Options: 0x000F" + nl +
-	        "  Record Size: 16" + nl +
-	        "  isContainer: true" + nl +
-	        "  children: 0x00000001" + nl +
-	        "  Child 0:   org.apache.poi.ddf.EscherOptRecord (Opt):" + nl +
-	        "    RecordId: 0xF00B" + nl +
-	        "    Version: 0x0003" + nl +
-	        "    Instance: 0x0000" + nl +
-	        "    Options: 0x0003" + nl +
-	        "    Record Size: 8" + nl +
-	        "    isContainer: false" + nl +
-	        "    numchildren: 0x00000000" + nl +
-	        "    properties: 0x00000000";
+		expected =
+	        "{   /* SP_CONTAINER */\n" +
+			"\t  recordId: -4092 /* 0xf004 */\n" +
+			"\t, version: 15 /* 0x000f */\n" +
+			"\t, instance: 0\n" +
+			"\t, options: 15 /* 0x000f */\n" +
+			"\t, recordSize: 16 /* 0x00000010 */\n" +
+			"\t, isContainer: true\n" +
+			"\t, children: [\n" +
+			"\t\t{   /* OPT */\n" +
+			"\t\t\t  recordId: -4085 /* 0xf00b */\n" +
+			"\t\t\t, version: 3\n" +
+			"\t\t\t, instance: 0\n" +
+			"\t\t\t, options: 3\n" +
+			"\t\t\t, recordSize: 8\n" +
+			"\t\t\t, isContainer: false\n" +
+			"\t\t\t, properties: [\n" +
+			"]\n" +
+			"\t\t}\n" +
+			"\t]\n" +
+			"}";
         assertEquals(expected, r.toString());
 
 		r.addChildRecord(r2);
 		expected =
-	        "org.apache.poi.ddf.EscherContainerRecord (SpContainer):" + nl +
-	        "  RecordId: 0xF004" + nl +
-	        "  Version: 0x000F" + nl +
-	        "  Instance: 0x0000" + nl +
-	        "  Options: 0x000F" + nl +
-	        "  Record Size: 24" + nl +
-	        "  isContainer: true" + nl +
-	        "  children: 0x00000002" + nl +
-	        "  Child 0:   org.apache.poi.ddf.EscherOptRecord (Opt):" + nl +
-	        "    RecordId: 0xF00B" + nl +
-	        "    Version: 0x0003" + nl +
-	        "    Instance: 0x0000" + nl +
-	        "    Options: 0x0003" + nl +
-	        "    Record Size: 8" + nl +
-	        "    isContainer: false" + nl +
-	        "    numchildren: 0x00000000" + nl +
-	        "    properties: 0x00000000" + nl +
-	        "  Child 1:   org.apache.poi.ddf.EscherOptRecord (Opt):" + nl +
-	        "    RecordId: 0xF00B" + nl +
-	        "    Version: 0x0003" + nl +
-	        "    Instance: 0x0000" + nl +
-	        "    Options: 0x0003" + nl +
-	        "    Record Size: 8" + nl +
-	        "    isContainer: false" + nl +
-	        "    numchildren: 0x00000000" + nl +
-	        "    properties: 0x00000000";
+	        "{   /* SP_CONTAINER */\n" +
+			"\t  recordId: -4092 /* 0xf004 */\n" +
+			"\t, version: 15 /* 0x000f */\n" +
+			"\t, instance: 0\n" +
+			"\t, options: 15 /* 0x000f */\n" +
+			"\t, recordSize: 24 /* 0x00000018 */\n" +
+			"\t, isContainer: true\n" +
+			"\t, children: [\n" +
+			"\t\t{   /* OPT */\n" +
+			"\t\t\t  recordId: -4085 /* 0xf00b */\n" +
+			"\t\t\t, version: 3\n" +
+			"\t\t\t, instance: 0\n" +
+			"\t\t\t, options: 3\n" +
+			"\t\t\t, recordSize: 8\n" +
+			"\t\t\t, isContainer: false\n" +
+			"\t\t\t, properties: [\n" +
+			"]\n" +
+			"\t\t},\n" +
+			"\n" +
+			"\t\t{   /* OPT - index: 1 */\n" +
+			"\t\t\t  recordId: -4085 /* 0xf00b */\n" +
+			"\t\t\t, version: 3\n" +
+			"\t\t\t, instance: 0\n" +
+			"\t\t\t, options: 3\n" +
+			"\t\t\t, recordSize: 8\n" +
+			"\t\t\t, isContainer: false\n" +
+			"\t\t\t, properties: [\n" +
+			"]\n" +
+			"\t\t}\n" +
+			"\t]\n" +
+			"}";
 		assertEquals(expected, r.toString());
     }
 
@@ -159,8 +167,6 @@ public final class TestEscherContainerRe
         public int getRecordSize() { return 10; }
 		@Override
         public String getRecordName() { return ""; }
-        @Override
-		protected Object[][] getAttributeMap() { return null; }
 		@Override
 		public Enum getGenericRecordType() { return EscherRecordTypes.UNKNOWN; }
 	}
@@ -203,7 +209,7 @@ public final class TestEscherContainerRe
 		children0.add(chC);
 
 		List<EscherRecord> children1 = ecr.getChildRecords();
-		assertTrue(children0 !=  children1);
+		assertNotSame(children0, children1);
 		assertEquals(2, children1.size());
 		assertEquals(chA, children1.get(0));
 		assertEquals(chB, children1.get(1));

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDgRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDgRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDgRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDgRecord.java Sat Oct 12 16:32:53 2019
@@ -57,16 +57,17 @@ public final class TestEscherDgRecord {
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.EscherDgRecord (Dg):" + nl +
-            "  RecordId: 0xF008" + nl +
-            "  Version: 0x0000" + nl +
-            "  Instance: 0x0001" + nl +
-            "  Options: 0x0010" + nl +
-            "  Record Size: 16" + nl +
-            "  NumShapes: 0x00000002" + nl +
-            "  LastMSOSPID: 0x00000401";
+            "{   /* DG */\n" +
+            "\t  recordId: -4088 /* 0xf008 */\n" +
+            "\t, version: 0\n" +
+            "\t, instance: 1\n" +
+            "\t, options: 16 /* 0x0010 */\n" +
+            "\t, recordSize: 16 /* 0x00000010 */\n" +
+            "\t, numShapes: 2\n" +
+            "\t, lastMSOSPID: 1025 /* 0x00000401 */\n" +
+            "\t, drawingGroupId: 1\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDggRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDggRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDggRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDggRecord.java Sat Oct 12 16:32:53 2019
@@ -68,20 +68,24 @@ public final class TestEscherDggRecord {
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.EscherDggRecord (Dgg):" + nl +
-            "  RecordId: 0xF006" + nl +
-            "  Version: 0x0000" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x0000" + nl +
-            "  Record Size: 32" + nl +
-            "  ShapeIdMax: 0x00000402" + nl +
-            "  NumIdClusters: 0x00000002" + nl +
-            "  NumShapesSaved: 0x00000002" + nl +
-            "  DrawingsSaved: 0x00000001" + nl +
-            "  FileId Clusters: 0x00000001" + nl +
-            "  Group1: 0x00000002";
+            "{   /* DGG */\n" +
+            "\t  recordId: -4090 /* 0xf006 */\n" +
+            "\t, version: 0\n" +
+            "\t, instance: 0\n" +
+            "\t, options: 0\n" +
+            "\t, recordSize: 32 /* 0x00000020 */\n" +
+            "\t, fileIdClusters: [\n" +
+            "\n" +
+            "\t{   /* FileIdCluster */\n" +
+            "\t\t  drawingGroupId: 1\n" +
+            "\t\t, numShapeIdUsed: 2\n" +
+            "\t}]\n" +
+            "\t, shapeIdMax: 1026 /* 0x00000402 */\n" +
+            "\t, numIdClusters: 2\n" +
+            "\t, numShapesSaved: 2\n" +
+            "\t, drawingsSaved: 1\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDump.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDump.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDump.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherDump.java Sat Oct 12 16:32:53 2019
@@ -19,13 +19,13 @@ package org.apache.poi.ddf;
 
 import static org.junit.Assert.assertTrue;
 
-import java.io.ByteArrayInputStream;
 import java.io.InputStream;
 import java.io.PrintStream;
 import java.io.UnsupportedEncodingException;
 
 import org.apache.poi.POIDataSamples;
 import org.apache.poi.hssf.HSSFTestDataSamples;
+import org.apache.poi.poifs.storage.RawDataUtil;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LocaleUtil;
 import org.apache.poi.util.NullOutputStream;
@@ -39,20 +39,51 @@ public class TestEscherDump {
     public static void init() throws UnsupportedEncodingException {
         nullPS = new NullPrinterStream();
     }
-    
+
+    // simple test to at least cover some parts of the class
     @Test
     public void testSimple() throws Exception {
-        // simple test to at least cover some parts of the class
-        EscherDump.main(new String[] {}, nullPS);
-        
-        new EscherDump().dump(0, new byte[] {}, nullPS);
-        new EscherDump().dump(new byte[] {}, 0, 0, nullPS);
-        new EscherDump().dumpOld(0, new ByteArrayInputStream(new byte[] {}), nullPS);
+        final String recordData =
+            "H4sIAAAAAAAAAL2UaVCSWxjHX0SBChABLRXM1FxSEzXTzHK7dpVIcMmwxXCP9KaGTaWlGYLrtGmGmYEmYmqF2qIt4ppmjNG+" +
+            "2dWulUtOUdq1NHjva8v90HT7eM+Z5znP/M9/zpk5v3mONgAoc5AANBDKeVDW0gQAjZkVCti3mKnpAExpB/m8AKTyEiTCNd2J" +
+            "Z+O0o6W+srDCyH3DhzkgUAD76v86QNA4mKTMg4QfnUew/5qA29CZz6ALqGcSgNzOICB05gD1rhODJR2AZu3Ox3YOKAfVUPhH" +
+            "ULtbpdVJ0ccdijw0pY1A56M3Jup7U15jp7X4PPTTecx92/MT9eZwtUICrLJvsB6z0fHG5qbw7mRpFRaOnPYJ6SqXd5AQMSKM" +
+            "jceyMD4NsULkj1OwHncz5cO3pPvCXXPTMNdNa+kDfwku4q0RnFL8YGBI6N+oXHlgzCkGWGRdONJPK1PbusJrhBltylPBMm3e" +
+            "G0kw6DGdLhoU3pmgJ6n1maC1fXrs0uUL6cWG/kGVm3MWHh3pALq4+PH55k7Uu3d+x85u9zxwIzfQuU+3TIG5SkOgrS1tCJb3" +
+            "3nqHrxcx3XlJA6vZJ6Oi1ctaXppQyBQLbLLrPJaKKq+zIexFLrVdZM+r34pJJpNN1hSrWbM/lIyRmKpYRIi7CybTTUzBWt49" +
+            "11HRM/VbCiZ6Gyt9TZmhGXPS75xYjpH366vhgLJu4ZoZfM+/4FvGaBZIE9aZ2SduMrUT4mJA4NpP8F2AhB+dT+D/jY/7DZ84" +
+            "ULbaK4C4crJvZ4qej2+em2+Vni4mPluh2e5xyoGUWYRaoFnWubHcaX+L09Ya0ta4KrP13C2ozMyicr4ovY0fNhT2wfMF7ip8" +
+            "/tD0u96myXcn92gtTnEuGfBJxY0lFG0mJxPWpknjNxmzWvzKj18rpjO4hhQXAtaRVSmJu+D8egI3RdQVXYxzRhs1+HE2iNvM" +
+            "fVe2DsSjqJQbBdUajcaECC3/58MP97Q0Eo+GNTdKbhk1r7UJadrVj0rLplmAqU/BlGeXDObGLtl69vITp9tD25vVY9vUT17u" +
+            "WTGW8idcxUDMMX2PHa8X6xzG0C5cGJcVth40m3ycwCpcfuP4OClu6IpysV/9QuvrdW/Yb3Qj6Ul7e3nybqemdkvLXsXG2N3v" +
+            "qeVE0woXb06pLduuFWUv7NxY8jq1k63fcD5jvG/w/IE8eUNh0Pohz0WRx6tdOlf4XhlbF5pgfYYzn8w6cjYx/8rBXvtWNz8L" +
+            "6uu+ig35t+dgOc4jOpLirmFPtjQdKHovGZ4Bff4LaIPLnx6cbnKFo8JHDoGpJ1+BwKGfgM6GhB+d+F/0acj3PiVEABoProzN" +
+            "1dcsVo9TPoPIF+r9EQI0qtveV4WEI1YhFjfmLxDsyFJptHvx/0BD3bfKJY/XqlFTReyIko4tQSzFFRyGRbkyg7MyuCqTmsiA" +
+            "mAgs3FGB0BOR7LzNuUYMC9QWaXyUTcxELLOFQvaRIQZ1HlgkJtE25Ohym/xzkqxqbFI1fWKsGgKq0m/q9kwkVDJAvdKM+7c8" +
+            "wj8GVPdneU0GVaeLVO6Kd3T2lMQFRNeCRwUyx5LSIxI5RmIFNc2RnuSIfYOeOZ+0CwzE7BFTJO+5cVeUz2nDN7mMYUSYOZyv" +
+            "SyyaRRydLKPYMmqFbS5K8RJ6vQNIGtiuI8AKCEgXsqV9Vz1tgvzovKiD2FPtpNgRlb0keoprdS+hnsP6ICwLBrE9dz26g2YP" +
+            "DszibWNE7zW5xndwlsoqFRh87XTFw8BXiFdv0SDsGBnfNcOu/Qu7y7SLppfzLJq714byzYQ590BA+BN2xyDhR+fZX7CL/s5u" +
+            "Q9f/8ccWX28U3BaGw9qTiSqDfOtHmXXZq8XiHXAYoz901c5V2lVulTXZEMqwnLq8+8ds95s0FFrdl73saRntr/UuUxFHY0WU" +
+            "z5b333qXTe/NagSRrmqkqypoNG12Oz3nE5Yzyt7d05eY66Ci2oTR+rNS3K4OiClGK+07HWtFFLvAqv6sNkpFsLs4Wp8XfRp/" +
+            "11oPk3uTQB0ftHg1C16KRTBl+AbCzVaYfx6VFlJ7GL7Jme8bVOku8FKZL0eGgMVk4qhEnpZogNrtFU5yEyswJ+LbHOKsOPCn" +
+            "cT19LR+PfTgjN4CKCS5Es4LS+7nLt9hQ7ejwGQnEyxebOgJzlHjotWUACpoZsFkAgGqBeUDZAzB6h4N2MFCNhmIuFJMAgPsH" +
+            "eJr+iZEHAAA=";
+
+        // Create a new instance of the escher dumper
+        EscherDump dumper = new EscherDump();
+
+        // Decode the stream to bytes
+        byte[] bytes = RawDataUtil.decompress(recordData);
+        // Dump the contents of scher to screen.
+        dumper.dump(bytes, 0, bytes.length, nullPS);
+
+        dumper.dump(0, new byte[] {}, nullPS);
+        dumper.dump(new byte[] {}, 0, 0, nullPS);
     }
 
     @Test
     public void testWithData() throws Exception {
-        new EscherDump().dumpOld(8, new ByteArrayInputStream(new byte[] {0, 0, 0, 0, 0, 0, 0, 0}), nullPS);
+        new EscherDump().dump(8, new byte[] {0, 0, 0, 0, 0, 0, 0, 0}, nullPS);
     }
 
     @Test

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherOptRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherOptRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherOptRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherOptRecord.java Sat Oct 12 16:32:53 2019
@@ -49,9 +49,10 @@ public final class TestEscherOptRecord {
         assertEquals( (short) 0x0033, r.getOptions() );
         assertEquals( (short) 0xF00B, r.getRecordId() );
         assertEquals( 3, r.getEscherProperties().size() );
-        EscherBoolProperty prop1 = new EscherBoolProperty( EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
-        EscherComplexProperty prop2 = new EscherComplexProperty( (short) 1, false, new byte[] { 0x01, 0x02 } );
-        EscherBoolProperty prop3 = new EscherBoolProperty( EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
+        EscherBoolProperty prop1 = new EscherBoolProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
+        EscherComplexProperty prop2 = new EscherComplexProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, false, 2);
+        prop2.setComplexData(new byte[] { 0x01, 0x02 });
+        EscherBoolProperty prop3 = new EscherBoolProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
         assertEquals( prop1, r.getEscherProperty( 0 ) );
         assertEquals( prop2, r.getEscherProperty( 1 ) );
         assertEquals( prop3, r.getEscherProperty( 2 ) );
@@ -71,9 +72,9 @@ public final class TestEscherOptRecord {
         assertEquals( (short) 0x0033, r.getOptions() );
         assertEquals( (short) 0xF00B, r.getRecordId() );
         assertEquals( 3, r.getEscherProperties().size() );
-        EscherBoolProperty prop1 = new EscherBoolProperty( EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 524296 );
-        EscherRGBProperty prop2 = new EscherRGBProperty( EscherProperties.FILL__FILLCOLOR, 0x08000009 );
-        EscherRGBProperty prop3 = new EscherRGBProperty( EscherProperties.LINESTYLE__COLOR, 0x08000040 );
+        EscherBoolProperty prop1 = new EscherBoolProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 524296 );
+        EscherRGBProperty prop2 = new EscherRGBProperty( EscherPropertyTypes.FILL__FILLCOLOR, 0x08000009 );
+        EscherRGBProperty prop3 = new EscherRGBProperty( EscherPropertyTypes.LINESTYLE__COLOR, 0x08000040 );
         assertEquals( prop1, r.getEscherProperty( 0 ) );
         assertEquals( prop2, r.getEscherProperty( 1 ) );
         assertEquals( prop3, r.getEscherProperty( 2 ) );
@@ -91,9 +92,10 @@ public final class TestEscherOptRecord {
         EscherOptRecord r = new EscherOptRecord();
         r.setOptions( (short) 0x0033 );
         r.setRecordId( (short) 0xF00B );
-        EscherBoolProperty prop1 = new EscherBoolProperty( EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
-        EscherComplexProperty prop2 = new EscherComplexProperty( (short) 1, false, new byte[] { 0x01, 0x02 } );
-        EscherBoolProperty prop3 = new EscherBoolProperty( EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
+        EscherBoolProperty prop1 = new EscherBoolProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
+        EscherComplexProperty prop2 = new EscherComplexProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, false, 2);
+        prop2.setComplexData(new byte[] { 0x01, 0x02 });
+        EscherBoolProperty prop3 = new EscherBoolProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
         r.addEscherProperty( prop1 );
         r.addEscherProperty( prop2 );
         r.addEscherProperty( prop3 );
@@ -105,7 +107,7 @@ public final class TestEscherOptRecord {
                 "0B, F0, " +
                 "14, 00, 00, 00, " +
                 "BF, 00, 01, 00, 00, 00, " +
-                "01, 80, 02, 00, 00, 00, " +
+                "BF, 80, 02, 00, 00, 00, " +
                 "BF, 00, 01, 00, 00, 00, " +
                 "01, 02]";
         assertEquals( dataStr, HexDump.toHex(data) );
@@ -117,9 +119,9 @@ public final class TestEscherOptRecord {
         EscherOptRecord r = new EscherOptRecord();
         r.setOptions( (short) 0x0033 );
         r.setRecordId( (short) 0xF00B );
-        EscherBoolProperty prop1 = new EscherBoolProperty( EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
-        EscherRGBProperty prop2 = new EscherRGBProperty( EscherProperties.FILL__FILLCOLOR, 0x08000009 );
-        EscherRGBProperty prop3 = new EscherRGBProperty( EscherProperties.LINESTYLE__COLOR, 0x08000040 );
+        EscherBoolProperty prop1 = new EscherBoolProperty( EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE, 1 );
+        EscherRGBProperty prop2 = new EscherRGBProperty( EscherPropertyTypes.FILL__FILLCOLOR, 0x08000009 );
+        EscherRGBProperty prop3 = new EscherRGBProperty( EscherPropertyTypes.LINESTYLE__COLOR, 0x08000040 );
         r.addEscherProperty( prop1 );
         r.addEscherProperty( prop2 );
         r.addEscherProperty( prop3 );
@@ -138,24 +140,31 @@ public final class TestEscherOptRecord {
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         EscherOptRecord r = new EscherOptRecord();
         // don't try to shoot in foot, please -- vlsergey
         // r.setOptions((short)0x000F);
         r.setRecordId(EscherOptRecord.RECORD_ID);
-        EscherProperty prop1 = new EscherBoolProperty((short)1, 1);
+        EscherProperty prop1 = new EscherBoolProperty(EscherPropertyTypes.GEOMETRY__FILLOK, 1);
         r.addEscherProperty(prop1);
         String expected =
-            "org.apache.poi.ddf.EscherOptRecord (Opt):" + nl +
-            "  RecordId: 0xF00B" + nl +
-            "  Version: 0x0003" + nl +
-            "  Instance: 0x0001" + nl +
-            "  Options: 0x0013" + nl +
-            "  Record Size: 14" + nl +
-            "  isContainer: false" + nl +
-            "  numchildren: 0x00000000" + nl +
-            "  properties: 0x00000001" + nl +
-            "  unknown:   propNum: 1, RAW: 0x0001, propName: unknown, complex: false, blipId: false, value: 1 (0x00000001)";
+            "{   /* OPT */\n" +
+            "\t  recordId: -4085 /* 0xf00b */\n" +
+            "\t, version: 3\n" +
+            "\t, instance: 1\n" +
+            "\t, options: 19 /* 0x0013 */\n" +
+            "\t, recordSize: 14 /* 0x0000000e */\n" +
+            "\t, isContainer: false\n" +
+            "\t, properties: [\n" +
+            "\n" +
+            "\t{   /* GEOMETRY__FILLOK */\n" +
+            "\t\t  id: 383 /* 0x017f */\n" +
+            "\t\t, name: \"geometry.fillok\"\n" +
+            "\t\t, propertyNumber: 383 /* 0x017f */\n" +
+            "\t\t, propertySize: 6\n" +
+            "\t\t, flags: 0x17f /*  */ \n" +
+            "\t\t, value: 1\n" +
+            "\t}]\n" +
+            "}";
         assertEquals( expected, r.toString());
     }
 
@@ -255,7 +264,7 @@ public final class TestEscherOptRecord {
 
     /**
      * Test read/write against an OPT record from a real ppt file.
-     * In PowerPoint is is legal to have array properties with empty complex part.
+     * In PowerPoint it is legal to have array properties with empty complex part.
      * In Glen's original implementation complex part is always 6 bytes which resulted
      * in +6 extra bytes when writing back out. As the result the ppt becomes unreadable.
      *
@@ -295,7 +304,7 @@ public final class TestEscherOptRecord {
     @Test
     public void testEmptyArrayProperty() {
         EscherOptRecord r = new EscherOptRecord();
-        EscherArrayProperty p = new EscherArrayProperty((short)(EscherProperties.FILL__SHADECOLORS + 0x8000), new byte[0] );
+        EscherArrayProperty p = new EscherArrayProperty(EscherPropertyTypes.FILL__SHADECOLORS, false, 0);
         assertEquals(0, p.getNumberOfElementsInArray());
         r.addEscherProperty(p);
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherProperty.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherProperty.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherProperty.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherProperty.java Sat Oct 12 16:32:53 2019
@@ -31,22 +31,24 @@ public class TestEscherProperty {
      */
     @Test
     public void testPropertyNames() throws Exception {
-        EscherProperty p1 = new EscherSimpleProperty( EscherProperties.GROUPSHAPE__SHAPENAME, 0);
+        EscherProperty p1 = new EscherSimpleProperty( EscherPropertyTypes.GROUPSHAPE__SHAPENAME, 0);
         assertEquals("groupshape.shapename", p1.getName());
-        assertEquals(EscherProperties.GROUPSHAPE__SHAPENAME, p1.getPropertyNumber());
+        assertEquals(EscherPropertyTypes.GROUPSHAPE__SHAPENAME.propNumber, p1.getPropertyNumber());
         assertFalse(p1.isComplex());
 
-        EscherProperty p2 = new EscherComplexProperty(
-                EscherProperties.GROUPSHAPE__SHAPENAME, false, new byte[10]);
+        EscherComplexProperty p2 = new EscherComplexProperty(
+                EscherPropertyTypes.GROUPSHAPE__SHAPENAME, false, 10);
+        p2.setComplexData(new byte[10]);
         assertEquals("groupshape.shapename", p2.getName());
-        assertEquals(EscherProperties.GROUPSHAPE__SHAPENAME, p2.getPropertyNumber());
+        assertEquals(EscherPropertyTypes.GROUPSHAPE__SHAPENAME.propNumber, p2.getPropertyNumber());
         assertTrue(p2.isComplex());
         assertFalse(p2.isBlipId());
 
-        EscherProperty p3 = new EscherComplexProperty(
-                EscherProperties.GROUPSHAPE__SHAPENAME, true, new byte[10]);
+        EscherComplexProperty p3 = new EscherComplexProperty(
+                EscherPropertyTypes.GROUPSHAPE__SHAPENAME, true, 10);
+        p2.setComplexData(new byte[10]);
         assertEquals("groupshape.shapename", p3.getName());
-        assertEquals(EscherProperties.GROUPSHAPE__SHAPENAME, p3.getPropertyNumber());
+        assertEquals(EscherPropertyTypes.GROUPSHAPE__SHAPENAME.propNumber, p3.getPropertyNumber());
         assertTrue(p3.isComplex());
         assertTrue(p3.isBlipId());
     }

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpRecord.java Sat Oct 12 16:32:53 2019
@@ -57,18 +57,17 @@ public class TestEscherSpRecord {
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
-
         String expected =
-            "org.apache.poi.ddf.EscherSpRecord (Sp):" + nl +
-            "  RecordId: 0xF00A" + nl +
-            "  Version: 0x0002" + nl +
-            "  Instance: 0x0000" + nl +
-            "  Options: 0x0002" + nl +
-            "  Record Size: 16" + nl +
-            "  ShapeType: 0x0000" + nl +
-            "  ShapeId: 0x00000400" + nl +
-            "  Flags: GROUP|PATRIARCH (0x00000005)";
+            "{   /* SP */\n" +
+            "\t  recordId: -4086 /* 0xf00a */\n" +
+            "\t, version: 2\n" +
+            "\t, instance: 0\n" +
+            "\t, options: 2\n" +
+            "\t, recordSize: 16 /* 0x00000010 */\n" +
+            "\t, shapeType: 0\n" +
+            "\t, shapeId: 1024 /* 0x00000400 */\n" +
+            "\t, flags: 0x5 /* GROUP | PATRIARCH */ \n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpgrRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpgrRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpgrRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSpgrRecord.java Sat Oct 12 16:32:53 2019
@@ -63,18 +63,18 @@ public final class TestEscherSpgrRecord
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.EscherSpgrRecord (Spgr):" + nl +
-            "  RecordId: 0xF009" + nl +
-            "  Version: 0x0000" + nl +
-            "  Instance: 0x0001" + nl +
-            "  Options: 0x0010" + nl +
-            "  Record Size: 24" + nl +
-            "  RectX: 0x00000001" + nl +
-            "  RectY: 0x00000002" + nl +
-            "  RectWidth: 0x00000003" + nl +
-            "  RectHeight: 0x00000004";
+            "{   /* SPGR */\n" +
+            "\t  recordId: -4087 /* 0xf009 */\n" +
+            "\t, version: 0\n" +
+            "\t, instance: 1\n" +
+            "\t, options: 16 /* 0x0010 */\n" +
+            "\t, recordSize: 24 /* 0x00000018 */\n" +
+            "\t, rectX1: 1\n" +
+            "\t, rectY1: 2\n" +
+            "\t, rectX2: 3\n" +
+            "\t, rectY2: 4\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSplitMenuColorsRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSplitMenuColorsRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSplitMenuColorsRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestEscherSplitMenuColorsRecord.java Sat Oct 12 16:32:53 2019
@@ -63,18 +63,18 @@ public final class TestEscherSplitMenuCo
 
     @Test
     public void testToString() {
-        String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.EscherSplitMenuColorsRecord (SplitMenuColors):" + nl +
-            "  RecordId: 0xF11E" + nl +
-            "  Version: 0x0000" + nl +
-            "  Instance: 0x0004" + nl +
-            "  Options: 0x0040" + nl +
-            "  Record Size: 24" + nl +
-            "  Color1: 0x00000402" + nl +
-            "  Color2: 0x00000002" + nl +
-            "  Color3: 0x00000002" + nl +
-            "  Color4: 0x00000001";
+            "{   /* SPLIT_MENU_COLORS */\n" +
+            "\t  recordId: -3810 /* 0xf11e */\n" +
+            "\t, version: 0\n" +
+            "\t, instance: 4\n" +
+            "\t, options: 64 /* 0x0040 */\n" +
+            "\t, recordSize: 24 /* 0x00000018 */\n" +
+            "\t, color1: 1026 /* 0x00000402 */\n" +
+            "\t, color2: 2\n" +
+            "\t, color3: 2\n" +
+            "\t, color4: 1\n" +
+            "}";
         assertEquals( expected, createRecord().toString() );
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/ddf/TestUnknownEscherRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ddf/TestUnknownEscherRecord.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ddf/TestUnknownEscherRecord.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ddf/TestUnknownEscherRecord.java Sat Oct 12 16:32:53 2019
@@ -150,20 +150,15 @@ public final class TestUnknownEscherReco
         r.setRecordId( (short) 0xF112 );
         byte[] data = new byte[8];
         r.serialize( 0, data, new NullEscherSerializationListener() );
-        String nl = System.getProperty("line.separator");
         String expected =
-            "org.apache.poi.ddf.UnknownEscherRecord (Unknown 0xF112):" + nl +
-            "  RecordId: 0xF112" + nl +
-            "  Version: 0x0004" + nl +
-            "  Instance: 0x0123" + nl +
-            "  Options: 0x1234" + nl +
-            "  Record Size: 8" + nl +
-            "  isContainer: false" + nl +
-            "  children: 0x00000000" + nl +
-            "  Extra Data: " + nl +
-            "     : 0";
-        
-        
+            "{   /* UNKNOWN */\n" +
+            "\t  recordId: -3822 /* 0xf112 */\n" +
+            "\t, version: 4\n" +
+            "\t, instance: 291 /* 0x0123 */\n" +
+            "\t, options: 4660 /* 0x1234 */\n" +
+            "\t, recordSize: 8\n" +
+            "\t, data: \"\"\n" +
+            "}";
         assertEquals(expected, r.toString() );
     }
 }

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java Sat Oct 12 16:32:53 2019
@@ -19,6 +19,7 @@ package org.apache.poi.hssf.model;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertSame;
@@ -27,7 +28,16 @@ import static org.junit.Assert.assertTru
 import java.io.IOException;
 import java.util.List;
 
-import org.apache.poi.ddf.*;
+import org.apache.poi.ddf.EscherBoolProperty;
+import org.apache.poi.ddf.EscherContainerRecord;
+import org.apache.poi.ddf.EscherDgRecord;
+import org.apache.poi.ddf.EscherOptRecord;
+import org.apache.poi.ddf.EscherProperty;
+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.ddf.EscherTextboxRecord;
 import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
 import org.apache.poi.hssf.record.EscherAggregate;
@@ -101,10 +111,10 @@ public class TestDrawingShapes {
         EscherOptRecord opt = shape.getOptRecord();
 
         assertEquals(7, opt.getEscherProperties().size());
-        assertTrue(((EscherBoolProperty) opt.lookup(EscherProperties.GROUPSHAPE__PRINT)).isTrue());
-        assertTrue(((EscherBoolProperty) opt.lookup(EscherProperties.LINESTYLE__NOLINEDRAWDASH)).isTrue());
-        assertEquals(0x00000004, ((EscherSimpleProperty) opt.lookup(EscherProperties.GEOMETRY__SHAPEPATH)).getPropertyValue());
-        assertNull(opt.lookup(EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE));
+        assertNotEquals(((EscherSimpleProperty) opt.lookup(EscherPropertyTypes.GROUPSHAPE__FLAGS)).getPropertyValue(), 0);
+        assertTrue(((EscherBoolProperty) opt.lookup(EscherPropertyTypes.LINESTYLE__NOLINEDRAWDASH)).isTrue());
+        assertEquals(0x00000004, ((EscherSimpleProperty) opt.lookup(EscherPropertyTypes.GEOMETRY__SHAPEPATH)).getPropertyValue());
+        assertNull(opt.lookup(EscherPropertyTypes.TEXT__SIZE_TEXT_TO_FIT_SHAPE));
     }
 
     @Test
@@ -153,7 +163,6 @@ public class TestDrawingShapes {
         HSSFClientAnchor anchor = new HSSFClientAnchor(10, 10, 50, 50, (short) 2, 2, (short) 4, 4);
         anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
         assertEquals(AnchorType.MOVE_DONT_RESIZE, anchor.getAnchorType());
-        //noinspection deprecation
         anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
         assertEquals(AnchorType.MOVE_DONT_RESIZE, anchor.getAnchorType());
 
@@ -175,10 +184,10 @@ public class TestDrawingShapes {
         assertNotNull(escherContainer);
         EscherRecord childById = escherContainer.getChildById(EscherOptRecord.RECORD_ID);
         assertNotNull(childById);
-        EscherProperty lookup = ((EscherOptRecord) childById).lookup(EscherProperties.TEXT__TEXTID);
+        EscherProperty lookup = ((EscherOptRecord) childById).lookup(EscherPropertyTypes.TEXT__TEXTID);
         assertNotNull(lookup);
         assertEquals(((EscherSimpleProperty) lookup).getPropertyValue(), "teeeest".hashCode());
-        assertEquals(rectangle.isNoFill(), true);
+        assertTrue(rectangle.isNoFill());
         assertEquals(rectangle.getWrapText(), HSSFSimpleShape.WRAP_NONE);
         assertEquals(rectangle.getString().getString(), "teeeest");
 
@@ -197,7 +206,7 @@ public class TestDrawingShapes {
         assertEquals(anchor, rectangle2.getAnchor());
         assertEquals(rectangle2.getLineStyleColor(), 1111);
         assertEquals(rectangle2.getFillColor(), 777);
-        assertEquals(rectangle2.isNoFill(), true);
+        assertTrue(rectangle2.isNoFill());
         assertEquals(rectangle2.getString().getString(), "teeeest");
         assertEquals(rectangle.getWrapText(), HSSFSimpleShape.WRAP_NONE);
 
@@ -229,7 +238,7 @@ public class TestDrawingShapes {
         assertEquals(rectangle2.getAnchor().getDx2(), 3);
         assertEquals(rectangle2.getAnchor().getDy1(), 4);
         assertEquals(rectangle2.getAnchor().getDy2(), 5);
-        assertEquals(rectangle2.isNoFill(), false);
+        assertFalse(rectangle2.isNoFill());
         assertEquals(rectangle2.getString().getString(), "test22");
 
         HSSFSimpleShape rect3 = drawing.createSimpleShape(new HSSFClientAnchor());
@@ -255,7 +264,7 @@ public class TestDrawingShapes {
         assertEquals(picture.getFillColor(), 0x5DC943);
         assertEquals(picture.getLineWidth(), HSSFShape.LINEWIDTH_DEFAULT);
         assertEquals(picture.getLineStyle(), HSSFShape.LINESTYLE_DEFAULT);
-        assertEquals(picture.isNoFill(), false);
+        assertFalse(picture.isNoFill());
 
         picture.setPictureIndex(2);
         assertEquals(picture.getPictureIndex(), 2);
@@ -272,7 +281,7 @@ public class TestDrawingShapes {
         assertEquals(1, drawing.getChildren().size());
 
         HSSFSimpleShape shape = (HSSFSimpleShape) drawing.getChildren().get(0);
-        assertEquals(shape.isNoFill(), false);
+        assertFalse(shape.isNoFill());
         assertEquals(shape.getLineStyle(), HSSFShape.LINESTYLE_DASHDOTGEL);
         assertEquals(shape.getLineStyleColor(), 0x616161);
         assertEquals(HexDump.toHex(shape.getFillColor()), shape.getFillColor(), 0x2CE03D);
@@ -332,10 +341,8 @@ public class TestDrawingShapes {
         HSSFSheet sheet = wb.getSheetAt(0);
         HSSFPatriarch patriarch = sheet.getDrawingPatriarch();
 
-        /**
-         * 2048 - main SpContainer id
-         * 2049 - existing shape id
-         */
+        // 2048 - main SpContainer id
+        // 2049 - existing shape id
         assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 2050);
         assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 2051);
         assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 2052);
@@ -343,10 +350,8 @@ public class TestDrawingShapes {
         sheet = wb.getSheetAt(1);
         patriarch = sheet.getDrawingPatriarch();
 
-        /**
-         * 3072 - main SpContainer id
-         * 3073 - existing shape id
-         */
+        // 3072 - main SpContainer id
+        // 3073 - existing shape id
         assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 3074);
         assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 3075);
         assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 3076);
@@ -617,13 +622,13 @@ public class TestDrawingShapes {
         HSSFSimpleShape rectangle = patriarch.createSimpleShape(new HSSFClientAnchor());
         rectangle.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
 
-        assertEquals(rectangle.isFlipVertical(), false);
-        assertEquals(rectangle.isFlipHorizontal(), false);
+        assertFalse(rectangle.isFlipVertical());
+        assertFalse(rectangle.isFlipHorizontal());
 
         rectangle.setFlipVertical(true);
-        assertEquals(rectangle.isFlipVertical(), true);
+        assertTrue(rectangle.isFlipVertical());
         rectangle.setFlipHorizontal(true);
-        assertEquals(rectangle.isFlipHorizontal(), true);
+        assertTrue(rectangle.isFlipHorizontal());
 
         HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
         wb1.close();
@@ -632,13 +637,13 @@ public class TestDrawingShapes {
 
         rectangle = (HSSFSimpleShape) patriarch.getChildren().get(0);
 
-        assertEquals(rectangle.isFlipHorizontal(), true);
+        assertTrue(rectangle.isFlipHorizontal());
         rectangle.setFlipHorizontal(false);
-        assertEquals(rectangle.isFlipHorizontal(), false);
+        assertFalse(rectangle.isFlipHorizontal());
 
-        assertEquals(rectangle.isFlipVertical(), true);
+        assertTrue(rectangle.isFlipVertical());
         rectangle.setFlipVertical(false);
-        assertEquals(rectangle.isFlipVertical(), false);
+        assertFalse(rectangle.isFlipVertical());
 
         HSSFWorkbook wb3 = HSSFTestDataSamples.writeOutAndReadBack(wb2);
         wb2.close();
@@ -647,8 +652,8 @@ public class TestDrawingShapes {
 
         rectangle = (HSSFSimpleShape) patriarch.getChildren().get(0);
 
-        assertEquals(rectangle.isFlipVertical(), false);
-        assertEquals(rectangle.isFlipHorizontal(), false);
+        assertFalse(rectangle.isFlipVertical());
+        assertFalse(rectangle.isFlipHorizontal());
         wb3.close();
     }
 
@@ -735,8 +740,7 @@ public class TestDrawingShapes {
     
     @Test
     public void testBug45312() throws Exception {
-        HSSFWorkbook wb = new HSSFWorkbook();
-        try {
+        try (HSSFWorkbook wb = new HSSFWorkbook()) {
             HSSFSheet sheet = wb.createSheet();
             HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
     
@@ -768,16 +772,7 @@ public class TestDrawingShapes {
                 shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
             }
             
-            /*OutputStream stream = new FileOutputStream("/tmp/45312.xls");
-            try {
-                wb.write(stream);
-            } finally {
-                stream.close();
-            }*/
-            
             checkWorkbookBack(wb);
-        } finally {
-            wb.close();
         }
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestPolygon.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestPolygon.java?rev=1868352&r1=1868351&r2=1868352&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestPolygon.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestPolygon.java Sat Oct 12 16:32:53 2019
@@ -25,7 +25,7 @@ import static org.junit.Assert.assertTru
 import java.io.IOException;
 
 import org.apache.poi.ddf.EscherArrayProperty;
-import org.apache.poi.ddf.EscherProperties;
+import org.apache.poi.ddf.EscherPropertyTypes;
 import org.apache.poi.ddf.EscherSpRecord;
 import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.hssf.record.ObjRecord;
@@ -85,16 +85,20 @@ public class TestPolygon {
         polygon.setPolygonDrawArea( 100, 100 );
         polygon.setPoints( new int[]{0, 90, 50, 90}, new int[]{5, 5, 44, 88} );
 
-        EscherArrayProperty verticesProp1 = polygon.getOptRecord().lookup(EscherProperties.GEOMETRY__VERTICES);
+        EscherArrayProperty verticesProp1 = polygon.getOptRecord().lookup(EscherPropertyTypes.GEOMETRY__VERTICES);
 
         String expected =
-            "<EscherArrayProperty id=\"0x8145\" name=\"geometry.vertices\" blipId=\"false\">"+
-            "<Element>[00, 00, 05, 00]</Element>"+
-            "<Element>[5A, 00, 05, 00]</Element>"+
-            "<Element>[32, 00, 2C, 00]</Element>"+
-            "<Element>[5A, 00, 58, 00]</Element>"+
-            "<Element>[00, 00, 05, 00]</Element>"+
-            "</EscherArrayProperty>";
+            "<record type=\"GEOMETRY__VERTICES\" id=\"-32443\" name=\"geometry.vertices\" propertyNumber=\"325\" propertySize=\"32\" numElements=\"5\" numElementsInMemory=\"5\" sizeOfElements=\"-16\">" +
+            "<flags flag=\"0x8145\" description=\"IS_COMPLEX\"/>" +
+            "<data>BQAFAPD/AAAFAFoABQAyACwAWgBYAAAABQA=</data>" +
+            "<elements>" +
+            "<item>>AAAFAA==</item>" +
+            "<item>>WgAFAA==</item>" +
+            "<item>>MgAsAA==</item>" +
+            "<item>>WgBYAA==</item>" +
+            "<item>>AAAFAA==</item>" +
+            "</elements>" +
+            "</record>";
         String actual = verticesProp1.toXml("").replaceAll("[\r\n\t]","");
         
         assertEquals(verticesProp1.getNumberOfElementsInArray(), 5);
@@ -104,15 +108,18 @@ public class TestPolygon {
         assertArrayEquals(polygon.getXPoints(), new int[]{1, 2, 3});
         assertArrayEquals(polygon.getYPoints(), new int[]{4, 5, 6});
 
-        verticesProp1 = polygon.getOptRecord().lookup(EscherProperties.GEOMETRY__VERTICES);
+        verticesProp1 = polygon.getOptRecord().lookup(EscherPropertyTypes.GEOMETRY__VERTICES);
 
         expected =
-            "<EscherArrayProperty id=\"0x8145\" name=\"geometry.vertices\" blipId=\"false\">" +
-            "<Element>[01, 00, 04, 00]</Element>" +
-            "<Element>[02, 00, 05, 00]</Element>" +
-            "<Element>[03, 00, 06, 00]</Element>" +
-            "<Element>[01, 00, 04, 00]</Element>" +
-            "</EscherArrayProperty>";
+            "<record type=\"GEOMETRY__VERTICES\" id=\"-32443\" name=\"geometry.vertices\" propertyNumber=\"325\" propertySize=\"28\" numElements=\"4\" numElementsInMemory=\"4\" sizeOfElements=\"-16\">" +
+            "<flags flag=\"0x8145\" description=\"IS_COMPLEX\"/>" +
+            "<data>BAAEAPD/AQAEAAIABQADAAYAAQAEAA==</data>" +
+            "<elements>" +
+            "<item>>AQAEAA==</item>" +
+            "<item>>AgAFAA==</item>" +
+            "<item>>AwAGAA==</item>" +
+            "<item>>AQAEAA==</item>" +
+            "</elements></record>";
         actual = verticesProp1.toXml("").replaceAll("[\r\n\t]","");
         
         assertEquals(verticesProp1.getNumberOfElementsInArray(), 4);
@@ -261,7 +268,7 @@ public class TestPolygon {
 
         EscherSpRecord spRecord = polygon1.getEscherContainer().getChildById(EscherSpRecord.RECORD_ID);
 
-        spRecord.setShapeType((short)77/**RANDOM**/);
+        spRecord.setShapeType((short)77/*RANDOM*/);
 
         HSSFWorkbook wb3 = HSSFTestDataSamples.writeOutAndReadBack(wb2);
         wb2.close();



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