summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2022-02-15 14:10:35 +0100
committerLuboš Luňák <l.lunak@collabora.com>2022-02-15 21:48:23 +0100
commit4343976f0d38d727786b15a353ad3d49e76a65b8 (patch)
tree03c7c2e716322d908e688dc31efbee80d437f2c2
parent49746f40b06eaf1f61bb54454408a06a49d73c5e (diff)
remove harcoded MAXCOL/MAXROW from ScBigAddress
Change-Id: I670bb5d6e7a1eb20d2bfd48b853d1d2ebf87fe70 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129964 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
-rw-r--r--sc/inc/bigrange.hxx21
-rw-r--r--sc/source/core/data/documen2.cxx8
-rw-r--r--sc/source/core/tool/chgtrack.cxx52
-rw-r--r--sc/source/filter/xcl97/XclExpChangeTrack.cxx6
-rw-r--r--sc/source/ui/docshell/docsh3.cxx20
-rw-r--r--sc/source/ui/miscdlgs/acredlin.cxx10
-rw-r--r--sc/source/ui/miscdlgs/conflictsdlg.cxx4
-rw-r--r--sc/source/ui/miscdlgs/redcom.cxx2
-rw-r--r--sc/source/ui/view/gridwin5.cxx4
-rw-r--r--sc/source/ui/view/output.cxx4
-rw-r--r--sc/source/ui/view/viewutil.cxx2
11 files changed, 67 insertions, 66 deletions
diff --git a/sc/inc/bigrange.hxx b/sc/inc/bigrange.hxx
index f776d6fd36fd..a9927b39a4b3 100644
--- a/sc/inc/bigrange.hxx
+++ b/sc/inc/bigrange.hxx
@@ -20,11 +20,13 @@
#pragma once
#include "address.hxx"
+#include "document.hxx"
const sal_Int32 nInt32Min = 0x80000000;
const sal_Int32 nInt32Max = 0x7fffffff;
-class ScDocument;
+// This is used by change tracking. References there may be located also outside of the document
+// (see ScRefUpdate::Update()), and so it needs bigger range than ScAddress/ScRange.
class ScBigAddress
{
@@ -59,7 +61,7 @@ public:
{ nColP = nCol; nRowP = nRow; nTabP = nTab; }
bool IsValid( const ScDocument& rDoc ) const;
- inline ScAddress MakeAddress() const;
+ inline ScAddress MakeAddress( const ScDocument& rDoc ) const;
ScBigAddress& operator=( const ScBigAddress& r )
{ nCol = r.nCol; nRow = r.nRow; nTab = r.nTab; return *this; }
@@ -72,7 +74,7 @@ public:
{ return !operator==( r ); }
};
-inline ScAddress ScBigAddress::MakeAddress() const
+inline ScAddress ScBigAddress::MakeAddress( const ScDocument& rDoc ) const
{
SCCOL nColA;
SCROW nRowA;
@@ -80,15 +82,15 @@ inline ScAddress ScBigAddress::MakeAddress() const
if ( nCol < 0 )
nColA = 0;
- else if ( nCol > MAXCOL )
- nColA = MAXCOL;
+ else if ( nCol > rDoc.MaxCol() )
+ nColA = rDoc.MaxCol();
else
nColA = static_cast<SCCOL>(nCol);
if ( nRow < 0 )
nRowA = 0;
- else if ( nRow > MAXROW )
- nRowA = MAXROW;
+ else if ( nRow > rDoc.MaxRow() )
+ nRowA = rDoc.MaxRow();
else
nRowA = static_cast<SCROW>(nRow);
@@ -132,9 +134,8 @@ public:
bool IsValid( const ScDocument& rDoc ) const
{ return aStart.IsValid( rDoc ) && aEnd.IsValid( rDoc ); }
- ScRange MakeRange() const
- { return ScRange( aStart.MakeAddress(),
- aEnd.MakeAddress() ); }
+ ScRange MakeRange( const ScDocument& rDoc ) const
+ { return ScRange( aStart.MakeAddress( rDoc ), aEnd.MakeAddress( rDoc ) ); }
inline bool Contains( const ScBigAddress& ) const; ///< is Address& in range?
inline bool Contains( const ScBigRange& ) const; ///< is Range& in range?
diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx
index c15d84c5c948..da55ebfa85be 100644
--- a/sc/source/core/data/documen2.cxx
+++ b/sc/source/core/data/documen2.cxx
@@ -1230,7 +1230,7 @@ bool ScDocument::IsCellInChangeTrack(const ScAddress &cell,Color *pColCellBorder
const ScBigRange& rBig = pAction->GetBigRange();
if ( rBig.aStart.Tab() == cell.Tab())
{
- ScRange aRange = rBig.MakeRange();
+ ScRange aRange = rBig.MakeRange( *this );
if ( eType == SC_CAT_DELETE_ROWS )
aRange.aEnd.SetRow( aRange.aStart.Row() );
else if ( eType == SC_CAT_DELETE_COLS )
@@ -1254,7 +1254,7 @@ bool ScDocument::IsCellInChangeTrack(const ScAddress &cell,Color *pColCellBorder
GetFromRange().aStart.Tab() == cell.Col() )
{
ScRange aRange = static_cast<const ScChangeActionMove*>(pAction)->
- GetFromRange().MakeRange();
+ GetFromRange().MakeRange( *this );
if (ScViewUtil::IsActionShown( *pAction, *pSettings, *this ) )
{
if (aRange.Contains(cell))
@@ -1297,7 +1297,7 @@ void ScDocument::GetCellChangeTrackNote( const ScAddress &aCellPos, OUString &aT
const ScBigRange& rBig = pAction->GetBigRange();
if ( rBig.aStart.Tab() == aCellPos.Tab())
{
- ScRange aRange = rBig.MakeRange();
+ ScRange aRange = rBig.MakeRange( *this );
if ( eType == SC_CAT_DELETE_ROWS )
aRange.aEnd.SetRow( aRange.aStart.Row() );
else if ( eType == SC_CAT_DELETE_COLS )
@@ -1322,7 +1322,7 @@ void ScDocument::GetCellChangeTrackNote( const ScAddress &aCellPos, OUString &aT
{
ScRange aRange =
static_cast<const ScChangeActionMove*>(pAction)->
- GetFromRange().MakeRange();
+ GetFromRange().MakeRange( *this );
if ( aRange.Contains( aCellPos ) )
{
pFound = pAction;
diff --git a/sc/source/core/tool/chgtrack.cxx b/sc/source/core/tool/chgtrack.cxx
index 30e1548839d6..1911f80af145 100644
--- a/sc/source/core/tool/chgtrack.cxx
+++ b/sc/source/core/tool/chgtrack.cxx
@@ -481,7 +481,7 @@ OUString ScChangeAction::GetRefString(
aBuf.append(ScCompiler::GetNativeSymbol(ocErrRef));
else
{
- ScRange aTmpRange( rRange.MakeRange() );
+ ScRange aTmpRange( rRange.MakeRange( rDoc ) );
switch ( GetType() )
{
case SC_CAT_INSERT_COLS :
@@ -703,7 +703,7 @@ bool ScChangeActionIns::Reject( ScDocument& rDoc )
if ( !aBigRange.IsValid( rDoc ) )
return false;
- ScRange aRange( aBigRange.MakeRange() );
+ ScRange aRange( aBigRange.MakeRange( rDoc ) );
if ( !rDoc.IsBlockEditable( aRange.aStart.Tab(), aRange.aStart.Col(),
aRange.aStart.Row(), aRange.aEnd.Col(), aRange.aEnd.Row() ) )
return false;
@@ -957,7 +957,7 @@ bool ScChangeActionDel::Reject( ScDocument& rDoc )
}
if ( bOk )
{
- ScRange aRange( aTmpRange.MakeRange() );
+ ScRange aRange( aTmpRange.MakeRange( rDoc ) );
// InDelete... for formula UpdateReference in Document
pTrack->SetInDeleteRange( aRange );
pTrack->SetInDeleteTop( true );
@@ -1177,8 +1177,8 @@ bool ScChangeActionMove::Reject( ScDocument& rDoc )
if ( !(aBigRange.IsValid( rDoc ) && aFromRange.IsValid( rDoc )) )
return false;
- ScRange aToRange( aBigRange.MakeRange() );
- ScRange aFrmRange( aFromRange.MakeRange() );
+ ScRange aToRange( aBigRange.MakeRange( rDoc ) );
+ ScRange aFrmRange( aFromRange.MakeRange( rDoc ) );
bool bOk = rDoc.IsBlockEditable( aToRange.aStart.Tab(),
aToRange.aStart.Col(), aToRange.aStart.Row(),
@@ -1329,12 +1329,12 @@ void ScChangeActionContent::SetOldValue(
void ScChangeActionContent::SetOldValue(
const ScCellValue& rCell, const ScDocument* pFromDoc, ScDocument* pToDoc )
{
- SetValue(maOldValue, maOldCell, aBigRange.aStart.MakeAddress(), rCell, pFromDoc, pToDoc);
+ SetValue(maOldValue, maOldCell, aBigRange.aStart.MakeAddress(*pFromDoc), rCell, pFromDoc, pToDoc);
}
void ScChangeActionContent::SetNewValue( const ScCellValue& rCell, ScDocument* pDoc )
{
- SetValue(maNewValue, maNewCell, aBigRange.aStart.MakeAddress(), rCell, pDoc, pDoc);
+ SetValue(maNewValue, maNewCell, aBigRange.aStart.MakeAddress(*pDoc), rCell, pDoc, pDoc);
}
void ScChangeActionContent::SetOldNewCells(
@@ -1367,7 +1367,7 @@ void ScChangeActionContent::SetValueString(
rValue.clear();
rCell.meType = CELLTYPE_FORMULA;
rCell.mpFormula = new ScFormulaCell(
- *pDoc, aBigRange.aStart.MakeAddress(), rStr,
+ *pDoc, aBigRange.aStart.MakeAddress(*pDoc), rStr,
pDoc->GetGrammar() );
rCell.mpFormula->SetInChangeTrack(true);
}
@@ -1448,7 +1448,7 @@ OUString ScChangeActionContent::GetRefString(
return ScChangeAction::GetRefString( aLocalBigRange, rDoc, bFlag3D );
}
- ScAddress aTmpAddress( GetBigRange().aStart.MakeAddress() );
+ ScAddress aTmpAddress( GetBigRange().aStart.MakeAddress( rDoc ) );
if ( bFlag3D )
nFlags |= ScRefFlags::TAB_3D;
OUString str = aTmpAddress.Format(nFlags, &rDoc, rDoc.GetAddressConvention());
@@ -1508,7 +1508,7 @@ bool ScChangeActionContent::Select( ScDocument& rDoc, ScChangeTrack* pTrack,
// If not oldest: Is it anyone else than the last one?
if ( bOldest || pEnd != this )
- { ScRange aRange( aBigRange.aStart.MakeAddress() );
+ { ScRange aRange( aBigRange.aStart.MakeAddress( rDoc ) );
const ScAddress& rPos = aRange.aStart;
ScChangeActionContent* pNew = new ScChangeActionContent( aRange );
@@ -1724,7 +1724,7 @@ OUString ScChangeActionContent::GetValueString(
OUString ScChangeActionContent::GetFormulaString(
const ScFormulaCell* pCell ) const
{
- ScAddress aPos( aBigRange.aStart.MakeAddress() );
+ ScAddress aPos( aBigRange.aStart.MakeAddress( pCell->GetDocument()) );
if ( aPos == pCell->aPos || IsDeletedIn() )
return pCell->GetFormula();
else
@@ -1751,7 +1751,7 @@ void ScChangeActionContent::PutValueToDoc(
const ScCellValue& rCell, const OUString& rValue, ScDocument* pDoc,
SCCOL nDx, SCROW nDy ) const
{
- ScAddress aPos( aBigRange.aStart.MakeAddress() );
+ ScAddress aPos( aBigRange.aStart.MakeAddress( *pDoc ) );
if ( nDx )
aPos.IncCol( nDx );
if ( nDy )
@@ -1894,9 +1894,9 @@ void ScChangeActionContent::UpdateReference( const ScChangeTrack* pTrack,
// Move is Source here and Target there
// Position needs to be adjusted before that
if ( bOldFormula )
- maOldCell.mpFormula->aPos = aBigRange.aStart.MakeAddress();
+ maOldCell.mpFormula->aPos = aBigRange.aStart.MakeAddress(pTrack->GetDocument());
if ( bNewFormula )
- maNewCell.mpFormula->aPos = aBigRange.aStart.MakeAddress();
+ maNewCell.mpFormula->aPos = aBigRange.aStart.MakeAddress(pTrack->GetDocument());
if ( nDx )
{
aTmpRange.aStart.IncCol( nDx );
@@ -1918,7 +1918,7 @@ void ScChangeActionContent::UpdateReference( const ScChangeTrack* pTrack,
// added to avoid warnings
}
}
- ScRange aRange( aTmpRange.MakeRange() );
+ ScRange aRange( aTmpRange.MakeRange(pTrack->GetDocument()) );
sc::RefUpdateContext aRefCxt(pTrack->GetDocument());
aRefCxt.meMode = eMode;
@@ -3057,7 +3057,7 @@ void ScChangeTrack::Undo( sal_uLong nStartAction, sal_uLong nEndAction, bool bMe
if (j == nEndAction || (pAct != pLast && static_cast<ScChangeActionDel*>(pAct)->IsTopDelete()))
{
SetInDeleteTop( true );
- SetInDeleteRange( static_cast<ScChangeActionDel*>(pAct)->GetOverAllRange().MakeRange() );
+ SetInDeleteRange( static_cast<ScChangeActionDel*>(pAct)->GetOverAllRange().MakeRange( rDoc ) );
}
}
UpdateReference( pAct, true );
@@ -3100,7 +3100,7 @@ void ScChangeTrack::Undo( sal_uLong nStartAction, sal_uLong nEndAction, bool bMe
nEndLastCut = nEnd;
pLastCutMove.reset(pMove);
SetLastCutMoveRange(
- pMove->GetFromRange().MakeRange(), &rDoc );
+ pMove->GetFromRange().MakeRange( rDoc ), &rDoc );
}
else
delete pMove;
@@ -3148,7 +3148,7 @@ void ScChangeTrack::MergePrepare( const ScChangeAction* pFirstMerge, bool bShare
{
SetInDeleteTop( true );
SetInDeleteRange( static_cast<ScChangeActionDel*>(pAct)->
- GetOverAllRange().MakeRange() );
+ GetOverAllRange().MakeRange( rDoc ) );
}
}
UpdateReference( pAct, true );
@@ -3174,7 +3174,7 @@ void ScChangeTrack::MergeOwn( ScChangeAction* pAct, sal_uLong nFirstMerge, bool
{
SetInDeleteTop( true );
SetInDeleteRange( static_cast<ScChangeActionDel*>(pAct)->
- GetOverAllRange().MakeRange() );
+ GetOverAllRange().MakeRange( rDoc ) );
}
}
UpdateReference( pAct, false );
@@ -4014,7 +4014,7 @@ bool ScChangeTrack::SelectContent( ScChangeAction* pAct, bool bOldest )
if ( !aBigRange.IsValid( rDoc ) )
return false;
- ScRange aRange( aBigRange.MakeRange() );
+ ScRange aRange( aBigRange.MakeRange( rDoc ) );
if ( !rDoc.IsBlockEditable( aRange.aStart.Tab(), aRange.aStart.Col(),
aRange.aStart.Row(), aRange.aEnd.Col(), aRange.aEnd.Row() ) )
return false;
@@ -4050,7 +4050,7 @@ bool ScChangeTrack::SelectContent( ScChangeAction* pAct, bool bOldest )
{
ScChangeActionContent* pNew = aRejectActions.top();
aRejectActions.pop();
- ScAddress aPos( pNew->GetBigRange().aStart.MakeAddress() );
+ ScAddress aPos( pNew->GetBigRange().aStart.MakeAddress( rDoc ) );
ScCellValue aCell;
aCell.assign(rDoc, aPos);
pNew->SetNewValue(aCell, &rDoc);
@@ -4153,7 +4153,7 @@ bool ScChangeTrack::Reject(
if ( bRejected )
{
// pRefDoc NULL := Do not save deleted Cells
- AppendDeleteRange( pAct->GetBigRange().MakeRange(), nullptr, short(0),
+ AppendDeleteRange( pAct->GetBigRange().MakeRange( rDoc ), nullptr, short(0),
pAct->GetActionNumber() );
}
}
@@ -4246,7 +4246,7 @@ bool ScChangeTrack::Reject(
{
// Delete Reject made UpdateReference Undo
ScChangeActionIns* pReject = new ScChangeActionIns( &rDoc,
- aDelRange.MakeRange() );
+ aDelRange.MakeRange( rDoc ) );
pReject->SetRejectAction( nRejectAction );
pReject->SetState( SC_CAS_ACCEPTED );
Append( pReject );
@@ -4270,8 +4270,8 @@ bool ScChangeTrack::Reject(
if ( bRejected )
{
ScChangeActionMove* pReject = new ScChangeActionMove(
- pAct->GetBigRange().MakeRange(),
- static_cast<ScChangeActionMove*>(pAct)->GetFromRange().MakeRange(), this );
+ pAct->GetBigRange().MakeRange( rDoc ),
+ static_cast<ScChangeActionMove*>(pAct)->GetFromRange().MakeRange( rDoc ), this );
pReject->SetRejectAction( pAct->GetActionNumber() );
pReject->SetState( SC_CAS_ACCEPTED );
Append( pReject );
@@ -4286,7 +4286,7 @@ bool ScChangeTrack::Reject(
pReject = nullptr;
else
{
- aRange = pAct->GetBigRange().aStart.MakeAddress();
+ aRange = pAct->GetBigRange().aStart.MakeAddress( rDoc );
pReject = new ScChangeActionContent( aRange );
ScCellValue aCell;
aCell.assign(rDoc, aRange.aStart);
diff --git a/sc/source/filter/xcl97/XclExpChangeTrack.cxx b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
index 1d8140742a1b..a267dcd9168c 100644
--- a/sc/source/filter/xcl97/XclExpChangeTrack.cxx
+++ b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
@@ -813,7 +813,7 @@ XclExpChTrCellContent::XclExpChTrCellContent(
const XclExpChTrTabIdBuffer& rTabIdBuffer ) :
XclExpChTrAction( rAction, rRoot, rTabIdBuffer, EXC_CHTR_OP_CELL ),
XclExpRoot( rRoot ),
- aPosition( rAction.GetBigRange().MakeRange().aStart )
+ aPosition( rAction.GetBigRange().MakeRange( rRoot.GetDoc()).aStart )
{
sal_uInt32 nDummy32;
sal_uInt16 nDummy16;
@@ -1074,7 +1074,7 @@ XclExpChTrInsert::XclExpChTrInsert(
const ScChangeTrack& rChangeTrack ) :
XclExpChTrAction( rAction, rRoot, rTabIdBuffer ),
mbEndOfList(false),
- aRange( rAction.GetBigRange().MakeRange() )
+ aRange( rAction.GetBigRange().MakeRange( rRoot.GetDoc()) )
{
nLength = 0x00000030;
switch( rAction.GetType() )
@@ -1234,7 +1234,7 @@ XclExpChTrMoveRange::XclExpChTrMoveRange(
const XclExpChTrTabIdBuffer& rTabIdBuffer,
const ScChangeTrack& rChangeTrack ) :
XclExpChTrAction( rAction, rRoot, rTabIdBuffer, EXC_CHTR_OP_MOVE ),
- aDestRange( rAction.GetBigRange().MakeRange() )
+ aDestRange( rAction.GetBigRange().MakeRange( rRoot.GetDoc() ) )
{
nLength = 0x00000042;
aSourceRange = aDestRange;
diff --git a/sc/source/ui/docshell/docsh3.cxx b/sc/source/ui/docshell/docsh3.cxx
index 2d24fde231ed..956b83763bc8 100644
--- a/sc/source/ui/docshell/docsh3.cxx
+++ b/sc/source/ui/docshell/docsh3.cxx
@@ -588,7 +588,7 @@ ScChangeAction* ScDocShell::GetChangeAction( const ScAddress& rPos )
const ScBigRange& rBig = pAction->GetBigRange();
if ( rBig.aStart.Tab() == nTab )
{
- ScRange aRange = rBig.MakeRange();
+ ScRange aRange = rBig.MakeRange( GetDocument() );
if ( eType == SC_CAT_DELETE_ROWS )
aRange.aEnd.SetRow( aRange.aStart.Row() );
@@ -604,7 +604,7 @@ ScChangeAction* ScDocShell::GetChangeAction( const ScAddress& rPos )
{
ScRange aRange =
static_cast<const ScChangeActionMove*>(pAction)->
- GetFromRange().MakeRange();
+ GetFromRange().MakeRange( GetDocument() );
if ( aRange.Contains( rPos ) )
{
pFound = pAction;
@@ -847,7 +847,7 @@ void ScDocShell::MergeDocument( ScDocument& rOtherDoc, bool bShared, bool bCheck
case SC_CAT_INSERT_COLS :
case SC_CAT_INSERT_ROWS :
case SC_CAT_INSERT_TABS :
- pSourceTrack->AppendInsert( pThisAction->GetBigRange().MakeRange() );
+ pSourceTrack->AppendInsert( pThisAction->GetBigRange().MakeRange( GetDocument() ) );
break;
case SC_CAT_DELETE_COLS :
case SC_CAT_DELETE_ROWS :
@@ -858,15 +858,15 @@ void ScDocShell::MergeDocument( ScDocument& rOtherDoc, bool bShared, bool bCheck
{ // deleted table contains deleted cols, which are not
sal_uLong nStart, nEnd;
pSourceTrack->AppendDeleteRange(
- pDel->GetOverAllRange().MakeRange(), nullptr, nStart, nEnd );
+ pDel->GetOverAllRange().MakeRange( GetDocument() ), nullptr, nStart, nEnd );
}
}
break;
case SC_CAT_MOVE :
{
const ScChangeActionMove* pMove = static_cast<const ScChangeActionMove*>(pThisAction);
- pSourceTrack->AppendMove( pMove->GetFromRange().MakeRange(),
- pMove->GetBigRange().MakeRange(), nullptr );
+ pSourceTrack->AppendMove( pMove->GetFromRange().MakeRange( GetDocument() ),
+ pMove->GetBigRange().MakeRange( GetDocument() ), nullptr );
}
break;
default:
@@ -970,7 +970,7 @@ void ScDocShell::MergeDocument( ScDocument& rOtherDoc, bool bShared, bool bCheck
if ( bExecute )
{
// execute normally
- ScRange aSourceRange = pSourceAction->GetBigRange().MakeRange();
+ ScRange aSourceRange = pSourceAction->GetBigRange().MakeRange( GetDocument() );
rMarkData.SelectOneTable( aSourceRange.aStart.Tab() );
switch ( eSourceType )
{
@@ -1030,7 +1030,7 @@ void ScDocShell::MergeDocument( ScDocument& rOtherDoc, bool bShared, bool bCheck
const ScChangeActionDel* pDel = static_cast<const ScChangeActionDel*>(pSourceAction);
if ( pDel->IsTopDelete() )
{
- aSourceRange = pDel->GetOverAllRange().MakeRange();
+ aSourceRange = pDel->GetOverAllRange().MakeRange( GetDocument() );
(void)GetDocFunc().DeleteCells( aSourceRange, nullptr, DelCellCmd::Rows, false );
// #i101099# [Collaboration] Changes are not correctly shown
@@ -1050,7 +1050,7 @@ void ScDocShell::MergeDocument( ScDocument& rOtherDoc, bool bShared, bool bCheck
const ScChangeActionDel* pDel = static_cast<const ScChangeActionDel*>(pSourceAction);
if ( pDel->IsTopDelete() && !pDel->IsTabDeleteCol() )
{ // deleted table contains deleted cols, which are not
- aSourceRange = pDel->GetOverAllRange().MakeRange();
+ aSourceRange = pDel->GetOverAllRange().MakeRange( GetDocument() );
(void)GetDocFunc().DeleteCells( aSourceRange, nullptr, DelCellCmd::Cols, false );
}
}
@@ -1058,7 +1058,7 @@ void ScDocShell::MergeDocument( ScDocument& rOtherDoc, bool bShared, bool bCheck
case SC_CAT_MOVE :
{
const ScChangeActionMove* pMove = static_cast<const ScChangeActionMove*>(pSourceAction);
- ScRange aFromRange( pMove->GetFromRange().MakeRange() );
+ ScRange aFromRange( pMove->GetFromRange().MakeRange( GetDocument() ) );
(void)GetDocFunc().MoveBlock( aFromRange,
aSourceRange.aStart, true, true, false, false );
}
diff --git a/sc/source/ui/miscdlgs/acredlin.cxx b/sc/source/ui/miscdlgs/acredlin.cxx
index c3c0179c28d7..300f6ad4a58d 100644
--- a/sc/source/ui/miscdlgs/acredlin.cxx
+++ b/sc/source/ui/miscdlgs/acredlin.cxx
@@ -315,7 +315,7 @@ bool ScAcceptChgDlg::IsValidAction(const ScChangeAction* pScChangeAction)
bool bFlag = false;
- ScRange aRef=pScChangeAction->GetBigRange().MakeRange();
+ ScRange aRef=pScChangeAction->GetBigRange().MakeRange(*pDoc);
OUString aUser=pScChangeAction->GetUser();
DateTime aDateTime=pScChangeAction->GetDateTime();
@@ -367,7 +367,7 @@ std::unique_ptr<weld::TreeIter> ScAcceptChgDlg::AppendChangeAction(
bool bFlag = false;
- ScRange aRef=pScChangeAction->GetBigRange().MakeRange();
+ ScRange aRef=pScChangeAction->GetBigRange().MakeRange(*pDoc);
OUString aUser=pScChangeAction->GetUser();
DateTime aDateTime=pScChangeAction->GetDateTime();
@@ -517,7 +517,7 @@ std::unique_ptr<weld::TreeIter> ScAcceptChgDlg::AppendFilteredAction(
bool bFlag = false;
- ScRange aRef=pScChangeAction->GetBigRange().MakeRange();
+ ScRange aRef=pScChangeAction->GetBigRange().MakeRange(*pDoc);
OUString aUser=pScChangeAction->GetUser();
DateTime aDateTime=pScChangeAction->GetDateTime();
@@ -628,7 +628,7 @@ std::unique_ptr<weld::TreeIter> ScAcceptChgDlg::InsertChangeActionContent(const
bool bFlag = false;
- ScRange aRef=pScChangeAction->GetBigRange().MakeRange();
+ ScRange aRef=pScChangeAction->GetBigRange().MakeRange(*pDoc);
OUString aUser=pScChangeAction->GetUser();
DateTime aDateTime=pScChangeAction->GetDateTime();
@@ -1593,7 +1593,7 @@ IMPL_LINK_NOARG(ScAcceptChgDlg, UpdateSelectionHdl, Timer *, void)
if (rBigRange.IsValid(*pDoc) && m_xDialog->has_toplevel_focus())
{
bool bSetCursor = i == nCount - 1;
- pTabView->MarkRange(rBigRange.MakeRange(), bSetCursor, bContMark);
+ pTabView->MarkRange(rBigRange.MakeRange(*pDoc), bSetCursor, bContMark);
bContMark = true;
}
}
diff --git a/sc/source/ui/miscdlgs/conflictsdlg.cxx b/sc/source/ui/miscdlgs/conflictsdlg.cxx
index 1559f5419899..bcd76e211ec8 100644
--- a/sc/source/ui/miscdlgs/conflictsdlg.cxx
+++ b/sc/source/ui/miscdlgs/conflictsdlg.cxx
@@ -394,7 +394,7 @@ OUString ScConflictsDlg::GetConflictString( const ScConflictsListEntry& rConflic
const ScChangeAction* pAction = mpOwnTrack->GetAction( rConflictEntry.maOwnActions[ 0 ] );
if ( pAction && mpOwnDoc )
{
- SCTAB nTab = pAction->GetBigRange().MakeRange().aStart.Tab();
+ SCTAB nTab = pAction->GetBigRange().MakeRange( *mpOwnDoc ).aStart.Tab();
mpOwnDoc->GetName( nTab, aString );
}
}
@@ -502,7 +502,7 @@ IMPL_LINK_NOARG(ScConflictsDlg, UpdateSelectionHdl, Timer *, void)
if (rBigRange.IsValid(*mpOwnDoc))
{
bool bSetCursor = i == nCount - 1;
- pTabView->MarkRange(rBigRange.MakeRange(), bSetCursor, bContMark);
+ pTabView->MarkRange(rBigRange.MakeRange( *mpOwnDoc ), bSetCursor, bContMark);
bContMark = true;
}
}
diff --git a/sc/source/ui/miscdlgs/redcom.cxx b/sc/source/ui/miscdlgs/redcom.cxx
index 6e744fac58de..30e2f8a591a9 100644
--- a/sc/source/ui/miscdlgs/redcom.cxx
+++ b/sc/source/ui/miscdlgs/redcom.cxx
@@ -138,7 +138,7 @@ void ScRedComDialog::SelectCell()
if(rRange.IsValid(pDocShell->GetDocument()))
{
ScViewData* pViewData=ScDocShell::GetViewData();
- ScRange aRef=rRange.MakeRange();
+ ScRange aRef=rRange.MakeRange(pDocShell->GetDocument());
ScTabView* pTabView=pViewData->GetView();
pTabView->MarkRange(aRef);
}
diff --git a/sc/source/ui/view/gridwin5.cxx b/sc/source/ui/view/gridwin5.cxx
index c20663ecf775..ffa6569ac6dd 100644
--- a/sc/source/ui/view/gridwin5.cxx
+++ b/sc/source/ui/view/gridwin5.cxx
@@ -73,7 +73,7 @@ bool ScGridWindow::ShowNoteMarker( SCCOL nPosX, SCROW nPosY, bool bKeyboard )
const ScBigRange& rBig = pAction->GetBigRange();
if ( rBig.aStart.Tab() == nTab )
{
- ScRange aRange = rBig.MakeRange();
+ ScRange aRange = rBig.MakeRange( rDoc );
if ( eType == SC_CAT_DELETE_ROWS )
aRange.aEnd.SetRow( aRange.aStart.Row() );
@@ -102,7 +102,7 @@ bool ScGridWindow::ShowNoteMarker( SCCOL nPosX, SCROW nPosY, bool bKeyboard )
{
ScRange aRange =
static_cast<const ScChangeActionMove*>(pAction)->
- GetFromRange().MakeRange();
+ GetFromRange().MakeRange( rDoc );
if ( aRange.Contains( aCellPos ) )
{
pFound = pAction;
diff --git a/sc/source/ui/view/output.cxx b/sc/source/ui/view/output.cxx
index d689dbd72777..11a39fb825bf 100644
--- a/sc/source/ui/view/output.cxx
+++ b/sc/source/ui/view/output.cxx
@@ -2271,7 +2271,7 @@ void ScOutputData::DrawChangeTrack()
const ScBigRange& rBig = pAction->GetBigRange();
if ( rBig.aStart.Tab() == nTab )
{
- ScRange aRange = rBig.MakeRange();
+ ScRange aRange = rBig.MakeRange( *mpDoc );
if ( eActionType == SC_CAT_DELETE_ROWS )
aRange.aEnd.SetRow( aRange.aStart.Row() );
@@ -2293,7 +2293,7 @@ void ScOutputData::DrawChangeTrack()
GetFromRange().aStart.Tab() == nTab )
{
ScRange aRange = static_cast<const ScChangeActionMove*>(pAction)->
- GetFromRange().MakeRange();
+ GetFromRange().MakeRange( *mpDoc );
if ( aRange.Intersects( aViewRange ) &&
ScViewUtil::IsActionShown( *pAction, *pSettings, *mpDoc ) )
{
diff --git a/sc/source/ui/view/viewutil.cxx b/sc/source/ui/view/viewutil.cxx
index 65d0c836d340..8e7470f58c85 100644
--- a/sc/source/ui/view/viewutil.cxx
+++ b/sc/source/ui/view/viewutil.cxx
@@ -158,7 +158,7 @@ bool ScViewUtil::IsActionShown( const ScChangeAction& rAction,
}
if ( rSettings.HasRange() )
- if ( !rSettings.GetTheRangeList().Intersects( rAction.GetBigRange().MakeRange() ) )
+ if ( !rSettings.GetTheRangeList().Intersects( rAction.GetBigRange().MakeRange( rDocument ) ) )
return false;
if (rSettings.HasDate() && rSettings.GetTheDateMode() != SvxRedlinDateMode::NONE)