diff options
author | Arul Michael <arul71.m@gmail.com> | 2017-05-11 17:52:40 +0530 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2017-05-16 10:16:36 +0200 |
commit | 2405f5389a7619caf0f783c72cb7fdda527e3bad (patch) | |
tree | 5ac74f919dcc4cbb254dde19e37dbeb6ec7afb56 /sc/source | |
parent | e19336c7cb806b76488b0522c52519601635061a (diff) |
tdf#93171 Subtotal function with function indexes don't update
Calling InerpretTail during Hide rows by SfxHintId::ScDataChanged
broadcast
Reviewed-on: https://gerrit.libreoffice.org/37509
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
(cherry picked from commit 970b431f1a7b6b96c4c9536657ce4fe9d8f5b585)
Backported.
Conflicts:
sc/inc/column.hxx
Change-Id: Ie78170bb6d49933a49d828a18637cb410796dc06
Reviewed-on: https://gerrit.libreoffice.org/37522
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins <ci@libreoffice.org>
(cherry picked from commit 318b6b8ea87cba41995436bbc44818a068b35b6d)
Diffstat (limited to 'sc/source')
-rw-r--r-- | sc/source/core/data/column3.cxx | 10 | ||||
-rw-r--r-- | sc/source/core/data/table5.cxx | 4 |
2 files changed, 14 insertions, 0 deletions
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx index 55a2b36936f8..156afa94e687 100644 --- a/sc/source/core/data/column3.cxx +++ b/sc/source/core/data/column3.cxx @@ -90,6 +90,16 @@ void ScColumn::BroadcastCells( const std::vector<SCROW>& rRows, sal_uInt32 nHint } } +void ScColumn::BroadcastRows( SCROW nStartRow, SCROW nEndRow ) +{ + sc::SingleColumnSpanSet aSpanSet; + aSpanSet.scan(*this, nStartRow, nEndRow); + std::vector<SCROW> aRows; + aSpanSet.getRows(aRows); + BroadcastCells(aRows, SC_HINT_DATACHANGED); +} + + struct DirtyCellInterpreter { void operator() (size_t, ScFormulaCell* p) diff --git a/sc/source/core/data/table5.cxx b/sc/source/core/data/table5.cxx index 3ac1d04d4fcb..ccbbeb22a167 100644 --- a/sc/source/core/data/table5.cxx +++ b/sc/source/core/data/table5.cxx @@ -593,6 +593,10 @@ bool ScTable::SetRowHidden(SCROW nStartRow, SCROW nEndRow, bool bHidden) { if (IsStreamValid()) SetStreamValid(false); + for (SCCOL i = 0; i < aCol.size(); i++) + { + aCol[i].BroadcastRows(nStartRow, nEndRow); + } } return bChanged; |