LibreOffice Module svx (master) 1
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
SdrPathObj Class Referencefinal

#include <svdopath.hxx>

Inheritance diagram for SdrPathObj:
[legend]
Collaboration diagram for SdrPathObj:
[legend]

Public Member Functions

 SdrPathObj (SdrModel &rSdrModel, SdrObjKind eNewKind)
 
 SdrPathObj (SdrModel &rSdrModel, SdrPathObj const &rSource)
 
 SdrPathObj (SdrModel &rSdrModel, SdrObjKind eNewKind, basegfx::B2DPolyPolygon aPathPoly)
 
virtual void TakeObjInfo (SdrObjTransformInfoRec &rInfo) const override
 
virtual SdrObjKind GetObjIdentifier () const override
 
virtual void TakeUnrotatedSnapRect (tools::Rectangle &rRect) const override
 
virtual rtl::Reference< SdrObjectCloneSdrObject (SdrModel &rTargetModel) const override
 
virtual OUString TakeObjNameSingul () const override
 
virtual OUString TakeObjNamePlural () const override
 
virtual basegfx::B2DPolyPolygon TakeXorPoly () const override
 The Xor-Polygon is required by the View to drag the object. More...
 
virtual void RecalcSnapRect () override
 Snap is not done on the BoundRect but if possible on logic coordinates (i.e. More...
 
virtual void NbcSetSnapRect (const tools::Rectangle &rRect) override
 
virtual sal_uInt32 GetHdlCount () const override
 Via GetHdlCount the number of Handles can be retrieved. More...
 
virtual void AddToHdlList (SdrHdlList &rHdlList) const override
 
virtual void AddToPlusHdlList (SdrHdlList &rHdlList, SdrHdl &rHdl) const override
 
virtual const tools::RectangleGetLogicRect () const override
 
virtual bool hasSpecialDrag () const override
 The standard transformations (Move,Resize,Rotate,Mirror,Shear) are taken over by the View (TakeXorPoly(),...). More...
 
virtual bool beginSpecialDrag (SdrDragStat &rDrag) const override
 
virtual bool applySpecialDrag (SdrDragStat &rDrag) override
 
virtual OUString getSpecialDragComment (const SdrDragStat &rDrag) const override
 
virtual basegfx::B2DPolyPolygon getSpecialDragPoly (const SdrDragStat &rDrag) const override
 
virtual bool BegCreate (SdrDragStat &rStat) override
 Every object must be able to create itself interactively. More...
 
virtual bool MovCreate (SdrDragStat &rStat) override
 
virtual bool EndCreate (SdrDragStat &rStat, SdrCreateCmd eCmd) override
 
virtual bool BckCreate (SdrDragStat &rStat) override
 
virtual void BrkCreate (SdrDragStat &rStat) override
 
virtual basegfx::B2DPolyPolygon TakeCreatePoly (const SdrDragStat &rDrag) const override
 Polygon dragged by the user when creating the object. More...
 
PointerStyle GetCreatePointer () const override
 get the cursor/pointer that signals creating this object More...
 
basegfx::B2DPolyPolygon getObjectPolyPolygon (const SdrDragStat &rDrag) const
 
basegfx::B2DPolyPolygon getDragPolyPolygon (const SdrDragStat &rDrag) const
 
virtual void NbcMove (const Size &aSize) override
 The methods Move, Resize, Rotate, Mirror, Shear, SetSnapRect and SetLogicRect call the corresponding Nbc-methods, send a Repaint broadcast and set the Modified state on the Model. More...
 
virtual void NbcResize (const Point &rRefPnt, const Fraction &aXFact, const Fraction &aYFact) override
 
virtual void NbcRotate (const Point &rRefPnt, Degree100 nAngle, double fSin, double fCos) override
 
virtual void NbcMirror (const Point &rRefPnt1, const Point &rRefPnt2) override
 
virtual void NbcShear (const Point &rRefPnt, Degree100 nAngle, double fTan, bool bVShear) override
 
virtual sal_uInt32 GetSnapPointCount () const override
 snap to special points of an Object (polygon points, center of circle) More...
 
virtual Point GetSnapPoint (sal_uInt32 i) const override
 
virtual bool IsPolyObj () const override
 
virtual sal_uInt32 GetPointCount () const override
 
virtual Point GetPoint (sal_uInt32 nHdlNum) const override
 
virtual void NbcSetPoint (const Point &rPnt, sal_uInt32 nHdlNum) override
 
sal_uInt32 NbcInsPointOld (const Point &rPos, bool bNewObj)
 
sal_uInt32 NbcInsPoint (const Point &rPos, bool bNewObj)
 
rtl::Reference< SdrPathObjRipPoint (sal_uInt32 nHdlNum, sal_uInt32 &rNewPt0Index)
 
virtual rtl::Reference< SdrObjectDoConvertToPolyObj (bool bBezier, bool bAddText) const override
 
const basegfx::B2DPolyPolygonGetPathPoly () const
 
void SetPathPoly (const basegfx::B2DPolyPolygon &rPathPoly)
 
void NbcSetPathPoly (const basegfx::B2DPolyPolygon &rPathPoly)
 
bool IsClosed () const
 
bool IsLine () const
 
bool IsBezier () const
 
void ToggleClosed ()
 
virtual bool TRGetBaseGeometry (basegfx::B2DHomMatrix &rMatrix, basegfx::B2DPolyPolygon &rPolyPolygon) const override
 
virtual void TRSetBaseGeometry (const basegfx::B2DHomMatrix &rMatrix, const basegfx::B2DPolyPolygon &rPolyPolygon) override
 
void SetHandleScale (bool bHandleScale)
 Scaling is ignored from the transform matrix by default, to not break compatibility. More...
 
- Public Member Functions inherited from SdrTextObj
const PointGetTextEditOffset () const
 
void SetTextEditOffset (const Point &rNew)
 
bool IsInEditMode () const
 
void SetTextLink (const OUString &rFileName, const OUString &rFilterName)
 
void ReleaseTextLink ()
 
bool IsLinkedText () const
 
bool ReloadLinkedText (bool bForceLoad)
 
bool LoadText (const OUString &rFileName, rtl_TextEncoding eCharSet)
 
virtual bool AdjustTextFrameWidthAndHeight (tools::Rectangle &rR, bool bHgt=true, bool bWdt=true) const
 
virtual bool NbcAdjustTextFrameWidthAndHeight (bool bHgt=true, bool bWdt=true)
 
virtual bool AdjustTextFrameWidthAndHeight ()
 
bool IsTextFrame () const
 
bool IsOutlText () const
 
bool IsAutoFit () const
 returns true if the PPT autofit of text into shape bounds is enabled. implies IsFitToSize()==false! More...
 
bool IsFitToSize () const
 returns true if the old feature for fitting shape content should into shape is enabled. implies IsAutoFit()==false! More...
 
SdrTextObjGetNextLinkInChain () const
 
void SetNextLinkInChain (SdrTextObj *)
 
SdrTextObjGetPrevLinkInChain () const
 
bool IsChainable () const
 
bool GetPreventChainable () const
 
TextChainGetTextChain () const
 
SdrObjKind GetTextKind () const
 
virtual bool HasText () const override
 
bool IsTextEditActive () const
 
virtual SdrTextgetActiveText () const
 returns the currently active text. More...
 
virtual SdrTextgetText (sal_Int32 nIndex) const override
 returns the nth available text. More...
 
virtual sal_Int32 getTextCount () const override
 returns the number of texts available for this object. More...
 
virtual bool IsReallyEdited () const
 returns true only if we are in edit mode and the user actually changed anything More...
 
virtual void setActiveText (sal_Int32 nIndex)
 changes the current active text More...
 
virtual sal_Int32 CheckTextHit (const Point &rPnt) const
 returns the index of the text that contains the given point or -1 More...
 
void SetDisableAutoWidthOnDragging (bool bOn)
 
void NbcSetText (const OUString &rStr)
 
void SetText (const OUString &rStr)
 
void NbcSetText (SvStream &rInput, const OUString &rBaseURL, EETextFormat eFormat)
 
void SetText (SvStream &rInput, const OUString &rBaseURL, EETextFormat eFormat)
 
virtual const SizeGetTextSize () const
 
void FitFrameToTextSize ()
 
double GetFontScale () const
 
double GetSpacingScale () const
 
virtual void TakeTextRect (SdrOutliner &rOutliner, tools::Rectangle &rTextRect, bool bNoEditText, tools::Rectangle *pAnchorRect, bool bLineWidth=true) const
 
void AdjustRectToTextDistance (tools::Rectangle &rAnchorRect) const
 
virtual void TakeTextAnchorRect (::tools::Rectangle &rAnchorRect) const
 
const GeoStatGetGeoStat () const
 
tools::Long GetEckenradius () const
 
virtual bool IsAutoGrowHeight () const
 
tools::Long GetMinTextFrameHeight () const
 
tools::Long GetMaxTextFrameHeight () const
 
virtual bool IsAutoGrowWidth () const
 
tools::Long GetMinTextFrameWidth () const
 
tools::Long GetMaxTextFrameWidth () const
 
css::drawing::TextFitToSizeType GetFitToSize () const
 
const tools::RectangleGetGeoRect () const
 
virtual bool IsFontwork () const
 
bool IsHideContour () const
 
bool IsContourTextFrame () const
 
SdrTextHorzAdjust GetTextHorizontalAdjust (const SfxItemSet &rSet) const
 
SdrTextHorzAdjust GetTextHorizontalAdjust () const
 
SdrTextVertAdjust GetTextVerticalAdjust (const SfxItemSet &rSet) const
 
SdrTextVertAdjust GetTextVerticalAdjust () const
 
tools::Long GetTextLeftDistance () const
 Left inner spacing to borders
More...
 
tools::Long GetTextRightDistance () const
 Right inner spacing to borders
More...
 
tools::Long GetTextUpperDistance () const
 Top inner spacing to borders. More...
 
tools::Long GetTextLowerDistance () const
 Bottom inner spacing to borders. More...
 
SdrTextAniKind GetTextAniKind () const
 
SdrTextAniDirection GetTextAniDirection () const
 
bool HasTextColumnsNumber () const
 
sal_Int16 GetTextColumnsNumber () const
 
void SetTextColumnsNumber (sal_Int16 nColumns)
 
bool HasTextColumnsSpacing () const
 
sal_Int32 GetTextColumnsSpacing () const
 
void SetTextColumnsSpacing (sal_Int32 nSpacing)
 
virtual void handlePageChange (SdrPage *pOldPage, SdrPage *pNewPage) override
 
virtual void TakeObjInfo (SdrObjTransformInfoRec &rInfo) const override
 
virtual SdrObjKind GetObjIdentifier () const override
 
virtual void TakeUnrotatedSnapRect (tools::Rectangle &rRect) const
 
virtual OUString TakeObjNameSingul () const override
 
virtual OUString TakeObjNamePlural () const override
 
virtual rtl::Reference< SdrObjectCloneSdrObject (SdrModel &rTargetModel) const override
 
virtual basegfx::B2DPolyPolygon TakeXorPoly () const override
 The Xor-Polygon is required by the View to drag the object. More...
 
virtual basegfx::B2DPolyPolygon TakeContour () const override
 contour for TextToContour More...
 
virtual void RecalcSnapRect () override
 Snap is not done on the BoundRect but if possible on logic coordinates (i.e. More...
 
virtual void NbcSetSnapRect (const tools::Rectangle &rRect) override
 
virtual void NbcSetLogicRect (const tools::Rectangle &rRect) override
 
virtual const tools::RectangleGetLogicRect () const override
 
virtual Degree100 GetRotateAngle () const override
 
virtual Degree100 GetShearAngle (bool bVertical=false) const override
 
virtual sal_uInt32 GetSnapPointCount () const override
 snap to special points of an Object (polygon points, center of circle) More...
 
virtual Point GetSnapPoint (sal_uInt32 i) const override
 
virtual sal_uInt32 GetHdlCount () const override
 Via GetHdlCount the number of Handles can be retrieved. More...
 
virtual void AddToHdlList (SdrHdlList &rHdlList) const override
 
virtual bool hasSpecialDrag () const override
 The standard transformations (Move,Resize,Rotate,Mirror,Shear) are taken over by the View (TakeXorPoly(),...). More...
 
virtual bool applySpecialDrag (SdrDragStat &rDrag) override
 
virtual OUString getSpecialDragComment (const SdrDragStat &rDrag) const override
 
virtual bool BegCreate (SdrDragStat &rStat) override
 Every object must be able to create itself interactively. More...
 
virtual bool MovCreate (SdrDragStat &rStat) override
 
virtual bool EndCreate (SdrDragStat &rStat, SdrCreateCmd eCmd) override
 
virtual bool BckCreate (SdrDragStat &rStat) override
 
virtual void BrkCreate (SdrDragStat &rStat) override
 
virtual basegfx::B2DPolyPolygon TakeCreatePoly (const SdrDragStat &rDrag) const override
 Polygon dragged by the user when creating the object. More...
 
virtual PointerStyle GetCreatePointer () const override
 get the cursor/pointer that signals creating this object More...
 
virtual void NbcMove (const Size &rSiz) override
 The methods Move, Resize, Rotate, Mirror, Shear, SetSnapRect and SetLogicRect call the corresponding Nbc-methods, send a Repaint broadcast and set the Modified state on the Model. More...
 
virtual void NbcResize (const Point &rRef, const Fraction &xFact, const Fraction &yFact) override
 
virtual void NbcRotate (const Point &rRef, Degree100 nAngle, double sn, double cs) override
 
virtual void NbcMirror (const Point &rRef1, const Point &rRef2) override
 
virtual void NbcShear (const Point &rRef, Degree100 nAngle, double tn, bool bVShear) override
 
virtual bool HasTextEdit () const override
 
virtual bool BegTextEdit (SdrOutliner &rOutl)
 
virtual void TakeTextEditArea (Size *pPaperMin, Size *pPaperMax, tools::Rectangle *pViewInit, tools::Rectangle *pViewMin) const
 
virtual void EndTextEdit (SdrOutliner &rOutl)
 
virtual EEAnchorMode GetOutlinerViewAnchorMode () const
 
virtual void NbcSetOutlinerParaObject (std::optional< OutlinerParaObject > pTextObject) override
 
void NbcSetOutlinerParaObjectForText (std::optional< OutlinerParaObject > pTextObject, SdrText *pText)
 
virtual OutlinerParaObjectGetOutlinerParaObject () const override
 
bool CanCreateEditOutlinerParaObject () const
 
std::optional< OutlinerParaObjectCreateEditOutlinerParaObject () const
 
virtual void NbcReformatText () override
 
virtual bool CalcFieldValue (const SvxFieldItem &rField, sal_Int32 nPara, sal_uInt16 nPos, bool bEdit, std::optional< Color > &rpTxtColor, std::optional< Color > &rpFldColor, std::optional< FontLineStyle > &rpFldLineStyle, OUString &rRet) const
 
virtual rtl::Reference< SdrObjectDoConvertToPolyObj (bool bBezier, bool bAddText) const override
 
void SetTextEditOutliner (SdrOutliner *pOutl)
 
void SetupOutlinerFormatting (SdrOutliner &rOutl, tools::Rectangle &rPaintRect) const
 Setup given Outliner equivalently to SdrTextObj::Paint() More...
 
void UpdateOutlinerFormatting (SdrOutliner &rOutl, tools::Rectangle &rPaintRect) const
 Update given Outliner equivalently to SdrTextObj::Paint() More...
 
void ForceOutlinerParaObject ()
 
virtual bool IsVerticalWriting () const
 
virtual void SetVerticalWriting (bool bVertical)
 
bool IsTopToBottom () const
 
virtual void onEditOutlinerStatusEvent (EditStatus *pEditStatus)
 called from the SdrObjEditView during text edit when the status of the edit outliner changes More...
 
void onChainingEvent ()
 called from the SdrObjEditView during text edit when a chain of boxes is to be updated More...
 
virtual bool TRGetBaseGeometry (basegfx::B2DHomMatrix &rMatrix, basegfx::B2DPolyPolygon &rPolyPolygon) const override
 
virtual void TRSetBaseGeometry (const basegfx::B2DHomMatrix &rMatrix, const basegfx::B2DPolyPolygon &rPolyPolygon) override
 
void RemoveOutlinerCharacterAttribs (const std::vector< sal_uInt16 > &rCharWhichIds)
 iterates over the paragraphs of a given SdrObject and removes all hard set character attributes with the which ids contained in the given vector More...
 
GDIMetaFileGetTextScrollMetaFileAndRectangle (tools::Rectangle &rScrollRectangle, tools::Rectangle &rPaintRectangle)
 
void SetTextAnimationAllowed (bool bNew)
 
void SetObjectItemNoBroadcast (const SfxPoolItem &rItem)
 
double GetCameraZRotation () const
 
void impDecomposeContourTextPrimitive (drawinglayer::primitive2d::Primitive2DContainer &rTarget, const drawinglayer::primitive2d::SdrContourTextPrimitive2D &rSdrContourTextPrimitive, const drawinglayer::geometry::ViewInformation2D &aViewInformation) const
 
void impDecomposePathTextPrimitive (drawinglayer::primitive2d::Primitive2DContainer &rTarget, const drawinglayer::primitive2d::SdrPathTextPrimitive2D &rSdrPathTextPrimitive, const drawinglayer::geometry::ViewInformation2D &aViewInformation) const
 
void impDecomposeBlockTextPrimitive (drawinglayer::primitive2d::Primitive2DContainer &rTarget, const drawinglayer::primitive2d::SdrBlockTextPrimitive2D &rSdrBlockTextPrimitive, const drawinglayer::geometry::ViewInformation2D &aViewInformation) const
 
void impDecomposeAutoFitTextPrimitive (drawinglayer::primitive2d::Primitive2DContainer &rTarget, const drawinglayer::primitive2d::SdrAutoFitTextPrimitive2D &rSdrAutofitTextPrimitive, const drawinglayer::geometry::ViewInformation2D &aViewInformation) const
 
void impDecomposeStretchTextPrimitive (drawinglayer::primitive2d::Primitive2DContainer &rTarget, const drawinglayer::primitive2d::SdrStretchTextPrimitive2D &rSdrStretchTextPrimitive, const drawinglayer::geometry::ViewInformation2D &aViewInformation) const
 
void impDecomposeChainedTextPrimitive (drawinglayer::primitive2d::Primitive2DContainer &rTarget, const drawinglayer::primitive2d::SdrChainedTextPrimitive2D &rSdrChainedTextPrimitive, const drawinglayer::geometry::ViewInformation2D &aViewInformation) const
 
void impHandleChainingEventsDuringDecomposition (SdrOutliner &rOutliner) const
 
void impGetBlinkTextTiming (drawinglayer::animation::AnimationEntryList &rAnimList) const
 
void impGetScrollTextTiming (drawinglayer::animation::AnimationEntryList &rAnimList, double fFrameLength, double fTextLength) const
 
virtual bool IsSdrTextObj () const final
 
- Public Member Functions inherited from SdrAttrObj
bool HasFill () const
 
bool HasLine () const
 
virtual const tools::RectangleGetSnapRect () const override
 
- Public Member Functions inherited from SdrObject
virtual const std::shared_ptr< svx::diagram::IDiagramHelper > & getDiagramHelper () const
 
bool isDiagram () const
 
const SdrObjectgetFillGeometryDefiningShape () const
 
 SdrObject (SdrModel &rSdrModel)
 
 SdrObject (SdrModel &rSdrModel, SdrObject const &rSource)
 
virtual void SAL_CALL acquire () noexcept override final
 
virtual void SAL_CALL release () noexcept override final
 
SdrPagegetSdrPageFromSdrObject () const
 
SdrModelgetSdrModelFromSdrObject () const
 
virtual SdrObjListgetChildrenOfSdrObject () const
 
SdrObjListgetParentSdrObjListFromSdrObject () const
 
SdrObjectgetParentSdrObjectFromSdrObject () const
 
virtual void handlePageChange (SdrPage *pOldPage, SdrPage *pNewPage)
 
void AddObjectUser (sdr::ObjectUser &rNewUser)
 
void RemoveObjectUser (sdr::ObjectUser &rOldUser)
 
sdr::contact::ViewContactGetViewContact () const
 
virtual sdr::properties::BasePropertiesGetProperties () const
 
void ActionChanged () const
 
void SetRelativeWidth (double nValue)
 
void SetRelativeWidthRelation (sal_Int16 eValue)
 
void SetRelativeHeight (double nValue)
 
void SetRelativeHeightRelation (sal_Int16 eValue)
 
const double * GetRelativeWidth () const
 
sal_Int16 GetRelativeWidthRelation () const
 
const double * GetRelativeHeight () const
 
sal_Int16 GetRelativeHeightRelation () const
 
virtual void SetBoundAndSnapRectsDirty (bool bNotMyself=false, bool bRecursive=true)
 
virtual void SetBoundRectDirty ()
 
SfxItemPoolGetObjectItemPool () const
 
void AddListener (SfxListener &rListener)
 
void RemoveListener (SfxListener &rListener)
 
void AddReference (SdrVirtObj &rVrtObj)
 
void DelReference (SdrVirtObj &rVrtObj)
 
virtual SdrInventor GetObjInventor () const
 
virtual SdrObjKind GetObjIdentifier () const
 
virtual void TakeObjInfo (SdrObjTransformInfoRec &rInfo) const
 
virtual SdrLayerID GetLayer () const
 
virtual void NbcSetLayer (SdrLayerID nLayer)
 
virtual void SetLayer (SdrLayerID nLayer)
 
bool isVisibleOnAnyOfTheseLayers (const SdrLayerIDSet &rSet) const
 
void SendUserCall (SdrUserCallType eUserCall, const tools::Rectangle &rBoundRect) const
 
virtual void SetName (const OUString &rStr, const bool bSetChanged=true)
 
virtual const OUString & GetName () const
 
void MakeNameUnique ()
 
void MakeNameUnique (std::unordered_set< OUString > &rNameSet)
 
virtual void SetTitle (const OUString &rStr)
 
virtual OUString GetTitle () const
 
virtual void SetDescription (const OUString &rStr)
 
virtual OUString GetDescription () const
 
virtual void SetDecorative (bool isDecorative)
 
virtual bool IsDecorative () const
 
bool IsGroupObject () const
 
virtual SdrObjListGetSubList () const
 
sal_uInt32 GetOrdNum () const
 The order number (aka ZOrder, aka z-index) determines whether a SdrObject is located above or below another. More...
 
void SetOrdNum (sal_uInt32 nNum)
 
void GetGrabBagItem (css::uno::Any &rVal) const
 
virtual void SetGrabBagItem (const css::uno::Any &rVal)
 
sal_uInt32 GetNavigationPosition () const
 
virtual const tools::RectangleGetCurrentBoundRect () const
 
virtual const tools::RectangleGetLastBoundRect () const
 
virtual void RecalcBoundRect ()
 
void BroadcastObjectChange () const
 
const SfxBroadcasterGetBroadcaster () const
 
virtual void SetChanged ()
 
void SingleObjectPainter (OutputDevice &rOut) const
 
bool LineGeometryUsageIsNecessary () const
 
virtual bool HasLimitedRotation () const
 
virtual rtl::Reference< SdrObjectCloneSdrObject (SdrModel &rTargetModel) const =0
 
SdrObjectoperator= (const SdrObject &rObj)=delete
 
SdrObjectoperator= (SdrObject &&rObj)=delete
 
virtual OUString TakeObjNameSingul () const
 
virtual OUString TakeObjNamePlural () const
 
virtual basegfx::B2DPolyPolygon TakeXorPoly () const
 The Xor-Polygon is required by the View to drag the object. More...
 
virtual basegfx::B2DPolyPolygon TakeContour () const
 contour for TextToContour More...
 
virtual sal_uInt32 GetHdlCount () const
 Via GetHdlCount the number of Handles can be retrieved. More...
 
virtual void AddToPlusHdlList (SdrHdlList &rHdlList, SdrHdl &rHdl) const
 
virtual void AddToHdlList (SdrHdlList &rHdlList) const
 
virtual void addCropHandles (SdrHdlList &rTarget) const
 
virtual bool hasSpecialDrag () const
 The standard transformations (Move,Resize,Rotate,Mirror,Shear) are taken over by the View (TakeXorPoly(),...). More...
 
virtual bool beginSpecialDrag (SdrDragStat &rDrag) const
 
virtual bool applySpecialDrag (SdrDragStat &rDrag)
 
virtual OUString getSpecialDragComment (const SdrDragStat &rDrag) const
 
virtual basegfx::B2DPolyPolygon getSpecialDragPoly (const SdrDragStat &rDrag) const
 
virtual bool supportsFullDrag () const
 
virtual rtl::Reference< SdrObjectgetFullDragClone () const
 
virtual bool BegCreate (SdrDragStat &rStat)
 Every object must be able to create itself interactively. More...
 
virtual bool MovCreate (SdrDragStat &rStat)
 
virtual bool EndCreate (SdrDragStat &rStat, SdrCreateCmd eCmd)
 
virtual bool BckCreate (SdrDragStat &rStat)
 
virtual void BrkCreate (SdrDragStat &rStat)
 
virtual PointerStyle GetCreatePointer () const
 get the cursor/pointer that signals creating this object More...
 
virtual basegfx::B2DPolyPolygon TakeCreatePoly (const SdrDragStat &rDrag) const
 Polygon dragged by the user when creating the object. More...
 
virtual void NbcMove (const Size &rSiz)
 The methods Move, Resize, Rotate, Mirror, Shear, SetSnapRect and SetLogicRect call the corresponding Nbc-methods, send a Repaint broadcast and set the Modified state on the Model. More...
 
virtual void NbcResize (const Point &rRef, const Fraction &xFact, const Fraction &yFact)
 
virtual void NbcCrop (const basegfx::B2DPoint &rRef, double fxFact, double fyFact)
 
virtual void NbcRotate (const Point &rRef, Degree100 nAngle, double sn, double cs)=0
 
void NbcRotate (const Point &rRef, Degree100 nAngle)
 
virtual void NbcMirror (const Point &rRef1, const Point &rRef2)
 
virtual void NbcShear (const Point &rRef, Degree100 nAngle, double tn, bool bVShear)
 
virtual void Move (const Size &rSiz)
 
virtual void Resize (const Point &rRef, const Fraction &xFact, const Fraction &yFact, bool bUnsetRelative=true)
 
virtual void Crop (const basegfx::B2DPoint &rRef, double fxFact, double fyFact)
 
virtual void Rotate (const Point &rRef, Degree100 nAngle, double sn, double cs)
 
virtual void Mirror (const Point &rRef1, const Point &rRef2)
 
virtual void Shear (const Point &rRef, Degree100 nAngle, double tn, bool bVShear)
 
virtual void NbcSetRelativePos (const Point &rPnt)
 The relative position of a SdrObject is the distance of the upper left corner of the logic bounding rectangle (SnapRect) to the anchor. More...
 
virtual void SetRelativePos (const Point &rPnt)
 
virtual Point GetRelativePos () const
 
void ImpSetAnchorPos (const Point &rPnt)
 
virtual void NbcSetAnchorPos (const Point &rPnt)
 
virtual void SetAnchorPos (const Point &rPnt)
 
virtual void RecalcSnapRect ()
 Snap is not done on the BoundRect but if possible on logic coordinates (i.e. More...
 
virtual const tools::RectangleGetSnapRect () const
 
virtual void SetSnapRect (const tools::Rectangle &rRect)
 
virtual void NbcSetSnapRect (const tools::Rectangle &rRect)
 
virtual const tools::RectangleGetLogicRect () const
 
virtual void SetLogicRect (const tools::Rectangle &rRect)
 
virtual void NbcSetLogicRect (const tools::Rectangle &rRect)
 
virtual void AdjustToMaxRect (const tools::Rectangle &rMaxRect, bool bShrinkOnly=false)
 
virtual Degree100 GetRotateAngle () const
 
virtual Degree100 GetShearAngle (bool bVertical=false) const
 
virtual sal_uInt32 GetSnapPointCount () const
 snap to special points of an Object (polygon points, center of circle) More...
 
virtual Point GetSnapPoint (sal_uInt32 i) const
 
virtual bool IsPolyObj () const
 
virtual sal_uInt32 GetPointCount () const
 
virtual Point GetPoint (sal_uInt32 i) const
 
void SetPoint (const Point &rPnt, sal_uInt32 i)
 
virtual void NbcSetPoint (const Point &rPnt, sal_uInt32 i)
 
virtual std::unique_ptr< SdrObjGeoDataGetGeoData () const
 
virtual void SetGeoData (const SdrObjGeoData &rGeo)
 
const SfxItemSetGetMergedItemSet () const
 
void SetMergedItem (const SfxPoolItem &rItem)
 
void ClearMergedItem (const sal_uInt16 nWhich=0)
 
void SetMergedItemSet (const SfxItemSet &rSet, bool bClearAllItems=false)
 
const SfxPoolItemGetMergedItem (const sal_uInt16 nWhich) const
 
template<class T >
const T & GetMergedItem (TypedWhichId< T > nWhich) const
 
void SetMergedItemSetAndBroadcast (const SfxItemSet &rSet, bool bClearAllItems=false)
 
void TakeNotPersistAttr (SfxItemSet &rAttr) const
 
void ApplyNotPersistAttr (const SfxItemSet &rAttr)
 
void NbcApplyNotPersistAttr (const SfxItemSet &rAttr)
 
void SetStyleSheet (SfxStyleSheet *pNewStyleSheet, bool bDontRemoveHardAttr)
 
void NbcSetStyleSheet (SfxStyleSheet *pNewStyleSheet, bool bDontRemoveHardAttr)
 
SfxStyleSheetGetStyleSheet () const
 
virtual bool HasTextEdit () const
 
void SetOutlinerParaObject (std::optional< OutlinerParaObject > pTextObject)
 
virtual void NbcSetOutlinerParaObject (std::optional< OutlinerParaObject > pTextObject)
 
virtual OutlinerParaObjectGetOutlinerParaObject () const
 
virtual void NbcReformatText ()
 
void BurnInStyleSheetAttributes ()
 
virtual bool HasMacro () const
 
virtual SdrObjectCheckMacroHit (const SdrObjMacroHitRec &rRec) const
 
virtual PointerStyle GetMacroPointer (const SdrObjMacroHitRec &rRec) const
 
virtual void PaintMacro (OutputDevice &rOut, const tools::Rectangle &rDirtyRect, const SdrObjMacroHitRec &rRec) const
 
virtual bool DoMacro (const SdrObjMacroHitRec &rRec)
 
bool IsMacroHit (const SdrObjMacroHitRec &rRec) const
 
virtual SdrGluePoint GetVertexGluePoint (sal_uInt16 nNum) const
 
virtual SdrGluePoint GetCornerGluePoint (sal_uInt16 nNum) const
 
virtual const SdrGluePointListGetGluePointList () const
 
virtual SdrGluePointListForceGluePointList ()
 
void SetGlueReallyAbsolute (bool bOn)
 
void NbcRotateGluePoints (const Point &rRef, Degree100 nAngle, double sn, double cs)
 
void NbcMirrorGluePoints (const Point &rRef1, const Point &rRef2)
 
void NbcShearGluePoints (const Point &rRef, double tn, bool bVShear)
 
virtual void ConnectToNode (bool bTail1, SdrObject *pObj)
 
virtual void DisconnectFromNode (bool bTail1)
 
virtual SdrObjectGetConnectedNode (bool bTail1) const
 
virtual void SetContextWritingMode (const sal_Int16 _nContextWritingMode)
 
virtual rtl::Reference< SdrObjectDoConvertToPolyObj (bool bBezier, bool bAddText) const
 
rtl::Reference< SdrObjectConvertToPolyObj (bool bBezier, bool bLineToArea) const
 
rtl::Reference< SdrObjectConvertToContourObj (SdrObject *pRet, bool bForceLineDash=false) const
 
bool IsVirtualObj () const
 
bool IsClosedObj () const
 
void InsertedStateChange ()
 
bool IsInserted () const
 
bool IsEdgeObj () const
 
bool Is3DObj () const
 
bool IsUnoObj () const
 
void SetMoveProtect (bool bProt)
 
bool IsMoveProtect () const
 
void SetResizeProtect (bool bProt)
 
bool IsResizeProtect () const
 
void SetPrintable (bool bPrn)
 
bool IsPrintable () const
 
void SetVisible (bool bVisible)
 
bool IsVisible () const
 
void SetMarkProtect (bool bProt)
 
bool IsMarkProtect () const
 
virtual bool IsSdrTextObj () const
 
virtual bool IsTextPath () const
 
virtual bool shouldKeepAspectRatio () const
 Whether the aspect ratio should be kept by default when resizing. More...
 
sal_uInt16 GetUserDataCount () const
 
SdrObjUserDataGetUserData (sal_uInt16 nNum) const
 
void AppendUserData (std::unique_ptr< SdrObjUserData > pData)
 
void DeleteUserData (sal_uInt16 nNum)
 
virtual css::uno::Reference< css::drawing::XShape > getUnoShape ()
 
void notifyShapePropertyChange (const svx::ShapePropertyProviderId _eProperty) const
 
void registerProvider (const svx::ShapePropertyProviderId _eProperty, std::unique_ptr< svx::PropertyValueProvider > propProvider)
 
virtual bool TRGetBaseGeometry (basegfx::B2DHomMatrix &rMatrix, basegfx::B2DPolyPolygon &rPolyPolygon) const
 
virtual void TRSetBaseGeometry (const basegfx::B2DHomMatrix &rMatrix, const basegfx::B2DPolyPolygon &rPolyPolygon)
 
bool IsInDestruction () const
 
bool HasFillStyle () const
 
bool HasLineStyle () const
 
const tools::RectangleGetBLIPSizeRectangle () const
 
void SetBLIPSizeRectangle (const tools::Rectangle &aRect)
 
virtual bool HasText () const
 
bool Equals (const SdrObject &) const
 
virtual void dumpAsXml (xmlTextWriterPtr pWriter) const
 
virtual bool IsTextBox () const
 Is this a textbox of a drawinglayer shape? More...
 
void SetEmptyPresObj (bool bEpt)
 
bool IsEmptyPresObj () const
 
void SetNotVisibleAsMaster (bool bFlg)
 
bool IsNotVisibleAsMaster () const
 
void SetUserCall (SdrObjUserCall *pUser)
 
SdrObjUserCallGetUserCall () const
 
void SetDoNotInsertIntoPageAutomatically (bool bSet)
 
bool IsDoNotInsertIntoPageAutomatically () const
 
sal_uInt32 GetOrdNumDirect () const
 
bool DoesSupportTextIndentingOnLineWidthChange () const
 
const PointGetAnchorPos () const
 
bool LineIsOutsideGeometry () const
 
void SetNavigationPosition (const sal_uInt32 nPosition)
 
virtual void setUnoShape (const css::uno::Reference< css::drawing::XShape > &_rxUnoShape)
 Sets a new UNO representation of the shape. More...
 
const css::uno::WeakReference< css::drawing::XShape > & getWeakUnoShape () const
 
bool setSuitableOutlinerBg (Outliner &rOutliner) const
 
const GraphicgetFillGraphic () const
 
const OUString & getHyperlink () const
 
void setHyperlink (const OUString &sHyperlink)
 
void ForceMetricToItemPoolMetric (basegfx::B2DPolyPolygon &rPolyPolygon) const noexcept
 
- Public Member Functions inherited from SfxListener
 SfxListener ()
 
 SfxListener (const SfxListener &rCopy)
 
virtual ~SfxListener () COVERITY_NOEXCEPT_FALSE
 
void StartListening (SfxBroadcaster &rBroadcaster, DuplicateHandling eDuplicateHanding=DuplicateHandling::Unexpected)
 
void EndListening (SfxBroadcaster &rBroadcaster, bool bRemoveAllDuplicates=false)
 
void EndListeningAll ()
 
bool IsListening (SfxBroadcaster &rBroadcaster) const
 
sal_uInt16 GetBroadcasterCount () const
 
SfxBroadcasterGetBroadcasterJOE (sal_uInt16 nNo) const
 
virtual void Notify (SfxBroadcaster &rBC, const SfxHint &rHint)
 
void RemoveBroadcaster_Impl (SfxBroadcaster &rBC)
 
virtual bool IsSdrView () const
 
- Public Member Functions inherited from cppu::OWeakObject
 OWeakObject ()
 
 OWeakObject (const OWeakObject &)
 
OWeakObject &SAL_CALL operator= (const OWeakObject &)
 
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type &rType) SAL_OVERRIDE
 
virtual void SAL_CALL acquire () SAL_NOEXCEPT SAL_OVERRIDE
 
virtual void SAL_CALL release () SAL_NOEXCEPT SAL_OVERRIDE
 
virtual css::uno::Reference< css::uno::XAdapter > SAL_CALL queryAdapter () SAL_OVERRIDE
 
SAL_CALL operator css::uno::Reference< css::uno::XInterface > ()
 
virtual sal_Int32 getTextCount () const =0
 Return the number of texts available for this object. More...
 
virtual SdrTextgetText (sal_Int32 nIndex) const =0
 Return the nth available text. More...
 

Private Member Functions

virtual std::unique_ptr< sdr::contact::ViewContactCreateObjectSpecificViewContact () override
 
void ImpSetClosed (bool bClose)
 
void ImpForceKind ()
 
void ImpForceLineAngle ()
 
ImpPathForDragAndCreateimpGetDAC () const
 
virtual ~SdrPathObj () override
 
virtual std::unique_ptr< SdrObjGeoDataNewGeoData () const override
 A derived class must override these 3 methods if it has own geometric data that must be saved for Undo. More...
 
virtual void SaveGeoData (SdrObjGeoData &rGeo) const override
 
virtual void RestoreGeoData (const SdrObjGeoData &rGeo) override
 

Private Attributes

basegfx::B2DPolyPolygon maPathPolygon
 
SdrObjKind meKind
 
bool mbHandleScale = false
 
std::unique_ptr< ImpPathForDragAndCreatempDAC
 

Friends

class ImpPathForDragAndCreate
 

Additional Inherited Members

- Static Public Member Functions inherited from SdrTextObj
static void impDecomposeBlockTextPrimitiveDirect (drawinglayer::primitive2d::Primitive2DContainer &rTarget, SdrOutliner &rOutliner, const basegfx::B2DHomMatrix &rNewTransformA, const basegfx::B2DHomMatrix &rNewTransformB, const basegfx::B2DRange &rClipRange)
 
static bool HasTextImpl (SdrOutliner const *pOutliner)
 returns false if the given pointer is NULL or if the given SdrOutliner contains no text. More...
 
- Static Public Member Functions inherited from SdrObject
static SdrItemPoolGetGlobalDrawObjectItemPool ()
 
template<class T >
static rtl::Reference< T > Clone (T const &rObj, SdrModel &rTargetModel)
 
static SdrObjectgetSdrObjectFromXShape (const css::uno::Reference< css::uno::XInterface > &xInt)
 
- Protected Member Functions inherited from SdrTextObj
virtual std::unique_ptr< sdr::properties::BasePropertiesCreateObjectSpecificProperties () override
 
virtual std::unique_ptr< sdr::contact::ViewContactCreateObjectSpecificViewContact () override
 
tools::Rectangle const & getRectangle () const
 
void setRectangle (tools::Rectangle const &rRectangle)
 
void setRectangleSize (sal_Int32 nWidth, sal_Int32 nHeight)
 
void moveRectangle (sal_Int32 nXDelta, sal_Int32 nYDelta)
 
void moveRectanglePosition (sal_Int32 nX, sal_Int32 nY)
 
virtual rtl::Reference< SdrObjectgetFullDragClone () const override
 
SdrOutlinerImpGetDrawOutliner () const
 
bool ImpCanConvTextToCurve () const
 
rtl::Reference< SdrPathObjImpConvertMakeObj (const basegfx::B2DPolyPolygon &rPolyPolygon, bool bClosed, bool bBezier) const
 
rtl::Reference< SdrObjectImpConvertAddText (rtl::Reference< SdrObject > pObj, bool bBezier) const
 
void ImpSetTextStyleSheetListeners ()
 
void ImpCheckShear ()
 
tools::Rectangle ImpDragCalcRect (const SdrDragStat &rDrag) const
 
void ImpSetTextEditParams () const
 
void SetTextSizeDirty ()
 
void ImpSetContourPolygon (SdrOutliner &rOutliner, tools::Rectangle const &rAnchorRect, bool bLineWidth) const
 
virtual std::unique_ptr< SdrObjGeoDataNewGeoData () const override
 A derived class must override these 3 methods if it has own geometric data that must be saved for Undo. More...
 
virtual void SaveGeoData (SdrObjGeoData &rGeo) const override
 
virtual void RestoreGeoData (const SdrObjGeoData &rGeo) override
 
void NbcSetEckenradius (tools::Long nRad)
 
virtual void AdaptTextMinSize ()
 
 SdrTextObj (SdrModel &rSdrModel)
 
 SdrTextObj (SdrModel &rSdrModel, const tools::Rectangle &rNewRect)
 
 SdrTextObj (SdrModel &rSdrModel, SdrObjKind eNewTextKind)
 
 SdrTextObj (SdrModel &rSdrModel, SdrObjKind eNewTextKind, const tools::Rectangle &rNewRect)
 
 SdrTextObj (SdrModel &rSdrModel, SdrTextObj const &rSource)
 
virtual ~SdrTextObj () override
 
- Protected Member Functions inherited from SdrAttrObj
virtual std::unique_ptr< sdr::properties::BasePropertiesCreateObjectSpecificProperties () override
 
sal_Int32 ImpGetLineWdt () const
 Detects the width of the line. No line ->0. More...
 
virtual void Notify (SfxBroadcaster &rBC, const SfxHint &rHint) override
 Detects when a stylesheet is changed. More...
 
 SdrAttrObj (SdrModel &rSdrModel)
 
 SdrAttrObj (SdrModel &rSdrModel, SdrAttrObj const &)
 
virtual ~SdrAttrObj () override
 
- Protected Member Functions inherited from SdrObject
const tools::RectanglegetOutRectangle () const
 
void setOutRectangleConst (tools::Rectangle const &rRectangle) const
 
void setOutRectangle (tools::Rectangle const &rRectangle)
 
void resetOutRectangle ()
 
void moveOutRectangle (sal_Int32 nXDelta, sal_Int32 nYDelta)
 
virtual ~SdrObject () override
 
virtual std::unique_ptr< sdr::properties::BasePropertiesCreateObjectSpecificProperties ()
 
virtual std::unique_ptr< sdr::contact::ViewContactCreateObjectSpecificViewContact ()
 
tools::Rectangle ImpDragCalcRect (const SdrDragStat &rDrag) const
 
OUString ImpGetDescriptionStr (TranslateId pStrCacheID) const
 
void ImpForcePlusData ()
 
OUString GetMetrStr (tools::Long nVal) const
 
virtual std::unique_ptr< SdrObjGeoDataNewGeoData () const
 A derived class must override these 3 methods if it has own geometric data that must be saved for Undo. More...
 
virtual void SaveGeoData (SdrObjGeoData &rGeo) const
 
virtual void RestoreGeoData (const SdrObjGeoData &rGeo)
 
const SfxItemSetGetObjectItemSet () const
 
void SetObjectItem (const SfxPoolItem &rItem)
 
void SetObjectItemSet (const SfxItemSet &rSet)
 
const SfxPoolItemGetObjectItem (const sal_uInt16 nWhich) const
 
template<class T >
const T & GetObjectItem (TypedWhichId< T > nWhich) const
 
const SfxItemSetgetBackgroundFillSet () const
 
virtual void InternalSetStyleSheet (SfxStyleSheet *pNewStyleSheet, bool bDontRemoveHardAttr, bool bBroadcast)
 
- Protected Member Functions inherited from cppu::OWeakObject
virtual ~OWeakObject () COVERITY_NOEXCEPT_FALSE
 
void disposeWeakConnectionPoint ()
 
- Protected Member Functions inherited from svx::ITextProvider
 ~ITextProvider ()
 
- Static Protected Member Functions inherited from SdrTextObj
static void ImpSetCharStretching (SdrOutliner &rOutliner, const Size &rTextSize, const Size &rShapeSize, Fraction &rFitXCorrection)
 
static void ImpJustifyRect (tools::Rectangle &rRect)
 
- Protected Attributes inherited from SdrTextObj
tools::Rectangle maRectangle
 
GeoStat maGeo
 
rtl::Reference< SdrTextmxText
 
Size maTextSize
 
SdrOutlinermpEditingOutliner
 
SdrObjKind meTextKind
 
Point maTextEditOffset
 
bool mbIsUnchainableClone = false
 
SdrTextObjmpNextInChain = nullptr
 
SdrTextObjmpPrevInChain = nullptr
 
bool mbTextFrame: 1
 
bool mbNoShear: 1
 
bool mbTextSizeDirty: 1
 
bool mbInEditMode: 1
 
bool mbDisableAutoWidthOnDragging: 1
 
bool mbTextAnimationAllowed: 1
 
bool mbInDownScale: 1
 
- Protected Attributes inherited from SdrAttrObj
tools::Rectangle maSnapRect
 
- Protected Attributes inherited from SdrObject
tools::Rectangle m_aOutRect
 
Point m_aAnchor
 
SdrObjUserCallm_pUserCall
 
std::unique_ptr< SdrObjPlusDatam_pPlusData
 
bool m_bVirtObj: 1
 
bool m_bSnapRectDirty: 1
 
bool m_bMovProt: 1
 
bool m_bSizProt: 1
 
bool m_bEmptyPresObj: 1
 
bool m_bNotVisibleAsMaster: 1
 
bool m_bClosedObj: 1
 
bool m_bIsEdge: 1
 
bool m_bIs3DObj: 1
 
bool m_bIsUnoObj: 1
 
bool mbLineIsOutsideGeometry: 1
 
bool mbSupportTextIndentingOnLineWidthChange: 1
 
- Protected Attributes inherited from cppu::OWeakObject
oslInterlockedCount m_refCount
 

Detailed Description

Definition at line 42 of file svdopath.hxx.

Constructor & Destructor Documentation

◆ ~SdrPathObj()

SdrPathObj::~SdrPathObj ( )
overrideprivatevirtualdefault

◆ SdrPathObj() [1/3]

SdrPathObj::SdrPathObj ( SdrModel rSdrModel,
SdrObjKind  eNewKind 
)

Definition at line 1618 of file svdopath.cxx.

References IsClosed(), and SdrObject::m_bClosedObj.

Referenced by CloneSdrObject().

◆ SdrPathObj() [2/3]

SdrPathObj::SdrPathObj ( SdrModel rSdrModel,
SdrPathObj const &  rSource 
)

Definition at line 1627 of file svdopath.cxx.

References GetPathPoly(), IsClosed(), SdrObject::m_bClosedObj, and maPathPolygon.

◆ SdrPathObj() [3/3]

SdrPathObj::SdrPathObj ( SdrModel rSdrModel,
SdrObjKind  eNewKind,
basegfx::B2DPolyPolygon  aPathPoly 
)

Definition at line 1635 of file svdopath.cxx.

References ImpForceKind(), IsClosed(), and SdrObject::m_bClosedObj.

Member Function Documentation

◆ AddToHdlList()

void SdrPathObj::AddToHdlList ( SdrHdlList rHdlList) const
overridevirtual

◆ AddToPlusHdlList()

void SdrPathObj::AddToPlusHdlList ( SdrHdlList rHdlList,
SdrHdl rHdl 
) const
overridevirtual

◆ applySpecialDrag()

bool SdrPathObj::applySpecialDrag ( SdrDragStat rDrag)
overridevirtual

◆ BckCreate()

bool SdrPathObj::BckCreate ( SdrDragStat rStat)
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 2206 of file svdopath.cxx.

References ImpPathForDragAndCreate::BckCreate(), and impGetDAC().

◆ BegCreate()

bool SdrPathObj::BegCreate ( SdrDragStat rStat)
overridevirtual

Every object must be able to create itself interactively.

On MouseDown first an object is created, and its BegCreate() method is called. On every MouseMove, MovCreate() is called. BrkCreate() is called if the user cancels the interactive object creation. EndCreate() is called on the MouseUp event. If EndCreate() returns true, the creation is finished; the object is inserted into the corresponding list. Otherwise it is assumed that further points are necessary to create the object (Polygon, ...). The parameter eCmd contains the number of mouse clicks (if the application provides it). BckCreate() will undo the previous EndCreate(), e.g. to delete the last point of the Polygon. If BckCreate() returns false, creation is cancelled.

Reimplemented from SdrTextObj.

Definition at line 2147 of file svdopath.cxx.

References ImpPathForDragAndCreate::BegCreate(), impGetDAC(), and mpDAC.

◆ beginSpecialDrag()

bool SdrPathObj::beginSpecialDrag ( SdrDragStat rDrag) const
overridevirtual

Reimplemented from SdrObject.

Definition at line 2073 of file svdopath.cxx.

References ImpPathForDragAndCreate::beginPathDrag().

◆ BrkCreate()

void SdrPathObj::BrkCreate ( SdrDragStat rStat)
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 2211 of file svdopath.cxx.

References ImpPathForDragAndCreate::BrkCreate(), impGetDAC(), and mpDAC.

◆ CloneSdrObject()

rtl::Reference< SdrObject > SdrPathObj::CloneSdrObject ( SdrModel rTargetModel) const
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 1823 of file svdopath.cxx.

References SdrPathObj().

◆ CreateObjectSpecificViewContact()

std::unique_ptr< sdr::contact::ViewContact > SdrPathObj::CreateObjectSpecificViewContact ( )
overrideprivatevirtual

Reimplemented from SdrTextObj.

Definition at line 1612 of file svdopath.cxx.

◆ DoConvertToPolyObj()

rtl::Reference< SdrObject > SdrPathObj::DoConvertToPolyObj ( bool  bBezier,
bool  bAddText 
) const
overridevirtual

◆ EndCreate()

bool SdrPathObj::EndCreate ( SdrDragStat rStat,
SdrCreateCmd  eCmd 
)
overridevirtual

◆ GetCreatePointer()

PointerStyle SdrPathObj::GetCreatePointer ( ) const
overridevirtual

get the cursor/pointer that signals creating this object

Reimplemented from SdrTextObj.

Definition at line 2257 of file svdopath.cxx.

References ImpPathForDragAndCreate::GetCreatePointer(), and impGetDAC().

◆ getDragPolyPolygon()

basegfx::B2DPolyPolygon SdrPathObj::getDragPolyPolygon ( const SdrDragStat rDrag) const

Definition at line 2245 of file svdopath.cxx.

References mpDAC, and ImpPathForDragAndCreate::TakeDragPolyPolygon().

◆ GetHdlCount()

sal_uInt32 SdrPathObj::GetHdlCount ( ) const
overridevirtual

Via GetHdlCount the number of Handles can be retrieved.

Normally 8, if it's a line 2. For Polygon objects (Polygon/Spline/Bezier) the number may be much larger. Polygon objects are also allowed to select a point of a selected object. The handle of that point will then be replaced by a new set of handles (PlusHdl). For a Polygon this would be a simple selection Handle, for a Bezier curve this may be up to 3 Handles (including Weights). GetHdl() and GetPlusHdl() must create Handle instances with new! An object that returns true from HasSpacialDrag() must provide these methods (incl. FillHdlList()).

Reimplemented from SdrTextObj.

Definition at line 1949 of file svdopath.cxx.

References GetPathPoly().

Referenced by GetSnapPointCount(), NbcInsPoint(), and SdrPolyEditView::RipUpAtMarkedPoints().

◆ GetLogicRect()

const tools::Rectangle & SdrPathObj::GetLogicRect ( ) const
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 2061 of file svdopath.cxx.

References SdrAttrObj::GetSnapRect().

◆ getObjectPolyPolygon()

basegfx::B2DPolyPolygon SdrPathObj::getObjectPolyPolygon ( const SdrDragStat rDrag) const

Definition at line 2233 of file svdopath.cxx.

References mpDAC.

◆ GetObjIdentifier()

SdrObjKind SdrPathObj::GetObjIdentifier ( ) const
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 1818 of file svdopath.cxx.

References meKind.

Referenced by SdrEditView::ImpDismantleOneObject().

◆ GetPathPoly()

const basegfx::B2DPolyPolygon & SdrPathObj::GetPathPoly ( ) const
inline

◆ GetPoint()

Point SdrPathObj::GetPoint ( sal_uInt32  nHdlNum) const
overridevirtual

◆ GetPointCount()

sal_uInt32 SdrPathObj::GetPointCount ( ) const
overridevirtual

Reimplemented from SdrObject.

Definition at line 2425 of file svdopath.cxx.

References GetPathPoly().

◆ GetSnapPoint()

Point SdrPathObj::GetSnapPoint ( sal_uInt32  i) const
overridevirtual

◆ GetSnapPointCount()

sal_uInt32 SdrPathObj::GetSnapPointCount ( ) const
overridevirtual

snap to special points of an Object (polygon points, center of circle)

Reimplemented from SdrTextObj.

Definition at line 2403 of file svdopath.cxx.

References GetHdlCount().

◆ getSpecialDragComment()

OUString SdrPathObj::getSpecialDragComment ( const SdrDragStat rDrag) const
overridevirtual

◆ getSpecialDragPoly()

basegfx::B2DPolyPolygon SdrPathObj::getSpecialDragPoly ( const SdrDragStat rDrag) const
overridevirtual

◆ hasSpecialDrag()

bool SdrPathObj::hasSpecialDrag ( ) const
overridevirtual

The standard transformations (Move,Resize,Rotate,Mirror,Shear) are taken over by the View (TakeXorPoly(),...).

Object type specific dragging like corner radius of Rectangle, control points of Splines, weights of Bezier curves, pointer of Label objects must be handled by the object itself. To keep the Model free of state, the state is kept in the View and then passed to the object. EndDrag usually returns true for success, false may be returned if the dragging did not modify the object, where the View already handles the case that the pointer was not moved at all.

Reimplemented from SdrTextObj.

Definition at line 2068 of file svdopath.cxx.

◆ ImpForceKind()

void SdrPathObj::ImpForceKind ( )
private

◆ ImpForceLineAngle()

void SdrPathObj::ImpForceLineAngle ( )
private

◆ impGetDAC()

ImpPathForDragAndCreate & SdrPathObj::impGetDAC ( ) const
private

Definition at line 2762 of file svdopath.cxx.

References mpDAC.

Referenced by BckCreate(), BegCreate(), BrkCreate(), EndCreate(), GetCreatePointer(), and MovCreate().

◆ ImpSetClosed()

void SdrPathObj::ImpSetClosed ( bool  bClose)
private

◆ IsBezier()

bool SdrPathObj::IsBezier ( ) const
inline

Definition at line 148 of file svdopath.hxx.

References PathFill, and PathLine.

Referenced by TakeObjInfo().

◆ IsClosed()

bool SdrPathObj::IsClosed ( ) const
inline

◆ IsLine()

bool SdrPathObj::IsLine ( ) const
inline

◆ IsPolyObj()

bool SdrPathObj::IsPolyObj ( ) const
overridevirtual

Reimplemented from SdrObject.

Definition at line 2420 of file svdopath.cxx.

◆ MovCreate()

bool SdrPathObj::MovCreate ( SdrDragStat rStat)
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 2154 of file svdopath.cxx.

References impGetDAC(), and ImpPathForDragAndCreate::MovCreate().

◆ NbcInsPoint()

sal_uInt32 SdrPathObj::NbcInsPoint ( const Point rPos,
bool  bNewObj 
)

◆ NbcInsPointOld()

sal_uInt32 SdrPathObj::NbcInsPointOld ( const Point rPos,
bool  bNewObj 
)

◆ NbcMirror()

void SdrPathObj::NbcMirror ( const Point rRefPnt1,
const Point rRefPnt2 
)
overridevirtual

◆ NbcMove()

void SdrPathObj::NbcMove ( const Size rSiz)
overridevirtual

The methods Move, Resize, Rotate, Mirror, Shear, SetSnapRect and SetLogicRect call the corresponding Nbc-methods, send a Repaint broadcast and set the Modified state on the Model.

Derived classes should usually only override the Nbc methods. Nbc means "no broadcast".

Reimplemented from SdrTextObj.

Definition at line 2262 of file svdopath.cxx.

References basegfx::utils::createTranslateB2DHomMatrix(), Size::Height(), maPathPolygon, SdrTextObj::NbcMove(), basegfx::B2DPolyPolygon::transform(), and Size::Width().

Referenced by NbcSetSnapRect().

◆ NbcResize()

void SdrPathObj::NbcResize ( const Point rRefPnt,
const Fraction aXFact,
const Fraction aYFact 
)
overridevirtual

◆ NbcRotate()

void SdrPathObj::NbcRotate ( const Point rRefPnt,
Degree100  nAngle,
double  fSin,
double  fCos 
)
overridevirtual

◆ NbcSetPathPoly()

void SdrPathObj::NbcSetPathPoly ( const basegfx::B2DPolyPolygon rPathPoly)

◆ NbcSetPoint()

void SdrPathObj::NbcSetPoint ( const Point rPnt,
sal_uInt32  nHdlNum 
)
overridevirtual

◆ NbcSetSnapRect()

void SdrPathObj::NbcSetSnapRect ( const tools::Rectangle rRect)
overridevirtual

◆ NbcShear()

void SdrPathObj::NbcShear ( const Point rRefPnt,
Degree100  nAngle,
double  fTan,
bool  bVShear 
)
overridevirtual

◆ NewGeoData()

std::unique_ptr< SdrObjGeoData > SdrPathObj::NewGeoData ( ) const
overrideprivatevirtual

A derived class must override these 3 methods if it has own geometric data that must be saved for Undo.

NewGeoData() creates an empty instance of a class derived from SdrObjGeoData.

Reimplemented from SdrTextObj.

Definition at line 2705 of file svdopath.cxx.

◆ RecalcSnapRect()

void SdrPathObj::RecalcSnapRect ( )
overridevirtual

Snap is not done on the BoundRect but if possible on logic coordinates (i.e.

without considering stroke width, ...) SetSnapRect() tries to size the Object so that it fits into the passed Rect (without stroke width, ...)

Reimplemented from SdrTextObj.

Definition at line 2364 of file svdopath.cxx.

References count, GetPathPoly(), lcl_ImpGetBoundRect(), and SdrAttrObj::maSnapRect.

◆ RestoreGeoData()

void SdrPathObj::RestoreGeoData ( const SdrObjGeoData rGeo)
overrideprivatevirtual

◆ RipPoint()

rtl::Reference< SdrPathObj > SdrPathObj::RipPoint ( sal_uInt32  nHdlNum,
sal_uInt32 &  rNewPt0Index 
)

◆ SaveGeoData()

void SdrPathObj::SaveGeoData ( SdrObjGeoData rGeo) const
overrideprivatevirtual

◆ SetHandleScale()

void SdrPathObj::SetHandleScale ( bool  bHandleScale)

Scaling is ignored from the transform matrix by default, to not break compatibility.

One can opt in to handle scaling if matching ODF behavior is more important.

Definition at line 2879 of file svdopath.cxx.

References mbHandleScale.

Referenced by SvxShape::_setPropertyValue().

◆ SetPathPoly()

void SdrPathObj::SetPathPoly ( const basegfx::B2DPolyPolygon rPathPoly)

◆ TakeCreatePoly()

basegfx::B2DPolyPolygon SdrPathObj::TakeCreatePoly ( const SdrDragStat rDrag) const
overridevirtual

Polygon dragged by the user when creating the object.

Reimplemented from SdrTextObj.

Definition at line 2219 of file svdopath.cxx.

References basegfx::B2DPolyPolygon::append(), mpDAC, and ImpPathForDragAndCreate::TakeDragPolyPolygon().

◆ TakeObjInfo()

void SdrPathObj::TakeObjInfo ( SdrObjTransformInfoRec rInfo) const
overridevirtual

◆ TakeObjNamePlural()

OUString SdrPathObj::TakeObjNamePlural ( ) const
overridevirtual

Reimplemented from SdrTextObj.

Definition at line 1927 of file svdopath.cxx.

References FreehandFill, FreehandLine, Line, meKind, PathFill, PathLine, Polygon, PolyLine, sName, and SvxResId().

◆ TakeObjNameSingul()

OUString SdrPathObj::TakeObjNameSingul ( ) const
overridevirtual

◆ TakeUnrotatedSnapRect()

void SdrPathObj::TakeUnrotatedSnapRect ( tools::Rectangle rRect) const
overridevirtual

◆ TakeXorPoly()

basegfx::B2DPolyPolygon SdrPathObj::TakeXorPoly ( ) const
overridevirtual

The Xor-Polygon is required by the View to drag the object.

All polygons within the PolyPolygon are interpreted as PolyLine. To get a closed Polygon, close it explicitly.

Reimplemented from SdrTextObj.

Definition at line 1944 of file svdopath.cxx.

References GetPathPoly().

◆ ToggleClosed()

void SdrPathObj::ToggleClosed ( )

◆ TRGetBaseGeometry()

bool SdrPathObj::TRGetBaseGeometry ( basegfx::B2DHomMatrix rMatrix,
basegfx::B2DPolyPolygon rPolyPolygon 
) const
overridevirtual

◆ TRSetBaseGeometry()

void SdrPathObj::TRSetBaseGeometry ( const basegfx::B2DHomMatrix rMatrix,
const basegfx::B2DPolyPolygon rPolyPolygon 
)
overridevirtual

Friends And Related Function Documentation

◆ ImpPathForDragAndCreate

friend class ImpPathForDragAndCreate
friend

Definition at line 45 of file svdopath.hxx.

Member Data Documentation

◆ maPathPolygon

basegfx::B2DPolyPolygon SdrPathObj::maPathPolygon
private

◆ mbHandleScale

bool SdrPathObj::mbHandleScale = false
private

Definition at line 51 of file svdopath.hxx.

Referenced by SetHandleScale(), and TRSetBaseGeometry().

◆ meKind

SdrObjKind SdrPathObj::meKind
private

◆ mpDAC

std::unique_ptr<ImpPathForDragAndCreate> SdrPathObj::mpDAC
private

The documentation for this class was generated from the following files: