support normal mark in deletion code
Change-Id: I8fd3ce2c180097546c21399d00337c619c880485
Reviewed-on: https://gerrit.libreoffice.org/36294
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx
index c8a450e..1f081ca 100644
--- a/sc/source/core/data/column.cxx
+++ b/sc/source/core/data/column.cxx
@@ -469,11 +469,23 @@ void ScColumn::ClearSelectionItems( const sal_uInt16* pWhich,const ScMarkData& r
SCROW nTop;
SCROW nBottom;
if ( pAttrArray && rMark.IsMultiMarked() )
if (pAttrArray)
{
ScMultiSelIter aMultiIter( rMark.GetMultiSelData(), nCol );
while (aMultiIter.Next( nTop, nBottom ))
pAttrArray->ClearItems(nTop, nBottom, pWhich);
if (rMark.IsMultiMarked() )
{
ScMultiSelIter aMultiIter( rMark.GetMultiSelData(), nCol );
while (aMultiIter.Next( nTop, nBottom ))
pAttrArray->ClearItems(nTop, nBottom, pWhich);
}
else if (rMark.IsMarked())
{
ScRange aRange;
rMark.GetMarkArea(aRange);
if (aRange.aStart.Col() <= nCol && nCol <= aRange.aEnd.Col())
{
pAttrArray->ClearItems(aRange.aStart.Row(), aRange.aEnd.Row(), pWhich);
}
}
}
}