LibreOffice Module sw (master) 1
Classes | Namespaces | Functions
dcontact.cxx File Reference
#include <memory>
#include <hintids.hxx>
#include <svx/svdpage.hxx>
#include <svx/svditer.hxx>
#include <svx/svdogrp.hxx>
#include <svx/svdotext.hxx>
#include <svx/svdmodel.hxx>
#include <svx/svdviter.hxx>
#include <svx/svdview.hxx>
#include <svx/sdr/contact/displayinfo.hxx>
#include <svx/sdr/contact/objectcontact.hxx>
#include <svx/shapepropertynotifier.hxx>
#include <drawdoc.hxx>
#include <fmtornt.hxx>
#include <viewimp.hxx>
#include <fmtsrnd.hxx>
#include <fmtanchr.hxx>
#include <node.hxx>
#include <fmtcntnt.hxx>
#include <fmtfsize.hxx>
#include <pam.hxx>
#include <pagefrm.hxx>
#include <rootfrm.hxx>
#include <frmtool.hxx>
#include <flyfrm.hxx>
#include <textboxhelper.hxx>
#include <frmfmt.hxx>
#include <fmtfollowtextflow.hxx>
#include <dflyobj.hxx>
#include <dcontact.hxx>
#include <unodraw.hxx>
#include <IDocumentDrawModelAccess.hxx>
#include <IDocumentLayoutAccess.hxx>
#include <IDocumentState.hxx>
#include <IDocumentUndoRedo.hxx>
#include <doc.hxx>
#include <hints.hxx>
#include <txtfrm.hxx>
#include <frameformats.hxx>
#include <sortedobjs.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <svx/sdr/contact/viewcontactofvirtobj.hxx>
#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
#include <drawinglayer/geometry/viewinformation2d.hxx>
#include <svx/sdr/contact/viewobjectcontactofsdrobj.hxx>
#include <com/sun/star/text/WritingMode2.hpp>
#include <calbck.hxx>
#include <algorithm>
#include <txtfly.hxx>
#include <sal/log.hxx>
Include dependency graph for dcontact.cxx:

Go to the source code of this file.

Classes

class  NestedUserCallHdl
 helper class for method <SwDrawContact::Changed_(..)> for handling nested <SdrObjUserCall> events More...
 

Namespaces

namespace  sdr
 
namespace  sdr::contact
 

Functions

void setContextWritingMode (SdrObject *pObj, SwFrame const *pAnchor)
 
SwFrameFormatFindFrameFormat (SdrObject *pObj)
 The Get reverse way: seeks the format to the specified object. More...
 
bool HasWrap (const SdrObject *pObj)
 
SwRect GetBoundRectOfAnchoredObj (const SdrObject *pObj)
 returns the BoundRect inclusive distance of the object. More...
 
SwContactGetUserCall (const SdrObject *pObj)
 Returns the UserCall if applicable from the group object. More...
 
bool IsMarqueeTextObj (const SdrObject &rObj)
 Returns true if the SrdObject is a Marquee-Object (scrolling text) More...
 
bool CheckControlLayer (const SdrObject *pObj)
 
static void lcl_NotifyBackgroundOfObj (SwDrawContact const &_rDrawContact, const SdrObject &_rObj, const tools::Rectangle *_pOldObjRect)
 local method to notify the background for a drawing object - #i26791# More...
 
static void lcl_textBoxSizeNotify (SwFrameFormat *pFormat)
 Notify the format's textbox that it should reconsider its position / size. More...
 
static SwTextFramelcl_GetFlyInContentAnchor (SwTextFrame *_pProposedAnchorFrame, SwPosition const &rAnchorPos)
 
static void sdr::contact::impAddPrimitivesFromGroup (const ViewObjectContact &rVOC, const basegfx::B2DHomMatrix &rOffsetMatrix, const DisplayInfo &rDisplayInfo, drawinglayer::primitive2d::Primitive2DContainer &rxTarget)
 recursively collect primitive data from given VOC with given offset More...
 

