From bdd7add6c064afee52d2eabeaa18f745430e5a4d Mon Sep 17 00:00:00 2001 From: johanengelen Date: Wed, 2 Jan 2008 18:20:02 +0000 Subject: [PATCH] make LPE parameters responsible for transformation (LPE cycles through its params to apply transform) --- src/live_effects/effect.cpp | 1 + src/live_effects/parameter/parameter.h | 2 ++ src/live_effects/parameter/path.h | 2 ++ src/live_effects/parameter/point.h | 2 ++ 4 files changed, 7 insertions(+) diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp index 21c1d6719..0771edb47 100644 --- a/src/live_effects/effect.cpp +++ b/src/live_effects/effect.cpp @@ -361,6 +361,7 @@ Effect::transform_multiply(Geom::Matrix const& postmul, bool set) // cycle through all parameters. Most parameters will not need transformation, but path and point params do. for (std::vector::iterator it = param_vector.begin(); it != param_vector.end(); it++) { Parameter * param = *it; + param->param_transform_multiply(postmul, set); } } diff --git a/src/live_effects/parameter/parameter.h b/src/live_effects/parameter/parameter.h index 78d12ca69..bd3fe906e 100644 --- a/src/live_effects/parameter/parameter.h +++ b/src/live_effects/parameter/parameter.h @@ -55,6 +55,8 @@ public: virtual void param_editOncanvas(SPItem * /*item*/, SPDesktop * /*dt*/) {}; virtual void param_setup_notepath(Inkscape::NodePath::Path */*np*/) {}; + virtual void param_transform_multiply(Geom::Matrix const& /*postmul*/, bool /*set*/) {}; + Glib::ustring param_key; Inkscape::UI::Widget::Registry * param_wr; Glib::ustring param_label; diff --git a/src/live_effects/parameter/path.h b/src/live_effects/parameter/path.h index fc5a16a5b..696f27a87 100644 --- a/src/live_effects/parameter/path.h +++ b/src/live_effects/parameter/path.h @@ -49,6 +49,8 @@ public: void param_editOncanvas(SPItem * item, SPDesktop * dt); void param_setup_notepath(Inkscape::NodePath::Path *np); + virtual void param_transform_multiply(Geom::Matrix const& /*postmul*/, bool /*set*/) {}; + sigc::signal signal_path_pasted; sigc::signal signal_path_changed; diff --git a/src/live_effects/parameter/point.h b/src/live_effects/parameter/point.h index 25cdedb9d..72b3991e1 100644 --- a/src/live_effects/parameter/point.h +++ b/src/live_effects/parameter/point.h @@ -43,6 +43,8 @@ public: void param_setValue(Geom::Point newpoint); void param_set_default(); + virtual void param_transform_multiply(Geom::Matrix const& /*postmul*/, bool /*set*/) {}; + private: PointParam(const PointParam&); PointParam& operator=(const PointParam&); -- 2.30.2