summaryrefslogtreecommitdiffstats
path: root/src/live_effects/effect.cpp
diff options
context:
space:
mode:
authorLiam P. White <inkscapebronyat-signgmaildotcom>2014-04-06 21:38:30 +0000
committerLiam P. White <inkscapebronyat-signgmaildotcom>2014-04-06 21:38:30 +0000
commit6f10c7f675fae8c20f24f01b7cffb861f3726e9d (patch)
treea78b993f14603288e71637bb22f7a2929c8ba5bf /src/live_effects/effect.cpp
parentPrevent crash on "three knot" issue (diff)
downloadinkscape-6f10c7f675fae8c20f24f01b7cffb861f3726e9d.tar.gz
inkscape-6f10c7f675fae8c20f24f01b7cffb861f3726e9d.zip
Properly allow effect stacking with knotholders (and add extra LPE functionality)
(bzr r13090.1.48)
Diffstat (limited to 'src/live_effects/effect.cpp')
-rw-r--r--src/live_effects/effect.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp
index 8bf210270..99282a312 100644
--- a/src/live_effects/effect.cpp
+++ b/src/live_effects/effect.cpp
@@ -373,6 +373,24 @@ void Effect::doOnRemove (SPLPEItem const* lpeitem)
{
}
+//secret impl methods (shhhh!)
+void Effect::doOnApply_impl(SPLPEItem const* lpeitem)
+{
+ sp_lpe_item = const_cast<SPLPEItem *>(lpeitem);
+ sp_curve = SP_SHAPE(sp_lpe_item)->getCurve();
+ pathvector_before_effect = sp_curve->get_pathvector();
+ doOnApply(lpeitem);
+}
+
+void Effect::doBeforeEffect_impl(SPLPEItem const* lpeitem)
+{
+ sp_lpe_item = const_cast<SPLPEItem *>(lpeitem);
+ sp_curve = SP_SHAPE(sp_lpe_item)->getCurve();
+ pathvector_before_effect = sp_curve->get_pathvector();
+
+ doBeforeEffect(lpeitem);
+}
+
/**
* Effects can have a parameter path set before they are applied by accepting a nonzero number of
* mouse clicks. This method activates the pen context, which waits for the specified number of