From 3c5cc7d56f6185ea0bf7593a0cd8e73232d97ddb Mon Sep 17 00:00:00 2001 From: Kohei Yoshida Date: Fri, 3 May 2013 15:46:16 -0400 Subject: Broadcast change on cell deletion. We don't broadcast in DeleteRange() anymore. The callers of DeleteRange() is now responsible for broadcasting the changes. Change-Id: I515a4237dc8f56d0f65f96184b4fed99a263e4c9 --- sc/source/core/data/column3.cxx | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'sc') diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx index 5084c3ef292e..dd2205135936 100644 --- a/sc/source/core/data/column3.cxx +++ b/sc/source/core/data/column3.cxx @@ -472,8 +472,19 @@ void ScColumn::DeleteArea(SCROW nStartRow, SCROW nEndRow, sal_uInt16 nDelFlag) } // Delete attributes just now - if ((nDelFlag & IDF_ATTRIB) == IDF_ATTRIB) pAttrArray->DeleteArea( nStartRow, nEndRow ); - else if ((nDelFlag & IDF_ATTRIB) != 0) pAttrArray->DeleteHardAttr( nStartRow, nEndRow ); + if ((nDelFlag & IDF_ATTRIB) == IDF_ATTRIB) + pAttrArray->DeleteArea( nStartRow, nEndRow ); + else if ((nDelFlag & IDF_ATTRIB) != 0) + pAttrArray->DeleteHardAttr( nStartRow, nEndRow ); + + // Broadcast the changes. + ScHint aHint(SC_HINT_DATACHANGED, ScAddress(nCol, 0, nTab), NULL); + for (SCROW i = nStartRow; i <= nEndRow; ++i) + { + aHint.GetAddress().SetRow(i); + aHint.SetBroadcaster(GetBroadcaster(i)); + pDocument->Broadcast(aHint); + } } -- cgit