summaryrefslogtreecommitdiffstats
path: root/src/ui/tool/control-point-selection.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/tool/control-point-selection.h')
-rw-r--r--src/ui/tool/control-point-selection.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/ui/tool/control-point-selection.h b/src/ui/tool/control-point-selection.h
index 3aed6ae93..7e09d50f5 100644
--- a/src/ui/tool/control-point-selection.h
+++ b/src/ui/tool/control-point-selection.h
@@ -14,17 +14,19 @@
#include <memory>
#include <boost/optional.hpp>
+#include <stddef.h>
#include <sigc++/sigc++.h>
#include <2geom/forward.h>
#include <2geom/point.h>
#include <2geom/rect.h>
-#include "display/display-forward.h"
#include "util/accumulators.h"
#include "util/unordered-containers.h"
#include "ui/tool/commit-events.h"
#include "ui/tool/manipulator.h"
+#include "snap-candidate.h"
class SPDesktop;
+struct SPCanvasGroup;
namespace Inkscape {
namespace UI {
@@ -90,7 +92,7 @@ public:
virtual bool event(GdkEvent *);
- void transform(Geom::Matrix const &m);
+ void transform(Geom::Affine const &m);
void align(Geom::Dim2 d);
void distribute(Geom::Dim2 d);
@@ -108,6 +110,10 @@ public:
sigc::signal<void> signal_update;
sigc::signal<void, SelectableControlPoint *, bool> signal_point_changed;
sigc::signal<void, CommitEvent> signal_commit;
+
+ std::vector<Inkscape::SnapCandidatePoint> getOriginalPoints();
+ void setOriginalPoints();
+
private:
// The functions below are invoked from SelectableControlPoint.
// Previously they were connected to handlers when selecting, but this
@@ -125,14 +131,14 @@ private:
bool _keyboardRotate(GdkEventKey const &, int);
bool _keyboardScale(GdkEventKey const &, int);
bool _keyboardFlip(Geom::Dim2);
- void _keyboardTransform(Geom::Matrix const &);
+ void _keyboardTransform(Geom::Affine const &);
void _commitHandlesTransform(CommitEvent ce);
double _rotationRadius(Geom::Point const &);
set_type _points;
set_type _all_points;
INK_UNORDERED_MAP<SelectableControlPoint *, Geom::Point> _original_positions;
- INK_UNORDERED_MAP<SelectableControlPoint *, Geom::Matrix> _last_trans;
+ INK_UNORDERED_MAP<SelectableControlPoint *, Geom::Affine> _last_trans;
boost::optional<double> _rot_radius;
boost::optional<double> _mouseover_rot_radius;
Geom::OptRect _bounds;