summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaximilian Albert <maximilian.albert@gmail.com>2008-08-18 00:41:18 +0000
committercilix42 <cilix42@users.sourceforge.net>2008-08-18 00:41:18 +0000
commitefd3e607cfbac90c8a50b35b2261140fbae15826 (patch)
treea867bd727cb9324ae480abde0d3cee418d643980
parentBetter position for Geometry tool in toolbox (diff)
downloadinkscape-efd3e607cfbac90c8a50b35b2261140fbae15826.tar.gz
inkscape-efd3e607cfbac90c8a50b35b2261140fbae15826.zip
Add option do deactivate knotholder handles for LPEs (useful if they interfere with node handles during editing); doesn't live update the ShapeEditor at the moment
(bzr r6667)
-rw-r--r--src/live_effects/effect.cpp5
-rw-r--r--src/live_effects/effect.h3
2 files changed, 8 insertions, 0 deletions
diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp
index 705ecede8..4a71b2656 100644
--- a/src/live_effects/effect.cpp
+++ b/src/live_effects/effect.cpp
@@ -252,6 +252,7 @@ Effect::createAndApply(EffectType type, SPDocument *doc, SPItem *item)
Effect::Effect(LivePathEffectObject *lpeobject)
: oncanvasedit_it(0),
is_visible(_("Is visible?"), _("If unchecked, the effect remains applied to the object but is temporarily disabled on canvas"), "is_visible", &wr, this, true),
+ deactivate_knotholder(_("Deactivate knotholder?"), _("Check this to deactivate knotholder handles (useful if they interfere with node handles during editing)"), "deactivate_knotholder", &wr, this, false),
show_orig_path(false),
lpeobj(lpeobject),
concatenate_before_pwd2(false),
@@ -259,6 +260,7 @@ Effect::Effect(LivePathEffectObject *lpeobject)
is_ready(false) // is automatically set to false if providesOwnFlashPaths() is not overridden
{
registerParameter( dynamic_cast<Parameter *>(&is_visible) );
+ registerParameter( dynamic_cast<Parameter *>(&deactivate_knotholder) );
}
Effect::~Effect()
@@ -449,6 +451,9 @@ void
Effect::addHandles(KnotHolder *knotholder, SPDesktop *desktop, SPItem *item) {
using namespace Inkscape::LivePathEffect;
+ if (deactivate_knotholder)
+ return;
+
// add handles provided by the effect itself
addKnotHolderEntities(knotholder, desktop, item);
diff --git a/src/live_effects/effect.h b/src/live_effects/effect.h
index a66073881..609778b46 100644
--- a/src/live_effects/effect.h
+++ b/src/live_effects/effect.h
@@ -185,6 +185,9 @@ protected:
std::vector<std::pair<KnotHolderEntity*, const char*> > kh_entity_vector;
int oncanvasedit_it;
BoolParam is_visible;
+ BoolParam deactivate_knotholder; // the user can use this to deactivate knotholders (for
+ // convenience, because they may interfere with node handles
+ // during editing); this is probably only temporary
bool show_orig_path; // set this to true in derived effects to automatically have the original
// path displayed as helperpath