sc/source/core/data/column2.cxx | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-)
New commits: commit 0af30952982767543cddd0b1ce643cb8d5c253a2 Author: Kohei Yoshida <kohei.yosh...@collabora.com> Date: Fri Nov 11 17:59:48 2016 -0500 Dump the formula string here which is also useful. Change-Id: I604fbb41fc41319bbb17a5aef0994c8e0adc838a diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx index b013569..b3f12f9 100644 --- a/sc/source/core/data/column2.cxx +++ b/sc/source/core/data/column2.cxx @@ -46,6 +46,7 @@ #include "progress.hxx" #include "scmatrix.hxx" #include <rowheightcontext.hxx> +#include <tokenstringcontext.hxx> #include <editeng/eeitem.hxx> @@ -1568,6 +1569,10 @@ namespace { struct FormulaGroupDumper : std::unary_function<sc::CellStoreType::value_type, void> { + const ScDocument* mpDoc; + + FormulaGroupDumper( const ScDocument* pDoc ) : mpDoc(pDoc) {} + void operator() (const sc::CellStoreType::value_type& rNode) const { if (rNode.type != sc::element_type_formula) @@ -1597,6 +1602,7 @@ struct FormulaGroupDumper : std::unary_function<sc::CellStoreType::value_type, v SCROW nLen = pCell->GetSharedLength(); cout << " * group: start=" << pCell->aPos.Row() << ", length=" << nLen << endl; + printFormula(pCell); printResult(pCell); if (nLen > 1) @@ -1610,6 +1616,13 @@ struct FormulaGroupDumper : std::unary_function<sc::CellStoreType::value_type, v } } + void printFormula(const ScFormulaCell* pCell) const + { + sc::TokenStringContext aCxt(mpDoc, mpDoc->GetGrammar()); + OUString aFormula = pCell->GetCode()->CreateString(aCxt, pCell->aPos); + cout << " * formula: " << aFormula << endl; + } + void printResult(const ScFormulaCell* pCell) const { sc::FormulaResultValue aRes = pCell->GetResult(); @@ -1639,7 +1652,7 @@ struct FormulaGroupDumper : std::unary_function<sc::CellStoreType::value_type, v void ScColumn::DumpFormulaGroups() const { cout << "-- table: " << nTab << "; column: " << nCol << endl; - std::for_each(maCells.begin(), maCells.end(), FormulaGroupDumper()); + std::for_each(maCells.begin(), maCells.end(), FormulaGroupDumper(pDocument)); cout << "--" << endl; } #endif _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits