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