summaryrefslogtreecommitdiff
path: root/sc/source/ui/undo
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2020-08-09 11:59:30 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-08-09 19:05:34 +0200
commit8c505204f25b509daa586c2d308fb870325c59b9 (patch)
tree3c5840215f37f8f37c39703de767a4fe7b3b6d87 /sc/source/ui/undo
parent966b156cbd8b786c88ade5d322177e16fd408732 (diff)
loplugin:flatten in sc
Change-Id: Iedb6ca37d1b006131d1fc77eca3303a12ccb60c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100401 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sc/source/ui/undo')
-rw-r--r--sc/source/ui/undo/areasave.cxx24
-rw-r--r--sc/source/ui/undo/undobase.cxx70
-rw-r--r--sc/source/ui/undo/undoblk.cxx121
-rw-r--r--sc/source/ui/undo/undocell.cxx22
-rw-r--r--sc/source/ui/undo/undodat.cxx30
-rw-r--r--sc/source/ui/undo/undoutil.cxx24
6 files changed, 145 insertions, 146 deletions
diff --git a/sc/source/ui/undo/areasave.cxx b/sc/source/ui/undo/areasave.cxx
index 361084ad7739..e250aac70e60 100644
--- a/sc/source/ui/undo/areasave.cxx
+++ b/sc/source/ui/undo/areasave.cxx
@@ -130,19 +130,19 @@ void ScAreaLinkSaveCollection::Restore( ScDocument* pDoc )
// of links changes if deleted entries are re-added to the link manager (always at the end).
sfx2::LinkManager* pLinkManager = pDoc->GetDocLinkManager().getLinkManager(false);
- if (pLinkManager)
+ if (!pLinkManager)
+ return;
+
+ const ::sfx2::SvBaseLinks& rLinks = pLinkManager->GetLinks();
+ size_t nSaveCount = size();
+ for (size_t nPos=0; nPos<nSaveCount; ++nPos)
{
- const ::sfx2::SvBaseLinks& rLinks = pLinkManager->GetLinks();
- size_t nSaveCount = size();
- for (size_t nPos=0; nPos<nSaveCount; ++nPos)
- {
- ScAreaLinkSaver& rSaver = (*this)[nPos];
- ScAreaLink* pLink = lcl_FindLink( rLinks, rSaver );
- if ( pLink )
- rSaver.WriteToLink( *pLink ); // restore output position
- else
- rSaver.InsertNewLink( pDoc ); // re-insert deleted link
- }
+ ScAreaLinkSaver& rSaver = (*this)[nPos];
+ ScAreaLink* pLink = lcl_FindLink( rLinks, rSaver );
+ if ( pLink )
+ rSaver.WriteToLink( *pLink ); // restore output position
+ else
+ rSaver.InsertNewLink( pDoc ); // re-insert deleted link
}
}
diff --git a/sc/source/ui/undo/undobase.cxx b/sc/source/ui/undo/undobase.cxx
index c9a9173c5193..21e91998904a 100644
--- a/sc/source/ui/undo/undobase.cxx
+++ b/sc/source/ui/undo/undobase.cxx
@@ -325,19 +325,19 @@ void ScBlockUndo::ShowBlock()
return;
ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell();
- if (pViewShell)
- {
- ShowTable( aBlockRange ); // with multiple sheets in range each of them is good
- pViewShell->MoveCursorAbs( aBlockRange.aStart.Col(), aBlockRange.aStart.Row(),
- SC_FOLLOW_JUMP, false, false );
- SCTAB nTab = pViewShell->GetViewData().GetTabNo();
- ScRange aRange = aBlockRange;
- aRange.aStart.SetTab( nTab );
- aRange.aEnd.SetTab( nTab );
- pViewShell->MarkRange( aRange );
+ if (!pViewShell)
+ return;
- // not through SetMarkArea to MarkData, due to possibly lacking paint
- }
+ ShowTable( aBlockRange ); // with multiple sheets in range each of them is good
+ pViewShell->MoveCursorAbs( aBlockRange.aStart.Col(), aBlockRange.aStart.Row(),
+ SC_FOLLOW_JUMP, false, false );
+ SCTAB nTab = pViewShell->GetViewData().GetTabNo();
+ ScRange aRange = aBlockRange;
+ aRange.aStart.SetTab( nTab );
+ aRange.aEnd.SetTab( nTab );
+ pViewShell->MarkRange( aRange );
+
+ // not through SetMarkArea to MarkData, due to possibly lacking paint
}
ScMultiBlockUndo::ScMultiBlockUndo(
@@ -473,31 +473,31 @@ void ScDBFuncUndo::EndUndo()
{
ScSimpleUndo::EndUndo();
- if ( pAutoDBRange )
- {
- ScDocument& rDoc = pDocShell->GetDocument();
- SCTAB nTab = rDoc.GetVisibleTab();
- ScDBData* pNoNameData = rDoc.GetAnonymousDBData(nTab);
- if (pNoNameData )
- {
- SCCOL nRangeX1;
- SCROW nRangeY1;
- SCCOL nRangeX2;
- SCROW nRangeY2;
- SCTAB nRangeTab;
- pNoNameData->GetArea( nRangeTab, nRangeX1, nRangeY1, nRangeX2, nRangeY2 );
- pDocShell->DBAreaDeleted( nRangeTab, nRangeX1, nRangeY1, nRangeX2 );
+ if ( !pAutoDBRange )
+ return;
- *pNoNameData = *pAutoDBRange;
+ ScDocument& rDoc = pDocShell->GetDocument();
+ SCTAB nTab = rDoc.GetVisibleTab();
+ ScDBData* pNoNameData = rDoc.GetAnonymousDBData(nTab);
+ if (!pNoNameData )
+ return;
- if ( pAutoDBRange->HasAutoFilter() )
- {
- // restore AutoFilter buttons
- pAutoDBRange->GetArea( nRangeTab, nRangeX1, nRangeY1, nRangeX2, nRangeY2 );
- rDoc.ApplyFlagsTab( nRangeX1, nRangeY1, nRangeX2, nRangeY1, nRangeTab, ScMF::Auto );
- pDocShell->PostPaint( nRangeX1, nRangeY1, nRangeTab, nRangeX2, nRangeY1, nRangeTab, PaintPartFlags::Grid );
- }
- }
+ SCCOL nRangeX1;
+ SCROW nRangeY1;
+ SCCOL nRangeX2;
+ SCROW nRangeY2;
+ SCTAB nRangeTab;
+ pNoNameData->GetArea( nRangeTab, nRangeX1, nRangeY1, nRangeX2, nRangeY2 );
+ pDocShell->DBAreaDeleted( nRangeTab, nRangeX1, nRangeY1, nRangeX2 );
+
+ *pNoNameData = *pAutoDBRange;
+
+ if ( pAutoDBRange->HasAutoFilter() )
+ {
+ // restore AutoFilter buttons
+ pAutoDBRange->GetArea( nRangeTab, nRangeX1, nRangeY1, nRangeX2, nRangeY2 );
+ rDoc.ApplyFlagsTab( nRangeX1, nRangeY1, nRangeX2, nRangeY1, nRangeTab, ScMF::Auto );
+ pDocShell->PostPaint( nRangeX1, nRangeY1, nRangeTab, nRangeX2, nRangeY1, nRangeTab, PaintPartFlags::Grid );
}
}
diff --git a/sc/source/ui/undo/undoblk.cxx b/sc/source/ui/undo/undoblk.cxx
index dacbfa00d9f7..2ef4fae1490a 100644
--- a/sc/source/ui/undo/undoblk.cxx
+++ b/sc/source/ui/undo/undoblk.cxx
@@ -267,29 +267,29 @@ void ScUndoInsertCells::DoChange( const bool bUndo )
aWorkRange.aEnd.Col(), aWorkRange.aEnd.Row(), pTabs[i]+pScenarios[i], nPaint );
}
pDocShell->PostDataChanged();
- if (pViewShell)
- {
- pViewShell->CellContentChanged();
+ if (!pViewShell)
+ return;
- if (comphelper::LibreOfficeKit::isActive())
- {
- SCTAB nTab = pViewShell->GetViewData().GetTabNo();
- bool bColsAffected = (eCmd == INS_INSCOLS_BEFORE || eCmd == INS_INSCOLS_AFTER || eCmd == INS_CELLSRIGHT);
- bool bRowsAffected = (eCmd == INS_INSROWS_BEFORE || eCmd == INS_INSROWS_AFTER || eCmd == INS_CELLSDOWN);
+ pViewShell->CellContentChanged();
- if (bColsAffected)
- ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, COLUMN_HEADER, nTab);
+ if (!comphelper::LibreOfficeKit::isActive())
+ return;
- if (bRowsAffected)
- ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, ROW_HEADER, nTab);
+ SCTAB nTab = pViewShell->GetViewData().GetTabNo();
+ bool bColsAffected = (eCmd == INS_INSCOLS_BEFORE || eCmd == INS_INSCOLS_AFTER || eCmd == INS_CELLSRIGHT);
+ bool bRowsAffected = (eCmd == INS_INSROWS_BEFORE || eCmd == INS_INSROWS_AFTER || eCmd == INS_CELLSDOWN);
- ScTabViewShell::notifyAllViewsSheetGeomInvalidation(
- pViewShell,
- bColsAffected, bRowsAffected,
- true /* bSizes*/, true /* bHidden */, true /* bFiltered */,
- true /* bGroups */, nTab);
- }
- }
+ if (bColsAffected)
+ ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, COLUMN_HEADER, nTab);
+
+ if (bRowsAffected)
+ ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, ROW_HEADER, nTab);
+
+ ScTabViewShell::notifyAllViewsSheetGeomInvalidation(
+ pViewShell,
+ bColsAffected, bRowsAffected,
+ true /* bSizes*/, true /* bHidden */, true /* bFiltered */,
+ true /* bGroups */, nTab);
}
void ScUndoInsertCells::Undo()
@@ -540,28 +540,27 @@ void ScUndoDeleteCells::DoChange( const bool bUndo )
pDocShell->PostDataChanged();
// CellContentChanged comes with the selection
- if (pViewShell)
- {
- if (comphelper::LibreOfficeKit::isActive())
- {
- SCTAB nTab = pViewShell->GetViewData().GetTabNo();
- bool bColsAffected = (eCmd == DelCellCmd::Cols || eCmd == DelCellCmd::CellsLeft);
- bool bRowsAffected = (eCmd == DelCellCmd::Rows || eCmd == DelCellCmd::CellsUp);
+ if (!pViewShell)
+ return;
- if (bColsAffected)
- ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, COLUMN_HEADER, nTab);
+ if (!comphelper::LibreOfficeKit::isActive())
+ return;
- if (bRowsAffected)
- ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, ROW_HEADER, nTab);
+ SCTAB nTab = pViewShell->GetViewData().GetTabNo();
+ bool bColsAffected = (eCmd == DelCellCmd::Cols || eCmd == DelCellCmd::CellsLeft);
+ bool bRowsAffected = (eCmd == DelCellCmd::Rows || eCmd == DelCellCmd::CellsUp);
- ScTabViewShell::notifyAllViewsSheetGeomInvalidation(
- pViewShell,
- bColsAffected, bRowsAffected,
- true /* bSizes*/, true /* bHidden */, true /* bFiltered */,
- true /* bGroups */, nTab);
- }
+ if (bColsAffected)
+ ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, COLUMN_HEADER, nTab);
- }
+ if (bRowsAffected)
+ ScTabViewShell::notifyAllViewsHeaderInvalidation(pViewShell, ROW_HEADER, nTab);
+
+ ScTabViewShell::notifyAllViewsSheetGeomInvalidation(
+ pViewShell,
+ bColsAffected, bRowsAffected,
+ true /* bSizes*/, true /* bHidden */, true /* bFiltered */,
+ true /* bGroups */, nTab);
}
@@ -1170,18 +1169,18 @@ void ScUndoPaste::Redo()
void ScUndoPaste::Repeat(SfxRepeatTarget& rTarget)
{
- if (dynamic_cast<const ScTabViewTarget*>( &rTarget) != nullptr)
+ if (dynamic_cast<const ScTabViewTarget*>( &rTarget) == nullptr)
+ return;
+
+ ScTabViewShell* pViewSh = static_cast<ScTabViewTarget&>(rTarget).GetViewShell();
+ // keep a reference in case the clipboard is changed during PasteFromClip
+ const ScTransferObj* pOwnClip = ScTransferObj::GetOwnClipboard(ScTabViewShell::GetClipData(pViewSh->GetViewData().GetActiveWin()));
+ if (pOwnClip)
{
- ScTabViewShell* pViewSh = static_cast<ScTabViewTarget&>(rTarget).GetViewShell();
- // keep a reference in case the clipboard is changed during PasteFromClip
- const ScTransferObj* pOwnClip = ScTransferObj::GetOwnClipboard(ScTabViewShell::GetClipData(pViewSh->GetViewData().GetActiveWin()));
- if (pOwnClip)
- {
- pViewSh->PasteFromClip( nFlags, pOwnClip->GetDocument(),
- aPasteOptions.nFunction, aPasteOptions.bSkipEmpty, aPasteOptions.bTranspose,
- aPasteOptions.bAsLink, aPasteOptions.eMoveMode, InsertDeleteFlags::NONE,
- true ); // allow warning dialog
- }
+ pViewSh->PasteFromClip( nFlags, pOwnClip->GetDocument(),
+ aPasteOptions.nFunction, aPasteOptions.bSkipEmpty, aPasteOptions.bTranspose,
+ aPasteOptions.bAsLink, aPasteOptions.eMoveMode, InsertDeleteFlags::NONE,
+ true ); // allow warning dialog
}
}
@@ -1858,21 +1857,21 @@ void ScUndoSelectionStyle::Redo()
void ScUndoSelectionStyle::Repeat(SfxRepeatTarget& rTarget)
{
- if (dynamic_cast<const ScTabViewTarget*>( &rTarget) != nullptr)
- {
- ScDocument& rDoc = pDocShell->GetDocument();
- ScStyleSheetPool* pStlPool = rDoc.GetStyleSheetPool();
- ScStyleSheet* pStyleSheet = static_cast<ScStyleSheet*>( pStlPool->
- Find( aStyleName, SfxStyleFamily::Para ));
- if (!pStyleSheet)
- {
- OSL_FAIL("StyleSheet not found");
- return;
- }
+ if (dynamic_cast<const ScTabViewTarget*>( &rTarget) == nullptr)
+ return;
- ScTabViewShell& rViewShell = *static_cast<ScTabViewTarget&>(rTarget).GetViewShell();
- rViewShell.SetStyleSheetToMarked( pStyleSheet );
+ ScDocument& rDoc = pDocShell->GetDocument();
+ ScStyleSheetPool* pStlPool = rDoc.GetStyleSheetPool();
+ ScStyleSheet* pStyleSheet = static_cast<ScStyleSheet*>( pStlPool->
+ Find( aStyleName, SfxStyleFamily::Para ));
+ if (!pStyleSheet)
+ {
+ OSL_FAIL("StyleSheet not found");
+ return;
}
+
+ ScTabViewShell& rViewShell = *static_cast<ScTabViewTarget&>(rTarget).GetViewShell();
+ rViewShell.SetStyleSheetToMarked( pStyleSheet );
}
bool ScUndoSelectionStyle::CanRepeat(SfxRepeatTarget& rTarget) const
diff --git a/sc/source/ui/undo/undocell.cxx b/sc/source/ui/undo/undocell.cxx
index 345e85ac4a7d..b34426c8f4d9 100644
--- a/sc/source/ui/undo/undocell.cxx
+++ b/sc/source/ui/undo/undocell.cxx
@@ -812,18 +812,18 @@ void ScUndoReplaceNote::DoInsertNote( const ScNoteData& rNoteData )
void ScUndoReplaceNote::DoRemoveNote( const ScNoteData& rNoteData )
{
- if( rNoteData.mxCaption )
+ if( !rNoteData.mxCaption )
+ return;
+
+ ScDocument& rDoc = pDocShell->GetDocument();
+ OSL_ENSURE( rDoc.GetNote(maPos), "ScUndoReplaceNote::DoRemoveNote - missing cell note" );
+ if( std::unique_ptr<ScPostIt> pNote = rDoc.ReleaseNote( maPos ) )
{
- ScDocument& rDoc = pDocShell->GetDocument();
- OSL_ENSURE( rDoc.GetNote(maPos), "ScUndoReplaceNote::DoRemoveNote - missing cell note" );
- if( std::unique_ptr<ScPostIt> pNote = rDoc.ReleaseNote( maPos ) )
- {
- /* Forget pointer to caption object to suppress removing the
- caption object from the drawing layer while deleting pNote
- (removing the caption is done by a drawing undo action). */
- pNote->ForgetCaption();
- ScDocShell::LOKCommentNotify(LOKCommentNotificationType::Remove, &rDoc, maPos, pNote.get());
- }
+ /* Forget pointer to caption object to suppress removing the
+ caption object from the drawing layer while deleting pNote
+ (removing the caption is done by a drawing undo action). */
+ pNote->ForgetCaption();
+ ScDocShell::LOKCommentNotify(LOKCommentNotificationType::Remove, &rDoc, maPos, pNote.get());
}
}
diff --git a/sc/source/ui/undo/undodat.cxx b/sc/source/ui/undo/undodat.cxx
index eb356af9da62..30a1a040c7a6 100644
--- a/sc/source/ui/undo/undodat.cxx
+++ b/sc/source/ui/undo/undodat.cxx
@@ -929,24 +929,24 @@ void ScUndoAutoFilter::DoChange( bool bUndo )
pDBData = pColl->getNamedDBs().findByUpperName(ScGlobal::getCharClassPtr()->uppercase(aDBName));
}
- if ( pDBData )
- {
- pDBData->SetAutoFilter( bNewFilter );
+ if ( !pDBData )
+ return;
- SCCOL nRangeX1;
- SCROW nRangeY1;
- SCCOL nRangeX2;
- SCROW nRangeY2;
- SCTAB nRangeTab;
- pDBData->GetArea( nRangeTab, nRangeX1, nRangeY1, nRangeX2, nRangeY2 );
+ pDBData->SetAutoFilter( bNewFilter );
- if ( bNewFilter )
- rDoc.ApplyFlagsTab( nRangeX1, nRangeY1, nRangeX2, nRangeY1, nRangeTab, ScMF::Auto );
- else
- rDoc.RemoveFlagsTab( nRangeX1, nRangeY1, nRangeX2, nRangeY1, nRangeTab, ScMF::Auto );
+ SCCOL nRangeX1;
+ SCROW nRangeY1;
+ SCCOL nRangeX2;
+ SCROW nRangeY2;
+ SCTAB nRangeTab;
+ pDBData->GetArea( nRangeTab, nRangeX1, nRangeY1, nRangeX2, nRangeY2 );
- pDocShell->PostPaint( nRangeX1, nRangeY1, nRangeTab, nRangeX2, nRangeY1, nRangeTab, PaintPartFlags::Grid );
- }
+ if ( bNewFilter )
+ rDoc.ApplyFlagsTab( nRangeX1, nRangeY1, nRangeX2, nRangeY1, nRangeTab, ScMF::Auto );
+ else
+ rDoc.RemoveFlagsTab( nRangeX1, nRangeY1, nRangeX2, nRangeY1, nRangeTab, ScMF::Auto );
+
+ pDocShell->PostPaint( nRangeX1, nRangeY1, nRangeTab, nRangeX2, nRangeY1, nRangeTab, PaintPartFlags::Grid );
}
void ScUndoAutoFilter::Undo()
diff --git a/sc/source/ui/undo/undoutil.cxx b/sc/source/ui/undo/undoutil.cxx
index d89905cbd685..76789b8b7857 100644
--- a/sc/source/ui/undo/undoutil.cxx
+++ b/sc/source/ui/undo/undoutil.cxx
@@ -35,19 +35,19 @@ void ScUndoUtil::MarkSimpleBlock( const ScDocShell* pDocShell,
return;
ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell();
- if (pViewShell)
- {
- SCTAB nViewTab = pViewShell->GetViewData().GetTabNo();
- if ( nViewTab < nStartZ || nViewTab > nEndZ )
- pViewShell->SetTabNo( nStartZ );
+ if (!pViewShell)
+ return;
- pViewShell->DoneBlockMode();
- pViewShell->MoveCursorAbs( nStartX, nStartY, SC_FOLLOW_JUMP, false, false );
- pViewShell->InitOwnBlockMode();
- pViewShell->GetViewData().GetMarkData().
- SetMarkArea( ScRange( nStartX, nStartY, nStartZ, nEndX, nEndY, nEndZ ) );
- pViewShell->MarkDataChanged();
- }
+ SCTAB nViewTab = pViewShell->GetViewData().GetTabNo();
+ if ( nViewTab < nStartZ || nViewTab > nEndZ )
+ pViewShell->SetTabNo( nStartZ );
+
+ pViewShell->DoneBlockMode();
+ pViewShell->MoveCursorAbs( nStartX, nStartY, SC_FOLLOW_JUMP, false, false );
+ pViewShell->InitOwnBlockMode();
+ pViewShell->GetViewData().GetMarkData().
+ SetMarkArea( ScRange( nStartX, nStartY, nStartZ, nEndX, nEndY, nEndZ ) );
+ pViewShell->MarkDataChanged();
}
void ScUndoUtil::MarkSimpleBlock( const ScDocShell* pDocShell,