diff options
| author | Krzysztof Kosi??ski <tweenk.pl@gmail.com> | 2010-02-04 02:14:09 +0000 |
|---|---|---|
| committer | Krzysztof KosiĆski <tweenk.pl@gmail.com> | 2010-02-04 02:14:09 +0000 |
| commit | 7ce8847f2410a24a6bce4ca8a43ad7ebdb4839eb (patch) | |
| tree | 55eeacbb71c09920b60ff00da540661335aed65c /src/ui/tool/transform-handle-set.cpp | |
| parent | patch by sas for read-only directory (diff) | |
| download | inkscape-7ce8847f2410a24a6bce4ca8a43ad7ebdb4839eb.tar.gz inkscape-7ce8847f2410a24a6bce4ca8a43ad7ebdb4839eb.zip | |
Reduce libsigc++ usage to partially fix performance regressions
in the new node tool.
(bzr r9044)
Diffstat (limited to 'src/ui/tool/transform-handle-set.cpp')
| -rw-r--r-- | src/ui/tool/transform-handle-set.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/ui/tool/transform-handle-set.cpp b/src/ui/tool/transform-handle-set.cpp index f9086950d..1af848b96 100644 --- a/src/ui/tool/transform-handle-set.cpp +++ b/src/ui/tool/transform-handle-set.cpp @@ -84,17 +84,6 @@ public: , _th(th) { setVisible(false); - signal_grabbed.connect( - sigc::bind_return( - sigc::hide( - sigc::mem_fun(*this, &TransformHandle::_grabbedHandler)), - false)); - signal_dragged.connect( - sigc::hide<0>( - sigc::mem_fun(*this, &TransformHandle::_draggedHandler))); - signal_ungrabbed.connect( - sigc::hide( - sigc::mem_fun(*this, &TransformHandle::_ungrabbedHandler))); } protected: virtual void startTransform() {} @@ -106,7 +95,7 @@ protected: Geom::Point _origin; TransformHandleSet &_th; private: - void _grabbedHandler() { + virtual bool grabbed(GdkEventMotion *) { _origin = position(); _last_transform.setIdentity(); startTransform(); @@ -114,8 +103,9 @@ private: _th._setActiveHandle(this); _cset = &invisible_cset; _setState(_state); + return false; } - void _draggedHandler(Geom::Point &new_pos, GdkEventMotion *event) + virtual void dragged(Geom::Point &new_pos, GdkEventMotion *event) { Geom::Matrix t = computeTransform(new_pos, event); // protect against degeneracies @@ -125,7 +115,7 @@ private: _th.signal_transform.emit(incr); _last_transform = t; } - void _ungrabbedHandler() { + virtual void ungrabbed(GdkEventButton *) { _th._clearActiveHandle(); _cset = &thandle_cset; _setState(_state); |
