summaryrefslogtreecommitdiff
path: root/sc/inc
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@gmail.com>2013-06-27 11:29:46 -0400
committerKohei Yoshida <kohei.yoshida@gmail.com>2013-06-27 15:50:07 -0400
commitbac886b75f3ce94178ba1751fc85cd4f2c5a9d0f (patch)
tree80e6f10d93bbb1b5e70c743ee1026f66a0778842 /sc/inc
parentcfc732b858befd0f9102cb0161e9afde424dcecf (diff)
ScColumn::UpdateReference to take ScRange as a parameter.
To reduce the number of parameters by 5. Also add *some* description of this method esp what the range means when updating formula references. Change-Id: Iccde58d6ecde6f0c09c111cf9b4f551ce392effb
Diffstat (limited to 'sc/inc')
-rw-r--r--sc/inc/column.hxx25
1 files changed, 21 insertions, 4 deletions
diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index 1c04e5d6947f..d38762ac6ffa 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -308,10 +308,27 @@ public:
void ResetChanged( SCROW nStartRow, SCROW nEndRow );
- bool UpdateReference( UpdateRefMode eUpdateRefMode, SCCOL nCol1, SCROW nRow1, SCTAB nTab1,
- SCCOL nCol2, SCROW nRow2, SCTAB nTab2,
- SCsCOL nDx, SCsROW nDy, SCsTAB nDz,
- ScDocument* pUndoDoc = NULL );
+ /**
+ * Update reference addresses in formula cell in response to mass cell
+ * movement.
+ *
+ * @param eUpdateRefMode update mode - insert/delete, copy, move,
+ * reorder...
+ * @param rRange range of cells that are about to be moved or copied.
+ * (TODO: find out what this range means for the reorder
+ * mode).
+ * @param nDx moved by how many cells in the column direction.
+ * @param nDy moved by how many cells in the row direction.
+ * @param nDz moved by how many sheets in the sheet direction.
+ * @param pUndoDoc undo document instance.
+ *
+ * @return true if reference of at least one formula cell has been
+ * updated, false otherwise.
+ */
+ bool UpdateReference(
+ UpdateRefMode eUpdateRefMode, const ScRange& rRange, SCsCOL nDx, SCsROW nDy, SCsTAB nDz,
+ ScDocument* pUndoDoc = NULL );
+
void UpdateInsertTab(SCTAB nInsPos, SCTAB nNewSheets = 1);
void UpdateInsertTabOnlyCells(SCTAB nInsPos, SCTAB nNewSheets = 1);
void UpdateDeleteTab(SCTAB nDelPos, bool bIsMove, ScColumn* pRefUndo = NULL, SCTAB nSheets = 1);