You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2008/08/05 12:22:20 UTC

svn commit: r682662 - in /poi/branches/ooxml/src/ooxml: interfaces-jdk15/org/apache/poi/ss/usermodel/ java/org/apache/poi/xssf/usermodel/ testcases/org/apache/poi/xssf/usermodel/

Author: nick
Date: Tue Aug  5 03:22:13 2008
New Revision: 682662

URL: http://svn.apache.org/viewvc?rev=682662&view=rev
Log:
Improve support, tests and documentation for xssf headers and footers

Modified:
    poi/branches/ooxml/src/ooxml/interfaces-jdk15/org/apache/poi/ss/usermodel/Sheet.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenFooter.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenHeader.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstFooter.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstHeader.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddFooter.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddHeader.java
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
    poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java

Modified: poi/branches/ooxml/src/ooxml/interfaces-jdk15/org/apache/poi/ss/usermodel/Sheet.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/interfaces-jdk15/org/apache/poi/ss/usermodel/Sheet.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/interfaces-jdk15/org/apache/poi/ss/usermodel/Sheet.java (original)
+++ poi/branches/ooxml/src/ooxml/interfaces-jdk15/org/apache/poi/ss/usermodel/Sheet.java Tue Aug  5 03:22:13 2008
@@ -392,13 +392,17 @@
     PrintSetup getPrintSetup();
 
     /**
-     * Gets the user model for the document header.
+     * Gets the user model for the default document header.
+     * Note that XSSF offers more kinds of document
+     *  headers than HSSF does
      * @return The Document header.
      */
     Header getHeader();
 
     /**
-     * Gets the user model for the document footer.
+     * Gets the user model for the default document footer.
+     * Note that XSSF offers more kinds of document
+     *  footers than HSSF does.
      * @return The Document footer.
      */
     Footer getFooter();

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenFooter.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenFooter.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenFooter.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenFooter.java Tue Aug  5 03:22:13 2008
@@ -32,7 +32,11 @@
     }
     
     public void setText(String text) {
-        getHeaderFooter().setEvenFooter(text);
+    	if(text == null) {
+    		getHeaderFooter().unsetEvenFooter();
+    	} else {
+    		getHeaderFooter().setEvenFooter(text);
+    	}
     }
 
 }

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenHeader.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenHeader.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenHeader.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFEvenHeader.java Tue Aug  5 03:22:13 2008
@@ -32,7 +32,11 @@
     }
     
     public void setText(String text) {
-        getHeaderFooter().setEvenHeader(text);
+    	if(text == null) {
+    		getHeaderFooter().unsetEvenHeader();
+    	} else {
+    		getHeaderFooter().setEvenHeader(text);
+    	}
     }
 
 }

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstFooter.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstFooter.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstFooter.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstFooter.java Tue Aug  5 03:22:13 2008
@@ -32,7 +32,10 @@
     }
     
     public void setText(String text) {
-        getHeaderFooter().setFirstFooter(text);
+    	if(text == null) {
+    		getHeaderFooter().unsetFirstFooter();
+    	} else {
+    		getHeaderFooter().setFirstFooter(text);
+    	}
     }
-
 }

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstHeader.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstHeader.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstHeader.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFirstHeader.java Tue Aug  5 03:22:13 2008
@@ -32,7 +32,11 @@
     }
     
     public void setText(String text) {
-        getHeaderFooter().setFirstHeader(text);
+    	if(text == null) {
+    		getHeaderFooter().unsetFirstHeader();
+    	} else {
+    		getHeaderFooter().setFirstHeader(text);
+    	}
     }
 
 }

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddFooter.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddFooter.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddFooter.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddFooter.java Tue Aug  5 03:22:13 2008
@@ -32,7 +32,10 @@
     }
     
     public void setText(String text) {
-        getHeaderFooter().setOddFooter(text);
+    	if(text == null) {
+    		getHeaderFooter().unsetOddFooter();
+    	} else {
+    		getHeaderFooter().setOddFooter(text);
+    	}
     }
-
 }

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddHeader.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddHeader.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddHeader.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFOddHeader.java Tue Aug  5 03:22:13 2008
@@ -32,7 +32,10 @@
     }
     
     public void setText(String text) {
-        getHeaderFooter().setOddHeader(text);
+    	if(text == null) {
+    		getHeaderFooter().unsetOddHeader();
+    	} else {
+    		getHeaderFooter().setOddHeader(text);
+    	}
     }
