diff options
author | Armin Le Grand <alg@apache.org> | 2012-06-19 09:47:15 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-04-13 07:59:17 +0100 |
commit | c1a2f580f0a5a479282cfa7ffa538de6d30b216a (patch) | |
tree | 4d8666bb36d3b4f4790a3a169eff320dd00eb47a /svx/inc | |
parent | 5acc994f4ed3e118453fb493226b751a6d9d3bce (diff) |
Resolves: #i54102# added support for rotation, shear and mirror for SdrEdgeObj
i.e. Edges, Connectors
added interactive preview, allowed these actions for editing
(cherry picked from commit f8721f5f94f74522eae36dc6dc054b983384fac9)
Conflicts:
svx/source/svdraw/svddrgmt.cxx
svx/source/svdraw/svdoedge.cxx
Change-Id: I20b971674e683a25f70f6d2e2f4b5231f38638bc
Related: i#54102# Removed IsInserted() check...
for doing transformations to have them on interactions
(cherry picked from commit 3ca8c0e04015fcd945a66e254d845dc9081aa5e5)
Conflicts:
svx/source/svdraw/svdoedge.cxx
Change-Id: If55e5f0d4bb5aef7f602fdcd03d51014390e8d2a
Diffstat (limited to 'svx/inc')
-rw-r--r-- | svx/inc/svx/svddrgmt.hxx | 10 | ||||
-rw-r--r-- | svx/inc/svx/svdoedge.hxx | 5 |
2 files changed, 13 insertions, 2 deletions
diff --git a/svx/inc/svx/svddrgmt.hxx b/svx/inc/svx/svddrgmt.hxx index da6715dd1eee..3fc7fbb38168 100644 --- a/svx/inc/svx/svddrgmt.hxx +++ b/svx/inc/svx/svddrgmt.hxx @@ -91,6 +91,12 @@ public: SdrDragEntrySdrObject(const SdrObject& rOriginal, sdr::contact::ObjectContact& rObjectContact, bool bModify); virtual ~SdrDragEntrySdrObject(); + // #i54102# Split createPrimitive2DSequenceInCurrentState in prepareCurrentState and processing, + // added accessors to original and clone + void prepareCurrentState(SdrDragMethod& rDragMethod); + const SdrObject& getOriginal() const { return maOriginal; } + SdrObject* getClone() { return mpClone; } + virtual drawinglayer::primitive2d::Primitive2DSequence createPrimitive2DSequenceInCurrentState(SdrDragMethod& rDragMethod); }; @@ -140,8 +146,8 @@ private: protected: // access for derivated classes to maSdrDragEntries - void clearSdrDragEntries() { for(sal_uInt32 a(0); a < maSdrDragEntries.size(); a++) { delete maSdrDragEntries[a]; } maSdrDragEntries.clear(); } - void addSdrDragEntry(SdrDragEntry* pNew) { if(pNew) { maSdrDragEntries.push_back(pNew); }} + void clearSdrDragEntries(); + void addSdrDragEntry(SdrDragEntry* pNew); virtual void createSdrDragEntries(); virtual void createSdrDragEntryForSdrObject(const SdrObject& rOriginal, sdr::contact::ObjectContact& rObjectContact, bool bModify); diff --git a/svx/inc/svx/svdoedge.hxx b/svx/inc/svx/svdoedge.hxx index 70ca454fdb81..ea0968cd9487 100644 --- a/svx/inc/svx/svdoedge.hxx +++ b/svx/inc/svx/svdoedge.hxx @@ -262,6 +262,11 @@ public: virtual void NbcMove(const Size& aSize); virtual void NbcResize(const Point& rRefPnt, const Fraction& aXFact, const Fraction& aYFact); + // #i54102# added rotate, mirrorn and shear support + virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs); + virtual void NbcMirror(const Point& rRef1, const Point& rRef2); + virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear); + // #102344# Added missing implementation virtual void NbcSetAnchorPos(const Point& rPnt); |