summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2011-06-30 05:44:00 +0200
committerKatarina Machalkova <kmachalkova@suse.cz>2011-07-06 10:54:57 +0200
commit1195ede73b8b6c1f6e3b0f5575450d937a41eaf6 (patch)
tree92a4c50db3c94922475aa6e09974750fb85ff9e1 /sc
parentc031be7d99d6ae98bd6c4efbfc0d668258610ec1 (diff)
fix for fdo#38380: update local range names
local range names must be updated like global range names Signed-off-by: Katarina Machalkova <kmachalkova@novell.com>
Diffstat (limited to 'sc')
-rw-r--r--sc/source/core/data/table1.cxx17
1 files changed, 17 insertions, 0 deletions
diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index 3130ee05ba8d..f120b9011c34 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -1303,6 +1303,12 @@ void ScTable::UpdateReference( UpdateRefMode eUpdateRefMode, SCCOL nCol1, SCROW
bUpdated |= aCol[i].UpdateReference(
eUpdateRefMode, nCol1, nRow1, nTab1, nCol2, nRow2, nTab2, nDx, nDy, nDz, pUndoDoc );
+ if (mpRangeName)
+ {
+ ScRange aRange( nCol1, nRow1, nTab1, nCol2, nRow2, nTab2 );;
+ mpRangeName->UpdateReference( eUpdateRefMode, aRange, nDx, nDy, nDz );
+ }
+
if ( bIncludeDraw )
UpdateDrawRef( eUpdateRefMode, nCol1, nRow1, nTab1, nCol2, nRow2, nTab2, nDx, nDy, nDz, bUpdateNoteCaptionPos );
@@ -1410,6 +1416,9 @@ void ScTable::UpdateInsertTab(SCTAB nTable)
}
for (SCCOL i=0; i <= MAXCOL; i++) aCol[i].UpdateInsertTab(nTable);
+ if (mpRangeName)
+ mpRangeName->UpdateTabRef( nTable, 1);
+
if (IsStreamValid())
SetStreamValid(false);
}
@@ -1429,6 +1438,11 @@ void ScTable::UpdateDeleteTab( SCTAB nTable, sal_Bool bIsMove, ScTable* pRefUndo
else
for (i=0; i <= MAXCOL; i++) aCol[i].UpdateDeleteTab(nTable, bIsMove, NULL);
+ if (mpRangeName)
+ {
+ mpRangeName->UpdateTabRef( nTable, 2 );
+ }
+
if (IsStreamValid())
SetStreamValid(false);
}
@@ -1443,6 +1457,9 @@ void ScTable::UpdateMoveTab( SCTAB nOldPos, SCTAB nNewPos, SCTAB nTabNo,
rProgress.SetState( rProgress.GetState() + aCol[i].GetCodeCount() );
}
+ if (mpRangeName)
+ mpRangeName->UpdateTabRef(nOldPos, 3, nNewPos);
+
if (IsStreamValid())
SetStreamValid(false);
if (pDBDataNoName)