Package org.apache.poi.hssf.record
Class CFRuleBase
java.lang.Object
org.apache.poi.hssf.record.RecordBase
org.apache.poi.hssf.record.Record
org.apache.poi.hssf.record.StandardRecord
org.apache.poi.hssf.record.CFRuleBase
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
CFRule12Record
,CFRuleRecord
Conditional Formatting Rules. This can hold old-style rules
This is for the older-style Excel conditional formattings,
new-style (Excel 2007+) also make use of CFRule12Record
for their rules.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected BorderFormatting
protected FontFormatting
protected PatternFormatting
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
protected short
protected int
protected static final POILogger
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
protected
CFRuleBase
(byte conditionType, byte comparisonOperation) Creates new CFRuleRecordprotected
CFRuleBase
(byte conditionType, byte comparisonOperation, Ptg[] formula1, Ptg[] formula2) -
Method Summary
Modifier and TypeMethodDescriptionabstract CFRuleBase
clone()
boolean
boolean
boolean
boolean
boolean
protected void
copyTo
(CFRuleBase rec) byte
byte
protected int
protected Formula
protected Formula
protected static int
getFormulaSize
(Formula formula) int
get the option flagsPtg[]
get the stack of the 1st expression as a listPtg[]
get the stack of the 2nd expression as a listboolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
static Ptg[]
parseFormula
(String formula, HSSFSheet sheet) TODO - parse conditional format formulas properly i.e.protected int
protected void
void
void
setBorderFormatting
(BorderFormatting borderFormatting) void
setBottomBorderModified
(boolean modified) void
setBottomLeftTopRightBorderModified
(boolean modified) void
setComparisonOperation
(byte operation) protected void
setConditionType
(byte condition_type) void
setFontFormatting
(FontFormatting fontFormatting) protected void
setFormula1
(Formula formula1) protected void
setFormula2
(Formula formula2) void
setLeftBorderModified
(boolean modified) void
setParsedExpression1
(Ptg[] ptgs) void
setParsedExpression2
(Ptg[] ptgs) void
setPatternBackgroundColorModified
(boolean modified) void
setPatternColorModified
(boolean modified) void
setPatternFormatting
(PatternFormatting patternFormatting) void
setPatternStyleModified
(boolean modified) void
void
setRightBorderModified
(boolean modified) void
setTopBorderModified
(boolean modified) void
setTopLeftBottomRightBorderModified
(boolean modified) Methods inherited from class org.apache.poi.hssf.record.StandardRecord
getDataSize, getRecordSize, serialize, serialize
Methods inherited from class org.apache.poi.hssf.record.Record
cloneViaReserialise, getSid, serialize, toString
-
Field Details
-
logger
-
CONDITION_TYPE_CELL_VALUE_IS
public static final byte CONDITION_TYPE_CELL_VALUE_IS- See Also:
-
CONDITION_TYPE_FORMULA
public static final byte CONDITION_TYPE_FORMULA- See Also:
-
CONDITION_TYPE_COLOR_SCALE
public static final byte CONDITION_TYPE_COLOR_SCALE- See Also:
-
CONDITION_TYPE_DATA_BAR
public static final byte CONDITION_TYPE_DATA_BAR- See Also:
-
CONDITION_TYPE_FILTER
public static final byte CONDITION_TYPE_FILTER- See Also:
-
CONDITION_TYPE_ICON_SET
public static final byte CONDITION_TYPE_ICON_SET- See Also:
-
TEMPLATE_CELL_VALUE
public static final int TEMPLATE_CELL_VALUE- See Also:
-
TEMPLATE_FORMULA
public static final int TEMPLATE_FORMULA- See Also:
-
TEMPLATE_COLOR_SCALE_FORMATTING
public static final int TEMPLATE_COLOR_SCALE_FORMATTING- See Also:
-
TEMPLATE_DATA_BAR_FORMATTING
public static final int TEMPLATE_DATA_BAR_FORMATTING- See Also:
-
TEMPLATE_ICON_SET_FORMATTING
public static final int TEMPLATE_ICON_SET_FORMATTING- See Also:
-
TEMPLATE_FILTER
public static final int TEMPLATE_FILTER- See Also:
-
TEMPLATE_UNIQUE_VALUES
public static final int TEMPLATE_UNIQUE_VALUES- See Also:
-
TEMPLATE_CONTAINS_TEXT
public static final int TEMPLATE_CONTAINS_TEXT- See Also:
-
TEMPLATE_CONTAINS_BLANKS
public static final int TEMPLATE_CONTAINS_BLANKS- See Also:
-
TEMPLATE_CONTAINS_NO_BLANKS
public static final int TEMPLATE_CONTAINS_NO_BLANKS- See Also:
-
TEMPLATE_CONTAINS_ERRORS
public static final int TEMPLATE_CONTAINS_ERRORS- See Also:
-
TEMPLATE_CONTAINS_NO_ERRORS
public static final int TEMPLATE_CONTAINS_NO_ERRORS- See Also:
-
TEMPLATE_TODAY
public static final int TEMPLATE_TODAY- See Also:
-
TEMPLATE_TOMORROW
public static final int TEMPLATE_TOMORROW- See Also:
-
TEMPLATE_YESTERDAY
public static final int TEMPLATE_YESTERDAY- See Also:
-
TEMPLATE_LAST_7_DAYS
public static final int TEMPLATE_LAST_7_DAYS- See Also:
-
TEMPLATE_LAST_MONTH
public static final int TEMPLATE_LAST_MONTH- See Also:
-
TEMPLATE_NEXT_MONTH
public static final int TEMPLATE_NEXT_MONTH- See Also:
-
TEMPLATE_THIS_WEEK
public static final int TEMPLATE_THIS_WEEK- See Also:
-
TEMPLATE_NEXT_WEEK
public static final int TEMPLATE_NEXT_WEEK- See Also:
-
TEMPLATE_LAST_WEEK
public static final int TEMPLATE_LAST_WEEK- See Also:
-
TEMPLATE_THIS_MONTH
public static final int TEMPLATE_THIS_MONTH- See Also:
-
TEMPLATE_ABOVE_AVERAGE
public static final int TEMPLATE_ABOVE_AVERAGE- See Also:
-
TEMPLATE_BELOW_AVERAGE
public static final int TEMPLATE_BELOW_AVERAGE- See Also:
-
TEMPLATE_DUPLICATE_VALUES
public static final int TEMPLATE_DUPLICATE_VALUES- See Also:
-
TEMPLATE_ABOVE_OR_EQUAL_TO_AVERAGE
public static final int TEMPLATE_ABOVE_OR_EQUAL_TO_AVERAGE- See Also:
-
TEMPLATE_BELOW_OR_EQUAL_TO_AVERAGE
public static final int TEMPLATE_BELOW_OR_EQUAL_TO_AVERAGE- See Also:
-
formatting_options
protected int formatting_options -
formatting_not_used
protected short formatting_not_used -
_fontFormatting
-
_borderFormatting
-
_patternFormatting
-
-
Constructor Details
-
CFRuleBase
protected CFRuleBase(byte conditionType, byte comparisonOperation) Creates new CFRuleRecord- Parameters:
conditionType
- the condition typecomparisonOperation
- the comparison operation
-
CFRuleBase
-
CFRuleBase
protected CFRuleBase()
-
-
Method Details
-
readFormatOptions
-
getConditionType
public byte getConditionType() -
setConditionType
protected void setConditionType(byte condition_type) -
setComparisonOperation
public void setComparisonOperation(byte operation) -
getComparisonOperation
public byte getComparisonOperation() -
containsFontFormattingBlock
public boolean containsFontFormattingBlock() -
setFontFormatting
-
getFontFormatting
-
containsAlignFormattingBlock
public boolean containsAlignFormattingBlock() -
setAlignFormattingUnchanged
public void setAlignFormattingUnchanged() -
containsBorderFormattingBlock
public boolean containsBorderFormattingBlock() -
setBorderFormatting
-
getBorderFormatting
-
containsPatternFormattingBlock
public boolean containsPatternFormattingBlock() -
setPatternFormatting
-
getPatternFormatting
-
containsProtectionFormattingBlock
public boolean containsProtectionFormattingBlock() -
setProtectionFormattingUnchanged
public void setProtectionFormattingUnchanged() -
getOptions
public int getOptions()get the option flags- Returns:
- bit mask
-
isLeftBorderModified
public boolean isLeftBorderModified() -
setLeftBorderModified
public void setLeftBorderModified(boolean modified) -
isRightBorderModified
public boolean isRightBorderModified() -
setRightBorderModified
public void setRightBorderModified(boolean modified) -
isTopBorderModified
public boolean isTopBorderModified() -
setTopBorderModified
public void setTopBorderModified(boolean modified) -
isBottomBorderModified
public boolean isBottomBorderModified() -
setBottomBorderModified
public void setBottomBorderModified(boolean modified) -
isTopLeftBottomRightBorderModified
public boolean isTopLeftBottomRightBorderModified() -
setTopLeftBottomRightBorderModified
public void setTopLeftBottomRightBorderModified(boolean modified) -
isBottomLeftTopRightBorderModified
public boolean isBottomLeftTopRightBorderModified() -
setBottomLeftTopRightBorderModified
public void setBottomLeftTopRightBorderModified(boolean modified) -
isPatternStyleModified
public boolean isPatternStyleModified() -
setPatternStyleModified
public void setPatternStyleModified(boolean modified) -
isPatternColorModified
public boolean isPatternColorModified() -
setPatternColorModified
public void setPatternColorModified(boolean modified) -
isPatternBackgroundColorModified
public boolean isPatternBackgroundColorModified() -
setPatternBackgroundColorModified
public void setPatternBackgroundColorModified(boolean modified) -
getFormattingBlockSize
protected int getFormattingBlockSize() -
serializeFormattingBlock
-
getParsedExpression1
get the stack of the 1st expression as a list- Returns:
- list of tokens (casts stack to a list and returns it!) this method can return null is we are unable to create Ptgs from existing excel file callers should check for null!
-
setParsedExpression1
-
getFormula1
-
setFormula1
-
getParsedExpression2
get the stack of the 2nd expression as a list- Returns:
- array of
Ptg
s, possiblynull
-
setParsedExpression2
-
getFormula2
-
setFormula2
-
getFormulaSize
- Parameters:
formula
- must not benull
- Returns:
- encoded size of the formula tokens (does not include 2 bytes for ushort length)
-
parseFormula
TODO - parse conditional format formulas properly i.e. produce tRefN and tAreaN instead of tRef and tArea this call will produce the wrong results if the formula contains any cell references One approach might be to apply the inverse of SharedFormulaRecord.convertSharedFormulas(Stack, int, int) Note - two extra parameters (rowIx & colIx) will be required. They probably come from one of the Region objects.- Parameters:
formula
- The formula to parse, excluding the leading equals sign.sheet
- The sheet that the formula is on.- Returns:
null
if formula was null.
-
copyTo
-
clone
-