summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXisco Fauli <xiscofauli@libreoffice.org>2024-05-30 13:39:31 +0200
committerXisco Fauli <xiscofauli@libreoffice.org>2024-05-31 09:25:03 +0200
commit5da4acd4818741c3b68be211bd7a21e4c080ed4d (patch)
tree2e3bfbdd3a991d28a4a641b33689663b1f2b6b96
parentac3f2bd367743cc28fe4728279c65125c6f30e7a (diff)
sd: Reduce number of calls to GetMarkedObjectList()
From 211 to 129 Change-Id: I2ccb4261f5f842e7f1514bc0c8eab2591ead173e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168256 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r--sd/source/ui/dlg/tpaction.cxx4
-rw-r--r--sd/source/ui/func/fuconstr.cxx10
-rw-r--r--sd/source/ui/func/fucopy.cxx14
-rw-r--r--sd/source/ui/func/fudraw.cxx17
-rw-r--r--sd/source/ui/func/fuediglu.cxx3
-rw-r--r--sd/source/ui/func/fuinsert.cxx4
-rw-r--r--sd/source/ui/func/fuline.cxx2
-rw-r--r--sd/source/ui/func/fumorph.cxx2
-rw-r--r--sd/source/ui/func/fupoor.cxx7
-rw-r--r--sd/source/ui/func/fusel.cxx19
-rw-r--r--sd/source/ui/func/futempl.cxx3
-rw-r--r--sd/source/ui/func/futext.cxx16
-rw-r--r--sd/source/ui/func/futhes.cxx5
-rw-r--r--sd/source/ui/func/futransf.cxx7
-rw-r--r--sd/source/ui/func/fuvect.cxx2
-rw-r--r--sd/source/ui/func/smarttag.cxx3
-rw-r--r--sd/source/ui/view/Outliner.cxx7
-rw-r--r--sd/source/ui/view/drawview.cxx5
-rw-r--r--sd/source/ui/view/drbezob.cxx5
-rw-r--r--sd/source/ui/view/drviews1.cxx10
-rw-r--r--sd/source/ui/view/drviews2.cxx27
-rw-r--r--sd/source/ui/view/drviews3.cxx12
-rw-r--r--sd/source/ui/view/drviews4.cxx16
-rw-r--r--sd/source/ui/view/drviews6.cxx7
-rw-r--r--sd/source/ui/view/drviews7.cxx13
-rw-r--r--sd/source/ui/view/drviews8.cxx4
-rw-r--r--sd/source/ui/view/drviews9.cxx7
-rw-r--r--sd/source/ui/view/drviewsa.cxx6
-rw-r--r--sd/source/ui/view/drviewse.cxx17
-rw-r--r--sd/source/ui/view/drviewsf.cxx22
-rw-r--r--sd/source/ui/view/drviewsg.cxx3
-rw-r--r--sd/source/ui/view/sdview.cxx18
-rw-r--r--sd/source/ui/view/sdview2.cxx34
-rw-r--r--sd/source/ui/view/sdview3.cxx7
-rw-r--r--sd/source/ui/view/sdview5.cxx6
-rw-r--r--sd/source/ui/view/viewoverlaymanager.cxx3
-rw-r--r--sd/source/ui/view/viewshe3.cxx3
-rw-r--r--sd/source/ui/view/viewshel.cxx5
38 files changed, 192 insertions, 163 deletions
diff --git a/sd/source/ui/dlg/tpaction.cxx b/sd/source/ui/dlg/tpaction.cxx
index f79005b7ef1d..3d0f391edc17 100644
--- a/sd/source/ui/dlg/tpaction.cxx
+++ b/sd/source/ui/dlg/tpaction.cxx
@@ -157,9 +157,9 @@ void SdTPAction::Construct()
SdrGrafObj* pGrafObj = nullptr;
bool bOLEAction = false;
- if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
diff --git a/sd/source/ui/func/fuconstr.cxx b/sd/source/ui/func/fuconstr.cxx
index b5e4b1b15bb0..01f56174980d 100644
--- a/sd/source/ui/func/fuconstr.cxx
+++ b/sd/source/ui/func/fuconstr.cxx
@@ -85,13 +85,14 @@ bool FuConstruct::MouseButtonDown(const MouseEvent& rMEvt)
SdrHdl* pHdl = mpView->PickHandle(aMDPos);
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if ( pHdl != nullptr || mpView->IsMarkedHit(aMDPos, nHitLog) )
{
sal_uInt16 nDrgLog = sal_uInt16 ( mpWindow->PixelToLogic(Size(mpView->GetDragThresholdPixels(),0)).Width() );
mpView->BegDragObj(aMDPos, nullptr, pHdl, nDrgLog);
bReturn = true;
}
- else if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ else if ( rMarkList.GetMarkCount() != 0 )
{
mpView->UnmarkAll();
bReturn = true;
@@ -166,7 +167,8 @@ bool FuConstruct::MouseButtonUp(const MouseEvent& rMEvt)
mpWindow->ReleaseMouse();
sal_uInt16 nDrgLog = sal_uInt16 ( mpWindow->PixelToLogic(Size(mpView->GetDragThresholdPixels(),0)).Width() );
- if ( mpView->GetMarkedObjectList().GetMarkCount() == 0 )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() == 0 )
{
SdrPageView* pPV;
sal_uInt16 nHitLog = sal_uInt16 ( mpWindow->PixelToLogic(Size(HITPIX,0)).Width() );
@@ -187,9 +189,9 @@ bool FuConstruct::MouseButtonUp(const MouseEvent& rMEvt)
// toggle between selection and rotation
SdrObject* pSingleObj = nullptr;
- if (mpView->GetMarkedObjectList().GetMarkCount()==1)
+ if (rMarkList.GetMarkCount()==1)
{
- pSingleObj = mpView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ pSingleObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
}
const bool bTiledRendering = comphelper::LibreOfficeKit::isActive();
diff --git a/sd/source/ui/func/fucopy.cxx b/sd/source/ui/func/fucopy.cxx
index 5df9f55ecfad..4976683292ec 100644
--- a/sd/source/ui/func/fucopy.cxx
+++ b/sd/source/ui/func/fucopy.cxx
@@ -62,11 +62,12 @@ rtl::Reference<FuPoor> FuCopy::Create( ViewShell* pViewSh, ::sd::Window* pWin, :
void FuCopy::DoExecute( SfxRequest& rReq )
{
- if( mpView->GetMarkedObjectList().GetMarkCount() == 0 )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() == 0 )
return;
// Undo
- OUString aString = mpView->GetMarkedObjectList().GetMarkDescription() +
+ OUString aString = rMarkList.GetMarkDescription() +
" " + SdResId( STR_UNDO_COPYOBJECTS );
mpView->BegUndo( aString );
@@ -174,8 +175,7 @@ void FuCopy::DoExecute( SfxRequest& rReq )
bWaiting = true;
}
- const SdrMarkList aMarkList( mpView->GetMarkedObjectList() );
- const size_t nMarkCount = aMarkList.GetMarkCount();
+ const size_t nMarkCount = rMarkList.GetMarkCount();
SdrObject* pObj = nullptr;
// calculate number of possible copies
@@ -212,8 +212,8 @@ void FuCopy::DoExecute( SfxRequest& rReq )
mpView->CopyMarked();
// get newly selected objects
- SdrMarkList aCopyMarkList( mpView->GetMarkedObjectList() );
- const size_t nCopyMarkCount = aMarkList.GetMarkCount();
+ SdrMarkList aCopyMarkList( rMarkList );
+ const size_t nCopyMarkCount = rMarkList.GetMarkCount();
// set protection flags at marked copies to null
for( size_t j = 0; j < nCopyMarkCount; ++j )
@@ -244,7 +244,7 @@ void FuCopy::DoExecute( SfxRequest& rReq )
{
for( size_t j = 0; j < nMarkCount; ++j )
{
- SdrObject* pSrcObj = aMarkList.GetMark( j )->GetMarkedSdrObj();
+ SdrObject* pSrcObj = rMarkList.GetMark( j )->GetMarkedSdrObj();
SdrObject* pDstObj = aCopyMarkList.GetMark( j )->GetMarkedSdrObj();
if( pSrcObj && pDstObj &&
diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx
index a65bae0a6fa8..3e36d5d78f76 100644
--- a/sd/source/ui/func/fudraw.cxx
+++ b/sd/source/ui/func/fudraw.cxx
@@ -317,6 +317,7 @@ bool FuDraw::MouseButtonUp(const MouseEvent& rMEvt)
bool FuDraw::KeyInput(const KeyEvent& rKEvt)
{
bool bReturn = false;
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
switch ( rKEvt.GetKeyCode().GetCode() )
{
@@ -369,7 +370,7 @@ bool FuDraw::KeyInput(const KeyEvent& rKEvt)
if(!mpView->MarkNextObj( !aCode.IsShift() ))
{
//If there is only one object, don't do the UnmarkAllObj() & MarkNextObj().
- if ( mpView->HasMultipleMarkableObjects() && mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ if ( mpView->HasMultipleMarkableObjects() && rMarkList.GetMarkCount() != 0 )
{
// No next object: go over open end and get first from
// the other side
@@ -378,7 +379,7 @@ bool FuDraw::KeyInput(const KeyEvent& rKEvt)
}
}
- if(mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ if(rMarkList.GetMarkCount() != 0)
mpView->MakeVisible(mpView->GetAllMarkedRect(), *mpWindow);
bReturn = true;
@@ -396,7 +397,7 @@ bool FuDraw::KeyInput(const KeyEvent& rKEvt)
mpView->UnmarkAllObj();
mpView->MarkNextObj();
- if(mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ if(rMarkList.GetMarkCount() != 0)
mpView->MakeVisible(mpView->GetAllMarkedRect(), *mpWindow);
bReturn = true;
@@ -414,7 +415,7 @@ bool FuDraw::KeyInput(const KeyEvent& rKEvt)
mpView->UnmarkAllObj();
mpView->MarkNextObj(true);
- if(mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ if(rMarkList.GetMarkCount() != 0)
mpView->MakeVisible(mpView->GetAllMarkedRect(), *mpWindow);
bReturn = true;
@@ -628,10 +629,9 @@ void FuDraw::DoubleClick(const MouseEvent& rMEvt)
{
sal_uInt16 nHitLog = sal_uInt16 ( mpWindow->PixelToLogic(Size(HITPIX,0)).Width() );
- if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
@@ -773,6 +773,7 @@ bool FuDraw::SetHelpText(const SdrObject* pObj, const Point& rPosPixel, const Sd
bool FuDraw::cancel()
{
bool bReturn = false;
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if ( mpView->IsAction() )
{
@@ -790,7 +791,7 @@ bool FuDraw::cancel()
rBindings.Invalidate( SID_PARASPACE_INCREASE );
rBindings.Invalidate( SID_PARASPACE_DECREASE );
}
- else if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ else if ( rMarkList.GetMarkCount() != 0 )
{
const SdrHdlList& rHdlList = mpView->GetHdlList();
SdrHdl* pHdl = rHdlList.GetFocusHdl();
diff --git a/sd/source/ui/func/fuediglu.cxx b/sd/source/ui/func/fuediglu.cxx
index 15aea9cc0e2e..442c0fbb7e61 100644
--- a/sd/source/ui/func/fuediglu.cxx
+++ b/sd/source/ui/func/fuediglu.cxx
@@ -167,13 +167,14 @@ bool FuEditGluePoints::MouseButtonDown(const MouseEvent& rMEvt)
}
}
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (bMarked &&
(!rMEvt.IsShift() || eHit == SdrHitKind::MarkedObject))
{
// move object
mpView->BegDragObj(aMDPos, nullptr, aVEvt.mpHdl, nDrgLog);
}
- else if (mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ else if (rMarkList.GetMarkCount() != 0)
{
// select gluepoint
if (!rMEvt.IsShift())
diff --git a/sd/source/ui/func/fuinsert.cxx b/sd/source/ui/func/fuinsert.cxx
index d0fde55e4b72..55dfa5cf105d 100644
--- a/sd/source/ui/func/fuinsert.cxx
+++ b/sd/source/ui/func/fuinsert.cxx
@@ -549,10 +549,10 @@ void FuInsertOLE::DoExecute( SfxRequest& rReq )
}
}
- if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() != 0 )
{
// as an empty OLE object available?
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (rMarkList.GetMarkCount() == 1)
{
diff --git a/sd/source/ui/func/fuline.cxx b/sd/source/ui/func/fuline.cxx
index 640a5bfc5b09..0e8eb78f39e4 100644
--- a/sd/source/ui/func/fuline.cxx
+++ b/sd/source/ui/func/fuline.cxx
@@ -64,7 +64,7 @@ void FuLine::DoExecute( SfxRequest& rReq )
SfxItemSet aNewAttr( mpDoc->GetPool() );
mpView->GetAttributes( aNewAttr );
- bool bHasMarked = mpView->GetMarkedObjectList().GetMarkCount() != 0;
+ bool bHasMarked = rMarkList.GetMarkCount() != 0;
SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create();
VclPtr<SfxAbstractTabDialog> pDlg( pFact->CreateSvxLineTabDialog(mpViewShell->GetFrameWeld(), &aNewAttr, mpDoc, pObj, bHasMarked) );
diff --git a/sd/source/ui/func/fumorph.cxx b/sd/source/ui/func/fumorph.cxx
index 83ea1d1c1b03..e62f21e1a7e3 100644
--- a/sd/source/ui/func/fumorph.cxx
+++ b/sd/source/ui/func/fumorph.cxx
@@ -162,7 +162,7 @@ void FuMorph::DoExecute( SfxRequest& )
ImpMorphPolygons(aPolyPoly1, aPolyPoly2, pDlg->GetFadeSteps(), aPolyPolyList);
- OUString aString = mpView->GetMarkedObjectList().GetMarkDescription() +
+ OUString aString = rMarkList.GetMarkDescription() +
" " + SdResId(STR_UNDO_MORPHING);
mpView->BegUndo(aString);
diff --git a/sd/source/ui/func/fupoor.cxx b/sd/source/ui/func/fupoor.cxx
index dc0a39dff5a2..2a1c9023015b 100644
--- a/sd/source/ui/func/fupoor.cxx
+++ b/sd/source/ui/func/fupoor.cxx
@@ -593,7 +593,8 @@ bool FuPoor::KeyInput(const KeyEvent& rKEvt)
nY = 0;
}
- if (mpView->GetMarkedObjectList().GetMarkCount() != 0 && !rKEvt.GetKeyCode().IsMod1() &&
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() != 0 && !rKEvt.GetKeyCode().IsMod1() &&
!mpDocSh->IsReadOnly())
{
const SdrHdlList& rHdlList = mpView->GetHdlList();
@@ -1085,10 +1086,10 @@ bool FuPoor::doConstructOrthogonal() const
{
// Check whether a media object is selected
bool bResizeKeepRatio = false;
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
// tdf#89758 Avoid interactive crop preview from being proportionally scaled by default.
- if (mpView->GetMarkedObjectList().GetMarkCount() != 0 && mpView->GetDragMode() != SdrDragMode::Crop)
+ if (rMarkList.GetMarkCount() != 0 && mpView->GetDragMode() != SdrDragMode::Crop)
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (rMarkList.GetMarkCount() == 1)
{
SdrObjKind aObjIdentifier = rMarkList.GetMark(0)->GetMarkedSdrObj()->GetObjIdentifier();
diff --git a/sd/source/ui/func/fusel.cxx b/sd/source/ui/func/fusel.cxx
index 2803c8f32633..56a0816128ce 100644
--- a/sd/source/ui/func/fusel.cxx
+++ b/sd/source/ui/func/fusel.cxx
@@ -406,7 +406,8 @@ bool FuSelection::MouseButtonDown(const MouseEvent& rMEvt)
{
bool bToggle = false;
- if (rMEvt.IsShift() && mpView->GetMarkedObjectList().GetMarkCount() > 1)
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if (rMEvt.IsShift() && rMarkList.GetMarkCount() > 1)
{
// No Toggle on single selection
bToggle = true;
@@ -561,6 +562,7 @@ bool FuSelection::MouseButtonDown(const MouseEvent& rMEvt)
}
}
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (bMarked &&
(!rMEvt.IsShift() || eHit == SdrHitKind::MarkedObject))
{
@@ -568,7 +570,7 @@ bool FuSelection::MouseButtonDown(const MouseEvent& rMEvt)
if ( ! rMEvt.IsRight())
mpView->BegDragObj(aMDPos, nullptr, aVEvt.mpHdl, nDrgLog);
}
- else if (mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ else if (rMarkList.GetMarkCount() != 0)
{
/**************************************************************
* Select gluepoint
@@ -703,9 +705,10 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
// check for single object selected
SdrObject* pSingleObj = nullptr;
- if (mpView->GetMarkedObjectList().GetMarkCount()==1)
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount()==1)
{
- pSingleObj = mpView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ pSingleObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
}
// Check for click on svx::diagram::DiagramFrameHdl
@@ -848,11 +851,12 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
pHdl = nullptr;
mpWindow->ReleaseMouse();
SdrObject* pSingleObj = nullptr;
- const size_t nMarkCount = mpView->GetMarkedObjectList().GetMarkCount();
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ const size_t nMarkCount = rMarkList.GetMarkCount();
if (nMarkCount==1)
{
- pSingleObj = mpView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ pSingleObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
}
if ( (nSlotId != SID_OBJECT_SELECT && nMarkCount==0) ||
@@ -1034,7 +1038,8 @@ bool FuSelection::KeyInput(const KeyEvent& rKEvt)
{
bReturn = FuDraw::KeyInput(rKEvt);
- if(mpView->GetMarkedObjectList().GetMarkCount() == 0)
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if(rMarkList.GetMarkCount() == 0)
{
mpView->ResetCreationActive();
diff --git a/sd/source/ui/func/futempl.cxx b/sd/source/ui/func/futempl.cxx
index 324af035aa27..a96979d4121a 100644
--- a/sd/source/ui/func/futempl.cxx
+++ b/sd/source/ui/func/futempl.cxx
@@ -596,7 +596,8 @@ void FuTemplate::DoExecute( SfxRequest& rReq )
case SID_STYLE_UPDATE_BY_EXAMPLE:
{
- if ((mpView->GetMarkedObjectList().GetMarkCount() != 0 && mpView->GetMarkedObjectList().GetMarkCount() == 1) ||
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if ((rMarkList.GetMarkCount() != 0 && rMarkList.GetMarkCount() == 1) ||
dynamic_cast< const OutlineView *>( mpView ) != nullptr)
{
pStyleSheet = mpView->GetStyleSheet();
diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx
index 4383f9394b08..d90aefc7f542 100644
--- a/sd/source/ui/func/futext.cxx
+++ b/sd/source/ui/func/futext.cxx
@@ -186,6 +186,7 @@ void FuText::DoExecute( SfxRequest& )
MouseEvent aMEvt(mpWindow->GetPointerPosPixel());
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (nSlotId == SID_TEXTEDIT)
{
// Try to select an object
@@ -196,10 +197,8 @@ void FuText::DoExecute( SfxRequest& )
mxTextObj = DynCastSdrTextObj( aVEvt.mpObj );
}
- else if (mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ else if (rMarkList.GetMarkCount() != 0)
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
@@ -208,10 +207,8 @@ void FuText::DoExecute( SfxRequest& )
}
// check for table
- if (mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ if (rMarkList.GetMarkCount() != 0)
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
@@ -719,7 +716,8 @@ bool FuText::MouseButtonUp(const MouseEvent& rMEvt)
ForcePointer(&rMEvt);
mpWindow->ReleaseMouse();
- if ( mpView && mpView->GetMarkedObjectList().GetMarkCount() == 0 )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if ( mpView && rMarkList.GetMarkCount() == 0 )
{
sal_uInt16 nDrgLog1 = sal_uInt16 ( mpWindow->PixelToLogic(Size(mpView->GetDragThresholdPixels(),0)).Width() );
if ( std::abs(aMDPos.X() - aPnt.X()) < nDrgLog1 &&
@@ -1214,6 +1212,7 @@ void FuText::ReceiveRequest(SfxRequest& rReq)
MouseEvent aMEvt(mpWindow->GetPointerPosPixel());
mxTextObj = nullptr;
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (nSlotId == SID_TEXTEDIT)
{
@@ -1234,9 +1233,8 @@ void FuText::ReceiveRequest(SfxRequest& rReq)
}
}
}
- else if (mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ else if (rMarkList.GetMarkCount() != 0)
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
if (rMarkList.GetMarkCount() == 1)
{
diff --git a/sd/source/ui/func/futhes.cxx b/sd/source/ui/func/futhes.cxx
index 74521700218a..4c5cfedca69c 100644
--- a/sd/source/ui/func/futhes.cxx
+++ b/sd/source/ui/func/futhes.cxx
@@ -68,11 +68,10 @@ void FuThesaurus::DoExecute(SfxRequest& rReq)
if (dynamic_cast< DrawViewShell *>( mpViewShell ))
{
SdrTextObj* pTextObj = nullptr;
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
- if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 )
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
-
if ( rMarkList.GetMarkCount() == 1 )
{
SdrMark* pMark = rMarkList.GetMark(0);
diff --git a/sd/source/ui/func/futransf.cxx b/sd/source/ui/func/futransf.cxx
index 3b1790028102..d9e92c000413 100644
--- a/sd/source/ui/func/futransf.cxx
+++ b/sd/source/ui/func/futransf.cxx
@@ -52,7 +52,8 @@ namespace {
void setUndo(::sd::View* pView, const SfxItemSet* pArgs, bool addPageMargin)
{
// Undo
- OUString aString = pView->GetMarkedObjectList().GetMarkDescription() +
+ const SdrMarkList& rMarkList = pView->GetMarkedObjectList();
+ OUString aString = rMarkList.GetMarkDescription() +
" " + SdResId(STR_TRANSFORM);
pView->BegUndo(aString);
pView->SetGeoAttrToMarked(*pArgs, addPageMargin);
@@ -64,7 +65,8 @@ void setUndo(::sd::View* pView, const SfxItemSet* pArgs, bool addPageMargin)
void FuTransform::DoExecute( SfxRequest& rReq )
{
- if (mpView->GetMarkedObjectList().GetMarkCount() == 0)
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() == 0)
return;
const SfxItemSet* pArgs = rReq.GetArgs();
@@ -82,7 +84,6 @@ void FuTransform::DoExecute( SfxRequest& rReq )
VclPtr<SfxAbstractTabDialog> pDlg;
bool bWelded = false;
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
if( rMarkList.GetMarkCount() == 1 &&
pObj->GetObjInventor() == SdrInventor::Default &&
diff --git a/sd/source/ui/func/fuvect.cxx b/sd/source/ui/func/fuvect.cxx
index 63d0408979a3..def172d573bf 100644
--- a/sd/source/ui/func/fuvect.cxx
+++ b/sd/source/ui/func/fuvect.cxx
@@ -73,7 +73,7 @@ void FuVectorize::DoExecute( SfxRequest& )
if( pPageView && rMtf.GetActionSize() )
{
rtl::Reference<SdrGrafObj> pVectObj = SdrObject::Clone(static_cast<SdrGrafObj&>(*pObj), pObj->getSdrModelFromSdrObject());
- OUString aStr = mpView->GetMarkedObjectList().GetMarkDescription() +
+ OUString aStr = rMarkList.GetMarkDescription() +
" " + SdResId( STR_UNDO_VECTORIZE );
mpView->BegUndo( aStr );
pVectObj->SetGraphic( rMtf );
diff --git a/sd/source/ui/func/smarttag.cxx b/sd/source/ui/func/smarttag.cxx
index 99d0e14d9248..f9aeec99eb1b 100644
--- a/sd/source/ui/func/smarttag.cxx
+++ b/sd/source/ui/func/smarttag.cxx
@@ -163,7 +163,8 @@ void SmartTagSet::select( const SmartTagReference& xTag )
mxSelectedTag = xTag;
mxSelectedTag->select();
mrView.SetPossibilitiesDirty();
- if( mrView.GetMarkedObjectList().GetMarkCount() > 0 )
+ const SdrMarkList& rMarkList = mrView.GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() > 0 )
mrView.UnmarkAllObj();
else
mrView.updateHandles();
diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx
index 1ea3eba17955..4d00939fc53e 100644
--- a/sd/source/ui/view/Outliner.cxx
+++ b/sd/source/ui/view/Outliner.cxx
@@ -1412,7 +1412,8 @@ void SdOutliner::ShowEndOfSearchDialog()
}
OUString aString;
- if (mpView->GetMarkedObjectList().GetMarkCount() != 0)
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() != 0)
aString = SdResId(STR_END_SPELLING_OBJ);
else
aString = SdResId(STR_END_SPELLING);
@@ -1770,12 +1771,12 @@ void SdOutliner::SetViewShell (const std::shared_ptr<sd::ViewShell>& rpViewShell
void SdOutliner::HandleChangedSelection()
{
maMarkListCopy.clear();
- mbRestrictSearchToSelection = mpView->GetMarkedObjectList().GetMarkCount() != 0;
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ mbRestrictSearchToSelection = rMarkList.GetMarkCount() != 0;
if (!mbRestrictSearchToSelection)
return;
// Make a copy of the current mark list.
- const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
const size_t nCount = rMarkList.GetMarkCount();
if (nCount > 0)
{
diff --git a/sd/source/ui/view/drawview.cxx b/sd/source/ui/view/drawview.cxx
index 6880f83e2cd0..cfdadfae3ce7 100644
--- a/sd/source/ui/view/drawview.cxx
+++ b/sd/source/ui/view/drawview.cxx
@@ -541,10 +541,11 @@ void DrawView::DeleteMarked()
sd::UndoManager* pUndoManager = mrDoc.GetUndoManager();
DBG_ASSERT( pUndoManager, "sd::DrawView::DeleteMarked(), ui action without undo manager!?" );
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
if( pUndoManager )
{
OUString aUndo(SvxResId(STR_EditDelete));
- aUndo = aUndo.replaceFirst("%1", GetMarkedObjectList().GetMarkDescription());
+ aUndo = aUndo.replaceFirst("%1", rMarkList.GetMarkDescription());
ViewShellId nViewShellId = mpDrawViewShell ? mpDrawViewShell->GetViewShellBase().GetViewShellId() : ViewShellId(-1);
pUndoManager->EnterListAction(aUndo, aUndo, 0, nViewShellId);
}
@@ -552,7 +553,7 @@ void DrawView::DeleteMarked()
SdPage* pPage = nullptr;
bool bResetLayout = false;
- const size_t nMarkCount = GetMarkedObjectList().GetMarkCount();
+ const size_t nMarkCount = rMarkList.GetMarkCount();
if( nMarkCount )
{
SdrMarkList aList( GetMarkedObjectList() );
diff --git a/sd/source/ui/view/drbezob.cxx b/sd/source/ui/view/drbezob.cxx
index 863045043614..5ffa21e149fe 100644
--- a/sd/source/ui/view/drbezob.cxx
+++ b/sd/source/ui/view/drbezob.cxx
@@ -121,7 +121,8 @@ void BezierObjectBar::GetAttrState(SfxItemSet& rSet)
else
{
IPolyPolygonEditorController* pIPPEC = nullptr;
- if( mpView->GetMarkedObjectList().GetMarkCount() )
+ const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() )
pIPPEC = mpView;
else
pIPPEC = dynamic_cast< IPolyPolygonEditorController* >( mpView->getSmartTags().getSelected().get() );
@@ -273,7 +274,7 @@ void BezierObjectBar::Execute(SfxRequest& rReq)
}
}
- if( (pIPPEC == mpView) && mpView->GetMarkedObjectList().GetMarkCount() == 0 )
+ if( (pIPPEC == mpView) && rMarkList.GetMarkCount() == 0 )
mpViewSh->GetViewFrame()->GetDispatcher()->Execute(SID_OBJECT_SELECT, SfxCallMode::ASYNCHRON);
rReq.Ignore();
diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx
index 6bc11bef160b..df004aa0610e 100644
--- a/sd/source/ui/view/drviews1.cxx
+++ b/sd/source/ui/view/drviews1.cxx
@@ -167,10 +167,9 @@ void DrawViewShell::SelectionHasChanged()
SdrOle2Obj* pOleObj = nullptr;
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList(mpDrawView->GetMarkedObjectList());
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
@@ -753,10 +752,9 @@ void DrawViewShell::ResetActualPage()
*/
ErrCode DrawViewShell::DoVerb(sal_Int32 nVerb)
{
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList(mpDrawView->GetMarkedObjectList());
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index b8a8df1af3cc..12f5490c7b99 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -600,13 +600,13 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
DeactivateCurrentFunction();
sal_uInt16 nSId = rReq.GetSlot();
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
switch ( nSId )
{
case SID_OUTLINE_TEXT_AUTOFIT:
{
SfxUndoManager* pUndoManager = GetDocSh()->GetUndoManager();
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if( rMarkList.GetMarkCount() == 1 )
{
pUndoManager->EnterListAction(u""_ustr, u""_ustr, 0, GetViewShellBase().GetViewShellId());
@@ -1137,9 +1137,9 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
// exception to get good results for Svgs. This is how the code gets more
// and more crowded, at last I made a remark for myself to change this
// as one of the next tasks.
- if(1 == mpDrawView->GetMarkedObjectList().GetMarkCount())
+ if(1 == rMarkList.GetMarkCount())
{
- const SdrGrafObj* pSdrGrafObj = dynamic_cast< const SdrGrafObj* >(mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj());
+ const SdrGrafObj* pSdrGrafObj = dynamic_cast< const SdrGrafObj* >(rMarkList.GetMark(0)->GetMarkedSdrObj());
if(pSdrGrafObj && pSdrGrafObj->isEmbeddedVectorGraphicData())
{
@@ -1164,7 +1164,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
aGraphic);
// get some necessary info and ensure it
- const SdrMarkList& rMarkList(mpDrawView->GetMarkedObjectList());
const size_t nMarkCount(rMarkList.GetMarkCount());
SdrPageView* pPageView = mpDrawView->GetSdrPageView();
OSL_ENSURE(nMarkCount, "DrawViewShell::FuTemporary: SID_CONVERT_TO_BITMAP with empty selection (!)");
@@ -1230,7 +1229,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
}
else
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
const size_t nCount = rMarkList.GetMarkCount();
// For every presentation object a SfxItemSet of hard attributes
@@ -1360,7 +1358,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_SAVE_GRAPHIC:
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if( rMarkList.GetMarkCount() == 1 )
{
const SdrGrafObj* pObj = dynamic_cast<const SdrGrafObj*>(rMarkList.GetMark(0)->GetMarkedSdrObj());
@@ -1399,7 +1396,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_EXTERNAL_EDIT:
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if( rMarkList.GetMarkCount() == 1 )
{
SdrObject* pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
@@ -1420,7 +1416,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_COMPRESS_GRAPHIC:
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if( rMarkList.GetMarkCount() == 1 )
{
SdrObject* pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
@@ -1433,7 +1428,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
{
rtl::Reference<SdrGrafObj> pNewObject = dialog.GetCompressedSdrGrafObj();
SdrPageView* pPageView = mpDrawView->GetSdrPageView();
- OUString aUndoString = mpDrawView->GetMarkedObjectList().GetMarkDescription() + " Compress";
+ OUString aUndoString = rMarkList.GetMarkDescription() + " Compress";
mpDrawView->BegUndo( aUndoString );
mpDrawView->ReplaceObjectAtView( pObj, *pPageView, pNewObject.get() );
mpDrawView->EndUndo();
@@ -1477,7 +1472,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
SetCurrentFunction( FuTransform::Create( this, GetActiveWindow(), mpDrawView.get(), GetDoc(), rReq ) );
// tdf#138963 conditions tested for here must be the same as those
// of the early returns from FuTransform::DoExecute
- if (rReq.GetArgs() || mpDrawView->GetMarkedObjectList().GetMarkCount() == 0)
+ if (rReq.GetArgs() || rMarkList.GetMarkCount() == 0)
{
Invalidate(SID_RULER_OBJECT);
Cancel();
@@ -2662,10 +2657,10 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
{
// only allow for single object selection since the name of an object needs
// to be unique
- if(1 == mpDrawView->GetMarkedObjectList().GetMarkCount())
+ if(1 == rMarkList.GetMarkCount())
{
// #i68101#
- rtl::Reference<SdrObject> pSelected = mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ rtl::Reference<SdrObject> pSelected = rMarkList.GetMark(0)->GetMarkedSdrObj();
OSL_ENSURE(pSelected, "DrawViewShell::FuTemp03: nMarkCount, but no object (!)");
OUString aName(pSelected->GetName());
@@ -2701,9 +2696,9 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
// #i68101#
case SID_OBJECT_TITLE_DESCRIPTION:
{
- if(1 == mpDrawView->GetMarkedObjectList().GetMarkCount())
+ if(1 == rMarkList.GetMarkCount())
{
- rtl::Reference<SdrObject> pSelected = mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ rtl::Reference<SdrObject> pSelected = rMarkList.GetMark(0)->GetMarkedSdrObj();
OSL_ENSURE(pSelected, "DrawViewShell::FuTemp03: nMarkCount, but no object (!)");
OUString aTitle(pSelected->GetTitle());
OUString aDescription(pSelected->GetDescription());
@@ -2737,7 +2732,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_SETLAYER:
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
const size_t nMarkCount = rMarkList.GetMarkCount();
if (nMarkCount >= 1 && mpLayerTabBar)
{
@@ -2994,7 +2988,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
else if ( mpDrawView->IsImportMtfPossible() )
{
weld::WaitObject aWait(GetFrameWeld());
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
const size_t nCnt=rMarkList.GetMarkCount();
// determine the sum of meta objects of all selected meta files
@@ -3274,8 +3267,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
if ( GetViewFrame()->HasChildWindow( nId )
&& ( ( ViewShell::Implementation::GetImageMapDialog() ) != nullptr ) )
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
-
if ( rMarkList.GetMarkCount() == 1 )
UpdateIMapDlg( rMarkList.GetMark( 0 )->GetMarkedSdrObj() );
}
diff --git a/sd/source/ui/view/drviews3.cxx b/sd/source/ui/view/drviews3.cxx
index ce7bf798083e..8a4d33fee0ec 100644
--- a/sd/source/ui/view/drviews3.cxx
+++ b/sd/source/ui/view/drviews3.cxx
@@ -132,6 +132,7 @@ void DrawViewShell::ExecCtrl(SfxRequest& rReq)
}
}
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
// sal_uInt16 nSlot = rReq.GetSlot();
switch (nSlot)
{
@@ -348,10 +349,8 @@ void DrawViewShell::ExecCtrl(SfxRequest& rReq)
rReq.GetArgs()->Get(SID_OBJECTRESIZE);
::tools::Rectangle aRect( GetActiveWindow()->PixelToLogic( rRect.GetValue() ) );
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
@@ -487,8 +486,6 @@ void DrawViewShell::ExecCtrl(SfxRequest& rReq)
case SID_REGENERATE_DIAGRAM:
case SID_EDIT_DIAGRAM:
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
-
if (1 == rMarkList.GetMarkCount())
{
SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
@@ -928,12 +925,13 @@ void DrawViewShell::GetRulerState(SfxItemSet& rSet)
const bool bRTL = GetDoc() && GetDoc()->GetDefaultWritingMode() == css::text::WritingMode_RL_TB;
rSet.Put(SfxBoolItem(SID_RULER_TEXT_RIGHT_TO_LEFT, bRTL));
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
- if( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ if( rMarkList.GetMarkCount() != 0 )
{
if( mpDrawView->IsTextEdit() )
{
- SdrObject* pObj = mpDrawView->GetMarkedObjectList().GetMark( 0 )->GetMarkedSdrObj();
+ SdrObject* pObj = rMarkList.GetMark( 0 )->GetMarkedSdrObj();
if( pObj->GetObjInventor() == SdrInventor::Default)
{
SfxItemSet aEditAttr( GetDoc()->GetPool() );
diff --git a/sd/source/ui/view/drviews4.cxx b/sd/source/ui/view/drviews4.cxx
index 4297fc521b38..83ffcc9be39b 100644
--- a/sd/source/ui/view/drviews4.cxx
+++ b/sd/source/ui/view/drviews4.cxx
@@ -642,10 +642,11 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin)
else
{
// is something selected?
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 &&
- mpDrawView->GetMarkedObjectList().GetMarkCount() == 1 )
+ const SdrMarkList& rMarkList(mpDrawView->GetMarkedObjectList());
+ if (rMarkList.GetMarkCount() != 0 &&
+ rMarkList.GetMarkCount() == 1 )
{
- pObj = mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
if( HasCurrentFunction(SID_BEZIER_EDIT) && (dynamic_cast< SdrPathObj * >( pObj ) != nullptr ) )
{
aPopupId = "bezier";
@@ -781,8 +782,8 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin)
}
// multiple selection
- else if (mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 &&
- mpDrawView->GetMarkedObjectList().GetMarkCount() > 1 )
+ else if (rMarkList.GetMarkCount() != 0 &&
+ rMarkList.GetMarkCount() > 1 )
{
aPopupId = "multiselect";
}
@@ -808,11 +809,12 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin)
Point aMenuPos(GetActiveWindow()->GetSizePixel().Width()/2
,GetActiveWindow()->GetSizePixel().Height()/2);
+ const SdrMarkList& rMarkList(mpDrawView->GetMarkedObjectList());
//middle of the bounding rect if something is marked
- if( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 && mpDrawView->GetMarkedObjectList().GetMarkCount() >= 1 )
+ if( rMarkList.GetMarkCount() != 0 && rMarkList.GetMarkCount() >= 1 )
{
::tools::Rectangle aMarkRect;
- mpDrawView->GetMarkedObjectList().TakeBoundRect(nullptr,aMarkRect);
+ rMarkList.TakeBoundRect(nullptr,aMarkRect);
aMenuPos = GetActiveWindow()->LogicToPixel( aMarkRect.Center() );
//move the point into the visible window area
diff --git a/sd/source/ui/view/drviews6.cxx b/sd/source/ui/view/drviews6.cxx
index cc27855f469d..5b208c12d9df 100644
--- a/sd/source/ui/view/drviews6.cxx
+++ b/sd/source/ui/view/drviews6.cxx
@@ -262,8 +262,9 @@ void DrawViewShell::ExecBmpMask( SfxRequest const & rReq )
case SID_BMPMASK_EXEC :
{
SdrGrafObj* pObj = nullptr;
- if( mpDrawView && mpDrawView->GetMarkedObjectList().GetMarkCount() )
- pObj = dynamic_cast< SdrGrafObj* >( mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj() );
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if( mpDrawView && rMarkList.GetMarkCount() )
+ pObj = dynamic_cast< SdrGrafObj* >( rMarkList.GetMark(0)->GetMarkedSdrObj() );
if ( pObj && !mpDrawView->IsTextEdit() )
{
@@ -297,7 +298,7 @@ void DrawViewShell::ExecBmpMask( SfxRequest const & rReq )
xNewObj->SetEmptyPresObj(false);
xNewObj->SetGraphic(pBmpMask->Mask(xNewObj->GetGraphic()));
- OUString aStr = mpDrawView->GetMarkedObjectList().GetMarkDescription() +
+ OUString aStr = rMarkList.GetMarkDescription() +
" " + SdResId(STR_EYEDROPPER);
mpDrawView->BegUndo( aStr );
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index 8afeb9810513..2abe7214a794 100644
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -218,8 +218,10 @@ void DrawViewShell::GetDrawAttrState(SfxItemSet& rSet)
if( !mpDrawView )
return nullptr;
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+
//when there is one object selected
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() == 0 || (mpDrawView->GetMarkedObjectList().GetMarkCount() != 1))
+ if (rMarkList.GetMarkCount() == 0 || (rMarkList.GetMarkCount() != 1))
return nullptr;
//and we are editing the outline object
@@ -286,9 +288,10 @@ bool DrawViewShell::ShouldDisableEditHyperlink() const
{
if (!mpDrawView)
return true;
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() == 0)
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() == 0)
return true;
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() != 1)
+ if (rMarkList.GetMarkCount() != 1)
return true;
bool bDisableEditHyperlink = true;
@@ -300,7 +303,7 @@ bool DrawViewShell::ShouldDisableEditHyperlink() const
}
else
{
- SdrUnoObj* pUnoCtrl = dynamic_cast<SdrUnoObj*>( mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj() );
+ SdrUnoObj* pUnoCtrl = dynamic_cast<SdrUnoObj*>( rMarkList.GetMark(0)->GetMarkedSdrObj() );
if ( pUnoCtrl && SdrInventor::FmForm == pUnoCtrl->GetObjInventor() )
{
@@ -1364,7 +1367,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
bool bSingleGraphicSelected = false;
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() == 0)
+ if (rMarkList.GetMarkCount() == 0)
{
rSet.DisableItem (SID_CONVERT_TO_METAFILE);
rSet.DisableItem (SID_CONVERT_TO_BITMAP);
diff --git a/sd/source/ui/view/drviews8.cxx b/sd/source/ui/view/drviews8.cxx
index 31c16efb0378..0ca9af3e536a 100644
--- a/sd/source/ui/view/drviews8.cxx
+++ b/sd/source/ui/view/drviews8.cxx
@@ -89,9 +89,9 @@ void DrawViewShell::ScannerEvent()
::tools::Rectangle aRect( aPnt, aBmpSize );
bool bInsertNewObject = true;
- if( GetView()->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = GetView()->GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if( rMarkList.GetMarkCount() == 1 )
{
diff --git a/sd/source/ui/view/drviews9.cxx b/sd/source/ui/view/drviews9.cxx
index 2d5df30be799..9422ac4ca5cb 100644
--- a/sd/source/ui/view/drviews9.cxx
+++ b/sd/source/ui/view/drviews9.cxx
@@ -127,11 +127,10 @@ void DrawViewShell::ExecGallery(SfxRequest const & rReq)
bool bInsertNewObject = true;
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() != 0 )
{
// is there an empty graphic object?
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
@@ -151,7 +150,7 @@ void DrawViewShell::ExecGallery(SfxRequest const & rReq)
pNewGrafObj->SetOutlinerParaObject(std::nullopt);
pNewGrafObj->SetGraphic(aGraphic);
- OUString aStr = mpDrawView->GetMarkedObjectList().GetMarkDescription() +
+ OUString aStr = rMarkList.GetMarkDescription() +
" " + SdResId(STR_UNDO_REPLACE);
mpDrawView->BegUndo(aStr);
SdrPageView* pPV = mpDrawView->GetSdrPageView();
diff --git a/sd/source/ui/view/drviewsa.cxx b/sd/source/ui/view/drviewsa.cxx
index bf0b4023014a..2ed2e8745a6c 100644
--- a/sd/source/ui/view/drviewsa.cxx
+++ b/sd/source/ui/view/drviewsa.cxx
@@ -650,7 +650,8 @@ void DrawViewShell::GetStatusBarState(SfxItemSet& rSet)
}
else
{
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() != 0 )
{
::tools::Rectangle aRect = mpDrawView->GetAllMarkedRect();
pPageView->LogicToPagePos(aRect);
@@ -806,9 +807,10 @@ OUString const & DrawViewShell::GetSidebarContextName() const
eViewType = svx::sidebar::SelectionAnalyzer::ViewType::Standard;
break;
}
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
return EnumContext::GetContextName(
svx::sidebar::SelectionAnalyzer::GetContextForSelection_SD(
- mpDrawView->GetMarkedObjectList(),
+ rMarkList,
eViewType));
}
diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx
index 965b9bec40df..f594fb1f7fcf 100644
--- a/sd/source/ui/view/drviewse.cxx
+++ b/sd/source/ui/view/drviewse.cxx
@@ -321,11 +321,12 @@ void DrawViewShell::FuPermanent(SfxRequest& rReq)
rReq.SetSlot( nSlotId );
}
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if (nSlotId == SID_OBJECT_CROOK_ROTATE ||
nSlotId == SID_OBJECT_CROOK_SLANT ||
nSlotId == SID_OBJECT_CROOK_STRETCH)
{
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() > 0 &&
+ if ( rMarkList.GetMarkCount() > 0 &&
!mpDrawView->IsCrookAllowed( mpDrawView->IsCrookNoContortion() ) )
{
if ( mpDrawView->IsPresObjSelected() )
@@ -352,7 +353,6 @@ void DrawViewShell::FuPermanent(SfxRequest& rReq)
else if (nSlotId == SID_OBJECT_SHEAR)
{
size_t i = 0;
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
const size_t nMarkCnt = rMarkList.GetMarkCount();
bool b3DObjMarked = false;
@@ -600,14 +600,15 @@ void DrawViewShell::FuPermanent(SfxRequest& rReq)
// CTRL-SID_OBJECT_SELECT -> select first draw object if none is selected yet
if(SID_OBJECT_SELECT == nSId && HasCurrentFunction() && (rReq.GetModifier() & KEY_MOD1))
{
- if(GetView()->GetMarkedObjectList().GetMarkCount() == 0)
+ const SdrMarkList& rMarkList = GetView()->GetMarkedObjectList();
+ if(rMarkList.GetMarkCount() == 0)
{
// select first object
GetView()->UnmarkAllObj();
GetView()->MarkNextObj(true);
// ...and make it visible
- if(GetView()->GetMarkedObjectList().GetMarkCount() != 0)
+ if(rMarkList.GetMarkCount() != 0)
GetView()->MakeVisible(GetView()->GetAllMarkedRect(), *GetActiveWindow());
}
}
@@ -1253,7 +1254,8 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
case SID_SIZE_OPTIMAL: // BASIC
{
mbZoomOnPage = false;
- if ( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if ( rMarkList.GetMarkCount() != 0 )
{
maMarkRect = mpDrawView->GetAllMarkedRect();
::tools::Long nW = static_cast<::tools::Long>(maMarkRect.GetWidth() * 1.03);
@@ -1556,9 +1558,10 @@ void DrawViewShell::InsertURLButton(const OUString& rURL, const OUString& rText,
const OUString sTargetURL( ::URIHelper::SmartRel2Abs( INetURLObject( GetDocSh()->GetMedium()->GetBaseURL() ), rURL, URIHelper::GetMaybeFileHdl(), true, false,
INetURLObject::EncodeMechanism::WasEncoded,
INetURLObject::DecodeMechanism::Unambiguous ) );
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() > 0)
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() > 0)
{
- SdrObject* pMarkedObj = mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ SdrObject* pMarkedObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
if( pMarkedObj ) try
{
// change first marked object
diff --git a/sd/source/ui/view/drviewsf.cxx b/sd/source/ui/view/drviewsf.cxx
index e14995642f69..1c1577b7ab91 100644
--- a/sd/source/ui/view/drviewsf.cxx
+++ b/sd/source/ui/view/drviewsf.cxx
@@ -107,11 +107,12 @@ void DrawViewShell::GetCtrlState(SfxItemSet &rSet)
}
else
{
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() > 0)
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() > 0)
{
bool bFound = false;
- SdrObject* pMarkedObj = mpDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ SdrObject* pMarkedObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
if( pMarkedObj && (SdrInventor::FmForm == pMarkedObj->GetObjInventor()) )
{
SdrUnoObj* pUnoCtrl = dynamic_cast< SdrUnoObj* >( pMarkedObj );
@@ -265,6 +266,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
bool bAttr = false;
SfxAllItemSet aAllSet( *rSet.GetPool() );
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
while ( nWhich )
{
sal_uInt16 nSlotId = SfxItemPool::IsWhich(nWhich)
@@ -479,7 +481,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
SfxStyleSheet* pStyleSheet = mpDrawView->GetStyleSheet();
if( pStyleSheet )
{
- if( nSlotId != SID_STYLE_APPLY && mpDrawView->GetMarkedObjectList().GetMarkCount() == 0 )
+ if( nSlotId != SID_STYLE_APPLY && rMarkList.GetMarkCount() == 0 )
{
SfxTemplateItem aTmpItem( nWhich, OUString() );
aAllSet.Put( aTmpItem );
@@ -517,7 +519,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
case SID_SET_DEFAULT:
{
- if( !mpDrawView->GetMarkedObjectList().GetMarkCount() ||
+ if( !rMarkList.GetMarkCount() ||
( !mpDrawView->IsTextEdit() && !mpDrawView->GetStyleSheet() )
)
rSet.DisableItem( nWhich );
@@ -581,7 +583,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
}
else if (static_cast<SfxStyleFamily>(pFamilyItem->GetValue()) == SfxStyleFamily::Para)
{
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() == 0)
+ if (rMarkList.GetMarkCount() == 0)
{
rSet.DisableItem(nWhich);
}
@@ -591,7 +593,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
// view state; an actual set family can not be considered
else
{
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() == 0)
+ if (rMarkList.GetMarkCount() == 0)
{
rSet.DisableItem(nWhich);
}
@@ -601,7 +603,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
case SID_STYLE_UPDATE_BY_EXAMPLE:
{
- if (mpDrawView->GetMarkedObjectList().GetMarkCount() == 0)
+ if (rMarkList.GetMarkCount() == 0)
{
rSet.DisableItem(nWhich);
}
@@ -684,7 +686,6 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
case FN_NUM_NUMBERING_ON:
{
bool bEnable = false;
- const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
const size_t nMarkCount = rMarkList.GetMarkCount();
for (size_t nIndex = 0; nIndex < nMarkCount; ++nIndex)
{
@@ -731,7 +732,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
// if the view owns selected objects, corresponding items have to be
// changed from SfxItemState::DEFAULT (_ON) to SfxItemState::DISABLED
- if( mpDrawView->GetMarkedObjectList().GetMarkCount() != 0 )
+ if( rMarkList.GetMarkCount() != 0 )
{
SfxWhichIter aNewIter( *pSet );
nWhich = aNewIter.FirstWhich();
@@ -811,6 +812,7 @@ bool DrawViewShell::HasSelection(bool bText) const
{
bool bReturn = false;
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
if (bText)
{
OutlinerView* pOlView = mpDrawView->GetTextEditOutlinerView();
@@ -820,7 +822,7 @@ bool DrawViewShell::HasSelection(bool bText) const
bReturn = true;
}
}
- else if (mpDrawView->GetMarkedObjectList().GetMarkCount() != 0)
+ else if (rMarkList.GetMarkCount() != 0)
{
bReturn = true;
}
diff --git a/sd/source/ui/view/drviewsg.cxx b/sd/source/ui/view/drviewsg.cxx
index 94fc13e6c606..aa62d437db82 100644
--- a/sd/source/ui/view/drviewsg.cxx
+++ b/sd/source/ui/view/drviewsg.cxx
@@ -48,7 +48,8 @@ void DrawViewShell::ExecIMap( SfxRequest const & rReq )
if ( rReq.GetSlot() != SID_IMAP_EXEC )
return;
- SdrMark* pMark = mpDrawView->GetMarkedObjectList().GetMark(0);
+ const SdrMarkList& rMarkList = mpDrawView->GetMarkedObjectList();
+ SdrMark* pMark = rMarkList.GetMark(0);
if ( !pMark )
return;
diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx
index f5b45b6fe9ac..cfa0fa909f5a 100644
--- a/sd/source/ui/view/sdview.cxx
+++ b/sd/source/ui/view/sdview.cxx
@@ -503,7 +503,8 @@ void View::MarkListHasChanged()
{
FmFormView::MarkListHasChanged();
- if( GetMarkedObjectList().GetMarkCount() > 0 )
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() > 0 )
maSmartTags.deselect();
}
@@ -865,12 +866,13 @@ bool View::RestoreDefaultText( SdrTextObj* pTextObj )
void View::SetMarkedOriginalSize()
{
std::unique_ptr<SdrUndoGroup> pUndoGroup(new SdrUndoGroup(mrDoc));
- const size_t nCount = GetMarkedObjectList().GetMarkCount();
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ const size_t nCount = rMarkList.GetMarkCount();
bool bOK = false;
for( size_t i = 0; i < nCount; ++i )
{
- SdrObject* pObj = GetMarkedObjectList().GetMark(i)->GetMarkedSdrObj();
+ SdrObject* pObj = rMarkList.GetMark(i)->GetMarkedSdrObj();
if( pObj->GetObjInventor() == SdrInventor::Default )
{
@@ -1196,10 +1198,11 @@ bool View::ShouldToggleOn(
bool bToggleOn = false;
std::unique_ptr<SdrOutliner> pOutliner(SdrMakeOutliner(OutlinerMode::TextObject, rSdrModel));
- const size_t nMarkCount = GetMarkedObjectList().GetMarkCount();
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ const size_t nMarkCount = rMarkList.GetMarkCount();
for (size_t nIndex = 0; nIndex < nMarkCount && !bToggleOn; ++nIndex)
{
- SdrTextObj* pTextObj = DynCastSdrTextObj(GetMarkedObjectList().GetMark(nIndex)->GetMarkedSdrObj());
+ SdrTextObj* pTextObj = DynCastSdrTextObj(rMarkList.GetMark(nIndex)->GetMarkedSdrObj());
if (!pTextObj || pTextObj->IsTextEditActive())
continue;
if( dynamic_cast< const SdrTableObj *>( pTextObj ) != nullptr)
@@ -1267,10 +1270,11 @@ void View::ChangeMarkedObjectsBulletsNumbering(
std::unique_ptr<SdrOutliner> pOutliner(SdrMakeOutliner(OutlinerMode::TextObject, rSdrModel));
OutlinerView aOutlinerView(pOutliner.get(), pWindow);
- const size_t nMarkCount = GetMarkedObjectList().GetMarkCount();
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ const size_t nMarkCount = rMarkList.GetMarkCount();
for (size_t nIndex = 0; nIndex < nMarkCount; ++nIndex)
{
- SdrTextObj* pTextObj = DynCastSdrTextObj(GetMarkedObjectList().GetMark(nIndex)->GetMarkedSdrObj());
+ SdrTextObj* pTextObj = DynCastSdrTextObj(rMarkList.GetMark(nIndex)->GetMarkedSdrObj());
if (!pTextObj || pTextObj->IsTextEditActive())
continue;
if( dynamic_cast< SdrTableObj *>( pTextObj ) != nullptr)
diff --git a/sd/source/ui/view/sdview2.cxx b/sd/source/ui/view/sdview2.cxx
index 2112cd62b744..b2f58cfcfffd 100644
--- a/sd/source/ui/view/sdview2.cxx
+++ b/sd/source/ui/view/sdview2.cxx
@@ -104,9 +104,10 @@ css::uno::Reference< css::datatransfer::XTransferable > View::CreateClipboardDat
pNewPage->SetLayoutName( pOldPage->GetLayoutName() );
}
- if( GetMarkedObjectList().GetMarkCount() == 1 )
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() == 1 )
{
- SdrObject* pObj = GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
if( auto pOle2Obj = dynamic_cast<SdrOle2Obj *>( pObj ) )
if( pOle2Obj->GetObjRef() )
@@ -150,9 +151,10 @@ css::uno::Reference< css::datatransfer::XTransferable > View::CreateDragDataObje
OUString aDisplayName;
SdrOle2Obj* pSdrOleObj = nullptr;
- if( GetMarkedObjectList().GetMarkCount() == 1 )
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() == 1 )
{
- SdrObject* pObj = GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
+ SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
if( auto pOle2Obj = dynamic_cast<SdrOle2Obj *>( pObj ) )
if( pOle2Obj->GetObjRef() )
@@ -217,7 +219,8 @@ void View::UpdateSelectionClipboard() // false case
return;
if (!mpViewSh->GetActiveWindow())
return;
- if (GetMarkedObjectList().GetMarkCount())
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if (rMarkList.GetMarkCount())
CreateSelectionDataObject( this );
else
ClearSelectionClipboard();
@@ -240,14 +243,15 @@ void View::DoCut()
{
const OutlinerView* pOLV = GetTextEditOutlinerView();
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
if( pOLV )
const_cast<OutlinerView*>(pOLV)->Cut();
- else if( GetMarkedObjectList().GetMarkCount() != 0 )
+ else if( rMarkList.GetMarkCount() != 0 )
{
OUString aStr(SdResId(STR_UNDO_CUT));
DoCopy();
- BegUndo(aStr + " " + GetMarkedObjectList().GetMarkDescription());
+ BegUndo(aStr + " " + rMarkList.GetMarkDescription());
DeleteMarked();
EndUndo();
}
@@ -257,9 +261,10 @@ void View::DoCopy()
{
const OutlinerView* pOLV = GetTextEditOutlinerView();
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
if( pOLV )
const_cast<OutlinerView*>(pOLV)->Copy();
- else if( GetMarkedObjectList().GetMarkCount() != 0 )
+ else if( rMarkList.GetMarkCount() != 0 )
{
BrkAction();
CreateClipboardDataObject();
@@ -341,7 +346,8 @@ void View::DoPaste (::sd::Window* pWindow)
void View::StartDrag( const Point& rStartPos, vcl::Window* pWindow )
{
- if (GetMarkedObjectList().GetMarkCount() == 0 || !IsAction() || !mpViewSh || !pWindow)
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() == 0 || !IsAction() || !mpViewSh || !pWindow)
return;
BrkAction();
@@ -451,9 +457,10 @@ sal_Int8 View::AcceptDrop( const AcceptDropEvent& rEvt, DropTargetHelper& rTarge
{
::tools::Rectangle aRect( pOLV->GetOutputArea() );
- if (GetMarkedObjectList().GetMarkCount() == 1)
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if (rMarkList.GetMarkCount() == 1)
{
- SdrMark* pMark = GetMarkedObjectList().GetMark(0);
+ SdrMark* pMark = rMarkList.GetMark(0);
SdrObject* pObj = pMark->GetMarkedSdrObj();
aRect.Union( pObj->GetLogicRect() );
}
@@ -632,9 +639,10 @@ sal_Int8 View::ExecuteDrop( const ExecuteDropEvent& rEvt,
{
::tools::Rectangle aRect( pOLV->GetOutputArea() );
- if( GetMarkedObjectList().GetMarkCount() == 1 )
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() == 1 )
{
- SdrMark* pMark = GetMarkedObjectList().GetMark(0);
+ SdrMark* pMark = rMarkList.GetMark(0);
SdrObject* pObj = pMark->GetMarkedSdrObj();
aRect.Union( pObj->GetLogicRect() );
}
diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx
index 79401ef28aea..6a205211161d 100644
--- a/sd/source/ui/view/sdview3.cxx
+++ b/sd/source/ui/view/sdview3.cxx
@@ -401,11 +401,12 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper,
if( !pPV->IsLayerLocked( aLayer ) )
{
pOwnData->SetInternalMove( true );
- GetMarkedObjectList().ForceSort();
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+ rMarkList.ForceSort();
- for( size_t nM = 0; nM < GetMarkedObjectList().GetMarkCount(); ++nM )
+ for( size_t nM = 0; nM < rMarkList.GetMarkCount(); ++nM )
{
- SdrMark* pM = GetMarkedObjectList().GetMark( nM );
+ SdrMark* pM = rMarkList.GetMark( nM );
SdrObject* pO = pM->GetMarkedSdrObj();
if( pO )
diff --git a/sd/source/ui/view/sdview5.cxx b/sd/source/ui/view/sdview5.cxx
index c593526189c2..dcd9d93c7769 100644
--- a/sd/source/ui/view/sdview5.cxx
+++ b/sd/source/ui/view/sdview5.cxx
@@ -60,11 +60,11 @@ SdrObject* View::GetSelectedSingleObject(SdPage const * pPage)
SdrObject* pRet = nullptr;
if( pPage )
{
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
+
// first try selected shape
- if ( GetMarkedObjectList().GetMarkCount() != 0 )
+ if ( rMarkList.GetMarkCount() != 0 )
{
- const SdrMarkList& rMarkList = GetMarkedObjectList();
-
if (rMarkList.GetMarkCount() == 1)
{
SdrMark* pMark = rMarkList.GetMark(0);
diff --git a/sd/source/ui/view/viewoverlaymanager.cxx b/sd/source/ui/view/viewoverlaymanager.cxx
index dfc6c61759fc..c786a70bd5e0 100644
--- a/sd/source/ui/view/viewoverlaymanager.cxx
+++ b/sd/source/ui/view/viewoverlaymanager.cxx
@@ -318,8 +318,9 @@ bool ChangePlaceholderTag::MouseButtonDown( const MouseEvent& /*rMEvt*/, SmartHd
if( auto pPlaceholder = mxPlaceholderObj.get() )
{
+ const SdrMarkList& rMarkList = mrView.GetMarkedObjectList();
// mark placeholder if it is not currently marked (or if also others are marked)
- if( !mrView.IsObjMarked( pPlaceholder.get() ) || (mrView.GetMarkedObjectList().GetMarkCount() != 1) )
+ if( !mrView.IsObjMarked( pPlaceholder.get() ) || (rMarkList.GetMarkCount() != 1) )
{
SdrPageView* pPV = mrView.GetSdrPageView();
mrView.UnmarkAllObj(pPV );
diff --git a/sd/source/ui/view/viewshe3.cxx b/sd/source/ui/view/viewshe3.cxx
index 2bf5fafdfe44..31383ea7d560 100644
--- a/sd/source/ui/view/viewshe3.cxx
+++ b/sd/source/ui/view/viewshe3.cxx
@@ -66,7 +66,8 @@ void ViewShell::GetMenuState( SfxItemSet &rSet )
SdrView* pDrView = GetDrawView();
- if( pDrView->GetMarkedObjectList().GetMarkCount() != 0 )
+ const SdrMarkList& rMarkList = pDrView->GetMarkedObjectList();
+ if( rMarkList.GetMarkCount() != 0 )
{
SfxStyleSheet* pStyleSheet = pDrView->GetStyleSheet();
if( pStyleSheet )
diff --git a/sd/source/ui/view/viewshel.cxx b/sd/source/ui/view/viewshel.cxx
index d5d23631f701..2f2cecf7aabd 100644
--- a/sd/source/ui/view/viewshel.cxx
+++ b/sd/source/ui/view/viewshel.cxx
@@ -450,7 +450,8 @@ bool ViewShell::KeyInput(const KeyEvent& rKEvt, ::sd::Window* pWin)
OSL_ASSERT(GetViewShell() != nullptr);
bReturn = GetViewShell()->KeyInput(rKEvt);
- const size_t OriCount = GetView()->GetMarkedObjectList().GetMarkCount();
+ const SdrMarkList& rMarkList = GetView()->GetMarkedObjectList();
+ const size_t OriCount = rMarkList.GetMarkCount();
if(!bReturn)
{
if(useInputForSlideShow()) //IASS
@@ -486,7 +487,7 @@ bool ViewShell::KeyInput(const KeyEvent& rKEvt, ::sd::Window* pWin)
}
}
}
- const size_t EndCount = GetView()->GetMarkedObjectList().GetMarkCount();
+ const size_t EndCount = rMarkList.GetMarkCount();
// Here, oriCount or endCount must have one value=0, another value > 0, then to switch focus between Document and shape objects
if(bReturn && (OriCount + EndCount > 0) && (OriCount * EndCount == 0))
SwitchActiveViewFireFocus();