[GSOC] Fix for performance loss due to recalc of volatile cells
Daniel Bankston
daniel.dev.libreoffice at gmail.com
Fri Jul 13 12:14:02 PDT 2012
On 07/13/2012 11:14 AM, Eike Rathke wrote:
> So, after import, is a complete matrix already set as a result when
> SetMatColsRows() is called? And if so, how? Or are only individual
> results set at the cells? In which case setting the formula cell's
> matrix dimension indeed should overwrite the result of the top left cell
> until that is interpreted.
Hi, Eike,
During import when the matrix formula cell is encountered,
ScMyTables::AddMatrixRange->ScDocument::InsertMatrixFormula calls
ScFormulaCell::SetMatColsRows then (InsertMatrixFormula) sets the matrix
formula cell (top left) and then the matrix reference cells.
http://opengrok.libreoffice.org/xref/core/sc/source/core/data/documen4.cxx#121
. After this, the top left matrix formula result is set with
ScFormulaCell::SetHybridString or SetHybridDouble. As the matrix
reference cells are encountered during import, their result is also set
with ScFormulaCell::SetHybridString or SetHybridDouble.
--Daniel
More information about the LibreOffice
mailing list