summaryrefslogtreecommitdiffstats
path: root/src/guide-snapper.cpp
diff options
context:
space:
mode:
authorDiederik van Lierop <mail@diedenrezi.nl>2009-08-02 12:32:58 +0000
committerdvlierop2 <dvlierop2@users.sourceforge.net>2009-08-02 12:32:58 +0000
commit1491c7366dff69bc5e5dc9de5c6574f71d31ed1b (patch)
treef1070b5020d665b5990a2b483228b66da3f03007 /src/guide-snapper.cpp
parentCleaning some code again and changing individual filters id to avoid conflict... (diff)
downloadinkscape-1491c7366dff69bc5e5dc9de5c6574f71d31ed1b.tar.gz
inkscape-1491c7366dff69bc5e5dc9de5c6574f71d31ed1b.zip
Snap to a guide's origin too (resulting in a 2D constraint), instead of only to the guide itself (only 1D constraint)
(bzr r8383)
Diffstat (limited to '')
-rw-r--r--src/guide-snapper.cpp27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/guide-snapper.cpp b/src/guide-snapper.cpp
index 3a9a861e5..5cf97958a 100644
--- a/src/guide-snapper.cpp
+++ b/src/guide-snapper.cpp
@@ -26,9 +26,9 @@ Inkscape::GuideSnapper::GuideSnapper(SnapManager *sm, Geom::Coord const d) : Lin
*/
Geom::Coord Inkscape::GuideSnapper::getSnapperTolerance() const
{
- SPDesktop const *dt = _snapmanager->getDesktop();
- double const zoom = dt ? dt->current_zoom() : 1;
- return _snapmanager->snapprefs.getGuideTolerance() / zoom;
+ SPDesktop const *dt = _snapmanager->getDesktop();
+ double const zoom = dt ? dt->current_zoom() : 1;
+ return _snapmanager->snapprefs.getGuideTolerance() / zoom;
}
bool Inkscape::GuideSnapper::getSnapperAlwaysSnap() const
@@ -49,7 +49,7 @@ Inkscape::GuideSnapper::LineList Inkscape::GuideSnapper::_getSnapLines(Geom::Poi
for (GSList const *l = _snapmanager->getNamedView()->guides; l != NULL; l = l->next) {
SPGuide const *g = SP_GUIDE(l->data);
if (g != guide_to_ignore) {
- s.push_back(std::make_pair(g->normal_to_line, g->point_on_line));
+ s.push_back(std::make_pair(g->normal_to_line, g->point_on_line));
}
}
@@ -61,11 +61,11 @@ Inkscape::GuideSnapper::LineList Inkscape::GuideSnapper::_getSnapLines(Geom::Poi
*/
bool Inkscape::GuideSnapper::ThisSnapperMightSnap() const
{
- if (_snapmanager->getNamedView() == NULL) {
- return false;
- }
+ if (_snapmanager->getNamedView() == NULL) {
+ return false;
+ }
- return (_snap_enabled && _snapmanager->snapprefs.getSnapToGuides() && _snapmanager->getNamedView()->showguides);
+ return (_snap_enabled && _snapmanager->snapprefs.getSnapToGuides() && _snapmanager->getNamedView()->showguides);
}
void Inkscape::GuideSnapper::_addSnappedLine(SnappedConstraints &sc, Geom::Point const snapped_point, Geom::Coord const snapped_distance, SnapSourceType const &source, Geom::Point const normal_to_line, Geom::Point const point_on_line) const
@@ -74,10 +74,17 @@ void Inkscape::GuideSnapper::_addSnappedLine(SnappedConstraints &sc, Geom::Point
sc.guide_lines.push_back(dummy);
}
+void Inkscape::GuideSnapper::_addSnappedLinesOrigin(SnappedConstraints &sc, Geom::Point const origin, Geom::Coord const snapped_distance, SnapSourceType const &source) const
+{
+ SnappedPoint dummy = SnappedPoint(origin, source, Inkscape::SNAPTARGET_GUIDE_ORIGIN, snapped_distance, getSnapperTolerance(), getSnapperAlwaysSnap(), true);
+ sc.points.push_back(dummy);
+}
+
+
void Inkscape::GuideSnapper::_addSnappedPoint(SnappedConstraints &sc, Geom::Point const snapped_point, Geom::Coord const snapped_distance, SnapSourceType const &source) const
{
- SnappedPoint dummy = SnappedPoint(snapped_point, source, Inkscape::SNAPTARGET_GUIDE, snapped_distance, getSnapperTolerance(), getSnapperAlwaysSnap(), true);
- sc.points.push_back(dummy);
+ SnappedPoint dummy = SnappedPoint(snapped_point, source, Inkscape::SNAPTARGET_GUIDE, snapped_distance, getSnapperTolerance(), getSnapperAlwaysSnap(), true);
+ sc.points.push_back(dummy);
}
/*