You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ug...@apache.org on 2008/01/16 17:08:37 UTC

svn commit: r612495 [1/3] - in /poi/branches/ooxml/src/ooxml: ./ java/ java/org/ java/org/apache/ java/org/apache/poi/ java/org/apache/poi/ss/ java/org/apache/poi/ss/usermodel/ java/org/apache/poi/xssf/ java/org/apache/poi/xssf/strings/ java/org/apache...

Author: ugo
Date: Wed Jan 16 08:08:22 2008
New Revision: 612495

URL: http://svn.apache.org/viewvc?rev=612495&view=rev
Log:
Some OOXML implementation and interface code, just some basic Row and Cell-level functionality.

Added:
    poi/branches/ooxml/src/ooxml/
    poi/branches/ooxml/src/ooxml/java/
    poi/branches/ooxml/src/ooxml/java/org/
    poi/branches/ooxml/src/ooxml/java/org/apache/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/SharedStringSource.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Sheet.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Textbox.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Workbook.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/strings/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/strings/SharedStringsTable.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFCell.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFRichTextString.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFRow.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java   (with props)
    poi/branches/ooxml/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java   (with props)
    poi/branches/ooxml/src/ooxml/testcases/
    poi/branches/ooxml/src/ooxml/testcases/org/
    poi/branches/ooxml/src/ooxml/testcases/org/apache/
    poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/
    poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/
    poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/
    poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java   (with props)
    poi/branches/ooxml/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRow.java   (with props)

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,264 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+import java.util.Calendar;
+import java.util.Date;
+
+
+public interface Cell {
+
+    /**
+     * Numeric Cell type (0)
+     * @see #setCellType(int)
+     * @see #getCellType()
+     */
+
+    public final static int CELL_TYPE_NUMERIC = 0;
+
+    /**
+     * String Cell type (1)
+     * @see #setCellType(int)
+     * @see #getCellType()
+     */
+
+    public final static int CELL_TYPE_STRING = 1;
+
+    /**
+     * Formula Cell type (2)
+     * @see #setCellType(int)
+     * @see #getCellType()
+     */
+
+    public final static int CELL_TYPE_FORMULA = 2;
+
+    /**
+     * Blank Cell type (3)
+     * @see #setCellType(int)
+     * @see #getCellType()
+     */
+
+    public final static int CELL_TYPE_BLANK = 3;
+
+    /**
+     * Boolean Cell type (4)
+     * @see #setCellType(int)
+     * @see #getCellType()
+     */
+
+    public final static int CELL_TYPE_BOOLEAN = 4;
+
+    /**
+     * Error Cell type (5)
+     * @see #setCellType(int)
+     * @see #getCellType()
+     */
+
+    public final static int CELL_TYPE_ERROR = 5;
+
+    /**
+     * set the cell's number within the row (0 based)
+     * @param num  short the cell number
+     */
+
+    void setCellNum(short num);
+
+    /**
+     *  get the cell's number within the row
+     * @return short reperesenting the column number (logical!)
+     */
+
+    short getCellNum();
+
+    /**
+     * set the cells type (numeric, formula or string)
+     * @see #CELL_TYPE_NUMERIC
+     * @see #CELL_TYPE_STRING
+     * @see #CELL_TYPE_FORMULA
+     * @see #CELL_TYPE_BLANK
+     * @see #CELL_TYPE_BOOLEAN
+     * @see #CELL_TYPE_ERROR
+     */
+
+    void setCellType(int cellType);
+
+    /**
+     * get the cells type (numeric, formula or string)
+     * @see #CELL_TYPE_STRING
+     * @see #CELL_TYPE_NUMERIC
+     * @see #CELL_TYPE_FORMULA
+     * @see #CELL_TYPE_BOOLEAN
+     * @see #CELL_TYPE_ERROR
+     */
+
+    int getCellType();
+
+    /**
+     * set a numeric value for the cell
+     *
+     * @param value  the numeric value to set this cell to.  For formulas we'll set the
+     *        precalculated value, for numerics we'll set its value. For other types we
+     *        will change the cell to a numeric cell and set its value.
+     */
+    void setCellValue(double value);
+
+    /**
+     * set a date value for the cell. Excel treats dates as numeric so you will need to format the cell as
+     * a date.
+     *
+     * @param value  the date value to set this cell to.  For formulas we'll set the
+     *        precalculated value, for numerics we'll set its value. For other types we
+     *        will change the cell to a numeric cell and set its value.
+     */
+    void setCellValue(Date value);
+
+    /**
+     * set a date value for the cell. Excel treats dates as numeric so you will need to format the cell as
+     * a date.
+     *
+     * @param value  the date value to set this cell to.  For formulas we'll set the
+     *        precalculated value, for numerics we'll set its value. For othertypes we
+     *        will change the cell to a numeric cell and set its value.
+     */
+    void setCellValue(Calendar value);
+
+    /**
+     * set a string value for the cell. Please note that if you are using
+     * full 16 bit unicode you should call <code>setEncoding()</code> first.
+     *
+     * @param value  value to set the cell to.  For formulas we'll set the formula
+     * string, for String cells we'll set its value.  For other types we will
+     * change the cell to a string cell and set its value.
+     * If value is null then we will change the cell to a Blank cell.
+     */
+
+    void setCellValue(RichTextString value);
+
+    void setCellFormula(String formula);
+
+    String getCellFormula();
+
+    /**
+     * get the value of the cell as a number.  For strings we throw an exception.
+     * For blank cells we return a 0.
+     */
+
+    double getNumericCellValue();
+
+    /**
+     * get the value of the cell as a date.  For strings we throw an exception.
+     * For blank cells we return a null.
+     */
+    Date getDateCellValue();
+
+    /**
+     * get the value of the cell as a string - for numeric cells we throw an exception.
+     * For blank cells we return an empty string.
+     * For formulaCells that are not string Formulas, we return empty String
+     */
+
+    RichTextString getRichStringCellValue();
+
+    /**
+     * set a boolean value for the cell
+     *
+     * @param value the boolean value to set this cell to.  For formulas we'll set the
+     *        precalculated value, for booleans we'll set its value. For other types we
+     *        will change the cell to a boolean cell and set its value.
+     */
+
+    void setCellValue(boolean value);
+
+    /**
+     * set a error value for the cell
+     *
+     * @param value the error value to set this cell to.  For formulas we'll set the
+     *        precalculated value ??? IS THIS RIGHT??? , for errors we'll set
+     *        its value. For other types we will change the cell to an error
+     *        cell and set its value.
+     */
+
+    void setCellErrorValue(byte value);
+
+    /**
+     * get the value of the cell as a boolean.  For strings, numbers, and errors, we throw an exception.
+     * For blank cells we return a false.
+     */
+
+    boolean getBooleanCellValue();
+
+    /**
+     * get the value of the cell as an error code.  For strings, numbers, and booleans, we throw an exception.
+     * For blank cells we return a 0.
+     */
+
+    byte getErrorCellValue();
+
+    /**
+     * set the style for the cell.  The style should be an HSSFCellStyle created/retreived from
+     * the HSSFWorkbook.
+     *
+     * @param style  reference contained in the workbook
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#createCellStyle()
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#getCellStyleAt(short)
+     */
+
+    void setCellStyle(CellStyle style);
+
+    /**
+     * get the style for the cell.  This is a reference to a cell style contained in the workbook
+     * object.
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#getCellStyleAt(short)
+     */
+
+    CellStyle getCellStyle();
+
+    /**
+     * Sets this cell as the active cell for the worksheet
+     */
+    void setAsActiveCell();
+
+    /**
+     * Returns a string representation of the cell
+     * 
+     * This method returns a simple representation, 
+     * anthing more complex should be in user code, with
+     * knowledge of the semantics of the sheet being processed. 
+     * 
+     * Formula cells return the formula string, 
+     * rather than the formula result. 
+     * Dates are displayed in dd-MMM-yyyy format
+     * Errors are displayed as #ERR&lt;errIdx&gt;
+     */
+    String toString();
+
+    /**
+     * Assign a comment to this cell
+     *
+     * @param comment comment associated with this cell
+     */
+    void setCellComment(Comment comment);
+
+    /**
+     * Returns comment associated with this cell
+     *
+     * @return comment associated with this cell
+     */
+    Comment getCellComment();
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Cell.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,704 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface CellStyle {
+
+    /**
+     * general (normal) horizontal alignment
+     */
+
+    public final static short ALIGN_GENERAL = 0x0;
+
+    /**
+     * left-justified horizontal alignment
+     */
+
+    public final static short ALIGN_LEFT = 0x1;
+
+    /**
+     * center horizontal alignment
+     */
+
+    public final static short ALIGN_CENTER = 0x2;
+
+    /**
+     * right-justified horizontal alignment
+     */
+
+    public final static short ALIGN_RIGHT = 0x3;
+
+    /**
+     * fill? horizontal alignment
+     */
+
+    public final static short ALIGN_FILL = 0x4;
+
+    /**
+     * justified horizontal alignment
+     */
+
+    public final static short ALIGN_JUSTIFY = 0x5;
+
+    /**
+     * center-selection? horizontal alignment
+     */
+
+    public final static short ALIGN_CENTER_SELECTION = 0x6;
+
+    /**
+     * top-aligned vertical alignment
+     */
+
+    public final static short VERTICAL_TOP = 0x0;
+
+    /**
+     * center-aligned vertical alignment
+     */
+
+    public final static short VERTICAL_CENTER = 0x1;
+
+    /**
+     * bottom-aligned vertical alignment
+     */
+
+    public final static short VERTICAL_BOTTOM = 0x2;
+
+    /**
+     * vertically justified vertical alignment
+     */
+
+    public final static short VERTICAL_JUSTIFY = 0x3;
+
+    /**
+     * No border
+     */
+
+    public final static short BORDER_NONE = 0x0;
+
+    /**
+     * Thin border
+     */
+
+    public final static short BORDER_THIN = 0x1;
+
+    /**
+     * Medium border
+     */
+
+    public final static short BORDER_MEDIUM = 0x2;
+
+    /**
+     * dash border
+     */
+
+    public final static short BORDER_DASHED = 0x3;
+
+    /**
+     * dot border
+     */
+
+    public final static short BORDER_HAIR = 0x4;
+
+    /**
+     * Thick border
+     */
+
+    public final static short BORDER_THICK = 0x5;
+
+    /**
+     * double-line border
+     */
+
+    public final static short BORDER_DOUBLE = 0x6;
+
+    /**
+     * hair-line border
+     */
+
+    public final static short BORDER_DOTTED = 0x7;
+
+    /**
+     * Medium dashed border
+     */
+
+    public final static short BORDER_MEDIUM_DASHED = 0x8;
+
+    /**
+     * dash-dot border
+     */
+
+    public final static short BORDER_DASH_DOT = 0x9;
+
+    /**
+     * medium dash-dot border
+     */
+
+    public final static short BORDER_MEDIUM_DASH_DOT = 0xA;
+
+    /**
+     * dash-dot-dot border
+     */
+
+    public final static short BORDER_DASH_DOT_DOT = 0xB;
+
+    /**
+     * medium dash-dot-dot border
+     */
+
+    public final static short BORDER_MEDIUM_DASH_DOT_DOT = 0xC;
+
+    /**
+     * slanted dash-dot border
+     */
+
+    public final static short BORDER_SLANTED_DASH_DOT = 0xD;
+
+    /**  No background */
+    public final static short NO_FILL = 0;
+
+    /**  Solidly filled */
+    public final static short SOLID_FOREGROUND = 1;
+
+    /**  Small fine dots */
+    public final static short FINE_DOTS = 2;
+
+    /**  Wide dots */
+    public final static short ALT_BARS = 3;
+
+    /**  Sparse dots */
+    public final static short SPARSE_DOTS = 4;
+
+    /**  Thick horizontal bands */
+    public final static short THICK_HORZ_BANDS = 5;
+
+    /**  Thick vertical bands */
+    public final static short THICK_VERT_BANDS = 6;
+
+    /**  Thick backward facing diagonals */
+    public final static short THICK_BACKWARD_DIAG = 7;
+
+    /**  Thick forward facing diagonals */
+    public final static short THICK_FORWARD_DIAG = 8;
+
+    /**  Large spots */
+    public final static short BIG_SPOTS = 9;
+
+    /**  Brick-like layout */
+    public final static short BRICKS = 10;
+
+    /**  Thin horizontal bands */
+    public final static short THIN_HORZ_BANDS = 11;
+
+    /**  Thin vertical bands */
+    public final static short THIN_VERT_BANDS = 12;
+
+    /**  Thin backward diagonal */
+    public final static short THIN_BACKWARD_DIAG = 13;
+
+    /**  Thin forward diagonal */
+    public final static short THIN_FORWARD_DIAG = 14;
+
+    /**  Squares */
+    public final static short SQUARES = 15;
+
+    /**  Diamonds */
+    public final static short DIAMONDS = 16;
+
+    /**  Less Dots */
+    public final static short LESS_DOTS = 17;
+
+    /**  Least Dots */
+    public final static short LEAST_DOTS = 18;
+
+    /**
+     * get the index within the HSSFWorkbook (sequence within the collection of ExtnededFormat objects)
+     * @return unique index number of the underlying record this style represents (probably you don't care
+     *  unless you're comparing which one is which)
+     */
+
+    short getIndex();
+
+    /**
+     * set the data format (must be a valid format)
+     * @see org.apache.poi.hssf.usermodel.HSSFDataFormat
+     */
+
+    void setDataFormat(short fmt);
+
+    /**
+     * get the index of the format
+     * @see org.apache.poi.hssf.usermodel.HSSFDataFormat
+     */
+
+    short getDataFormat();
+
+    /**
+     * Get the contents of the format string, by looking up
+     *  the DataFormat against the supplied workbook
+     * @see org.apache.poi.hssf.usermodel.HSSFDataFormat
+     * XXX Commented out because it uses internal implementation Workbook class.
+     * 
+    String getDataFormatString(Workbook workbook);
+     */
+
+    /**
+     * set the font for this style
+     * @param font  a font object created or retreived from the HSSFWorkbook object
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#createFont()
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#getFontAt(short)
+     */
+
+    void setFont(Font font);
+
+    /**
+     * gets the index of the font for this style
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#getFontAt(short)
+     */
+    short getFontIndex();
+
+    /**
+     * gets the font for this style
+     * @param parentWorkbook The HSSFWorkbook that this style belongs to
+     * @see org.apache.poi.hssf.usermodel.HSSFCellStyle#getFontIndex()
+     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#getFontAt(short)
+     */
+    Font getFont(Workbook parentWorkbook);
+
+    /**
+     * set the cell's using this style to be hidden
+     * @param hidden - whether the cell using this style should be hidden
+     */
+
+    void setHidden(boolean hidden);
+
+    /**
+     * get whether the cell's using this style are to be hidden
+     * @return hidden - whether the cell using this style should be hidden
+     */
+
+    boolean getHidden();
+
+    /**
+     * set the cell's using this style to be locked
+     * @param locked - whether the cell using this style should be locked
+     */
+
+    void setLocked(boolean locked);
+
+    /**
+     * get whether the cell's using this style are to be locked
+     * @return hidden - whether the cell using this style should be locked
+     */
+
+    boolean getLocked();
+
+    /**
+     * set the type of horizontal alignment for the cell
+     * @param align - the type of alignment
+     * @see #ALIGN_GENERAL
+     * @see #ALIGN_LEFT
+     * @see #ALIGN_CENTER
+     * @see #ALIGN_RIGHT
+     * @see #ALIGN_FILL
+     * @see #ALIGN_JUSTIFY
+     * @see #ALIGN_CENTER_SELECTION
+     */
+
+    void setAlignment(short align);
+
+    /**
+     * get the type of horizontal alignment for the cell
+     * @return align - the type of alignment
+     * @see #ALIGN_GENERAL
+     * @see #ALIGN_LEFT
+     * @see #ALIGN_CENTER
+     * @see #ALIGN_RIGHT
+     * @see #ALIGN_FILL
+     * @see #ALIGN_JUSTIFY
+     * @see #ALIGN_CENTER_SELECTION
+     */
+
+    short getAlignment();
+
+    /**
+     * set whether the text should be wrapped
+     * @param wrapped  wrap text or not
+     */
+
+    void setWrapText(boolean wrapped);
+
+    /**
+     * get whether the text should be wrapped
+     * @return wrap text or not
+     */
+
+    boolean getWrapText();
+
+    /**
+     * set the type of vertical alignment for the cell
+     * @param align the type of alignment
+     * @see #VERTICAL_TOP
+     * @see #VERTICAL_CENTER
+     * @see #VERTICAL_BOTTOM
+     * @see #VERTICAL_JUSTIFY
+     */
+
+    void setVerticalAlignment(short align);
+
+    /**
+     * get the type of vertical alignment for the cell
+     * @return align the type of alignment
+     * @see #VERTICAL_TOP
+     * @see #VERTICAL_CENTER
+     * @see #VERTICAL_BOTTOM
+     * @see #VERTICAL_JUSTIFY
+     */
+
+    short getVerticalAlignment();
+
+    /**
+     * set the degree of rotation for the text in the cell
+     * @param rotation degrees (between -90 and 90 degrees)
+     */
+
+    void setRotation(short rotation);
+
+    /**
+     * get the degree of rotation for the text in the cell
+     * @return rotation degrees (between -90 and 90 degrees)
+     */
+
+    short getRotation();
+
+    /**
+     * set the number of spaces to indent the text in the cell
+     * @param indent - number of spaces
+     */
+
+    void setIndention(short indent);
+
+    /**
+     * get the number of spaces to indent the text in the cell
+     * @return indent - number of spaces
+     */
+
+    short getIndention();
+
+    /**
+     * set the type of border to use for the left border of the cell
+     * @param border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    void setBorderLeft(short border);
+
+    /**
+     * get the type of border to use for the left border of the cell
+     * @return border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    short getBorderLeft();
+
+    /**
+     * set the type of border to use for the right border of the cell
+     * @param border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    void setBorderRight(short border);
+
+    /**
+     * get the type of border to use for the right border of the cell
+     * @return border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    short getBorderRight();
+
+    /**
+     * set the type of border to use for the top border of the cell
+     * @param border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    void setBorderTop(short border);
+
+    /**
+     * get the type of border to use for the top border of the cell
+     * @return border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    short getBorderTop();
+
+    /**
+     * set the type of border to use for the bottom border of the cell
+     * @param border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+
+    void setBorderBottom(short border);
+
+    /**
+     * get the type of border to use for the bottom border of the cell
+     * @return border type
+     * @see #BORDER_NONE
+     * @see #BORDER_THIN
+     * @see #BORDER_MEDIUM
+     * @see #BORDER_DASHED
+     * @see #BORDER_DOTTED
+     * @see #BORDER_THICK
+     * @see #BORDER_DOUBLE
+     * @see #BORDER_HAIR
+     * @see #BORDER_MEDIUM_DASHED
+     * @see #BORDER_DASH_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT
+     * @see #BORDER_DASH_DOT_DOT
+     * @see #BORDER_MEDIUM_DASH_DOT_DOT
+     * @see #BORDER_SLANTED_DASH_DOT
+     */
+    short getBorderBottom();
+
+    /**
+     * set the color to use for the left border
+     * @param color The index of the color definition
+     */
+    void setLeftBorderColor(short color);
+
+    /**
+     * get the color to use for the left border
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     * @param color The index of the color definition
+     */
+    short getLeftBorderColor();
+
+    /**
+     * set the color to use for the right border
+     * @param color The index of the color definition
+     */
+    void setRightBorderColor(short color);
+
+    /**
+     * get the color to use for the left border
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     * @param color The index of the color definition
+     */
+    short getRightBorderColor();
+
+    /**
+     * set the color to use for the top border
+     * @param color The index of the color definition
+     */
+    void setTopBorderColor(short color);
+
+    /**
+     * get the color to use for the top border
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     * @param color The index of the color definition
+     */
+    short getTopBorderColor();
+
+    /**
+     * set the color to use for the bottom border
+     * @param color The index of the color definition
+     */
+    void setBottomBorderColor(short color);
+
+    /**
+     * get the color to use for the left border
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     * @param color The index of the color definition
+     */
+    short getBottomBorderColor();
+
+    /**
+     * setting to one fills the cell with the foreground color... No idea about
+     * other values
+     *
+     * @see #NO_FILL
+     * @see #SOLID_FOREGROUND
+     * @see #FINE_DOTS
+     * @see #ALT_BARS
+     * @see #SPARSE_DOTS
+     * @see #THICK_HORZ_BANDS
+     * @see #THICK_VERT_BANDS
+     * @see #THICK_BACKWARD_DIAG
+     * @see #THICK_FORWARD_DIAG
+     * @see #BIG_SPOTS
+     * @see #BRICKS
+     * @see #THIN_HORZ_BANDS
+     * @see #THIN_VERT_BANDS
+     * @see #THIN_BACKWARD_DIAG
+     * @see #THIN_FORWARD_DIAG
+     * @see #SQUARES
+     * @see #DIAMONDS
+     *
+     * @param fp  fill pattern (set to 1 to fill w/foreground color)
+     */
+    void setFillPattern(short fp);
+
+    /**
+     * get the fill pattern (??) - set to 1 to fill with foreground color
+     * @return fill pattern
+     */
+
+    short getFillPattern();
+
+    /**
+     * set the background fill color.
+     * <p>
+     * For example:
+     * <pre>
+     * cs.setFillPattern(HSSFCellStyle.FINE_DOTS );
+     * cs.setFillBackgroundColor(new HSSFColor.RED().getIndex()); 
+     * </pre>
+     * optionally a Foreground and background fill can be applied:
+     * <i>Note: Ensure Foreground color is set prior to background</i>
+     * <pre>
+     * cs.setFillPattern(HSSFCellStyle.FINE_DOTS );
+     * cs.setFillForegroundColor(new HSSFColor.BLUE().getIndex());
+     * cs.setFillBackgroundColor(new HSSFColor.RED().getIndex()); 
+     * </pre>
+     * or, for the special case of SOLID_FILL:
+     * <pre>
+     * cs.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND );
+     * cs.setFillForegroundColor(new HSSFColor.RED().getIndex());
+     * </pre>
+     * It is necessary to set the fill style in order
+     * for the color to be shown in the cell.
+     *
+     * @param bg  color
+     */
+
+    void setFillBackgroundColor(short bg);
+
+    /**
+     * get the background fill color
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     * @return fill color
+     */
+    short getFillBackgroundColor();
+
+    /**
+     * set the foreground fill color
+     * <i>Note: Ensure Foreground color is set prior to background color.</i>
+     * @param bg  color
+     */
+    void setFillForegroundColor(short bg);
+
+    /**
+     * get the foreground fill color
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     * @return fill color
+     */
+    short getFillForegroundColor();
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/CellStyle.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,40 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface Color {
+
+    /**
+     * @return index to the standard palette
+     */
+
+    short getIndex();
+
+    /**
+     * @return  triplet representation like that in Excel
+     */
+
+    short[] getTriplet();
+
+    /**
+     * @return a hex string exactly like a gnumeric triplet
+     */
+
+    String getHexString();
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Color.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,86 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+
+public interface Comment {
+
+    /**
+     * Returns whether this comment is visible.
+     *
+     * @param visible <code>true</code> if the comment is visible, <code>false</code> otherwise
+     */
+    void setVisible(boolean visible);
+
+    /**
+     * Sets whether this comment is visible.
+     *
+     * @return <code>true</code> if the comment is visible, <code>false</code> otherwise
+     */
+    boolean isVisible();
+
+    /**
+     * Return the row of the cell that contains the comment
+     *
+     * @return the 0-based row of the cell that contains the comment
+     */
+    int getRow();
+
+    /**
+     * Set the row of the cell that contains the comment
+     *
+     * @param row the 0-based row of the cell that contains the comment
+     */
+    void setRow(int row);
+
+    /**
+     * Return the column of the cell that contains the comment
+     *
+     * @return the 0-based column of the cell that contains the comment
+     */
+    short getColumn();
+
+    /**
+     * Set the column of the cell that contains the comment
+     *
+     * @param col the 0-based column of the cell that contains the comment
+     */
+    void setColumn(short col);
+
+    /**
+     * Name of the original comment author
+     *
+     * @return the name of the original author of the comment
+     */
+    String getAuthor();
+
+    /**
+     * Name of the original comment author
+     *
+     * @param author the name of the original author of the comment
+     */
+    void setAuthor(String author);
+
+    /**
+     * Sets the rich text string used by this comment.
+     *
+     * @param string    Sets the rich text string used by this object.
+     */
+    void setString(RichTextString string);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Comment.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,39 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface DataFormat {
+
+    /**
+     * get the format index that matches the given format string.
+     * Creates a new format if one is not found.  Aliases text to the proper format.
+     * @param format string matching a built in format
+     * @return index of format.
+     */
+
+    short getFormat(String format);
+
+    /**
+     * get the format string that matches the given format index
+     * @param index of a format
+     * @return string represented at index of format or null if there is not a  format at that index
+     */
+
+    String getFormat(short index);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/DataFormat.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,301 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+
+public interface Font {
+
+    /**
+     * Arial font
+     */
+
+    public final static String FONT_ARIAL = "Arial";
+
+    /**
+     * Normal boldness (not bold)
+     */
+
+    public final static short BOLDWEIGHT_NORMAL = 0x190;
+
+    /**
+     * Bold boldness (bold)
+     */
+
+    public final static short BOLDWEIGHT_BOLD = 0x2bc;
+
+    /**
+     * normal type of black color.
+     */
+
+    public final static short COLOR_NORMAL = 0x7fff;
+
+    /**
+     * Dark Red color
+     */
+
+    public final static short COLOR_RED = 0xa;
+
+    /**
+     * no type offsetting (not super or subscript)
+     */
+
+    public final static short SS_NONE = 0;
+
+    /**
+     * superscript
+     */
+
+    public final static short SS_SUPER = 1;
+
+    /**
+     * subscript
+     */
+
+    public final static short SS_SUB = 2;
+
+    /**
+     * not underlined
+     */
+
+    public final static byte U_NONE = 0;
+
+    /**
+     * single (normal) underline
+     */
+
+    public final static byte U_SINGLE = 1;
+
+    /**
+     * double underlined
+     */
+
+    public final static byte U_DOUBLE = 2;
+
+    /**
+     * accounting style single underline
+     */
+
+    public final static byte U_SINGLE_ACCOUNTING = 0x21;
+
+    /**
+     * accounting style double underline
+     */
+
+    public final static byte U_DOUBLE_ACCOUNTING = 0x22;
+
+    /**
+     * ANSI character set
+     */
+    public final static byte ANSI_CHARSET = 0;
+
+    /**
+     * Default character set.
+     */
+    public final static byte DEFAULT_CHARSET = 1;
+
+    /**
+     * Symbol character set
+     */
+    public final static byte SYMBOL_CHARSET = 2;
+
+    /**
+     * set the name for the font (i.e. Arial)
+     * @param name  String representing the name of the font to use
+     * @see #FONT_ARIAL
+     */
+
+    void setFontName(String name);
+
+    /**
+     * get the name for the font (i.e. Arial)
+     * @return String representing the name of the font to use
+     * @see #FONT_ARIAL
+     */
+
+    String getFontName();
+
+    /**
+     * get the index within the HSSFWorkbook (sequence within the collection of Font objects)
+     * @return unique index number of the underlying record this Font represents (probably you don't care
+     *  unless you're comparing which one is which)
+     */
+
+    short getIndex();
+
+    /**
+     * set the font height in unit's of 1/20th of a point.  Maybe you might want to
+     * use the setFontHeightInPoints which matches to the familiar 10, 12, 14 etc..
+     * @param height height in 1/20ths of a point
+     * @see #setFontHeightInPoints(short)
+     */
+
+    void setFontHeight(short height);
+
+    /**
+     * set the font height
+     * @param height height in the familiar unit of measure - points
+     * @see #setFontHeight(short)
+     */
+
+    void setFontHeightInPoints(short height);
+
+    /**
+     * get the font height in unit's of 1/20th of a point.  Maybe you might want to
+     * use the getFontHeightInPoints which matches to the familiar 10, 12, 14 etc..
+     * @return short - height in 1/20ths of a point
+     * @see #getFontHeightInPoints()
+     */
+
+    short getFontHeight();
+
+    /**
+     * get the font height
+     * @return short - height in the familiar unit of measure - points
+     * @see #getFontHeight()
+     */
+
+    short getFontHeightInPoints();
+
+    /**
+     * set whether to use italics or not
+     * @param italic italics or not
+     */
+
+    void setItalic(boolean italic);
+
+    /**
+     * get whether to use italics or not
+     * @return italics or not
+     */
+
+    boolean getItalic();
+
+    /**
+     * set whether to use a strikeout horizontal line through the text or not
+     * @param strikeout or not
+     */
+
+    void setStrikeout(boolean strikeout);
+
+    /**
+     * get whether to use a strikeout horizontal line through the text or not
+     * @return strikeout or not
+     */
+
+    boolean getStrikeout();
+
+    /**
+     * set the color for the font
+     * @param color to use
+     * @see #COLOR_NORMAL Note: Use this rather than HSSFColor.AUTOMATIC for default font color
+     * @see #COLOR_RED
+     */
+
+    void setColor(short color);
+
+    /**
+     * get the color for the font
+     * @return color to use
+     * @see #COLOR_NORMAL
+     * @see #COLOR_RED
+     * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
+     */
+    short getColor();
+
+    /**
+     * set the boldness to use
+     * @param boldweight
+     * @see #BOLDWEIGHT_NORMAL
+     * @see #BOLDWEIGHT_BOLD
+     */
+
+    void setBoldweight(short boldweight);
+
+    /**
+     * get the boldness to use
+     * @return boldweight
+     * @see #BOLDWEIGHT_NORMAL
+     * @see #BOLDWEIGHT_BOLD
+     */
+
+    short getBoldweight();
+
+    /**
+     * set normal,super or subscript.
+     * @param offset type to use (none,super,sub)
+     * @see #SS_NONE
+     * @see #SS_SUPER
+     * @see #SS_SUB
+     */
+
+    void setTypeOffset(short offset);
+
+    /**
+     * get normal,super or subscript.
+     * @return offset type to use (none,super,sub)
+     * @see #SS_NONE
+     * @see #SS_SUPER
+     * @see #SS_SUB
+     */
+
+    short getTypeOffset();
+
+    /**
+     * set type of text underlining to use
+     * @param underline type
+     * @see #U_NONE
+     * @see #U_SINGLE
+     * @see #U_DOUBLE
+     * @see #U_SINGLE_ACCOUNTING
+     * @see #U_DOUBLE_ACCOUNTING
+     */
+
+    void setUnderline(byte underline);
+
+    /**
+     * get type of text underlining to use
+     * @return underlining type
+     * @see #U_NONE
+     * @see #U_SINGLE
+     * @see #U_DOUBLE
+     * @see #U_SINGLE_ACCOUNTING
+     * @see #U_DOUBLE_ACCOUNTING
+     */
+
+    byte getUnderline();
+
+    /**
+     * get character-set to use.
+     * @return character-set
+     * @see #ANSI_CHARSET
+     * @see #DEFAULT_CHARSET
+     * @see #SYMBOL_CHARSET
+     */
+    byte getCharSet();
+
+    /**
+     * set character-set to use.
+     * @see #ANSI_CHARSET
+     * @see #DEFAULT_CHARSET
+     * @see #SYMBOL_CHARSET
+     */
+    void setCharSet(byte charset);
+
+    String toString();
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Font.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,58 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface Footer {
+
+    /**
+     * Get the left side of the footer.
+     * @return The string representing the left side.
+     */
+    String getLeft();
+
+    /**
+     * Sets the left string.
+     * @param newLeft The string to set as the left side.
+     */
+    void setLeft(String newLeft);
+
+    /**
+     * Get the center of the footer.
+     * @return The string representing the center.
+     */
+    String getCenter();
+
+    /**
+     * Sets the center string.
+     * @param newCenter The string to set as the center.
+     */
+    void setCenter(String newCenter);
+
+    /**
+     * Get the right side of the footer.
+     * @return The string representing the right side.
+     */
+    String getRight();
+
+    /**
+     * Sets the right string.
+     * @param newRight The string to set as the right side.
+     */
+    void setRight(String newRight);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Footer.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,64 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface Header {
+
+    /**
+     * Get the left side of the header.
+     *
+     * @return The string representing the left side.
+     */
+    String getLeft();
+
+    /**
+     * Sets the left string.
+     *
+     * @param newLeft The string to set as the left side.
+     */
+    void setLeft(String newLeft);
+
+    /**
+     * Get the center of the header.
+     *
+     * @return The string representing the center.
+     */
+    String getCenter();
+
+    /**
+     * Sets the center string.
+     *
+     * @param newCenter The string to set as the center.
+     */
+    void setCenter(String newCenter);
+
+    /**
+     * Get the right side of the header.
+     *
+     * @return The string representing the right side.
+     */
+    String getRight();
+
+    /**
+     * Sets the right string.
+     *
+     * @param newRight The string to set as the right side.
+     */
+    void setRight(String newRight);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Header.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,56 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface Name {
+
+    /** Get the sheets name which this named range is referenced to
+     * @return sheet name, which this named range refered to
+     */
+
+    String getSheetName();
+
+    /** 
+     * gets the name of the named range
+     * @return named range name
+     */
+
+    String getNameName();
+
+    /** 
+     * sets the name of the named range
+     * @param nameName named range name to set
+     */
+
+    void setNameName(String nameName);
+
+    /** 
+     * gets the reference of the named range
+     * @return reference of the named range
+     */
+
+    String getReference();
+
+    /** 
+     * sets the reference of this named range
+     * @param ref the reference to set
+     */
+
+    void setReference(String ref);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Name.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,75 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface Palette {
+
+    /**
+     * Retrieves the color at a given index
+     *
+     * @param index the palette index, between 0x8 to 0x40 inclusive
+     * @return the color, or null if the index is not populated
+     */
+    Color getColor(short index);
+
+    /**
+     * Finds the first occurance of a given color
+     *
+     * @param red the RGB red component, between 0 and 255 inclusive
+     * @param green the RGB green component, between 0 and 255 inclusive
+     * @param blue the RGB blue component, between 0 and 255 inclusive
+     * @return the color, or null if the color does not exist in this palette
+     */
+    Color findColor(byte red, byte green, byte blue);
+
+    /**
+     * Finds the closest matching color in the custom palette.  The
+     * method for finding the distance between the colors is fairly
+     * primative.
+     *
+     * @param red   The red component of the color to match.
+     * @param green The green component of the color to match.
+     * @param blue  The blue component of the color to match.
+     * @return  The closest color or null if there are no custom
+     *          colors currently defined.
+     */
+    Color findSimilarColor(byte red, byte green, byte blue);
+
+    /**
+     * Sets the color at the given offset
+     *
+     * @param index the palette index, between 0x8 to 0x40 inclusive
+     * @param red the RGB red component, between 0 and 255 inclusive
+     * @param green the RGB green component, between 0 and 255 inclusive
+     * @param blue the RGB blue component, between 0 and 255 inclusive
+     */
+    void setColorAtIndex(short index, byte red, byte green, byte blue);
+
+    /**
+     * Adds a new color into an empty color slot.
+     * @param red       The red component
+     * @param green     The green component
+     * @param blue      The blue component
+     *
+     * @return  The new custom color.
+     *
+     * @throws RuntimeException if there are more more free color indexes.
+     */
+    Color addColor(byte red, byte green, byte blue);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Palette.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,124 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+import java.util.List;
+
+import org.apache.poi.hssf.usermodel.HSSFAnchor;
+import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
+import org.apache.poi.hssf.usermodel.HSSFComment;
+import org.apache.poi.hssf.usermodel.HSSFPicture;
+import org.apache.poi.hssf.usermodel.HSSFPolygon;
+import org.apache.poi.hssf.usermodel.HSSFShapeGroup;
+import org.apache.poi.hssf.usermodel.HSSFSimpleShape;
+import org.apache.poi.hssf.usermodel.HSSFTextbox;
+
+public interface Patriarch {
+
+    /**
+     * Creates a new group record stored under this patriarch.
+     *
+     * @param anchor    the client anchor describes how this group is attached
+     *                  to the sheet.
+     * @return  the newly created group.
+     */
+    HSSFShapeGroup createGroup(HSSFClientAnchor anchor);
+
+    /**
+     * Creates a simple shape.  This includes such shapes as lines, rectangles,
+     * and ovals.
+     *
+     * @param anchor    the client anchor describes how this group is attached
+     *                  to the sheet.
+     * @return  the newly created shape.
+     */
+    HSSFSimpleShape createSimpleShape(HSSFClientAnchor anchor);
+
+    /**
+     * Creates a picture.
+     *
+     * @param anchor    the client anchor describes how this group is attached
+     *                  to the sheet.
+     * @return  the newly created shape.
+     */
+    HSSFPicture createPicture(HSSFClientAnchor anchor, int pictureIndex);
+
+    /**
+     * Creates a polygon
+     *
+     * @param anchor    the client anchor describes how this group is attached
+     *                  to the sheet.
+     * @return  the newly created shape.
+     */
+    HSSFPolygon createPolygon(HSSFClientAnchor anchor);
+
+    /**
+     * Constructs a textbox under the patriarch.
+     *
+     * @param anchor    the client anchor describes how this group is attached
+     *                  to the sheet.
+     * @return      the newly created textbox.
+     */
+    HSSFTextbox createTextbox(HSSFClientAnchor anchor);
+
+    /**
+     * Constructs a cell comment.
+     *
+     * @param anchor    the client anchor describes how this comment is attached
+     *                  to the sheet.
+     * @return      the newly created comment.
+     */
+    HSSFComment createComment(HSSFAnchor anchor);
+
+    /**
+     * Returns a list of all shapes contained by the patriarch.
+     */
+    List getChildren();
+
+    /**
+     * Total count of all children and their children's children.
+     */
+    int countOfAllChildren();
+
+    /**
+     * Sets the coordinate space of this group.  All children are contrained
+     * to these coordinates.
+     */
+    void setCoordinates(int x1, int y1, int x2, int y2);
+
+    /**
+     * The top left x coordinate of this group.
+     */
+    int getX1();
+
+    /**
+     * The top left y coordinate of this group.
+     */
+    int getY1();
+
+    /**
+     * The bottom right x coordinate of this group.
+     */
+    int getX2();
+
+    /**
+     * The bottom right y coordinate of this group.
+     */
+    int getY2();
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Patriarch.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,268 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+public interface PrintSetup {
+
+    public static final short LETTER_PAPERSIZE = 1;
+
+    public static final short LEGAL_PAPERSIZE = 5;
+
+    public static final short EXECUTIVE_PAPERSIZE = 7;
+
+    public static final short A4_PAPERSIZE = 9;
+
+    public static final short A5_PAPERSIZE = 11;
+
+    public static final short ENVELOPE_10_PAPERSIZE = 20;
+
+    public static final short ENVELOPE_DL_PAPERSIZE = 27;
+
+    public static final short ENVELOPE_CS_PAPERSIZE = 28;
+
+    public static final short ENVELOPE_MONARCH_PAPERSIZE = 37;
+
+    /**    
+     * Set the paper size.    
+     * @param size the paper size.    
+     */
+    void setPaperSize(short size);
+
+    /**    
+     * Set the scale.    
+     * @param scale the scale to use    
+     */
+    void setScale(short scale);
+
+    /**    
+     * Set the page numbering start.    
+     * @param start the page numbering start    
+     */
+    void setPageStart(short start);
+
+    /**    
+     * Set the number of pages wide to fit the sheet in    
+     * @param width the number of pages    
+     */
+    void setFitWidth(short width);
+
+    /**    
+     * Set the number of pages high to fit the sheet in    
+     * @param height the number of pages    
+     */
+    void setFitHeight(short height);
+
+    /**    
+     * Sets the options flags.  Not advisable to do it directly.    
+     * @param options The bit flags for the options    
+     */
+    void setOptions(short options);
+
+    /**    
+     * Set whether to go left to right or top down in ordering    
+     * @param ltor left to right    
+     */
+    void setLeftToRight(boolean ltor);
+
+    /**    
+     * Set whether to print in landscape    
+     * @param ls landscape    
+     */
+    void setLandscape(boolean ls);
+
+    /**    
+     * Valid settings.  I'm not for sure.    
+     * @param valid Valid    
+     */
+    void setValidSettings(boolean valid);
+
+    /**    
+     * Set whether it is black and white    
+     * @param mono Black and white    
+     */
+    void setNoColor(boolean mono);
+
+    /**    
+     * Set whether it is in draft mode    
+     * @param d draft    
+     */
+    void setDraft(boolean d);
+
+    /**    
+     * Print the include notes    
+     * @param printnotes print the notes    
+     */
+    void setNotes(boolean printnotes);
+
+    /**    
+     * Set no orientation. ?    
+     * @param orientation Orientation.    
+     */
+    void setNoOrientation(boolean orientation);
+
+    /**    
+     * Set whether to use page start    
+     * @param page Use page start    
+     */
+    void setUsePage(boolean page);
+
+    /**    
+     * Sets the horizontal resolution.    
+     * @param resolution horizontal resolution    
+     */
+    void setHResolution(short resolution);
+
+    /**    
+     * Sets the vertical resolution.    
+     * @param resolution vertical resolution    
+     */
+    void setVResolution(short resolution);
+
+    /**    
+     * Sets the header margin.    
+     * @param headermargin header margin    
+     */
+    void setHeaderMargin(double headermargin);
+
+    /**    
+     * Sets the footer margin.    
+     * @param footermargin footer margin    
+     */
+    void setFooterMargin(double footermargin);
+
+    /**    
+     * Sets the number of copies.    
+     * @param copies number of copies    
+     */
+    void setCopies(short copies);
+
+    /**    
+     * Returns the paper size.    
+     * @return paper size    
+     */
+    short getPaperSize();
+
+    /**    
+     * Returns the scale.    
+     * @return scale    
+     */
+    short getScale();
+
+    /**    
+     * Returns the page start.    
+     * @return page start    
+     */
+    short getPageStart();
+
+    /**    
+     * Returns the number of pages wide to fit sheet in.    
+     * @return number of pages wide to fit sheet in    
+     */
+    short getFitWidth();
+
+    /**    
+     * Returns the number of pages high to fit the sheet in.    
+     * @return number of pages high to fit the sheet in    
+     */
+    short getFitHeight();
+
+    /**    
+     * Returns the bit flags for the options.    
+     * @return bit flags for the options    
+     */
+    short getOptions();
+
+    /**    
+     * Returns the left to right print order.    
+     * @return left to right print order    
+     */
+    boolean getLeftToRight();
+
+    /**    
+     * Returns the landscape mode.    
+     * @return landscape mode    
+     */
+    boolean getLandscape();
+
+    /**    
+     * Returns the valid settings.    
+     * @return valid settings    
+     */
+    boolean getValidSettings();
+
+    /**    
+     * Returns the black and white setting.    
+     * @return black and white setting    
+     */
+    boolean getNoColor();
+
+    /**    
+     * Returns the draft mode.    
+     * @return draft mode    
+     */
+    boolean getDraft();
+
+    /**    
+     * Returns the print notes.    
+     * @return print notes    
+     */
+    boolean getNotes();
+
+    /**    
+     * Returns the no orientation.    
+     * @return no orientation    
+     */
+    boolean getNoOrientation();
+
+    /**    
+     * Returns the use page numbers.    
+     * @return use page numbers    
+     */
+    boolean getUsePage();
+
+    /**    
+     * Returns the horizontal resolution.    
+     * @return horizontal resolution    
+     */
+    short getHResolution();
+
+    /**    
+     * Returns the vertical resolution.    
+     * @return vertical resolution    
+     */
+    short getVResolution();
+
+    /**    
+     * Returns the header margin.    
+     * @return header margin    
+     */
+    double getHeaderMargin();
+
+    /**    
+     * Returns the footer margin.    
+     * @return footer margin    
+     */
+    double getFooterMargin();
+
+    /**    
+     * Returns the number of copies.    
+     * @return number of copies    
+     */
+    short getCopies();
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/PrintSetup.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,117 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+
+public interface RichTextString {
+
+    /** Place holder for indicating that NO_FONT has been applied here */
+    public static final short NO_FONT = 0;
+
+    /**
+     * Applies a font to the specified characters of a string.
+     *
+     * @param startIndex    The start index to apply the font to (inclusive)
+     * @param endIndex      The end index to apply the font to (exclusive)
+     * @param fontIndex     The font to use.
+     */
+    void applyFont(int startIndex, int endIndex, short fontIndex);
+
+    /**
+     * Applies a font to the specified characters of a string.
+     *
+     * @param startIndex    The start index to apply the font to (inclusive)
+     * @param endIndex      The end index to apply to font to (exclusive)
+     * @param font          The index of the font to use.
+     */
+    void applyFont(int startIndex, int endIndex, Font font);
+
+    /**
+     * Sets the font of the entire string.
+     * @param font          The font to use.
+     */
+    void applyFont(Font font);
+
+    /**
+     * Removes any formatting that may have been applied to the string.
+     */
+    void clearFormatting();
+
+    /**
+     * Returns the plain string representation.
+     */
+    String getString();
+
+    /**
+     * @return  the number of characters in the font.
+     */
+    int length();
+
+    /**
+     * Returns the font in use at a particular index.
+     *
+     * @param index         The index.
+     * @return              The font that's currently being applied at that
+     *                      index or null if no font is being applied or the
+     *                      index is out of range.
+     */
+    short getFontAtIndex(int index);
+
+    /**
+     * @return  The number of formatting runs used. There will always be at
+     *          least one of font NO_FONT.
+     *
+     * @see #NO_FONT
+     */
+    int numFormattingRuns();
+
+    /**
+     * The index within the string to which the specified formatting run applies.
+     * @param index     the index of the formatting run
+     * @return  the index within the string.
+     */
+    int getIndexOfFormattingRun(int index);
+
+    /**
+     * Gets the font used in a particular formatting run.
+     *
+     * @param index     the index of the formatting run
+     * @return  the font number used.
+     */
+    short getFontOfFormattingRun(int index);
+
+    /**
+     * Compares one rich text string to another.
+     */
+    int compareTo(Object o);
+
+    boolean equals(Object o);
+
+    /**
+     * @return  the plain text representation of this string.
+     */
+    String toString();
+
+    /**
+     * Applies the specified font to the entire string.
+     *
+     * @param fontIndex  the font to apply.
+     */
+    void applyFont(short fontIndex);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/RichTextString.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,158 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+import java.util.Iterator;
+
+public interface Row {
+
+    // used for collections
+    public final static int INITIAL_CAPACITY = 5;
+
+    /**
+     * Use this to create new cells within the row and return it.
+     * <p>
+     * The cell that is returned is a CELL_TYPE_BLANK. The type can be changed
+     * either through calling <code>setCellValue</code> or <code>setCellType</code>.
+     *
+     * @param column - the column number this cell represents
+     *
+     * @return HSSFCell a high level representation of the created cell.
+     */
+
+    Cell createCell(short column);
+
+    /**
+     * Use this to create new cells within the row and return it.
+     * <p>
+     * The cell that is returned is a CELL_TYPE_BLANK. The type can be changed
+     * either through calling setCellValue or setCellType.
+     *
+     * @param column - the column number this cell represents
+     *
+     * @return HSSFCell a high level representation of the created cell.
+     */
+
+    Cell createCell(short column, int type);
+
+    /**
+     * remove the HSSFCell from this row.
+     * @param cell to remove
+     */
+    void removeCell(Cell cell);
+
+    /**
+     * set the row number of this row.
+     * @param rowNum  the row number (0-based)
+     * @throws IndexOutOfBoundsException if the row number is not within the range 0-65535.
+     */
+
+    void setRowNum(int rowNum);
+
+    /**
+     * get row number this row represents
+     * @return the row number (0 based)
+     */
+
+    int getRowNum();
+
+    /**
+     * get the hssfcell representing a given column (logical cell) 0-based.  If you
+     * ask for a cell that is not defined....you get a null.
+     *
+     * @param cellnum  0 based column number
+     * @return HSSFCell representing that column or null if undefined.
+     */
+
+    Cell getCell(short cellnum);
+
+    /**
+     * get the number of the first cell contained in this row.
+     * @return short representing the first logical cell in the row, or -1 if the row does not contain any cells.
+     */
+
+    short getFirstCellNum();
+
+    /**
+     * gets the number of the last cell contained in this row <b>PLUS ONE</b>. 
+     * @return short representing the last logical cell in the row <b>PLUS ONE</b>, or -1 if the row does not contain any cells.
+     */
+
+    short getLastCellNum();
+
+    /**
+     * gets the number of defined cells (NOT number of cells in the actual row!).
+     * That is to say if only columns 0,4,5 have values then there would be 3.
+     * @return int representing the number of defined cells in the row.
+     */
+
+    int getPhysicalNumberOfCells();
+
+    /**
+     * set the row's height or set to ff (-1) for undefined/default-height.  Set the height in "twips" or
+     * 1/20th of a point.
+     * @param height  rowheight or 0xff for undefined (use sheet default)
+     */
+
+    void setHeight(short height);
+
+    /**
+     * set whether or not to display this row with 0 height
+     * @param zHeight  height is zero or not.
+     */
+    void setZeroHeight(boolean zHeight);
+
+    /**
+     * get whether or not to display this row with 0 height
+     * @return - zHeight height is zero or not.
+     */
+    boolean getZeroHeight();
+
+    /**
+     * set the row's height in points.
+     * @param height  row height in points
+     */
+
+    void setHeightInPoints(float height);
+
+    /**
+     * get the row's height or ff (-1) for undefined/default-height in twips (1/20th of a point)
+     * @return rowheight or 0xff for undefined (use sheet default)
+     */
+
+    short getHeight();
+
+    /**
+     * get the row's height or ff (-1) for undefined/default-height in points (20*getHeight())
+     * @return rowheight or 0xff for undefined (use sheet default)
+     */
+
+    float getHeightInPoints();
+
+    /**
+     * @return cell iterator of the physically defined cells.  Note element 4 may
+     * actually be row cell depending on how many are defined!
+     */
+
+    Iterator cellIterator();
+
+    int compareTo(Object obj);
+
+    boolean equals(Object obj);
+
+}
\ No newline at end of file

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/Row.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/SharedStringSource.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/SharedStringSource.java?rev=612495&view=auto
==============================================================================
--- poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/SharedStringSource.java (added)
+++ poi/branches/ooxml/src/ooxml/java/org/apache/poi/ss/usermodel/SharedStringSource.java Wed Jan 16 08:08:22 2008
@@ -0,0 +1,40 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.usermodel;
+
+/**
+ * Allows the getting and saving of shared strings
+ */
+public interface SharedStringSource {
+    
+    /**
+     * Return the string at position <code>idx</idx> (0-based) in this source.
+     * 
+     * @param idx String position.
+     * @return The string, or null if not found.
+     */
+    public String getSharedStringAt(int idx);
+    
+    /**
+     * Store a string in this source.
+     * 
+     * @param s The string to store.
+     * @return The 0-based position of the newly added string.
+     */
+    public int putSharedString(String s);
+}



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