diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2013-02-25 10:10:49 +0000 |
|---|---|---|
| committer | Jabiertxo Arraiza Zenotz <jtx@jtx.marker.es> | 2013-02-25 10:10:49 +0000 |
| commit | a35bf765ecadaf37dea9f9230f5a41211f07980d (patch) | |
| tree | ab5ffd2055389a57984c8e7baf23c1df411f25b2 /src/ui/tool/node.cpp | |
| parent | BSpline refactor (diff) | |
| parent | Refactor problem cusp nodes (diff) | |
| download | inkscape-a35bf765ecadaf37dea9f9230f5a41211f07980d.tar.gz inkscape-a35bf765ecadaf37dea9f9230f5a41211f07980d.zip | |
BSpline refactor
(bzr r11950.1.39)
Diffstat (limited to 'src/ui/tool/node.cpp')
| -rw-r--r-- | src/ui/tool/node.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/ui/tool/node.cpp b/src/ui/tool/node.cpp index 6dc6c7528..fef904006 100644 --- a/src/ui/tool/node.cpp +++ b/src/ui/tool/node.cpp @@ -138,8 +138,7 @@ void Handle::move(Geom::Point const &new_pos) //BSpline bool isBSpline = false; double pos = 0; - Handle *h = NULL; - Handle *h2 = NULL; + Handle *h = this; if(_pm().isBSpline()){ isBSpline = true; _parent->_selection.insert(_parent); @@ -178,11 +177,12 @@ void Handle::move(Geom::Point const &new_pos) setPosition(new_pos); //BSpline if(isBSpline){ - h = this; setPosition(_pm().BSplineHandleReposition(h)); pos = _pm().BSplineHandlePosition(h); - h2 = this->other(); - this->other()->setPosition(_pm().BSplineHandleReposition(h2,pos)); + other->setPosition(_pm().BSplineHandleReposition(other,pos)); + if(pos == 0){ + _parent->setPosition(h->position()); + } } //BSpline End return; @@ -217,11 +217,12 @@ void Handle::move(Geom::Point const &new_pos) setPosition(new_pos); //BSpline if(isBSpline){ - h = this; setPosition(_pm().BSplineHandleReposition(h)); pos = _pm().BSplineHandlePosition(h); - h2 = this->other(); - this->other()->setPosition(_pm().BSplineHandleReposition(h2,pos)); + other->setPosition(_pm().BSplineHandleReposition(other,pos)); + if(pos == 0){ + _parent->setPosition(h->position()); + } } //BSpline End } |