Function Documentation

◆ CheckControlLayer()

bool CheckControlLayer ( const SdrObject pObj)

◆ FindFrameFormat()

SwFrameFormat * FindFrameFormat ( SdrObject pObj)

The Get reverse way: seeks the format to the specified object.

The other way round: Search format for given object.

If the object is a SwVirtFlyDrawObj then the format of this will be acquired. Otherwise it is just a simple drawing object. This has a UserCall and is the client of the searched format.

Definition at line 121 of file dcontact.cxx.

References SwContact::GetFormat(), and GetUserCall().

Referenced by SwFmDrawPage::add(), SwDrawView::AddCustomHdl(), SwFEShell::ChangeOpaque(), SwFlyFreeFrame::CheckClip(), sw::AccessibilityCheck::checkObject(), SwDrawView::CheckPossibilities(), SwHTMLParser::DeleteSection(), SwAccessibleMap::DoInvalidateShapeSelection(), SwDrawShell::Execute(), SwDrawBaseShell::Execute(), FindFrameFormat(), sw::FindTextImpl(), SwXShape::GetFrameFormat(), SwAnchoredDrawObject::GetObjBoundRect(), SwFEShell::GetObjDescription(), SwFEShell::GetObjTitle(), SwFmDrawPage::GetShape(), SwDrawShell::GetState(), SwDrawBaseShell::GetState(), SwFmDrawPage::group(), HasWrap(), IMPL_LINK(), objectpositioning::SwAnchoredObjectPosition::ImplAdjustHoriRelPos(), objectpositioning::SwAnchoredObjectPosition::ImplAdjustVertRelPos(), SwAccessibleMap::InvalidateShapeInParaSelection(), sw::access::SwAccessibleChild::IsBoundAsChar(), SwFEShell::IsFlyInFly(), SwFEShell::IsObjDecorative(), lcl_goIntoTextBox(), SwFEShell::Paste(), SwFEShell::ReplaceSdrObj(), SwFEShell::SelectionToBottom(), SwFEShell::SelectionToTop(), SwFlyCntPortion::SetBase(), SwFEShell::SetDrawingAttr(), SwFEShell::SetObjDecorative(), SwFEShell::SetObjDescription(), SwFEShell::SetObjTitle(), SwXShape::setPropertyValue(), RtfSdrExport::StartShape(), WW8_WrPlcSubDoc::WriteGenericPlc(), and WW8_WrPlcSubDoc::WriteGenericText().

◆ GetBoundRectOfAnchoredObj()

SwRect GetBoundRectOfAnchoredObj ( const SdrObject pObj)

returns the BoundRect inclusive distance of the object.

Returns
BoundRect plus distance.

Definition at line 155 of file dcontact.cxx.

References SwContact::GetAnchoredObj(), SdrObject::GetCurrentBoundRect(), SwAnchoredObject::GetObjRectWithSpaces(), and GetUserCall().

Referenced by lcl_NotifyNeighbours().

◆ GetUserCall()

SwContact * GetUserCall ( const SdrObject pObj)

Returns the UserCall if applicable from the group object.

Returns
UserCall of group object (if applicable).

Definition at line 172 of file dcontact.cxx.

References SdrObject::getParentSdrObjectFromSdrObject(), and SdrObject::GetUserCall().

