[Libreoffice-commits] core.git: sc/inc sc/source

Arul Michael arul71.m at gmail.com
Thu May 11 23:01:37 UTC 2017


 sc/inc/column.hxx               |    1 +
 sc/source/core/data/column3.cxx |   10 ++++++++++
 sc/source/core/data/table5.cxx  |    4 ++++
 3 files changed, 15 insertions(+)

New commits:
commit 970b431f1a7b6b96c4c9536657ce4fe9d8f5b585
Author: Arul Michael <arul71.m at gmail.com>
Date:   Thu May 11 17:52:40 2017 +0530

    tdf#93171 Subtotal function with function indexes don't update
    
    Calling InerpretTail during Hide rows by SfxHintId::ScDataChanged
    broadcast
    
    Change-Id: Ie78170bb6d49933a49d828a18637cb410796dc06
    Reviewed-on: https://gerrit.libreoffice.org/37509
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Eike Rathke <erack at redhat.com>
    Tested-by: Eike Rathke <erack at redhat.com>

diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index 564b6ff8114a..e163a1e295a1 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -588,6 +588,7 @@ public:
 
     void Broadcast( SCROW nRow );
     void BroadcastCells( const std::vector<SCROW>& rRows, SfxHintId nHint );
+    void BroadcastRows( SCROW nStartRow, SCROW nEndRow );
 
     // cell notes
     ScPostIt* GetCellNote( SCROW nRow );
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx
index c0a6e2923d38..97759267945d 100644
--- a/sc/source/core/data/column3.cxx
+++ b/sc/source/core/data/column3.cxx
@@ -88,6 +88,16 @@ void ScColumn::BroadcastCells( const std::vector<SCROW>& rRows, SfxHintId 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, SfxHintId::ScDataChanged);
+}
+
+
 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 d0d26d2855d9..9342a7401a06 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;


More information about the Libreoffice-commits mailing list