From ed3268bd931a6005d8a6019d0eba9760a84afddc Mon Sep 17 00:00:00 2001
From: Glen Stampoultzis
Date: Mon, 23 Aug 2004 08:52:54 +0000
Subject: [PATCH] Merged REL_2_BRANCH to head.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353586 13f79535-47bb-0310-9956-ffa450edef68
---
NOTICE | 3 +
build.xml | 42 +-
.../content/xdocs/hssf/how-to.xml | 6 +-
.../content/xdocs/hssf/quick-guide.xml | 36 +
src/documentation/content/xdocs/status.xml | 12 +
.../poi/hssf/usermodel/examples/Outlines.java | 284 ++++
.../usermodel/examples/ReadWriteWorkbook.java | 2 +
.../org/apache/poi/hssf/dev/BiffViewer.java | 27 +-
.../apache/poi/hssf/dev/BiffViewer.java.rep | 174 ---
.../org/apache/poi/hssf/dev/EFBiffViewer.java | 2 -
src/java/org/apache/poi/hssf/dev/EFHSSF.java | 3 +-
.../org/apache/poi/hssf/dev/EFHSSF.java.rep | 116 --
.../apache/poi/hssf/dev/FormulaViewer.java | 5 +-
src/java/org/apache/poi/hssf/dev/HSSF.java | 64 +-
src/java/org/apache/poi/hssf/dev/package.html | 1 +
.../poi/hssf/eventmodel/ERFListener.java | 3 +-
.../hssf/eventmodel/EventRecordFactory.java | 3 +-
.../poi/hssf/eventmodel/ModelFactory.java | 3 +-
.../hssf/eventmodel/ModelFactoryListener.java | 3 +-
.../eventusermodel/AbortableHSSFListener.java | 11 +-
.../hssf/eventusermodel/HSSFEventFactory.java | 4 +-
.../poi/hssf/eventusermodel/HSSFListener.java | 5 +-
.../poi/hssf/eventusermodel/HSSFRequest.java | 8 +-
.../eventusermodel/HSSFUserException.java | 3 +-
.../apache/poi/hssf/model/AbstractShape.java | 5 +-
.../apache/poi/hssf/model/ConvertAnchor.java | 16 +
.../apache/poi/hssf/model/DrawingManager.java | 5 +-
.../org/apache/poi/hssf/model/LineShape.java | 6 +-
src/java/org/apache/poi/hssf/model/Model.java | 6 +-
.../apache/poi/hssf/model/PolygonShape.java | 6 +-
src/java/org/apache/poi/hssf/model/Sheet.java | 1270 +++++++++++------
.../poi/hssf/model/SimpleFilledShape.java | 5 +-
.../apache/poi/hssf/model/TextboxShape.java | 4 +-
.../org/apache/poi/hssf/model/Workbook.java | 52 +-
.../poi/hssf/model/WorkbookRecordList.java | 3 +-
.../record/AbstractEscherHolderRecord.java | 84 +-
.../org/apache/poi/hssf/record/BOFRecord.java | 12 +-
.../poi/hssf/record/BookBoolRecord.java | 2 +-
.../apache/poi/hssf/record/BoolErrRecord.java | 1 +
.../poi/hssf/record/BottomMarginRecord.java | 207 ++-
.../poi/hssf/record/BoundSheetRecord.java | 2 +-
.../poi/hssf/record/CodepageRecord.java | 4 +-
.../apache/poi/hssf/record/CustomField.java | 5 +-
.../apache/poi/hssf/record/DBCellRecord.java | 13 +-
.../poi/hssf/record/DrawingGroupRecord.java | 5 +-
.../apache/poi/hssf/record/DrawingRecord.java | 4 +-
.../record/DrawingRecordForBiffViewer.java | 5 +-
.../hssf/record/DrawingSelectionRecord.java | 5 +-
.../poi/hssf/record/EscherAggregate.java | 5 +-
.../poi/hssf/record/ExtSSTInfoSubRecord.java | 1 -
.../apache/poi/hssf/record/ExtSSTRecord.java | 10 +-
.../poi/hssf/record/ExtendedFormatRecord.java | 8 +-
.../poi/hssf/record/ExternSheetRecord.java | 198 +--
.../apache/poi/hssf/record/FormulaRecord.java | 8 -
.../apache/poi/hssf/record/IndexRecord.java | 7 -
.../apache/poi/hssf/record/LabelRecord.java | 17 +-
.../poi/hssf/record/LeftMarginRecord.java | 84 +-
.../org/apache/poi/hssf/record/Margin.java | 23 +-
.../poi/hssf/record/MergeCellsRecord.java | 33 +-
.../apache/poi/hssf/record/NameRecord.java | 3 +-
.../apache/poi/hssf/record/PaletteRecord.java | 4 +-
.../apache/poi/hssf/record/RecordFactory.java | 15 +-
.../poi/hssf/record/RightMarginRecord.java | 109 +-
.../poi/hssf/record/SSTDeserializer.java | 3 +-
.../poi/hssf/record/SharedFormulaRecord.java | 2 +-
.../apache/poi/hssf/record/StringRecord.java | 18 +-
.../poi/hssf/record/TextObjectRecord.java | 5 +-
.../poi/hssf/record/TopMarginRecord.java | 92 +-
.../apache/poi/hssf/record/UnicodeString.java | 10 +-
.../apache/poi/hssf/record/UnknownRecord.java | 22 +-
.../ColumnInfoRecordsAggregate.java | 509 +++++++
.../aggregates/FormulaRecordAggregate.java | 3 +-
.../aggregates/RowRecordsAggregate.java | 363 ++---
.../aggregates/ValueRecordsAggregate.java | 758 +++-------
.../record/formula/AbstractFunctionPtg.java | 5 +-
.../poi/hssf/record/formula/AddPtg.java | 3 +-
.../poi/hssf/record/formula/Area3DPtg.java | 10 +-
.../poi/hssf/record/formula/AreaPtg.java | 14 +-
.../poi/hssf/record/formula/AttrPtg.java | 10 +-
.../poi/hssf/record/formula/BoolPtg.java | 9 +-
.../poi/hssf/record/formula/ConcatPtg.java | 10 +-
.../poi/hssf/record/formula/ControlPtg.java | 6 +-
.../poi/hssf/record/formula/DividePtg.java | 10 +-
.../poi/hssf/record/formula/EqualPtg.java | 10 +-
.../poi/hssf/record/formula/ExpPtg.java | 8 +-
.../poi/hssf/record/formula/FuncPtg.java | 8 +-
.../poi/hssf/record/formula/FuncVarPtg.java | 6 +-
.../hssf/record/formula/GreaterEqualPtg.java | 65 +-
.../hssf/record/formula/GreaterThanPtg.java | 6 +-
.../poi/hssf/record/formula/IntPtg.java | 4 +-
.../poi/hssf/record/formula/LessEqualPtg.java | 21 +-
.../poi/hssf/record/formula/LessThanPtg.java | 8 +-
.../poi/hssf/record/formula/MemErrPtg.java | 4 +-
.../poi/hssf/record/formula/MemFuncPtg.java | 7 +-
.../hssf/record/formula/MissingArgPtg.java | 4 +-
.../poi/hssf/record/formula/MultiplyPtg.java | 10 +-
.../poi/hssf/record/formula/NamePtg.java | 9 +-
.../poi/hssf/record/formula/NameXPtg.java | 9 +-
.../poi/hssf/record/formula/NotEqualPtg.java | 96 +-
.../poi/hssf/record/formula/NumberPtg.java | 4 +-
.../poi/hssf/record/formula/OperationPtg.java | 11 +-
.../hssf/record/formula/ParenthesisPtg.java | 5 +-
.../poi/hssf/record/formula/PowerPtg.java | 9 +-
.../apache/poi/hssf/record/formula/Ptg.java | 19 +-
.../poi/hssf/record/formula/Ref3DPtg.java | 5 +-
.../poi/hssf/record/formula/ReferencePtg.java | 9 +-
.../poi/hssf/record/formula/StringPtg.java | 7 +-
.../poi/hssf/record/formula/SubtractPtg.java | 9 +-
.../hssf/record/formula/UnaryMinusPtg.java | 5 +-
.../poi/hssf/record/formula/UnaryPlusPtg.java | 5 +-
.../poi/hssf/record/formula/UnionPtg.java | 4 +-
.../poi/hssf/record/formula/UnknownPtg.java | 10 +-
.../poi/hssf/usermodel/DummyGraphics2d.java | 6 +-
.../poi/hssf/usermodel/EscherGraphics.java | 5 +-
.../poi/hssf/usermodel/EscherGraphics2d.java | 7 +-
.../poi/hssf/usermodel/FontDetails.java | 5 +-
.../apache/poi/hssf/usermodel/HSSFAnchor.java | 5 +-
.../apache/poi/hssf/usermodel/HSSFCell.java | 138 +-
.../poi/hssf/usermodel/HSSFCellStyle.java | 8 +-
.../poi/hssf/usermodel/HSSFChildAnchor.java | 5 +-
.../poi/hssf/usermodel/HSSFClientAnchor.java | 5 +-
.../poi/hssf/usermodel/HSSFDataFormat.java | 5 +-
.../poi/hssf/usermodel/HSSFDateUtil.java | 29 +-
.../hssf/usermodel/HSSFErrorConstants.java | 3 +-
.../apache/poi/hssf/usermodel/HSSFFont.java | 14 +-
.../apache/poi/hssf/usermodel/HSSFFooter.java | 12 +-
.../apache/poi/hssf/usermodel/HSSFHeader.java | 13 +-
.../apache/poi/hssf/usermodel/HSSFName.java | 9 +-
.../poi/hssf/usermodel/HSSFPalette.java | 35 +-
.../poi/hssf/usermodel/HSSFPatriarch.java | 5 +-
.../poi/hssf/usermodel/HSSFPolygon.java | 5 +-
.../poi/hssf/usermodel/HSSFPrintSetup.java | 586 ++++----
.../hssf/usermodel/HSSFRichTextString.java | 5 +-
.../apache/poi/hssf/usermodel/HSSFRow.java | 160 +--
.../apache/poi/hssf/usermodel/HSSFShape.java | 5 +-
.../hssf/usermodel/HSSFShapeContainer.java | 5 +-
.../poi/hssf/usermodel/HSSFShapeGroup.java | 5 +-
.../apache/poi/hssf/usermodel/HSSFSheet.java | 357 ++---
.../poi/hssf/usermodel/HSSFSimpleShape.java | 5 +-
.../poi/hssf/usermodel/HSSFTextbox.java | 5 +-
.../poi/hssf/usermodel/HSSFWorkbook.java | 208 +--
.../poi/hssf/usermodel/StaticFontMetrics.java | 5 +-
.../apache/poi/hssf/usermodel/package.html | 1 +
.../apache/poi/hssf/util/AreaReference.java | 5 +-
.../apache/poi/hssf/util/CellReference.java | 3 +-
.../org/apache/poi/hssf/util/HSSFColor.java | 3 +-
src/java/org/apache/poi/hssf/util/RKUtil.java | 2 -
.../apache/poi/hssf/util/RangeAddress.java | 3 +-
src/java/org/apache/poi/hssf/util/Region.java | 7 +-
.../apache/poi/hssf/util/SheetReferences.java | 2 -
.../org/apache/poi/hssf/util/package.html | 2 +-
.../org/apache/poi/poifs/common/package.html | 1 +
.../org/apache/poi/poifs/dev/package.html | 1 +
.../poifs/filesystem/POIFSDocumentPath.java | 9 +-
.../org/apache/poi/poifs/storage/package.html | 1 +
src/java/org/apache/poi/util/POILogger.java | 1 -
src/java/org/apache/poi/util/StringUtil.java | 19 +-
src/java/org/apache/poi/util/package.html | 1 +
.../org/apache/poi/hwpf/HWPFTestCase.java | 9 +-
.../apache/poi/ddf/TestEscherBSERecord.java | 3 +-
.../poi/ddf/TestEscherClientDataRecord.java | 2 +-
.../poi/hssf/data/SimpleWithPageBreaks.xls | Bin 0 -> 18432 bytes
.../apache/poi/hssf/data/blankworkbook.xls | Bin 0 -> 13824 bytes
.../eventmodel/TestEventRecordFactory.java | 5 +-
.../poi/hssf/eventmodel/TestModelFactory.java | 7 +-
.../org/apache/poi/hssf/model/SheetTest.java | 169 +--
.../poi/hssf/model/TestDrawingManager.java | 4 +-
.../poi/hssf/model/TestFormulaParser.java | 5 +-
.../org/apache/poi/hssf/model/TestSheet.java | 58 +
.../hssf/record/TestDrawingGroupRecord.java | 5 +-
.../poi/hssf/record/TestEscherAggregate.java | 5 +-
.../poi/hssf/record/TestFontBasisRecord.java | 2 -
.../poi/hssf/record/TestNameRecord.java | 74 +-
.../TestFormulaRecordAggregate.java | 5 +-
.../aggregates/TestValueRecordsAggregate.java | 85 +-
.../poi/hssf/record/formula/TestFuncPtg.java | 23 +-
.../apache/poi/hssf/usermodel/TestBugs.java | 43 +-
.../poi/hssf/usermodel/TestCloneSheet.java | 19 +-
.../hssf/usermodel/TestEscherGraphics.java | 5 +-
.../hssf/usermodel/TestEscherGraphics2d.java | 7 +-
.../poi/hssf/usermodel/TestFontDetails.java | 5 +-
.../hssf/usermodel/TestHSSFClientAnchor.java | 5 +-
.../poi/hssf/usermodel/TestHSSFDateUtil.java | 156 +-
.../poi/hssf/usermodel/TestHSSFPalette.java | 1 -
.../usermodel/TestHSSFRichTextString.java | 5 +-
.../poi/hssf/usermodel/TestHSSFSheet.java | 58 +-
.../poi/hssf/usermodel/TestHSSFWorkbook.java | 21 +
.../hssf/usermodel/TestSheetShiftRows.java | 29 +-
188 files changed, 4072 insertions(+), 3775 deletions(-)
create mode 100644 NOTICE
create mode 100644 src/examples/src/org/apache/poi/hssf/usermodel/examples/Outlines.java
delete mode 100755 src/java/org/apache/poi/hssf/dev/BiffViewer.java.rep
delete mode 100755 src/java/org/apache/poi/hssf/dev/EFHSSF.java.rep
create mode 100644 src/java/org/apache/poi/hssf/record/aggregates/ColumnInfoRecordsAggregate.java
create mode 100644 src/testcases/org/apache/poi/hssf/data/SimpleWithPageBreaks.xls
create mode 100644 src/testcases/org/apache/poi/hssf/data/blankworkbook.xls
create mode 100644 src/testcases/org/apache/poi/hssf/model/TestSheet.java
create mode 100644 src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000000..b36cb30597
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,3 @@
+ This product includes software developed by
+ The Apache Software Foundation (http://www.apache.org/).
+
\ No newline at end of file
diff --git a/build.xml b/build.xml
index a32f5a9aa6..95ac4b293c 100644
--- a/build.xml
+++ b/build.xml
@@ -643,9 +643,45 @@ FORREST_HOME environment variable!
description="Generates the documentation and reports"/>
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/documentation/content/xdocs/hssf/how-to.xml b/src/documentation/content/xdocs/hssf/how-to.xml
index bb587c757b..4d9f829bb2 100644
--- a/src/documentation/content/xdocs/hssf/how-to.xml
+++ b/src/documentation/content/xdocs/hssf/how-to.xml
@@ -421,7 +421,7 @@ most likely fail. No big deal.
Logging facility
- POI can dynamically select it's logging implementation. POI tries to
+
POI can dynamically select its logging implementation. POI tries to
create a logger using the System property named "org.apache.poi.util.POILogger".
Out of the box this can be set to one of three values:
@@ -477,9 +477,7 @@ yet. When it does something, we'll document it.
Further effort on HSSF is going to focus on the following major areas:
-Performance: A lot of work is going on in CVS and mailing lists for greatly improving the
-memory efficiency of POI, as well as improving speed. Many approaches have been suggested, and a lot of code as been written.
-It now needs a lot of testing and bugfixing.
+Performance: POI currently uses a lot of memory for large sheets.
Charts: This is a hard problem, with very little documentation.
So jump in!
diff --git a/src/documentation/content/xdocs/hssf/quick-guide.xml b/src/documentation/content/xdocs/hssf/quick-guide.xml
index 1227e824aa..3ea0ad8afd 100644
--- a/src/documentation/content/xdocs/hssf/quick-guide.xml
+++ b/src/documentation/content/xdocs/hssf/quick-guide.xml
@@ -44,6 +44,7 @@
Drawing Shapes.
Styling Shapes.
Shapes and Graphics2d.
+ Outlining.
Features
@@ -901,7 +902,42 @@
using the POI logging infrastructure (disabled by default).
+
+
+ Outlining
+
+ Outlines are great for grouping sections of information
+ together and can be added easily to columns and rows
+ using the POI API. Here's how:
+
+
+ HSSFWorkbook wb = new HSSFWorkbook();
+ HSSFSheet sheet1 = wb.createSheet("new sheet");
+ sheet1.groupRow( 5, 14 );
+ sheet1.groupRow( 7, 14 );
+ sheet1.groupRow( 16, 19 );
+
+ sheet1.groupColumn( (short)4, (short)7 );
+ sheet1.groupColumn( (short)9, (short)12 );
+ sheet1.groupColumn( (short)10, (short)11 );
+
+ FileOutputStream fileOut = new FileOutputStream(filename);
+ wb.write(fileOut);
+ fileOut.close();
+
+
+ To collapse (or expand) an outline use the following calls:
+
+
+ sheet1.setRowGroupCollapsed( 7, true );
+ sheet1.setColumnGroupCollapsed( (short)4, true );
+
+
+ The row/column you choose should contain an already
+ created group. It can be anywhere within the group.
+
+