diff options
Diffstat (limited to 'sd/source/ui')
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(); |