org.apache.poi.ss.format
Class CellFormatPart

java.lang.Object
  extended by org.apache.poi.ss.format.CellFormatPart

public class CellFormatPart
extends java.lang.Object

Objects of this class represent a single part of a cell format expression. Each cell can have up to four of these for positive, zero, negative, and text values.

Each format part can contain a color, a condition, and will always contain a format specification. For example "[Red][>=10]#" has a color ([Red]), a condition (>=10) and a format specification (#).

This class also contains patterns for matching the subparts of format specification. These are used internally, but are made public in case other code has use for them.


Field Summary
static int COLOR_GROUP
          Within FORMAT_PAT, the group number for the matched color.
static java.util.regex.Pattern COLOR_PAT
          Pattern for the color part of a cell format part.
static int CONDITION_OPERATOR_GROUP
          Within FORMAT_PAT, the group number for the operator in the condition.
static java.util.regex.Pattern CONDITION_PAT
          Pattern for the condition part of a cell format part.
static int CONDITION_VALUE_GROUP
          Within FORMAT_PAT, the group number for the value in the condition.
static java.util.regex.Pattern CURRENCY_PAT
          Pattern for the currency symbol part of a cell format part
static java.util.regex.Pattern FORMAT_PAT
          Pattern for an entire cell single part.
static int SPECIFICATION_GROUP
          Within FORMAT_PAT, the group number for the format specification.
static java.util.regex.Pattern SPECIFICATION_PAT
          Pattern for the format specification part of a cell format part.
 
Constructor Summary
CellFormatPart(java.util.Locale locale, java.lang.String desc)
          Create an object to represent a format part.
CellFormatPart(java.lang.String desc)
          Create an object to represent a format part.
 
Method Summary
 boolean applies(java.lang.Object valueObject)
          Returns true if this format part applies to the given value.
 CellFormatResult apply(javax.swing.JLabel label, java.lang.Object value)
          Apply this format part to the given value, applying the result to the given label.
 CellFormatResult apply(java.lang.Object value)
          Apply this format part to the given value.
static java.lang.String group(java.util.regex.Matcher m, int g)
          Returns the string from the group, or "" if the group is null.
static java.lang.StringBuffer parseFormat(java.lang.String fdesc, CellFormatType type, org.apache.poi.ss.format.CellFormatPart.PartHandler partHandler)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

COLOR_PAT

public static final java.util.regex.Pattern COLOR_PAT
Pattern for the color part of a cell format part.


CONDITION_PAT

public static final java.util.regex.Pattern CONDITION_PAT
Pattern for the condition part of a cell format part.


SPECIFICATION_PAT

public static final java.util.regex.Pattern SPECIFICATION_PAT
Pattern for the format specification part of a cell format part.


CURRENCY_PAT

public static final java.util.regex.Pattern CURRENCY_PAT
Pattern for the currency symbol part of a cell format part


FORMAT_PAT

public static final java.util.regex.Pattern FORMAT_PAT
Pattern for an entire cell single part.


COLOR_GROUP

public static final int COLOR_GROUP
Within FORMAT_PAT, the group number for the matched color.


CONDITION_OPERATOR_GROUP

public static final int CONDITION_OPERATOR_GROUP
Within FORMAT_PAT, the group number for the operator in the condition.


CONDITION_VALUE_GROUP

public static final int CONDITION_VALUE_GROUP
Within FORMAT_PAT, the group number for the value in the condition.


SPECIFICATION_GROUP

public static final int SPECIFICATION_GROUP
Within FORMAT_PAT, the group number for the format specification.

Constructor Detail

CellFormatPart

public CellFormatPart(java.lang.String desc)
Create an object to represent a format part.

Parameters:
desc - The string to parse.

CellFormatPart

public CellFormatPart(java.util.Locale locale,
                      java.lang.String desc)
Create an object to represent a format part.

Parameters:
locale - The locale to use.
desc - The string to parse.
Method Detail

applies

public boolean applies(java.lang.Object valueObject)
Returns true if this format part applies to the given value. If the value is a number and this is part has a condition, returns true only if the number passes the condition. Otherwise, this always return true.

Parameters:
valueObject - The value to evaluate.
Returns:
true if this format part applies to the given value.

apply

public CellFormatResult apply(java.lang.Object value)
Apply this format part to the given value. This returns a CellFormatResult object with the results.

Parameters:
value - The value to apply this format part to.
Returns:
A CellFormatResult object containing the results of applying the format to the value.

apply

public CellFormatResult apply(javax.swing.JLabel label,
                              java.lang.Object value)
Apply this format part to the given value, applying the result to the given label.

Parameters:
label - The label
value - The value to apply this format part to.
Returns:
true if the

parseFormat

public static java.lang.StringBuffer parseFormat(java.lang.String fdesc,
                                                 CellFormatType type,
                                                 org.apache.poi.ss.format.CellFormatPart.PartHandler partHandler)

group

public static java.lang.String group(java.util.regex.Matcher m,
                                     int g)
Returns the string from the group, or "" if the group is null.

Parameters:
m - The matcher.
g - The group number.
Returns:
The group or "".

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object