summaryrefslogtreecommitdiff
path: root/svx/inc
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2012-06-19 09:47:15 +0000
committerCaolán McNamara <caolanm@redhat.com>2013-04-13 07:59:17 +0100
commitc1a2f580f0a5a479282cfa7ffa538de6d30b216a (patch)
tree4d8666bb36d3b4f4790a3a169eff320dd00eb47a /svx/inc
parent5acc994f4ed3e118453fb493226b751a6d9d3bce (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.hxx10
-rw-r--r--svx/inc/svx/svdoedge.hxx5
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);