public void beforeCalculate(int sheetIndex, int rowIndex, int colIndex)
Implement this method to do business before calculating one cell.
Parameters:
sheetIndex - Index of the sheet that the cell belongs to.
rowIndex - Row index of the cell
colIndex - Column index of the cell
afterCalculate
public void afterCalculate(int sheetIndex, int rowIndex, int colIndex)
Implement this method to do business after one cell has been calculated.
Parameters:
sheetIndex - Index of the sheet that the cell belongs to.
rowIndex - Row index of the cell
colIndex - Column index of the cell
onCircular
public boolean onCircular(java.util.Iterator circularCellsData)
Implement this method to do business when calculating formulas with circular references.
In the implementation user may also set the expected value as calculated result
for part/all of those cells so the formula engine will not calculate them recursively.
Parameters:
circularCellsData - IEnumerator with CalculationCell items representing cells that
depend on circular references.
Returns:
Whether the formula engine needs to calculate those cells in circular after this call.
True to let the formula engine continue to do calculation for them.
False to let the formula engine just mark those cells as Calculated.