diff options
author | Eike Rathke <erack@redhat.com> | 2015-02-11 21:47:23 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2015-02-23 10:35:21 +0100 |
commit | 2f0c969bf89e11fbcfc16b5d52bfd3ef9548983f (patch) | |
tree | f391fa2572f6ea580e668a94ba453e9c0b7ecd75 /sc/source/core/tool/interpr4.cxx | |
parent | de0412a496454b23d0c65e1bb8f9d4badfd953d7 (diff) |
Resolves: tdf#39316 add matrix empty cells to ScInterpreter::QueryMatrixType()
(cherry picked from commit eccbc97c7c224269fe261b8924e7866c3758ec91)
add ScMatrix::IsEmptyResult() for tdf#39316 fix preparation
(cherry picked from commit cf3f1d8dfeb45249eb60a30dba3243fe9a4a65e5)
9f2a3e6fa9f4ef43df672661afef996269b90a7a
Change-Id: Ifa5d59e90afcfff66f2e8683fac2a9090ed615da
Reviewed-on: https://gerrit.libreoffice.org/14430
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
(cherry picked from commit 5b952ced5b2ae6151079206c3e397de653f0ced2)
Diffstat (limited to 'sc/source/core/tool/interpr4.cxx')
-rw-r--r-- | sc/source/core/tool/interpr4.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sc/source/core/tool/interpr4.cxx b/sc/source/core/tool/interpr4.cxx index 58bc0046148a..473f40d6381c 100644 --- a/sc/source/core/tool/interpr4.cxx +++ b/sc/source/core/tool/interpr4.cxx @@ -1879,6 +1879,16 @@ void ScInterpreter::QueryMatrixType(ScMatrixRef& xMat, short& rRetTypeExpr, sal_ PushTempToken( new ScMatrixFormulaCellToken(nCols, nRows, xMat, xRes.get())); rRetTypeExpr = NUMBERFORMAT_LOGICAL; } + else if ( xMat->IsEmptyResult( 0, 0)) + { // empty formula result + FormulaTokenRef xRes = new ScEmptyCellToken( true, true); // inherited, display empty + PushTempToken( new ScMatrixFormulaCellToken(nCols, nRows, xMat, xRes.get())); + } + else if ( xMat->IsEmpty( 0, 0)) + { // empty or empty cell + FormulaTokenRef xRes = new ScEmptyCellToken( false, true); // not inherited, display empty + PushTempToken( new ScMatrixFormulaCellToken(nCols, nRows, xMat, xRes.get())); + } else { svl::SharedString aStr( nMatVal.GetString()); |