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:
Collaboration diagram for SdrPathObj:

Public Member Functions

 SdrPathObj (SdrModel &rSdrModel, SdrObjKind eNewKind)
 SdrPathObj (SdrModel &rSdrModel, SdrObjKind eNewKind, const basegfx::B2DPolyPolygon &rPathPoly)
virtual void TakeObjInfo (SdrObjTransformInfoRec &rInfo) const override
virtual sal_uInt16 GetObjIdentifier () const override
virtual void TakeUnrotatedSnapRect (tools::Rectangle &rRect) const override
virtual SdrPathObjCloneSdrObject (SdrModel &rTargetModel) const override
SdrPathObjoperator= (const SdrPathObj &rObj)
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 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, long nAngle, double fSin, double fCos) override
virtual void NbcMirror (const Point &rRefPnt1, const Point &rRefPnt2) override
virtual void NbcShear (const Point &rRefPnt, long 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)
SdrObjectRipPoint (sal_uInt32 nHdlNum, sal_uInt32 &rNewPt0Index)
virtual SdrObjectUniquePtr DoConvertToPolyObj (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
bool IsSpline () 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
- 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 GetFontScaleY () const
virtual void TakeTextRect (SdrOutliner &rOutliner, tools::Rectangle &rTextRect, bool bNoEditText, tools::Rectangle *pAnchorRect, bool bLineWidth=true) const
virtual void TakeTextAnchorRect (::tools::Rectangle &rAnchorRect) const
const GeoStatGetGeoStat () const
long GetEckenradius () const
virtual bool IsAutoGrowHeight () const
long GetMinTextFrameHeight () const
long GetMaxTextFrameHeight () const
virtual bool IsAutoGrowWidth () const
long GetMinTextFrameWidth () const
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
long GetTextLeftDistance () const
 Left inner spacing to borders. More...
long GetTextRightDistance () const
 Right inner spacing to borders. More...
long GetTextUpperDistance () const
 Top inner spacing to borders. More...
long GetTextLowerDistance () const
 Bottom inner spacing to borders. More...
SdrTextAniKind GetTextAniKind () const
SdrTextAniDirection GetTextAniDirection () const
virtual void handlePageChange (SdrPage *pOldPage, SdrPage *pNewPage) override
SdrTextObjoperator= (const SdrTextObj &rObj)
virtual basegfx::B2DPolyPolygon TakeContour () const override
 contour for TextToContour More...
virtual void NbcSetLogicRect (const tools::Rectangle &rRect) override
virtual const tools::RectangleGetLogicRect () const override
virtual long GetRotateAngle () const override
virtual long GetShearAngle (bool bVertical=false) const 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::unique_ptr< OutlinerParaObject > pTextObject) override
void NbcSetOutlinerParaObjectForText (std::unique_ptr< OutlinerParaObject > pTextObject, SdrText *pText)
virtual OutlinerParaObjectGetOutlinerParaObject () const override
bool CanCreateEditOutlinerParaObject () const
std::unique_ptr< 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, OUString &rRet) const
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)
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...
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)
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
- Public Member Functions inherited from SdrAttrObj
 SdrAttrObj (SdrAttrObj const &)=delete
 SdrAttrObj (SdrAttrObj &&)=delete
SdrAttrObjoperator= (SdrAttrObj const &)=default
SdrAttrObjoperator= (SdrAttrObj &&)=default
bool HasFill () const
bool HasLine () const
virtual const tools::RectangleGetSnapRect () const override
- Public Member Functions inherited from SdrObject
const SdrObjectgetFillGeometryDefiningShape () const
 SdrObject (SdrModel &rSdrModel)
