]> source.dussan.org Git - poi.git/commitdiff
bug 58636: upgrade anchor types from int to AnchorType enum
authorJaven O'Neal <onealj@apache.org>
Wed, 25 Nov 2015 07:16:43 +0000 (07:16 +0000)
committerJaven O'Neal <onealj@apache.org>
Wed, 25 Nov 2015 07:16:43 +0000 (07:16 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1716313 13f79535-47bb-0310-9956-ffa450edef68

17 files changed:
src/examples/src/org/apache/poi/hssf/usermodel/examples/AddDimensionedImage.java
src/examples/src/org/apache/poi/hssf/usermodel/examples/OfficeDrawing.java
src/examples/src/org/apache/poi/ss/examples/AddDimensionedImage.java
src/java/org/apache/poi/hssf/model/ComboboxShape.java
src/java/org/apache/poi/hssf/model/ConvertAnchor.java
src/java/org/apache/poi/hssf/usermodel/HSSFClientAnchor.java
src/java/org/apache/poi/hssf/usermodel/HSSFCombobox.java
src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java
src/java/org/apache/poi/ss/usermodel/ClientAnchor.java
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFClientAnchor.java
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPicture.java
src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java
src/testcases/org/apache/poi/hssf/model/TestHSSFAnchor.java
src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPatriarch.java
src/testcases/org/apache/poi/hssf/usermodel/TestOLE2Embeding.java

index 77a077582f6f2bf71cf331cb56a94811705b5ec0..05029238bf61e1be27f3f1fda002ab9776a11d83 100644 (file)
@@ -31,6 +31,7 @@ import org.apache.poi.hssf.usermodel.HSSFRow;
 import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
 import org.apache.poi.hssf.usermodel.HSSFPatriarch;
 import org.apache.poi.hssf.util.CellReference;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 
 
 /**
@@ -291,7 +292,7 @@ public class AddDimensionedImage {
         // image as the size of the row/column is adjusted. This could easilly
         // become another parameter passed to the method.
         //anchor.setAnchorType(HSSFClientAnchor.DONT_MOVE_AND_RESIZE);
-        anchor.setAnchorType(HSSFClientAnchor.MOVE_AND_RESIZE);
+        anchor.setAnchorType(AnchorType.MOVE_AND_RESIZE);
         
         // Now, add the picture to the workbook. Note that the type is assumed
         // to be a JPEG/JPG, this could easily (and should) be parameterised
index 907d0f759410ac4aed3795099b186b9293c47e62..68aafbc7cfa8df39539b780c318da9649cb37824 100644 (file)
@@ -18,6 +18,7 @@
 package org.apache.poi.hssf.usermodel.examples;
 
 import org.apache.poi.hssf.usermodel.*;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 
 import java.io.*;
 
@@ -152,15 +153,15 @@ public class OfficeDrawing {
 
         HSSFClientAnchor anchor;
         anchor = new HSSFClientAnchor(0,0,0,255,(short)2,2,(short)4,7);
-        anchor.setAnchorType( 2 );
+        anchor.setAnchorType( AnchorType.MOVE_DONT_RESIZE );
         patriarch.createPicture(anchor, loadPicture( "src/resources/logos/logoKarmokar4.png", wb ));
 
         anchor = new HSSFClientAnchor(0,0,0,255,(short)4,2,(short)5,7);
-        anchor.setAnchorType( 2 );
+        anchor.setAnchorType( AnchorType.MOVE_DONT_RESIZE );
         patriarch.createPicture(anchor, loadPicture( "src/resources/logos/logoKarmokar4edited.png", wb ));
 
         anchor = new HSSFClientAnchor(0,0,1023,255,(short)6,2,(short)8,7);
-        anchor.setAnchorType( 2 );
+        anchor.setAnchorType( AnchorType.MOVE_DONT_RESIZE );
         HSSFPicture picture = patriarch.createPicture(anchor, loadPicture( "src/resources/logos/logoKarmokar4s.png", wb ));
         //Reset the image to the original size.
         picture.resize();
index b4d80420abe4ee98df54248ea7fa1d9480d4a7c1..5eb10c242996124c6e34b8c13ef3606a4a16ce78 100644 (file)
@@ -28,6 +28,7 @@ import java.util.Locale;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;\r
 import org.apache.poi.hssf.usermodel.HSSFSheet;\r
 import org.apache.poi.ss.usermodel.ClientAnchor;\r
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;\r
 import org.apache.poi.ss.usermodel.Drawing;\r
 import org.apache.poi.ss.usermodel.Row;\r
 import org.apache.poi.ss.usermodel.Sheet;\r
@@ -373,10 +374,10 @@ public class AddDimensionedImage {
         anchor.setRow2(rowClientAnchorDetail.getToIndex());\r
 \r
         // For now, set the anchor type to do not move or resize the\r
-        // image as the size of the row/column is adjusted. This could easilly\r
+        // image as the size of the row/column is adjusted. This could easily\r
         // become another parameter passed to the method. Please read the note\r
         // above regarding the behaviour of image resizing.\r
-        anchor.setAnchorType(ClientAnchor.MOVE_AND_RESIZE);\r
+        anchor.setAnchorType(AnchorType.MOVE_AND_RESIZE);\r
 \r
         // Now, add the picture to the workbook. Note that unlike the similar\r
         // method in the HSSF Examples section, the image type is checked. First,\r
@@ -400,14 +401,14 @@ public class AddDimensionedImage {
     }\r
 \r
     /**\r
-     * Determines whether the sheets columns should be re-sized to accomodate\r
+     * Determines whether the sheets columns should be re-sized to accommodate\r
      * the image, adjusts the columns width if necessary and creates then\r
      * returns a ClientAnchorDetail object that facilitates construction of\r
      * an ClientAnchor that will fix the image on the sheet and establish\r
      * it's size.\r
      *\r
      * @param sheet A reference to the sheet that will 'contain' the image.\r
-     * @param colNumber A primtive int that contains the index number of a\r
+     * @param colNumber A primitive int that contains the index number of a\r
      *                  column on the sheet.\r
      * @param reqImageWidthMM A primitive double that contains the required\r
      *                        width of the image in millimetres\r
index bad7897640b6ab67035055da2825c91cfd9563c6..2bfd9ef91492ceb9f6f90ab07f079b4a349f81d5 100644 (file)
@@ -21,6 +21,7 @@ package org.apache.poi.hssf.model;
 import org.apache.poi.ddf.*;
 import org.apache.poi.hssf.record.*;
 import org.apache.poi.hssf.usermodel.*;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 
 /**
  * Represents a combobox shape.
@@ -92,7 +93,7 @@ public class ComboboxShape
         opt.addEscherProperty(new EscherSimpleProperty(EscherProperties.GROUPSHAPE__PRINT, 0x00020000));
 
         HSSFClientAnchor userAnchor = (HSSFClientAnchor) shape.getAnchor();
-        userAnchor.setAnchorType(1);
+        userAnchor.setAnchorType(AnchorType.DONT_MOVE_DO_RESIZE);
         EscherRecord anchor = createAnchor(userAnchor);
         clientData.setRecordId(EscherClientDataRecord.RECORD_ID);
         clientData.setOptions((short) 0x0000);
index e7d923088d12c46348ee19a24977a1337559ccab..60808e797ad688f61e6d882373d180c0d4fcd9d4 100644 (file)
@@ -38,7 +38,7 @@ public class ConvertAnchor
             EscherClientAnchorRecord anchor = new EscherClientAnchorRecord();
             anchor.setRecordId( EscherClientAnchorRecord.RECORD_ID );
             anchor.setOptions( (short) 0x0000 );
-            anchor.setFlag( (short) a.getAnchorType() );
+            anchor.setFlag( a.getAnchorType().value );
             anchor.setCol1( (short) Math.min(a.getCol1(), a.getCol2()) );
             anchor.setDx1( (short) a.getDx1() );
             anchor.setRow1( (short) Math.min(a.getRow1(), a.getRow2()) );
index f21cfb112d83ec616c53cdcdf42b400633ca0181..4b8a25e302da4f60bfb9a2a9fc50525ce13dc311 100644 (file)
@@ -250,20 +250,20 @@ public final class HSSFClientAnchor extends HSSFAnchor implements ClientAnchor {
 
     /**
      * Gets the anchor type
-     * <p/>
-     * 0 = Move and size with Cells, 2 = Move but don't size with cells, 3 = Don't move or size with cells.
+     * @return the anchor type
      */
-    public int getAnchorType() {
-        return _escherClientAnchor.getFlag();
+    @Override
+    public AnchorType getAnchorType() {
+        return AnchorType.byId(_escherClientAnchor.getFlag());
     }
 
     /**
      * Sets the anchor type
-     * <p/>
-     * 0 = Move and size with Cells, 2 = Move but don't size with cells, 3 = Don't move or size with cells.
+     * @param anchorType the anchor type to set
      */
-    public void setAnchorType(int anchorType) {
-        _escherClientAnchor.setFlag(Integer.valueOf(anchorType).shortValue());
+    @Override
+    public void setAnchorType(AnchorType anchorType) {
+        _escherClientAnchor.setFlag(anchorType.value);
     }
 
     private void checkRange(int value, int minRange, int maxRange, String varName) {
index 2dbbac2b8c96f76cb061f4b2d91476819d508ebf..6ebca2f4c90063fba75996d97fc94f31489fb9d5 100644 (file)
@@ -19,6 +19,7 @@ package org.apache.poi.hssf.usermodel;
 \r
 import org.apache.poi.ddf.*;\r
 import org.apache.poi.hssf.record.*;\r
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;\r
 \r
 /**\r
  * \r
@@ -61,7 +62,7 @@ public class HSSFCombobox extends HSSFSimpleShape {
         opt.addEscherProperty(new EscherSimpleProperty(EscherProperties.GROUPSHAPE__PRINT, 0x00020000));\r
 \r
         HSSFClientAnchor userAnchor = (HSSFClientAnchor) getAnchor();\r
-        userAnchor.setAnchorType(1);\r
+        userAnchor.setAnchorType(AnchorType.DONT_MOVE_DO_RESIZE);\r
         EscherRecord anchor = userAnchor.getEscherAnchor();\r
         clientData.setRecordId(EscherClientDataRecord.RECORD_ID);\r
         clientData.setOptions((short) 0x0000);\r
index 7ee9a0693649788b4fc7ac1accd448a883210a5e..c40f45e964987e80f6632a78985940a587b89815 100644 (file)
@@ -34,6 +34,7 @@ import org.apache.poi.hssf.model.InternalWorkbook;
 import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
 import org.apache.poi.hssf.record.EscherAggregate;
 import org.apache.poi.hssf.record.ObjRecord;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 import org.apache.poi.ss.usermodel.Picture;
 import org.apache.poi.ss.util.ImageUtils;
 import org.apache.poi.util.POILogFactory;
@@ -134,7 +135,7 @@ public class HSSFPicture extends HSSFSimpleShape implements Picture {
      */
     public void resize(double scaleX, double scaleY) {
         HSSFClientAnchor anchor = getClientAnchor();
-        anchor.setAnchorType(2);
+        anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
 
         HSSFClientAnchor pref = getPreferredSize(scaleX,scaleY);
 
index 639fd0c89b981ad85992c2ff211bfada9a92c080..b65c83bd077ba407c37a80193c590f925358e107 100644 (file)
@@ -23,6 +23,7 @@ package org.apache.poi.ss.usermodel;
  * @author Yegor Kozlov
  */
 public interface ClientAnchor {
+    
     /**
      * Move and Resize With Anchor Cells
      * <p>
@@ -30,9 +31,10 @@ public interface ClientAnchor {
      * resize to maintain its row and column anchors (i.e. the
      * object is anchored to the actual from and to row and column)
      * </p>
+     * @deprecated since POI 3.14beta1 (circa 2015-11-24). Use {@link AnchorType.MOVE_AND_RESIZE} instead.
      */
-    public static final int MOVE_AND_RESIZE = 0;
-
+    public static final AnchorType MOVE_AND_RESIZE = AnchorType.MOVE_AND_RESIZE;
+    
     /**
      * Move With Cells but Do Not Resize
      * <p>
@@ -44,8 +46,9 @@ public interface ClientAnchor {
      * If additional rows/columns are added between the from and to locations of the drawing,
      * the drawing shall move its to anchors as needed to maintain this same absolute size.
      * </p>
+     * @deprecated since POI 3.14beta1 (circa 2015-11-24). Use {@link AnchorType.MOVE_DONT_RESIZE} instead.
      */
-    public static final int MOVE_DONT_RESIZE = 2;
+    public static final AnchorType MOVE_DONT_RESIZE = AnchorType.MOVE_DONT_RESIZE;
 
     /**
      * Do Not Move or Resize With Underlying Rows/Columns
@@ -59,9 +62,73 @@ public interface ClientAnchor {
      * drawing, the drawing shall move its anchors as needed
      * to maintain this same absolute position.
      * </p>
+     * @deprecated since POI 3.14beta1 (circa 2015-11-24). Use {@link AnchorType.DONT_MOVE_AND_RESIZE} instead.
      */
-    public static final int DONT_MOVE_AND_RESIZE = 3;
-
+    public static final AnchorType DONT_MOVE_AND_RESIZE = AnchorType.DONT_MOVE_AND_RESIZE;
+    
+    /**
+     * @since POI 3.14beta1
+     */
+    public static enum AnchorType {
+        /**
+         * Move and Resize With Anchor Cells (0)
+         * <p>
+         * Specifies that the current drawing shall move and
+         * resize to maintain its row and column anchors (i.e. the
+         * object is anchored to the actual from and to row and column)
+         * </p>
+         */
+        MOVE_AND_RESIZE(0),
+        
+        /**
+         * Don't Move but do Resize With Anchor Cells (1)
+         * <p>
+         * Specifies that the current drawing shall not move with its
+         * row and column, but should be resized. This option is not normally
+         * used, but is included for completeness.
+         * </p>
+         */
+        DONT_MOVE_DO_RESIZE(1),
+        
+        /**
+         * Move With Cells but Do Not Resize (2)
+         * <p>
+         * Specifies that the current drawing shall move with its
+         * row and column (i.e. the object is anchored to the
+         * actual from row and column), but that the size shall remain absolute.
+         * </p>
+         * <p>
+         * If additional rows/columns are added between the from and to locations of the drawing,
+         * the drawing shall move its to anchors as needed to maintain this same absolute size.
+         * </p>
+         */
+        MOVE_DONT_RESIZE(2),
+        
+        /**
+         * Do Not Move or Resize With Underlying Rows/Columns (3)
+         * <p>
+         * Specifies that the current start and end positions shall
+         * be maintained with respect to the distances from the
+         * absolute start point of the worksheet.
+         * </p>
+         * <p>
+         * If additional rows/columns are added before the
+         * drawing, the drawing shall move its anchors as needed
+         * to maintain this same absolute position.
+         * </p>
+         */
+        DONT_MOVE_AND_RESIZE(3);
+        
+        public final short value;
+        AnchorType(int value) {
+            this.value = (short) value;
+        }
+        
+        public static AnchorType byId(int value) {
+            return values()[value];
+        }
+    }
+    
     /**
      * Returns the column (0 based) of the first cell.
      *
@@ -209,26 +276,14 @@ public interface ClientAnchor {
 
     /**
      * Sets the anchor type
-     * <p>
-     * 0 = Move and size with Cells, 2 = Move but don't size with cells, 3 = Don't move or size with cells.
-     * </p>
-     * @param anchorType the anchor type
-     * @see #MOVE_AND_RESIZE
-     * @see #MOVE_DONT_RESIZE
-     * @see #DONT_MOVE_AND_RESIZE
+     * @param anchorType the anchor type to set
      */
-    public void setAnchorType( int anchorType );
+    public void setAnchorType( AnchorType anchorType );
 
     /**
      * Gets the anchor type
-     * <p>
-     * 0 = Move and size with Cells, 2 = Move but don't size with cells, 3 = Don't move or size with cells.
-     * </p>
      * @return the anchor type
-     * @see #MOVE_AND_RESIZE
-     * @see #MOVE_DONT_RESIZE
-     * @see #DONT_MOVE_AND_RESIZE
      */
-    public int getAnchorType();
+    public AnchorType getAnchorType();
 
 }
index 14dbaff14d5516c57ffcb9224b981d7bf849b70f..8045912abf210864e09ea480b0da2d991122258d 100644 (file)
@@ -28,7 +28,8 @@ import org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTMarker;
  * @author Yegor Kozlov
  */
 public final class XSSFClientAnchor extends XSSFAnchor implements ClientAnchor {
-    private int anchorType;
+    private AnchorType DEFAULT_ANCHOR_TYPE = AnchorType.MOVE_AND_RESIZE;
+    private AnchorType anchorType;
 
     /**
      * Starting anchor point
@@ -44,6 +45,7 @@ public final class XSSFClientAnchor extends XSSFAnchor implements ClientAnchor {
      * Creates a new client anchor and defaults all the anchor positions to 0.
      */
     public XSSFClientAnchor() {
+        anchorType = DEFAULT_ANCHOR_TYPE;
         cell1 = CTMarker.Factory.newInstance();
         cell1.setCol(0);
         cell1.setColOff(0);
@@ -88,6 +90,7 @@ public final class XSSFClientAnchor extends XSSFAnchor implements ClientAnchor {
      * @param cell2 ending anchor point
      */
     protected XSSFClientAnchor(CTMarker cell1, CTMarker cell2) {
+        anchorType = DEFAULT_ANCHOR_TYPE;
         this.cell1 = cell1;
         this.cell2 = cell2;
     }
@@ -214,20 +217,20 @@ public final class XSSFClientAnchor extends XSSFAnchor implements ClientAnchor {
 
     /**
      * Sets the anchor type
-     * <p>
-     * 0 = Move and size with Cells, 2 = Move but don't size with cells, 3 = Don't move or size with cells.
+     * @param anchorType the anchor type to set
      */
-    public void setAnchorType( int anchorType )
+    @Override
+    public void setAnchorType( AnchorType anchorType )
     {
         this.anchorType = anchorType;
     }
 
     /**
      * Gets the anchor type
-     * <p>
-     * 0 = Move and size with Cells, 2 = Move but don't size with cells, 3 = Don't move or size with cells.
+     * @return the anchor type
      */
-    public int getAnchorType()
+    @Override
+    public AnchorType getAnchorType()
     {
         return anchorType;
     }
index ba45cfff485c02be012ea3ac67e8dcffdd71ffbd..64dfc5dd00c75a018fe99c805653baa2f54ba4a4 100644 (file)
@@ -34,7 +34,6 @@ import org.apache.poi.openxml4j.opc.TargetMode;
 import org.apache.poi.ss.usermodel.ClientAnchor;
 import org.apache.poi.ss.usermodel.Drawing;
 import org.apache.poi.ss.util.CellAddress;
-import org.apache.poi.ss.util.CellReference;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.Units;
 import org.apache.poi.xssf.model.CommentsTable;
@@ -373,9 +372,9 @@ public final class XSSFDrawing extends POIXMLDocumentPart implements Drawing {
         anchor.setFrom(ctAnchor.getFrom());
         STEditAs.Enum aditAs;
         switch(anchor.getAnchorType()) {
-            case ClientAnchor.DONT_MOVE_AND_RESIZE: aditAs = STEditAs.ABSOLUTE; break;
-            case ClientAnchor.MOVE_AND_RESIZE: aditAs = STEditAs.TWO_CELL; break;
-            case ClientAnchor.MOVE_DONT_RESIZE: aditAs = STEditAs.ONE_CELL; break;
+            case DONT_MOVE_AND_RESIZE: aditAs = STEditAs.ABSOLUTE; break;
+            case MOVE_AND_RESIZE: aditAs = STEditAs.TWO_CELL; break;
+            case MOVE_DONT_RESIZE: aditAs = STEditAs.ONE_CELL; break;
             default: aditAs = STEditAs.ONE_CELL;
         }
         ctAnchor.setEditAs(aditAs);
index 7f6db45517da51e827a94265ddd24b5066edddb7..edaa974a2c0edcc05b153dab0059164585483213 100644 (file)
@@ -23,7 +23,7 @@ import java.io.IOException;
 import java.util.List;
 
 import org.apache.poi.ss.usermodel.BaseTestPicture;
-import org.apache.poi.ss.usermodel.ClientAnchor;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 import org.apache.poi.util.LocaleUtil;
 import org.apache.poi.xssf.XSSFITestDataProvider;
 import org.apache.poi.xssf.XSSFTestDataSamples;
@@ -70,9 +70,9 @@ public final class TestXSSFPicture extends BaseTestPicture {
         assertArrayEquals(jpegData, pictures.get(jpegIdx).getData());
 
         XSSFClientAnchor anchor = new XSSFClientAnchor(0, 0, 0, 0, 1, 1, 10, 30);
-        assertEquals(ClientAnchor.MOVE_AND_RESIZE, anchor.getAnchorType());
-        anchor.setAnchorType(ClientAnchor.DONT_MOVE_AND_RESIZE);
-        assertEquals(ClientAnchor.DONT_MOVE_AND_RESIZE, anchor.getAnchorType());
+        assertEquals(AnchorType.MOVE_AND_RESIZE, anchor.getAnchorType());
+        anchor.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);
+        assertEquals(AnchorType.DONT_MOVE_AND_RESIZE, anchor.getAnchorType());
 
         XSSFPicture shape = drawing.createPicture(anchor, jpegIdx);
         assertTrue(anchor.equals(shape.getAnchor()));
index c829159a5c4e8eafddf2b5d3bec119c95845639e..197f2f1008d3789a045634d643ec7c3121f23c8a 100644 (file)
@@ -35,6 +35,7 @@ import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
 import org.apache.poi.hssf.record.EscherAggregate;
 import org.apache.poi.hssf.record.ObjRecord;
 import org.apache.poi.hssf.usermodel.*;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.util.HexDump;
 
@@ -148,8 +149,8 @@ public class TestDrawingShapes extends TestCase {
 
         HSSFPatriarch drawing = sheet.createDrawingPatriarch();
         HSSFClientAnchor anchor = new HSSFClientAnchor(10, 10, 50, 50, (short) 2, 2, (short) 4, 4);
-        anchor.setAnchorType(2);
-        assertEquals(anchor.getAnchorType(), 2);
+        anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
+        assertEquals(AnchorType.MOVE_DONT_RESIZE, anchor.getAnchorType());
 
         HSSFSimpleShape rectangle = drawing.createSimpleShape(anchor);
         rectangle.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
index 481196e7756428208c371e87f33cb5a416e004d7..84ef3c411541245ac5cbdaf54350453213d2a421 100644 (file)
@@ -21,6 +21,7 @@ import junit.framework.TestCase;
 import org.apache.poi.ddf.*;\r
 import org.apache.poi.hssf.HSSFTestDataSamples;\r
 import org.apache.poi.hssf.usermodel.*;\r
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;\r
 \r
 /**\r
  * @author Evgeniy Berlog\r
@@ -30,7 +31,7 @@ public class TestHSSFAnchor extends TestCase {
 \r
     public void testDefaultValues(){\r
         HSSFClientAnchor clientAnchor = new HSSFClientAnchor();\r
-        assertEquals(clientAnchor.getAnchorType(), 0);\r
+        assertEquals(clientAnchor.getAnchorType(), AnchorType.MOVE_AND_RESIZE);\r
         assertEquals(clientAnchor.getCol1(), 0);\r
         assertEquals(clientAnchor.getCol2(), 0);\r
         assertEquals(clientAnchor.getDx1(), 0);\r
@@ -41,7 +42,7 @@ public class TestHSSFAnchor extends TestCase {
         assertEquals(clientAnchor.getRow2(), 0);\r
 \r
         clientAnchor = new HSSFClientAnchor(new EscherClientAnchorRecord());\r
-        assertEquals(clientAnchor.getAnchorType(), 0);\r
+        assertEquals(clientAnchor.getAnchorType(), AnchorType.MOVE_AND_RESIZE);\r
         assertEquals(clientAnchor.getCol1(), 0);\r
         assertEquals(clientAnchor.getCol2(), 0);\r
         assertEquals(clientAnchor.getDx1(), 0);\r
@@ -143,7 +144,7 @@ public class TestHSSFAnchor extends TestCase {
 \r
         HSSFPatriarch drawing = sheet.createDrawingPatriarch();\r
         HSSFClientAnchor anchor = new HSSFClientAnchor(10, 10, 200, 200, (short)2, 2, (short)15, 15);\r
-        anchor.setAnchorType(2);\r
+        anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);\r
 \r
         HSSFSimpleShape rectangle = drawing.createSimpleShape(anchor);\r
         rectangle.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);\r
@@ -362,9 +363,9 @@ public class TestHSSFAnchor extends TestCase {
         clientAnchor2.setRow2(7);\r
         assertEquals(clientAnchor1, clientAnchor2);\r
 \r
-        clientAnchor2.setAnchorType(3);\r
+        clientAnchor2.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);\r
         assertNotSame(clientAnchor1, clientAnchor2);\r
-        clientAnchor2.setAnchorType(0);\r
+        clientAnchor2.setAnchorType(AnchorType.MOVE_AND_RESIZE);\r
         assertEquals(clientAnchor1, clientAnchor2);\r
 \r
         HSSFChildAnchor childAnchor1 = new HSSFChildAnchor(0, 1, 2, 3);\r
index 30f6343197164e4cbc899d0b6b9dc88dc410f5f1..d9027d2ff9810e0ed65d5adbbc41d156fc293f63 100644 (file)
@@ -70,6 +70,7 @@ import org.apache.poi.ss.formula.ptg.Ptg;
 import org.apache.poi.ss.usermodel.BaseTestBugzillaIssues;
 import org.apache.poi.ss.usermodel.Cell;
 import org.apache.poi.ss.usermodel.CellStyle;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 import org.apache.poi.ss.usermodel.DataFormatter;
 import org.apache.poi.ss.usermodel.FormulaEvaluator;
 import org.apache.poi.ss.usermodel.Name;
@@ -2966,7 +2967,7 @@ public final class TestBugs extends BaseTestBugzillaIssues {
         assertNotNull("Did not find sheet", sheet);
         HSSFPatriarch patriarch = (HSSFPatriarch) sheet.createDrawingPatriarch();
         HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 0, 0, (short) 1, 1, (short) 10, 22);
-        anchor.setAnchorType(2);
+        anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
         patriarch.createPicture(anchor, pict);
 
         // Write out destination file
index c51ca938923c33ce56749ec734684349c1f48db7..e3428cc920569e0c3136a0e37ad0fef639cf6358 100644 (file)
@@ -18,6 +18,7 @@
 package org.apache.poi.hssf.usermodel;
 
 import org.apache.poi.hssf.HSSFTestDataSamples;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 
 import junit.framework.AssertionFailedError;
 import junit.framework.TestCase;
@@ -56,7 +57,7 @@ public final class TestHSSFPatriarch extends TestCase {
 
                // 3. Use patriarch
                HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 600, 245, (short) 1, 1, (short) 1, 2);
-               anchor.setAnchorType(3);
+               anchor.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);
                byte[] pictureData = HSSFTestDataSamples.getTestDataFileContent("logoKarmokar4.png");
                int idx1 = wb.addPicture(pictureData, HSSFWorkbook.PICTURE_TYPE_PNG);
                patr.createPicture(anchor, idx1);
index 262b66d3a4bf3d14426f35705100807e75574346..fea681e7494bcf6af31d748646e3b18142adad6f 100644 (file)
@@ -31,7 +31,7 @@ import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.poifs.filesystem.DirectoryNode;
 import org.apache.poi.poifs.filesystem.Ole10Native;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
-import org.apache.poi.ss.usermodel.ClientAnchor;
+import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 import org.apache.poi.ss.usermodel.CreationHelper;
 import org.apache.poi.util.LocaleUtil;
 import org.junit.Test;
@@ -88,25 +88,25 @@ public final class TestOLE2Embeding {
         CreationHelper ch = wb1.getCreationHelper();
         HSSFClientAnchor anchor = (HSSFClientAnchor)ch.createClientAnchor();
         anchor.setAnchor((short)(2+coloffset), 1+rowoffset, 0, 0, (short)(3+coloffset), 5+rowoffset, 0, 0);
-        anchor.setAnchorType(ClientAnchor.DONT_MOVE_AND_RESIZE);
+        anchor.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);
        
         patriarch.createObjectData(anchor, pptIdx, imgPPT);
 
         anchor = (HSSFClientAnchor)ch.createClientAnchor();
         anchor.setAnchor((short)(5+coloffset), 1+rowoffset, 0, 0, (short)(6+coloffset), 5+rowoffset, 0, 0);
-        anchor.setAnchorType(ClientAnchor.DONT_MOVE_AND_RESIZE);
+        anchor.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);
         
         patriarch.createObjectData(anchor, xlsIdx, imgIdx);
         
         anchor = (HSSFClientAnchor)ch.createClientAnchor();
         anchor.setAnchor((short)(3+coloffset), 10+rowoffset, 0, 0, (short)(5+coloffset), 11+rowoffset, 0, 0);
-        anchor.setAnchorType(ClientAnchor.DONT_MOVE_AND_RESIZE);
+        anchor.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);
         
         patriarch.createObjectData(anchor, txtIdx, imgIdx);
         
         anchor = (HSSFClientAnchor)ch.createClientAnchor();
         anchor.setAnchor((short)(1+coloffset), -2+rowoffset, 0, 0, (short)(7+coloffset), 14+rowoffset, 0, 0);
-        anchor.setAnchorType(ClientAnchor.DONT_MOVE_AND_RESIZE);
+        anchor.setAnchorType(AnchorType.DONT_MOVE_AND_RESIZE);
 
         HSSFSimpleShape circle = patriarch.createSimpleShape(anchor);
         circle.setShapeType(HSSFSimpleShape.OBJECT_TYPE_OVAL);