Class OdfTableCell
- java.lang.Object
-
- org.odftoolkit.odfdom.doc.table.OdfTableCell
-
public class OdfTableCell extends Object
OdfTableCell represents table cell feature in ODF document.OdfTable provides methods to get/set/modify the cell content and cell properties.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description BooleangetBooleanValue()Get the cell boolean value as Boolean object.ColorgetCellBackgroundColor()Get the background color of this cell.StringgetCellBackgroundColorString()Get the background color string of this cell.protected OdfStylegetCellStyleElement()protected OdfStylegetCellStyleElementForWrite()intgetColumnIndex()Get the index of the table column which contains this cell.StringgetCurrencyCode()Return the currency code of this cell, for example, "USD", "EUR", "CNY", and etc.StringgetCurrencySymbol()Get the symbol of currency.DoublegetCurrencyValue()Get the currency value of this cell as Double object.CalendargetDateValue()Get the cell date value as Calendar.StringgetDisplayText()Get the text displayed in this cell.DoublegetDoubleValue()Get the double value of this cell as Double object.StringgetFormatString()Get the format string of the cell.StringgetFormula()Get the formula string of the cell.StringgetHorizontalAlignment()Return the horizontal alignment setting of this cell.static OdfTableCellgetInstance(TableTableCellElementBase cellElement)Get theOdfTableCellinstance from theTableTableCellElementBaseinstance.TableTableCellElementBasegetOdfElement()Get the instance ofTableTableCellElementBasewhich represents this cell.OdfTableCellgetOwnerTableCell()Get the cell that covers this cell.DoublegetPercentageValue()Get the cell percentage value as Double object.intgetRowIndex()Get the index of the table row which contains this cell.StringgetStringValue()Get the cell value as a string.StringgetStyleName()Get the style name of this cell.OdfTablegetTable()Get an instance of table feature which contains this cell.OdfTableColumngetTableColumn()Get the instance of table column feature which contains this cell.OdfTableRowgetTableRow()Get the instance of table row feature which contains this cell.CalendargetTimeValue()Get the cell value asjava.util.Calendar.StringgetValueType()Get the value type of this cell.StringgetVerticalAlignment()Return the vertical alignment setting of this cell.booleanisTextWrapped()Return the wrap option of this cell.voidremoveContent()Remove all the content of the cell.voidremoveTextContent()Remove all the text content of cell.voidsetBooleanValue(Boolean value)Set the cell value as a boolean and set the value type to be boolean.voidsetCellBackgroundColor(String cellBackgroundColor)Set the background color of this cell using string.voidsetCellBackgroundColor(Color cellBackgroundColor)Set the background color of this cell.voidsetCurrencyCode(String currency)Set the currency code of this cell, for example, "USD", "EUR", "CNY", and etc.voidsetCurrencyFormat(String currencySymbol, String format)Set the currency symbol and overall format of a currency cell.voidsetCurrencyValue(Double value, String currency)Set the value and currency of the cell, and set the value type as "currency".voidsetDateValue(Calendar date)Set the cell value as a date, and set the value type to be "date".voidsetDisplayText(String content)Set the text displayed in this cell.voidsetDisplayText(String content, String stylename)Set the text displayed in this cell, with a specified style name.voidsetDoubleValue(Double value)Set the cell value as a double and set the value type to be "float".voidsetFormatString(String formatStr)Set the format string of the cell.voidsetFormula(String formula)Set a formula to the cell.voidsetHorizontalAlignment(String horizontalAlignment)Set the horizontal alignment setting of this cell.voidsetPercentageValue(Double value)Set the cell value as a percentage value and set the value type as percentage too.voidsetStringValue(String str)Set the cell value as a string, and set the value type to be string.voidsetTextWrapped(boolean isTextWrapped)Set the wrap option of this cell.voidsetTimeValue(Calendar time)Set the cell value as a time and set the value type to be "time" too.voidsetValueType(String type)Set the value type of this cell.voidsetVerticalAlignment(String verticalAlignment)Set the vertical alignment setting of this cell.
-
-
-
Method Detail
-
getInstance
public static OdfTableCell getInstance(TableTableCellElementBase cellElement)
Get theOdfTableCellinstance from theTableTableCellElementBaseinstance.Each
TableTableCellElementBaseinstance has a one-to-one relationship to the aOdfTableCellinstance.- Parameters:
cellElement- the cell element that need to get the correspondingOdfTableCellinstance- Returns:
- the
OdfTableCellinstance that represents a specified cell element
-
getHorizontalAlignment
public String getHorizontalAlignment()
Return the horizontal alignment setting of this cell.The returned value can be "center", "end", "justify", "left", "right", or "start". If no horizontal alignment is set, null will be returned.
- Returns:
- the horizontal alignment setting.
-
setHorizontalAlignment
public void setHorizontalAlignment(String horizontalAlignment)
Set the horizontal alignment setting of this cell.The parameter can be "center", "end", "justify", "left", "right", or "start". Actually, "left" will be interpreted as "start", while "right" will be interpreted as "end". If argument is null, the explicit horizontal alignment setting is removed.
- Parameters:
horizontalAlignment- the horizontal alignment setting.
-
getVerticalAlignment
public String getVerticalAlignment()
Return the vertical alignment setting of this cell.The returned value can be "auto", "automatic", "baseline", "bottom", "middle", or "top".
- Returns:
- the vertical alignment setting of this cell.
-
setVerticalAlignment
public void setVerticalAlignment(String verticalAlignment)
Set the vertical alignment setting of this cell.The parameter can be "auto", "automatic", "baseline", "bottom", "middle", or "top". If argument is null, the explicit vertical alignment setting is removed.
- Parameters:
verticalAlignment- the vertical alignment setting.
-
isTextWrapped
public boolean isTextWrapped()
Return the wrap option of this cell.- Returns:
- true if the cell content can be wrapped;
false if the cell content cannot be wrapped.
-
setTextWrapped
public void setTextWrapped(boolean isTextWrapped)
Set the wrap option of this cell.- Parameters:
isTextWrapped- whether the cell content can be wrapped or not
-
getRowIndex
public int getRowIndex()
Get the index of the table row which contains this cell.- Returns:
- the index of the row containing this cell
-
getTable
public OdfTable getTable()
Get an instance of table feature which contains this cell.- Returns:
- the table containing this cell
-
getColumnIndex
public int getColumnIndex()
Get the index of the table column which contains this cell.- Returns:
- the index of the column containing this cell
-
getTableColumn
public OdfTableColumn getTableColumn()
Get the instance of table column feature which contains this cell.- Returns:
- the instance of table column feature which contains the cell.
-
getTableRow
public OdfTableRow getTableRow()
Get the instance of table row feature which contains this cell.- Returns:
- the instance of table row feature which contains the cell.
-
getOwnerTableCell
public OdfTableCell getOwnerTableCell()
Get the cell that covers this cell.If the cell is a covered cell, the owner cell will be returned; if the cell is a real cell , the cell itself will be returned.
- Returns:
- the cell that covers the current cell
-
getOdfElement
public TableTableCellElementBase getOdfElement()
Get the instance ofTableTableCellElementBasewhich represents this cell.- Returns:
- the instance of
TableTableCellElementBase
-
getCurrencyCode
public String getCurrencyCode()
Return the currency code of this cell, for example, "USD", "EUR", "CNY", and etc.If the value type is not "currency", an IllegalArgumentException will be thrown.
- Returns:
- the currency code
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown if the value type is not "currency".
-
setCurrencyCode
public void setCurrencyCode(String currency)
Set the currency code of this cell, for example, "USD", "EUR", "CNY", and etc.- Parameters:
currency- the currency code that need to be set.- Throws:
IllegalArgumentException- If inputcurrencyis null, an IllegalArgumentException will be thrown.
-
setValueType
public void setValueType(String type)
Set the value type of this cell. The parameter can be "boolean", "currency", "date", "float", "percentage", "string" or "time".If the parameter
typeis not a valid cell type, an IllegalArgumentException will be thrown.- Parameters:
type- the type that need to be set If input type is null, an IllegalArgumentException will be thrown.
-
getValueType
public String getValueType()
Get the value type of this cell. The returned value can be "boolean", "currency", "date", "float", "percentage", "string" or "time". If no value type is set, null will be returned.- Returns:
- the type of the cell
-
getDoubleValue
public Double getDoubleValue()
Get the double value of this cell as Double object.Throw IllegalArgumentException if the cell type is not "float".
- Returns:
- the double value of this cell as a Double object. If the cell value is empty, null will
be returned.
An IllegalArgumentException will be thrown if the cell type is not "float".
-
getCurrencyValue
public Double getCurrencyValue()
Get the currency value of this cell as Double object.Throw IllegalArgumentException if the cell type is not "currency".
- Returns:
- the currency value of this cell as a Double object. If the cell value is empty, null will be returned.
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown if the cell type is not "currency".
-
getCurrencySymbol
public String getCurrencySymbol()
Get the symbol of currency.- Returns:
- the currency symbol
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown if the value type is not "currency".
-
setCurrencyValue
public void setCurrencyValue(Double value, String currency)
Set the value and currency of the cell, and set the value type as "currency". Ifvalue is null, the cell value will be removed.- Parameters:
value- the value that will be setcurrency- the currency that will be set.- Throws:
IllegalArgumentException- If input currency is null, an IllegalArgumentException will be thrown.
-
getPercentageValue
public Double getPercentageValue()
Get the cell percentage value as Double object.Throw IllegalArgumentException if the cell type is not "percentage".
- Returns:
- the percentage value of this cell as a Double object. If the cell value is empty, null will be returned.
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown if the cell type is not "percentage".
-
setPercentageValue
public void setPercentageValue(Double value)
Set the cell value as a percentage value and set the value type as percentage too. Ifvalue is null, the cell value will be removed.- Parameters:
value- the value that will be set
-
getDisplayText
public String getDisplayText()
Get the text displayed in this cell.- Returns:
- the text displayed in this cell
-
setDisplayText
public void setDisplayText(String content)
Set the text displayed in this cell.Please note the displayed text in ODF viewer might be different with the value set by this method, because the displayed text in ODF viewer is calculated and set by editor.
- Parameters:
content- the displayed text. If content is null, it will display the empty string instead.
-
setDisplayText
public void setDisplayText(String content, String stylename)
Set the text displayed in this cell, with a specified style name.Please note the displayed text in ODF viewer might be different with the value set by this method, because the displayed text in ODF viewer are calculated and set by editor.
- Parameters:
content- the displayed text. If content is null, it will display the empty string instead.stylename- the style name. If stylename is null, the content will use the default paragraph style.
-
setDoubleValue
public void setDoubleValue(Double value)
Set the cell value as a double and set the value type to be "float".- Parameters:
value- the double value that will be set. Ifvalue is null, the cell value will be removed.
-
getBooleanValue
public Boolean getBooleanValue()
Get the cell boolean value as Boolean object.Throw IllegalArgumentException if the cell type is not "boolean".
- Returns:
- the Boolean value of cell. If the cell value is empty, null will be returned.
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown if the cell type is not "boolean".
-
setBooleanValue
public void setBooleanValue(Boolean value)
Set the cell value as a boolean and set the value type to be boolean. Ifvalue is null, the cell value will be removed.- Parameters:
value- the value of boolean type
-
getDateValue
public Calendar getDateValue()
Get the cell date value as Calendar.Throw IllegalArgumentException if the cell type is not "date".
- Returns:
- the Calendar value of cell
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown, if the cell type is not "date".
-
setDateValue
public void setDateValue(Calendar date)
Set the cell value as a date, and set the value type to be "date".- Parameters:
date- the value ofjava.util.Calendartype.
-
setStringValue
public void setStringValue(String str)
Set the cell value as a string, and set the value type to be string.- Parameters:
str- the value of string type. If input string is null, an empty string will be set.
-
getStringValue
public String getStringValue()
Get the cell value as a string.If the cell type is not string, the display text will be returned.
- Returns:
- the string value of this cell, or the display text
-
getTimeValue
public Calendar getTimeValue()
Get the cell value asjava.util.Calendar.Throw exception if the cell type is not "time".
- Returns:
- the Calendar value of cell
- Throws:
IllegalArgumentException- an IllegalArgumentException will be thrown if the cell type is not time.
-
setTimeValue
public void setTimeValue(Calendar time)
Set the cell value as a time and set the value type to be "time" too.- Parameters:
time- the value ofjava.util.Calendartype.- Throws:
IllegalArgumentException- If input time is null, an IllegalArgumentException exception will be thrown.
-
getCellBackgroundColor
public Color getCellBackgroundColor()
Get the background color of this cell.If no background color is set, default background color "#FFFFFF" will be returned.
- Returns:
- the background color of this cell
-
getCellBackgroundColorString
public String getCellBackgroundColorString()
Get the background color string of this cell.If no background color is set, default background color "#FFFFFF" will be returned.
- Returns:
- the background color of this cell
-
setCellBackgroundColor
public void setCellBackgroundColor(Color cellBackgroundColor)
Set the background color of this cell.- Parameters:
cellBackgroundColor- the background color that need to set. IfcellBackgroundColoris null, default background colorColor.WHITEwill be set.
-
setCellBackgroundColor
public void setCellBackgroundColor(String cellBackgroundColor)
Set the background color of this cell using string. The string must be a valid argument for constructing.org.odftoolkit.odfdom.type.Color- Parameters:
cellBackgroundColor- the background color that need to set. If cellBackgroundColor is null, default background color #FFFFFF will be set.- See Also:
Color
-
getStyleName
public String getStyleName()
Get the style name of this cell.- Returns:
- the name of the style
-
setFormula
public void setFormula(String formula)
Set a formula to the cell.Please note, the parameter
formulawill not be checked and interpreted; the cell value will not be calculated. It's just simply set as a formula attribute. See @table:formula- Parameters:
formula- the formula that need to be set.- Throws:
IllegalArgumentException- if formula is null, an IllegalArgumentException will be thrown.
-
getFormula
public String getFormula()
Get the formula string of the cell.- Returns:
- the formula representation of the cell
If the cell does not contain a formula, null will be returned.
-
setCurrencyFormat
public void setCurrencyFormat(String currencySymbol, String format)
Set the currency symbol and overall format of a currency cell.Please note the overall format includes the symbol character, for example: $#,##0.00.
This function only works for currency.
- Parameters:
currencySymbol- the currency symbolformat- overall format- Throws:
IllegalArgumentException- if input currencySymbol or format is null, an IllegalArgumentException will be thrown.
-
setFormatString
public void setFormatString(String formatStr)
Set the format string of the cell.This function only works for float, date, time and percentage, otherwise an
IllegalArgumentExceptionwill be thrown.For value type float and percentage, the
formatStrmust follow the encoding rule of. For value type date and time, thejava.text.DecimalFormatformatStrmust follow the encoding rule of.java.text.SimpleDateFormatRefer to
to set the format of currency.setCurrencyFormatIf the cell value type is not set, the method will try to give it a value type, according to common ordination. The adapt order is: percentage-> time-> date-> float.
The adapt result may be inaccurate, so you'd better set value type before call this method. If adaptive failed, anValueType Distinguish Symbol Distinguish Priority percentage % 1 time H, k, m, s, S 2 date y, M, w, W, D, d, F, E, K, h 3 float #, 0 4 UnsupportedOperationExceptionwill be thrown.- Parameters:
formatStr- the cell need be formatted as this specified format string.- Throws:
IllegalArgumentException- ifformatStris null or the cell value type is supported.UnsupportedOperationException- if the adaptive failed, when cell value type is not set.- See Also:
SimpleDateFormat,DecimalFormat
-
getCellStyleElement
protected OdfStyle getCellStyleElement()
-
getCellStyleElementForWrite
protected OdfStyle getCellStyleElementForWrite()
-
getFormatString
public String getFormatString()
Get the format string of the cell.- Returns:
- the format string of the cell
-
removeTextContent
public void removeTextContent()
Remove all the text content of cell.
-
removeContent
public void removeContent()
Remove all the content of the cell.
-
-