SdrPagegetSdrPageFromSdrObject () const
SdrModelgetSdrModelFromSdrObject () const
virtual SdrObjListgetChildrenOfSdrObject () const
SdrObjListgetParentSdrObjListFromSdrObject () const
SdrObjectgetParentSdrObjectFromSdrObject () const
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
void SetDiagramData (std::shared_ptr< DiagramDataInterface > pDiagramData)
std::shared_ptr< DiagramDataInterfaceGetDiagramData () const
virtual void SetRectsDirty (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 SdrLayerID GetLayer () const
virtual void NbcSetLayer (SdrLayerID nLayer)
virtual void SetLayer (SdrLayerID nLayer)
void getMergedHierarchySdrLayerIDSet (SdrLayerIDSet &rSet) const
void SendUserCall (SdrUserCallType eUserCall, const tools::Rectangle &rBoundRect) const
void SetName (const OUString &rStr)
OUString GetName () const
void MakeNameUnique ()
void MakeNameUnique (std::unordered_set< OUString > &rNameSet)
void SetTitle (const OUString &rStr)
OUString GetTitle () const
void SetDescription (const OUString &rStr)
OUString GetDescription () 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
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
SdrObjectoperator= (const SdrObject &rObj)
virtual void addCropHandles (SdrHdlList &rTarget) const
virtual bool supportsFullDrag () const
virtual void NbcCrop (const basegfx::B2DPoint &rRef, double fxFact, double fyFact)
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, long nAngle, double sn, double cs)
virtual void Mirror (const Point &rRef1, const Point &rRef2)
virtual void Shear (const Point &rRef, long 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 SetSnapRect (const tools::Rectangle &rRect)
virtual void SetLogicRect (const tools::Rectangle &rRect)
virtual void AdjustToMaxRect (const tools::Rectangle &rMaxRect, bool bShrinkOnly=false)
void SetPoint (const Point &rPnt, sal_uInt32 i)
virtual 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)
virtual void NbcSetStyleSheet (SfxStyleSheet *pNewStyleSheet, bool bDontRemoveHardAttr)
SfxStyleSheetGetStyleSheet () const
void SetOutlinerParaObject (std::unique_ptr< OutlinerParaObject > pTextObject)
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, long 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)
SdrObjectUniquePtr ConvertToPolyObj (bool bBezier, bool bLineToArea) const
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 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::uno::XInterface > getUnoShape ()
svx::PropertyChangeNotifiergetShapePropertyChangeNotifier ()
void notifyShapePropertyChange (const svx::ShapeProperty _eProperty) const
bool IsInDestruction () const
bool HasFillStyle () const
bool HasLineStyle () const
const tools::RectangleGetBLIPSizeRectangle () const
void SetBLIPSizeRectangle (const tools::Rectangle &aRect)
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)
void setUnoShape (const css::uno::Reference< css::uno::XInterface > &_rxUnoShape)
const css::uno::WeakReference< css::uno::XInterface > & getWeakUnoShape () const
void setSuitableOutlinerBg (Outliner &rOutliner) const
- 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
void RemoveBroadcaster_Impl (SfxBroadcaster &rBC)
- Public Member Functions inherited from tools::WeakBase
 WeakBase ()
virtual ~WeakBase ()
void clearWeak ()

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 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 RestGeoData (const SdrObjGeoData &rGeo) override

Private Attributes

basegfx::B2DPolyPolygon maPathPolygon
SdrObjKind meKind
std::unique_ptr< ImpPathForDragAndCreatempDAC


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 ()
static void Free (SdrObject *&_rpObject)
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 SdrObjectUniquePtr getFullDragClone () const override
SdrOutlinerImpGetDrawOutliner () const
bool ImpCanConvTextToCurve () const
SdrPathObjUniquePtr ImpConvertMakeObj (const basegfx::B2DPolyPolygon &rPolyPolygon, bool bClosed, bool bBezier) const
SdrObjectUniquePtr ImpConvertAddText (SdrObjectUniquePtr 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
void NbcSetEckenradius (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)
virtual ~SdrTextObj () override
- Protected Member Functions inherited from SdrAttrObj
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)
virtual ~SdrAttrObj () override
- Protected Member Functions inherited from SdrObject
virtual ~SdrObject () override
tools::Rectangle ImpDragCalcRect (const SdrDragStat &rDrag) const
OUString ImpGetDescriptionStr (const char *pStrCacheID) const
void ImpForcePlusData ()
OUString GetMetrStr (long nVal) const
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
virtual void impl_setUnoShape (const css::uno::Reference< css::uno::XInterface > &_rxUnoShape)
 Sets a new UNO shape. More...
template<typename T >
T * CloneHelper (SdrModel &rTargetModel) const
- 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 maRect
GeoStat aGeo
std::unique_ptr< SdrTextmpText
Size aTextSize
SdrObjKind eTextKind
Point maTextEditOffset
bool mbIsUnchainableClone = false
SdrTextObjmpNextInChain = nullptr
SdrTextObjmpPrevInChain = nullptr
bool bTextFrame: 1
bool bNoShear: 1
bool bTextSizeDirty: 1
bool mbInEditMode: 1
bool bDisableAutoWidthOnDragging: 1
bool mbTextAnimationAllowed: 1
bool mbInDownScale: 1
- Protected Attributes inherited from SdrAttrObj
tools::Rectangle maSnapRect
- Protected Attributes inherited from SdrObject
tools::Rectangle aOutRect
Point aAnchor
std::unique_ptr< SdrObjPlusDatapPlusData
bool bVirtObj: 1
bool bSnapRectDirty: 1
bool bMovProt: 1
bool bSizProt: 1
bool bEmptyPresObj: 1
bool bNotVisibleAsMaster: 1
bool bClosedObj: 1
bool bIsEdge: 1
bool bIs3DObj: 1
bool bIsUnoObj: 1
bool mbLineIsOutsideGeometry: 1
bool mbSupportTextIndentingOnLineWidthChange: 1

