summaryrefslogtreecommitdiff
path: root/sc/source/core/tool/compiler.cxx
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2015-04-17 01:10:06 +0200
committerEike Rathke <erack@redhat.com>2015-04-17 01:11:38 +0200
commit35a4d80750553e7d51a6139b61c47a4f7a475ce8 (patch)
treeefd3c8eef813a6c09703abb8d0ec60f88dc56984 /sc/source/core/tool/compiler.cxx
parent61a4859a63619c12057f28ba7df76336ffd45ccc (diff)
TableRef: use relative references where appropriate
Change-Id: I1c680186271f20b6c01c06dbcc642bc1cf90865a
Diffstat (limited to 'sc/source/core/tool/compiler.cxx')
-rw-r--r--sc/source/core/tool/compiler.cxx12
1 files changed, 12 insertions, 0 deletions
diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx
index 524badf941f0..055bcd2cd6f8 100644
--- a/sc/source/core/tool/compiler.cxx
+++ b/sc/source/core/tool/compiler.cxx
@@ -5053,6 +5053,11 @@ bool ScCompiler::HandleTableRef()
{
ScSingleRefData aRefData;
aRefData.InitFlags();
+ aRefData.SetColRel( true);
+ if (eItem == ScTableRefToken::THIS_ROW)
+ {
+ aRefData.SetRowRel( true);
+ }
aRefData.SetAddress( aRange.aStart, aPos);
pTR->SetAreaRefRPN( pNew->AddSingleReference( aRefData ));
}
@@ -5060,6 +5065,13 @@ bool ScCompiler::HandleTableRef()
{
ScComplexRefData aRefData;
aRefData.InitFlags();
+ aRefData.Ref1.SetColRel( true);
+ aRefData.Ref2.SetColRel( true);
+ if (eItem == ScTableRefToken::THIS_ROW)
+ {
+ aRefData.Ref1.SetRowRel( true);
+ aRefData.Ref2.SetRowRel( true);
+ }
aRefData.SetRange( aRange, aPos);
pTR->SetAreaRefRPN( pNew->AddDoubleReference( aRefData ));
}