Referenced by SwDrawView::AddCustomHdl(), docfunc::AllDrawObjsOnPage(), SwFrame::AppendDrawObj(), SwDrawView::CalcAnchor(), CalcClipRect(), SwFEShell::ChangeOpaque(), SwLayHelper::CheckFlyCache_(), SwDrawView::CheckPossibilities(), SwFEShell::CheckUnboundObjects(), SwDoc::ChgAnchor(), SwFEShell::Copy(), SwFEShell::CopyDrawSel(), SwFlyFrame::DeleteCnt(), SwDrawView::DeleteMarked(), SwDoc::DeleteSelection(), SwFEShell::EndTextEdit(), SwFEShell::FindAnchorPos(), FindFrameFormat(), SwFlyDrawContact::GetAnchoredObj(), SwDrawContact::GetAnchoredObj(), SwDrawContact::GetAnchorFrame(), SwFEShell::GetAnchorId(), GetBoundRectOfAnchoredObj(), sw::access::SwAccessibleChild::GetBox(), SwAnchoredDrawObject::GetFrameFormat(), objectpositioning::SwAnchoredObjectPosition::GetInfoAboutObj(), SwDrawView::GetMaxToBtmObj(), SwDrawView::GetMaxToTopObj(), SwFEShell::GetObjAttr(), SwFEShell::GetObjCntType(), sw::access::SwAccessibleChild::GetParent(), SwFEShell::GetShapeBackground(), SwDoc::GroupSelection(), SwFrameNotify::ImplDestroy(), SwDoc::InsertDrawLabel(), Is_Lower_Of(), SwFEShell::IsFlyInFly(), SwFEShell::IsFrameVertical(), SwFEShell::IsGroupAllowed(), SwFEShell::IsGroupSelected(), SwFlyFrame::IsPaint(), SwFEShell::IsSelObjProtected(), SwFEShell::IsShapeDefaultHoriTextDirR2L(), lcl_AdjustPositioningAttr(), lcl_FindAnchor(), lcl_MakeObjs(), lcl_NotifyNeighbours(), SwAnchoredDrawObject::MakeObjPos(), SwEditWin::MouseButtonUp(), SwFEShell::MoveAnchor(), SwDrawView::MoveRepeatedObjs(), Notify_Background(), SwViewShellImp::NotifySizeChg(), SwDrawView::ObjOrderChanged(), SwUndoDrawGroup::RedoImpl(), SwUndoDrawDelete::RedoImpl(), SwDPage::ReplaceObject(), SwFEShell::SelectObj(), SwTextFlyCnt::SetAnchor(), SwFEShell::SetObjAttr(), SwAnchoredDrawObject::SetPositioningAttr(), SwFEShell::ShouldObjectBeSelected(), SwObjPositioningInProgress::SwObjPositioningInProgress(), SwUndoDrawUnGroup::SwUndoDrawUnGroup(), SwDoc::UnGroupSelection(), and SwLayoutCache::Write().

◆ HasWrap()

bool HasWrap ( const SdrObject pObj)

◆ IsMarqueeTextObj()

bool IsMarqueeTextObj ( const SdrObject rObj)

Returns true if the SrdObject is a Marquee-Object (scrolling text)

Returns
TRUE if the SrdObject is a Marquee object.

Definition at line 183 of file dcontact.cxx.

References SdrObject::GetObjIdentifier(), and SdrObject::GetObjInventor().

Referenced by SwHTMLWriter::GetMarqueeTextObj().

◆ lcl_GetFlyInContentAnchor()

static SwTextFrame * lcl_GetFlyInContentAnchor ( SwTextFrame _pProposedAnchorFrame,
SwPosition const &  rAnchorPos 
)
static

◆ lcl_NotifyBackgroundOfObj()

static void lcl_NotifyBackgroundOfObj ( SwDrawContact const &  _rDrawContact,
const SdrObject _rObj,
const tools::Rectangle _pOldObjRect 
)
static

◆ lcl_textBoxSizeNotify()

static void lcl_textBoxSizeNotify ( SwFrameFormat pFormat)
static

Notify the format's textbox that it should reconsider its position / size.

Definition at line 1088 of file dcontact.cxx.

References SwFrameFormat::FindRealSdrObject(), SwDoc::GetAttrPool(), SwFormat::GetDoc(), SwTextBoxHelper::isTextBox(), SfxItemSet::Put(), RES_DRAWFRMFMT(), and SwTextBoxHelper::syncFlyFrameAttr().

Referenced by SwDrawContact::Changed_().

◆ setContextWritingMode()

void setContextWritingMode ( SdrObject pObj,
SwFrame const *  pAnchor 
)