Detailed Description

Definition at line 43 of file svdopath.hxx.

Constructor & Destructor Documentation

SdrPathObj::~SdrPathObj ( )
SdrPathObj::SdrPathObj ( SdrModel rSdrModel,
SdrObjKind  eNewKind 

Definition at line 1619 of file svdopath.cxx.

References SdrObject::bClosedObj, and IsClosed().

SdrPathObj::SdrPathObj ( SdrModel rSdrModel,
SdrObjKind  eNewKind,
const basegfx::B2DPolyPolygon rPathPoly 

Definition at line 1628 of file svdopath.cxx.

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

Member Function Documentation

void SdrPathObj::AddToHdlList ( SdrHdlList rHdlList) const
void SdrPathObj::AddToPlusHdlList ( SdrHdlList rHdlList,
SdrHdl rHdl 
) const
bool SdrPathObj::applySpecialDrag ( SdrDragStat rDrag)
bool SdrPathObj::BckCreate ( SdrDragStat rStat)

Reimplemented from SdrTextObj.

Definition at line 2207 of file svdopath.cxx.

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

bool SdrPathObj::BegCreate ( SdrDragStat rStat)

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 2148 of file svdopath.cxx.

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

bool SdrPathObj::beginSpecialDrag ( SdrDragStat rDrag) const

Reimplemented from SdrObject.

Definition at line 2074 of file svdopath.cxx.

References ImpPathForDragAndCreate::beginPathDrag().

void SdrPathObj::BrkCreate ( SdrDragStat rStat)

Reimplemented from SdrTextObj.

Definition at line 2212 of file svdopath.cxx.

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

SdrPathObj * SdrPathObj::CloneSdrObject ( SdrModel rTargetModel) const

Reimplemented from SdrTextObj.

Definition at line 1818 of file svdopath.cxx.

Referenced by RipPoint().

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

Reimplemented from SdrTextObj.

Definition at line 1613 of file svdopath.cxx.

SdrObjectUniquePtr SdrPathObj::DoConvertToPolyObj ( bool  bBezier,
bool  bAddText 
) const
bool SdrPathObj::EndCreate ( SdrDragStat rStat,
SdrCreateCmd  eCmd 
PointerStyle SdrPathObj::GetCreatePointer ( ) const

get the cursor/pointer that signals creating this object

Reimplemented from SdrTextObj.

Definition at line 2258 of file svdopath.cxx.

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

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

Definition at line 2246 of file svdopath.cxx.

References mpDAC, and ImpPathForDragAndCreate::TakeDragPolyPolygon().

Referenced by SdrCreateView::ShowCreateObj().

sal_uInt32 SdrPathObj::GetHdlCount ( ) const

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 1963 of file svdopath.cxx.

References GetPathPoly().

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

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

Definition at line 2234 of file svdopath.cxx.

References mpDAC.

Referenced by SdrCreateView::ShowCreateObj().

sal_uInt16 SdrPathObj::GetObjIdentifier ( ) const

Reimplemented from SdrTextObj.

Definition at line 1813 of file svdopath.cxx.

References meKind.

Referenced by SdrEditView::ImpDismantleOneObject().

const basegfx::B2DPolyPolygon& SdrPathObj::GetPathPoly ( ) const
Point SdrPathObj::GetPoint ( sal_uInt32  nHdlNum) const

Reimplemented from SdrObject.

Definition at line 2438 of file svdopath.cxx.

References FRound(), basegfx::B2DPolygon::getB2DPoint(), GetPathPoly(), and Point.

sal_uInt32 SdrPathObj::GetPointCount ( ) const

Reimplemented from SdrObject.

Definition at line 2426 of file svdopath.cxx.

References GetPathPoly().

Point SdrPathObj::GetSnapPoint ( sal_uInt32  i) const

Reimplemented from SdrTextObj.

Definition at line 2409 of file svdopath.cxx.

References FRound(), GetPathPoly(), basegfx::B2DTuple::getX(), basegfx::B2DTuple::getY(), Point, and SAL_WARN.

sal_uInt32 SdrPathObj::GetSnapPointCount ( ) const

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

Reimplemented from SdrTextObj.

Definition at line 2404 of file svdopath.cxx.

References GetHdlCount().

OUString SdrPathObj::getSpecialDragComment ( const SdrDragStat rDrag) const
basegfx::B2DPolyPolygon SdrPathObj::getSpecialDragPoly ( const SdrDragStat rDrag) const
bool SdrPathObj::hasSpecialDrag ( ) const

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 2069 of file svdopath.cxx.

void SdrPathObj::ImpForceKind ( )
void SdrPathObj::ImpForceLineAngle ( )
ImpPathForDragAndCreate & SdrPathObj::impGetDAC ( ) const

Definition at line 2763 of file svdopath.cxx.

References mpDAC.

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

void SdrPathObj::ImpSetClosed ( bool  bClose)
bool SdrPathObj::IsBezier ( ) const

Definition at line 146 of file svdopath.hxx.


Referenced by TakeObjInfo().

bool SdrPathObj::IsClosed ( ) const
bool SdrPathObj::IsLine ( ) const
bool SdrPathObj::IsPolyObj ( ) const

Reimplemented from SdrObject.

Definition at line 2421 of file svdopath.cxx.

bool SdrPathObj::IsSpline ( ) const

Definition at line 147 of file svdopath.hxx.


Referenced by TakeObjInfo().

bool SdrPathObj::MovCreate ( SdrDragStat rStat)

Reimplemented from SdrTextObj.

Definition at line 2155 of file svdopath.cxx.

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

sal_uInt32 SdrPathObj::NbcInsPoint ( const Point rPos,
bool  bNewObj 
sal_uInt32 SdrPathObj::NbcInsPointOld ( const Point rPos,
bool  bNewObj 
void SdrPathObj::NbcMirror ( const Point rRefPnt1,
const Point rRefPnt2 
void SdrPathObj::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.

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

Reimplemented from SdrTextObj.

Definition at line 2263 of file svdopath.cxx.

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

Referenced by NbcSetSnapRect().

void SdrPathObj::NbcResize ( const Point rRefPnt,
const Fraction aXFact,
const Fraction aYFact 
void SdrPathObj::NbcRotate ( const Point rRefPnt,
long  nAngle,
double  fSin,
double  fCos 
void SdrPathObj::NbcSetPathPoly ( const basegfx::B2DPolyPolygon rPathPoly)
void SdrPathObj::NbcSetPoint ( const Point rPnt,
sal_uInt32  nHdlNum 
void SdrPathObj::NbcSetSnapRect ( const tools::Rectangle rRect)
void SdrPathObj::NbcShear ( const Point rRefPnt,
long  nAngle,
double  fTan,
bool  bVShear 
SdrObjGeoData * SdrPathObj::NewGeoData ( ) const

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 2706 of file svdopath.cxx.

SdrPathObj & SdrPathObj::operator= ( const SdrPathObj rObj)

Definition at line 1823 of file svdopath.cxx.

References GetPathPoly(), maPathPolygon, and SdrTextObj::operator=().

void SdrPathObj::RecalcSnapRect ( )

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 2365 of file svdopath.cxx.

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

void SdrPathObj::RestGeoData ( const SdrObjGeoData rGeo)
SdrObject * SdrPathObj::RipPoint ( sal_uInt32  nHdlNum,
sal_uInt32 &  rNewPt0Index 
void SdrPathObj::SaveGeoData ( SdrObjGeoData rGeo) const
void SdrPathObj::SetPathPoly ( const basegfx::B2DPolyPolygon rPathPoly)
basegfx::B2DPolyPolygon SdrPathObj::TakeCreatePoly ( const SdrDragStat rDrag) const

Polygon dragged by the user when creating the object.

Reimplemented from SdrTextObj.

Definition at line 2220 of file svdopath.cxx.

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

void SdrPathObj::TakeObjInfo ( SdrObjTransformInfoRec rInfo) const
OUString SdrPathObj::TakeObjNamePlural ( ) const
OUString SdrPathObj::TakeObjNameSingul ( ) const
void SdrPathObj::TakeUnrotatedSnapRect ( tools::Rectangle rRect) const
basegfx::B2DPolyPolygon SdrPathObj::TakeXorPoly ( ) const

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 1958 of file svdopath.cxx.

References GetPathPoly().

void SdrPathObj::ToggleClosed ( )
bool SdrPathObj::TRGetBaseGeometry ( basegfx::B2DHomMatrix rMatrix,
basegfx::B2DPolyPolygon rPolyPolygon 
) const
void SdrPathObj::TRSetBaseGeometry ( const basegfx::B2DHomMatrix rMatrix,
const basegfx::B2DPolyPolygon rPolyPolygon 

Friends And Related Function Documentation

friend class ImpPathForDragAndCreate

Definition at line 46 of file svdopath.hxx.

Member Data Documentation

basegfx::B2DPolyPolygon SdrPathObj::maPathPolygon
SdrObjKind SdrPathObj::meKind
std::unique_ptr<ImpPathForDragAndCreate> SdrPathObj::mpDAC

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