[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - sc/inc sc/source
Markus Mohrhard
markus.mohrhard at collabora.co.uk
Mon Jan 12 08:11:59 PST 2015
sc/inc/column.hxx | 1 +
sc/source/core/data/cellvalue.cxx | 4 ++--
sc/source/core/data/column3.cxx | 13 ++++++++++++-
3 files changed, 15 insertions(+), 3 deletions(-)
New commits:
commit aa6e3cbcdc8bd4190bec9afb17357fdd785a6183
Author: Markus Mohrhard <markus.mohrhard at collabora.co.uk>
Date: Sat Jan 10 13:16:20 2015 +0100
only delete cell content for CELLTYPE_NONE, fdo#88200
Change-Id: I43463b56cabfea4c9ee2b98445f7fb522221197d
Reviewed-on: https://gerrit.libreoffice.org/13843
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 dee712f..539c916 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -186,6 +186,7 @@ public:
const sc::CellTextAttr* GetCellTextAttr( sc::ColumnBlockConstPosition& rBlockPos, SCROW nRow ) const;
void Delete( SCROW nRow );
+ void DeleteContent( SCROW nRow, bool bBroadcast = true );
void FreeAll();
void FreeNotes();
void Swap( ScColumn& rOther, SCROW nRow1, SCROW nRow2, bool bPattern );
diff --git a/sc/source/core/data/cellvalue.cxx b/sc/source/core/data/cellvalue.cxx
index b9eb32b..d162211 100644
--- a/sc/source/core/data/cellvalue.cxx
+++ b/sc/source/core/data/cellvalue.cxx
@@ -123,7 +123,7 @@ static void commitToColumn( const ScCellValue& rCell, ScColumn& rColumn, SCROW n
}
break;
default:
- rColumn.Delete(nRow);
+ rColumn.DeleteContent(nRow);
}
}
@@ -463,7 +463,7 @@ void ScCellValue::release( ScColumn& rColumn, SCROW nRow )
rColumn.SetFormulaCell(nRow, mpFormula);
break;
default:
- rColumn.Delete(nRow);
+ rColumn.DeleteContent(nRow);
}
meType = CELLTYPE_NONE;
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx
index 3c39880..90f9b65 100644
--- a/sc/source/core/data/column3.cxx
+++ b/sc/source/core/data/column3.cxx
@@ -108,7 +108,7 @@ void ScColumn::InterpretDirtyCells( SCROW nRow1, SCROW nRow2 )
sc::ProcessFormula(maCells.begin(), maCells, nRow1, nRow2, aFunc);
}
-void ScColumn::Delete( SCROW nRow )
+void ScColumn::DeleteContent( SCROW nRow, bool bBroadcast )
{
sc::CellStoreType::position_type aPos = maCells.position(nRow);
sc::CellStoreType::iterator it = aPos.first;
@@ -122,6 +122,17 @@ void ScColumn::Delete( SCROW nRow )
sc::SharedFormulaUtil::unshareFormulaCell(aPos, *p);
}
maCells.set_empty(nRow, nRow);
+
+ if (bBroadcast)
+ {
+ Broadcast(nRow);
+ CellStorageModified();
+ }
+}
+
+void ScColumn::Delete( SCROW nRow )
+{
+ DeleteContent(nRow, false);
maCellTextAttrs.set_empty(nRow, nRow);
maCellNotes.set_empty(nRow, nRow);
More information about the Libreoffice-commits
mailing list