-
 }

Modified: poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java (original)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java Tue Aug  5 03:22:13 2008
@@ -381,14 +381,7 @@
         return getSheetTypePageSetUpPr().getFitToPage();
     }
 
-    public Footer getFooter() {
-        return getOddFooter();
-    }
     
-    public Footer getOddFooter() {
-        return new XSSFOddFooter(getSheetTypeHeaderFooter());
-    }
-
 	protected CTHeaderFooter getSheetTypeHeaderFooter() {
 		if (worksheet.getHeaderFooter() == null) {
 			worksheet.setHeaderFooter(CTHeaderFooter.Factory.newInstance());
@@ -396,31 +389,80 @@
 		return worksheet.getHeaderFooter();
 	}
     
+    /**
+     * Returns the default footer for the sheet,
+     *  creating one as needed.
+     * You may also want to look at 
+     *  {@link #getFirstFooter()},
+     *  {@link #getOddFooter()} and
+     *  {@link #getEvenFooter()}
+     */
+    public Footer getFooter() {
+    	// The default footer is an odd footer
+        return getOddFooter();
+    }
+
+    /**
+     * Returns the default header for the sheet,
+     *  creating one as needed.
+     * You may also want to look at
+     *  {@link #getFirstHeader()},
+     *  {@link #getOddHeader()} and
+     *  {@link #getEvenHeader()}
+     */
+    public Header getHeader() {
+    	// The default header is an odd header
+        return getOddHeader();
+    }
+    
+    /**
+     * Returns the odd footer. Used on all pages unless
+     *  other footers also present, when used on only
+     *  odd pages.
+     */
+    public Footer getOddFooter() {
+        return new XSSFOddFooter(getSheetTypeHeaderFooter());
+    }
+    /**
+     * Returns the even footer. Not there by default, but
+     *  when set, used on even pages. 
+     */
     public Footer getEvenFooter() {
         return new XSSFEvenFooter(getSheetTypeHeaderFooter());
     }
-    
+    /**
+     * Returns the first page footer. Not there by
+     *  default, but when set, used on the first page.
+     */
     public Footer getFirstFooter() {
         return new XSSFFirstFooter(getSheetTypeHeaderFooter());
     }
 
-    public Header getHeader() {
-        return getOddHeader();
-    }
-    
+    /**
+     * Returns the odd header. Used on all pages unless
+     *  other headers also present, when used on only
+     *  odd pages.
+     */
     public Header getOddHeader() {
         return new XSSFOddHeader(getSheetTypeHeaderFooter());
     }
-    
+    /**
+     * Returns the even header. Not there by default, but
+     *  when set, used on even pages. 
+     */
     public Header getEvenHeader() {
         return new XSSFEvenHeader(getSheetTypeHeaderFooter()
 );
     }
-    
+    /**
+     * Returns the first page header. Not there by
+     *  default, but when set, used on the first page.
+     */
     public Header getFirstHeader() {
         return new XSSFFirstHeader(getSheetTypeHeaderFooter());
     }
 
+    
     public boolean getHorizontallyCenter() {
     	return getSheetTypePrintOptions().getHorizontalCentered();
     }

Modified: poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java?rev=682662&r1=682661&r2=682662&view=diff
==============================================================================
--- poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java (original)
+++ poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java Tue Aug  5 03:22:13 2008
@@ -281,10 +281,14 @@
     
     public void testGetFooter() {
         XSSFWorkbook workbook = new XSSFWorkbook();
-        Sheet sheet = workbook.createSheet("Sheet 1");
+        XSSFSheet sheet = (XSSFSheet)workbook.createSheet("Sheet 1");
         assertNotNull(sheet.getFooter());
         sheet.getFooter().setCenter("test center footer");
         assertEquals("test center footer", sheet.getFooter().getCenter());
+        
+        // Default is odd footer
+        assertNotNull(sheet.getOddFooter());
+        assertEquals("test center footer", sheet.getOddFooter().getCenter());
     }
     
     public void testGetAllHeadersFooters() {
@@ -321,6 +325,9 @@
         sheet.getOddHeader().setCenter("odd header center");
         assertEquals("odd header center", sheet.getOddHeader().getCenter());
 
+        // Defaults are odd
+        assertEquals("odd footer left", sheet.getFooter().getLeft());
+        assertEquals("odd header center", sheet.getHeader().getCenter());
     }
     
     public void testGetSetColumnWidth() {



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