diff options
author | Kohei Yoshida <kohei.yoshida@gmail.com> | 2013-05-03 15:46:16 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@gmail.com> | 2013-05-09 13:34:32 -0400 |
commit | 3c5cc7d56f6185ea0bf7593a0cd8e73232d97ddb (patch) | |
tree | 8f70ee2c11753cd3d420e7c403deab56d2467c90 /sc | |
parent | c86014f5c6340a97bcea600ae3bd31d5f54feebb (diff) |
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
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/core/data/column3.cxx | 15 |
1 files changed, 13 insertions, 2 deletions
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); + } } |