]> source.dussan.org Git - poi.git/commitdiff
fixed XSSFSheet.setColumnWidth to produce XML compatible with Mac Excel 2008, see...
authorYegor Kozlov <yegor@apache.org>
Sun, 13 Sep 2009 17:49:46 +0000 (17:49 +0000)
committerYegor Kozlov <yegor@apache.org>
Sun, 13 Sep 2009 17:49:46 +0000 (17:49 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@814358 13f79535-47bb-0310-9956-ffa450edef68

src/documentation/content/xdocs/status.xml
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java

index 108984d635020df51b7aeabdae28715db8e327e1..17ada799c7cd5a35c61068d23347458466589a94 100644 (file)
@@ -33,6 +33,7 @@
 
     <changes>
         <release version="3.5-beta7" date="2009-??-??">
+           <action dev="POI-DEVELOPERS" type="fix">47581 - fixed  XSSFSheet.setColumnWidth to produce XML compatible with Mac Excel 2008</action>
            <action dev="POI-DEVELOPERS" type="fix">47734 - removed unnecessary svn:executable flag from files in SVN trunk</action>
            <action dev="POI-DEVELOPERS" type="fix">47543 - added javadoc how to avoid Excel crash when creating too many HSSFRichTextString cells</action>
            <action dev="POI-DEVELOPERS" type="fix">47813 - fixed problems with XSSFWorkbook.removeSheetAt when workbook contains chart</action>
index 935774582c4f480704265d46f9439063b53eecf1..4fb9185b9054c939dd76f701749c8d97853ae935 100644 (file)
@@ -1675,6 +1675,7 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet {
         if(width > 255*256) throw new IllegalArgumentException("The maximum column width for an individual cell is 255 characters.");
 
         columnHelper.setColWidth(columnIndex, (double)width/256);
+        columnHelper.setCustomWidth(columnIndex, true);
     }
 
     public void setDefaultColumnStyle(int column, CellStyle style) {
index 7bcf9c1cb4bb7f3a7329e1bf6c0dc633d9792f6a..39a1a4d766145626bf5777996ffa474cef1d3a4b 100644 (file)
@@ -695,6 +695,7 @@ public class TestXSSFSheet extends BaseTestSheet {
         assertEquals(2, col.getMin());
         assertEquals(2, col.getMax());
         assertEquals(22.0, col.getWidth(), 0.0);
+        assertTrue(col.getCustomWidth());
 
         // Now set another
         sheet.setColumnWidth(3, 33 * 256);
@@ -708,10 +709,12 @@ public class TestXSSFSheet extends BaseTestSheet {
         assertEquals(2, col.getMin()); // POI 1
         assertEquals(2, col.getMax());
         assertEquals(22.0, col.getWidth(), 0.0);
+        assertTrue(col.getCustomWidth());
 
         col = cols.getColArray(1);
         assertEquals(4, col.getMin()); // POI 3
         assertEquals(4, col.getMax());
         assertEquals(33.0, col.getWidth(), 0.0);
+        assertTrue(col.getCustomWidth());
     }
 }