Class CFRecordsAggregate

  • All Implemented Interfaces:
    GenericRecord

    public final class CFRecordsAggregate
    extends RecordAggregate
    implements GenericRecord

    CFRecordsAggregate - aggregates Conditional Formatting records CFHeaderRecord and number of up CFRuleRecord records together to simplify access to them.

    Note that Excel versions before 2007 can only cope with a maximum of 3 Conditional Formatting rules per sheet. Excel 2007 or newer can cope with unlimited numbers, as can Apache OpenOffice. This is an Excel limitation, not a file format one.

    • Method Detail

      • createCFAggregate

        public static CFRecordsAggregate createCFAggregate​(RecordStream rs)
        Create CFRecordsAggregate from a list of CF Records
        Parameters:
        rs - - the stream to read from
        Returns:
        CFRecordsAggregate object
      • cloneCFAggregate

        public CFRecordsAggregate cloneCFAggregate()
        Create a deep clone of the record
        Returns:
        A new object with the same values as this record
      • getHeader

        public CFHeaderBase getHeader()
        Returns:
        the header. Never null.
      • getRule

        public CFRuleBase getRule​(int idx)
      • setRule

        public void setRule​(int idx,
                            CFRuleBase r)
      • getNumberOfRules

        public int getNumberOfRules()
      • toString

        public String toString()
        String representation of CFRecordsAggregate
        Overrides:
        toString in class Object
      • visitContainedRecords

        public void visitContainedRecords​(RecordAggregate.RecordVisitor rv)
        Description copied from class: RecordAggregate
        Visit each of the atomic BIFF records contained in this RecordAggregate in the order that they should be written to file. Implementors may or may not return the actual Records being used to manage POI's internal implementation. Callers should not assume either way, and therefore only attempt to modify those Records after cloning
        Specified by:
        visitContainedRecords in class RecordAggregate
        Parameters:
        rv - The visitor to use for callbacks while walking this object
      • updateFormulasAfterCellShift

        public boolean updateFormulasAfterCellShift​(FormulaShifter shifter,
                                                    int currentExternSheetIx)
        Parameters:
        shifter - The FormulaShifter to use
        currentExternSheetIx - The index for extern sheets
        Returns:
        false if this whole CFHeaderRecord / CFRuleRecords should be deleted