20 #ifndef INCLUDED_SVX_SVDOVIRT_HXX
21 #define INCLUDED_SVX_SVDOVIRT_HXX
46 virtual std::unique_ptr<SdrObjGeoData>
NewGeoData()
const override;
59 const SdrObject& GetReferencedObj()
const;
104 virtual void NbcRotate(
const Point& rRef,
Degree100 nAngle,
double sn,
double cs)
override;
105 virtual void NbcMirror(
const Point& rRef1,
const Point& rRef2)
override;
106 virtual void NbcShear(
const Point& rRef,
Degree100 nAngle,
double tn,
bool bVShear)
override;
108 virtual void Move(
const Size& rSiz)
override;
110 bool bUnsetRelative =
true)
override;
111 virtual void Rotate(
const Point& rRef,
Degree100 nAngle,
double sn,
double cs)
override;
112 virtual void Mirror(
const Point& rRef1,
const Point& rRef2)
override;
113 virtual void Shear(
const Point& rRef,
Degree100 nAngle,
double tn,
bool bVShear)
override;
133 virtual void NbcSetPoint(
const Point& rPnt, sal_uInt32 i)
override;
135 virtual std::unique_ptr<SdrObjGeoData>
GetGeoData()
const override;
140 virtual bool HasMacro()
const override;
148 virtual Point GetOffset()
const;
151 #endif // INCLUDED_SVX_SVDOVIRT_HXX
virtual void Shear(const Point &rRef, Degree100 nAngle, double tn, bool bVShear)
virtual bool BckCreate(SdrDragStat &rStat)
virtual basegfx::B2DPolyPolygon TakeXorPoly() const
The Xor-Polygon is required by the View to drag the object.
virtual std::unique_ptr< SdrObjGeoData > NewGeoData() const
A derived class must override these 3 methods if it has own geometric data that must be saved for Und...
virtual void TakeObjInfo(SdrObjTransformInfoRec &rInfo) const
virtual const tools::Rectangle & GetCurrentBoundRect() const
virtual bool BegCreate(SdrDragStat &rStat)
Every object must be able to create itself interactively.
tools::Rectangle aSnapRect
virtual void Resize(const Point &rRef, const Fraction &xFact, const Fraction &yFact, bool bUnsetRelative=true)
virtual OUString getSpecialDragComment(const SdrDragStat &rDrag) const
virtual bool IsPolyObj() const
virtual void NbcResize(const Point &rRef, const Fraction &xFact, const Fraction &yFact)
virtual void NbcRotate(const Point &rRef, Degree100 nAngle, double sn, double cs)
virtual void NbcShear(const Point &rRef, Degree100 nAngle, double tn, bool bVShear)
virtual bool hasSpecialDrag() const
The standard transformations (Move,Resize,Rotate,Mirror,Shear) are taken over by the View (TakeXorPol...
virtual OUString TakeObjNameSingul() const
virtual void AddToHdlList(SdrHdlList &rHdlList) const
virtual sal_uInt32 GetPointCount() const
virtual SdrObjKind GetObjIdentifier() const
virtual sdr::properties::BaseProperties & GetProperties() const
All geometrical data of an arbitrary object for use in undo/redo.
virtual SdrObjList * GetSubList() const
virtual void AddToPlusHdlList(SdrHdlList &rHdlList, SdrHdl &rHdl) const
virtual const tools::Rectangle & GetSnapRect() const
virtual SdrObject * CheckMacroHit(const SdrObjMacroHitRec &rRec) const
virtual std::unique_ptr< SdrObjGeoData > GetGeoData() const
virtual void BrkCreate(SdrDragStat &rStat)
virtual bool EndCreate(SdrDragStat &rStat, SdrCreateCmd eCmd)
virtual Point GetSnapPoint(sal_uInt32 i) const
virtual void RecalcSnapRect()
Snap is not done on the BoundRect but if possible on logic coordinates (i.e.
virtual bool HasLimitedRotation() const
virtual bool MovCreate(SdrDragStat &rStat)
virtual void NbcSetPoint(const Point &rPnt, sal_uInt32 i)
virtual void RestoreGeoData(const SdrObjGeoData &rGeo)
virtual void NbcMirror(const Point &rRef1, const Point &rRef2)
virtual void SetGeoData(const SdrObjGeoData &rGeo)
virtual Degree100 GetShearAngle(bool bVertical=false) const
virtual basegfx::B2DPolyPolygon getSpecialDragPoly(const SdrDragStat &rDrag) const
virtual bool supportsFullDrag() const
virtual void SaveGeoData(SdrObjGeoData &rGeo) const
virtual bool HasMacro() const
virtual void SetLogicRect(const tools::Rectangle &rRect)
virtual void Move(const Size &rSiz)
virtual void RecalcBoundRect()
virtual void PaintMacro(OutputDevice &rOut, const tools::Rectangle &rDirtyRect, const SdrObjMacroHitRec &rRec) const
virtual sal_uInt32 GetHdlCount() const
Via GetHdlCount the number of Handles can be retrieved.
virtual void Mirror(const Point &rRef1, const Point &rRef2)
virtual SdrInventor GetObjInventor() const
virtual const tools::Rectangle & GetLastBoundRect() const
virtual void NbcReformatText()
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint)
virtual std::unique_ptr< sdr::contact::ViewContact > CreateObjectSpecificViewContact()
virtual PointerStyle GetMacroPointer(const SdrObjMacroHitRec &rRec) const
virtual void NbcSetSnapRect(const tools::Rectangle &rRect)
virtual void NbcSetLogicRect(const tools::Rectangle &rRect)
virtual void NbcMove(const Size &rSiz)
The methods Move, Resize, Rotate, Mirror, Shear, SetSnapRect and SetLogicRect call the corresponding ...
#define SVXCORE_DLLPUBLIC
virtual SdrObject * CloneSdrObject(SdrModel &rTargetModel) const
FIXME: The virtual object is not yet fully implemented and tested.
std::unique_ptr< SdrObject, SdrObjectFreeOp > SdrObjectUniquePtr
virtual SdrObjectUniquePtr getFullDragClone() const
virtual bool beginSpecialDrag(SdrDragStat &rDrag) const
virtual OUString TakeObjNamePlural() const
virtual void Rotate(const Point &rRef, Degree100 nAngle, double sn, double cs)
virtual void SetSnapRect(const tools::Rectangle &rRect)
virtual bool applySpecialDrag(SdrDragStat &rDrag)
virtual void NbcSetAnchorPos(const Point &rPnt)
virtual Degree100 GetRotateAngle() const
virtual const tools::Rectangle & GetLogicRect() const
virtual bool DoMacro(const SdrObjMacroHitRec &rRec)
virtual Point GetPoint(sal_uInt32 i) const
virtual basegfx::B2DPolyPolygon TakeCreatePoly(const SdrDragStat &rDrag) const
Polygon dragged by the user when creating the object.
virtual sal_uInt32 GetSnapPointCount() const
snap to special points of an Object (polygon points, center of circle)